Nick Sawinyh (@sawinyh) header
Nick Sawinyh (@sawinyh) profile picture

Building with coding agents. Writing about AI engineering, verification, agent-native codebases, and what survives production. DeFi since 2019.

East Coast, US
Joined January 2015
Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)Photo by Nick Sawinyh (@sawinyh)
CPVO: Cost Per Verified Outcome for Engineering Organizations The metric that answers a simple question: Is your AI investment actually paying off? A deep dive into the methodology and how to measure it ⤵️ sawinyh.com/blog/measuring-a…
6
17
1,218
Cursor cites Bugbot findings getting fixed as evidence of fewer false positives. With Autofix, another agent can write the fix. How much does resolution rate tell us about whether the original finding was right?
2
3
156
Told ya
Relief rally won't last long.
1
53
Relief rally won't last long.
1
1
109
Good morning to everyone who used Winamp
1,270
4,205
741
52,971
1,589,758
Claude Code on the web keeps GitHub credentials behind a proxy that checks which branch a push targets. For coding agents, keeping secrets outside the sandbox is only part of the design: constrain what the credential can authorize, too.
3
1
1
155
An MCP cancellation notification is not proof a tool stopped. The spec allows receivers to ignore it when work is complete or cannot be cancelled. Show "cancellation requested" in the UI, not "nothing happened".
97
Reset git history between coding-agent eval trials, not just the working files. Anthropic observed agents gaining an unfair advantage from previous trials' commits. A clean checkout can still contain the answer in its history.
2
1
91
Giving a coding agent file paths instead of full files keeps context lean, but adds retrieval work at runtime. Preload the essentials; let it explore the rest. Context size and time to an answer are different optimization targets.
4
3
145
An agent eval that only checks whether search happens when needed can reward searching on every query. Include cases where the agent should answer without a search, or your score can improve while unnecessary tool calls multiply.
1
3
178
MCP agents can filter tool results in code before the model sees them. But running that code needs sandboxing, resource limits and monitoring. Evaluate the token savings against the runtime you now have to secure and operate.
74
Nick Sawinyh retweeted
🇺🇸 TOKEN2049 IS COMING TO NEW YORK 🇺🇸 16-17 June 2027
508
386
386
4,925
1,219,314
Nick Sawinyh retweeted
Introducing Claude Opus 5.5, the first model in our new Claude 5.5 family. It performs at the level of Claude Fable 5.1 for most tasks, and costs 40% less to run than Opus 5.
3,366
9,073
6,646
98,345
29,643,656
Nick Sawinyh retweeted
Cold email was very effective until around 2020. When I started in sales in 2016, I would send around 100 lightly personalized cold emails a day and get around a 5% positive response rate. Around 30% of those resulting meetings converted to sales. The math worked. Then in COVID, everyone who was doing outside sales was forced to pivot to inside sales and used automation platforms like SalesLoft and Outreach as a spam cannon. This was also the ZIRP period when SaaS companies grossly overhired on their sales teams and thus with more sellers than leads to go around, sellers resorted to spray and pray email tactics The final nail in the coffin for cold email was agents that can send emails. If you receive a cold email today, there is probably only a 10% chance that a human put actual thought into it Cold outbound as a strategy still very much works. But it needs to be hyper personalized, and is only very effective on platforms like X and LinkedIn where potential buyers can learn more about your personal brand before engaging
I have never once bought something from someone cold emailing me. Cold email needs to be banned. Either you give an agent your email and get huge downside if something happens. Or put up with insane spam every day.
16
1
2
26
3,444
Smart Money bought a token. Is anyone buying in behind them? Zatto counts the new buyers in the 10 minutes after each Smart Money buy, then tells you what buys at that level did 24h later. Built on the @nansen_ai API zatto.nsawinyh.workers.dev github.com/sneg55/zatto
2
2
2
2,306
What it has measured so far, 542 Smart Money buys on Base: under 5x the token's normal buyer rate, copying is a coin flip 5x and up, 20 of 25 were higher at 24h, median +29.6% One row per token minute, so a cluster of wallets buying together counts once, not seven times.
2
1
108
A run goes every 8 hours on cron. If you want one now, a scan costs 1 USDC over x402, signed in your own wallet. The app never holds a key. Method, constants and the measured numbers are all in the README. github.com/sneg55/zatto
1
72
Nick Sawinyh retweeted
No offense to our robot friends... 😅 Image credit Hang Xu
18
173
16
1,548
98,524
I paid 12 x402 sellers for the same thing: the USD price of BTC. Only three answered. The rest took the money anyway. One gave back HTTP 500. Another sent real BTC data as a JSON array, breaking the object contract it publishes itself. A third answered a question I hadn't asked. You can read every listing price for free. You cannot read whether a seller delivers, and a spend cap only ever sees the price. Kenyaku pays once to find out, then skips those nine forever. Cost per useful answer went from $0.008333 to $0.001000, and the record of who failed lives in @sibylcap memory. Settled $0.025 on @base, reconciled against the USDC Transfer log. Code and evidence: github.com/sneg55/kenyaku
2
3
7
280
Kenyaku, in three minutes. Session 1 starts with an empty store. It pays all 12 sellers and finds 9 of them broken. Session 2 is a fresh process. It reads the spend policy out of @sibylcap memory and pays exactly one. Then I delete the store and run the identical command. Back to paying 12. youtu.be/HYzSgal7EdU
1
68