{"slug": "i-tried-to-sell-the-minutes-you-spend-waiting-for-your-coding-agent", "title": "I tried to sell the minutes you spend waiting for your coding agent", "summary": "A developer built vibestretch, a Claude Code plugin that nudges users to stretch during long waits for their coding agent, after exploring and rejecting the idea of selling ads in the terminal. The plugin tracks idle time and only prompts when the agent has been running for at least two minutes, with five minutes of accumulated waiting time and 15 minutes since the last nudge. The developer notes that the ad-supported model failed due to a tiny market and hostile audience, citing EthicalAds' $124K January payout and CodeFund's shutdown.", "body_md": "The day that got me started looked like this. I sat down at ten in the\n\nmorning, Claude Code was grinding through a refactor, and I was watching\n\nthe output scroll, answering a prompt here and there. When I next looked\n\nat the clock it was past three. I had not stood up once. The agent did\n\nits job. Mine, apparently, was sitting.\n\nThe embarrassing part: my first thought was not \"I should fix this.\"\n\nIt was \"I wonder if this window is worth money.\"\n\nThink about what that wait actually is. A developer in front of a\n\nterminal, mildly bored, eyes parked on a stream of tool calls. That is\n\nan advertiser's dream slot. So I spent a week checking whether you could\n\nsell it: show ads to developers in the terminal while their agent works.\n\nIt is not a crazy idea. Sourcegraph already ships Amp Free, an\n\nad-supported tier of their coding agent with real dev-tool advertisers\n\nin the output. The slot exists and someone is selling it.\n\nThe numbers killed it anyway. EthicalAds, the biggest player in\n\ndeveloper advertising, paid out about $124K this January. That is the\n\nmarket leader. CodeFund, the closest thing to a direct predecessor,\n\nburned around $50K a month and shut down in 2020, a year or two short\n\nof breaking even. And the one time somebody printed promo into other\n\npeople's terminals at scale, npm in 2019, the backlash was loud enough\n\nthat npm banned the practice in its terms of service. That lesson stuck\n\nwith me: the terminal is somebody's workspace. Printing ads into it\n\nreads as vandalism.\n\nTiny market, dead predecessor, hostile audience. I wrote NO-GO in my\n\nnotes. But the window would not leave me alone. The wait is real, the\n\nattention is real. I had spent a week trying to hand it to the wrong side.\n\nSo I built the opposite thing. vibestretch is a Claude Code plugin that\n\nwatches how long the agent has kept you waiting and, once in a while,\n\nprints one line:\n\n```\n🧘 Slow neck rolls. 5 each direction. · vibestretch · 7 min of agent time\n```\n\nOne stretch, or a micro workout, or a 20-20-20 eye break. That's all\n\nit does.\n\nThe part worth explaining is when it speaks. It is not a break timer.\n\nTimers fire on a schedule, which means they fire mid-thought, which is\n\nwhy most people turn them off within a week. vibestretch only counts\n\nthe minutes an agent turn kept you waiting, and a nudge needs three\n\nthings at once: the current turn has been running at least 2 minutes,\n\nat least 5 minutes of waiting have piled up since your last break, and\n\n15 minutes have passed since the last nudge. A day of quick turns\n\nproduces silence. There is nothing to snooze because it never\n\ninterrupts anything.\n\nMaking the number honest was more work than the feature. The first\n\nversion printed \"7 min sitting.\" That was a lie. The agent had worked\n\nseven minutes; I might have been in the kitchen. Now the plugin reads\n\nthe macOS idle clock, so the minutes stop counting when you walk away,\n\nand an agent grinding overnight adds nothing. The label says \"7 min of\n\nagent time\" because that is the thing it actually measures. A counter\n\nthat lies about something small is a counter you stop trusting about\n\neverything.\n\nI should also tell you what the first real tester said. He ran it for\n\nthree days and told me he would not keep it. He moves around enough\n\nduring the day anyway. Fair. If you already stand up on your own, this\n\nhas nothing for you. It is for the people who look up at 3pm and\n\nrealize the last time they moved was breakfast.\n\nUnder the hood it is a few POSIX shell scripts on three hooks. No\n\ndependencies, no daemon, no telemetry, no network calls. And no links\n\nprinted into your terminal, ever. That one is not a technical\n\nconstraint. It is the npm lesson written into a rule.\n\nThe repo: [https://github.com/Eliasjunit/vibestretch](https://github.com/Eliasjunit/vibestretch). The thresholds\n\n(2/5/15) are the part I am least sure about. Tell me they are wrong.", "url": "https://wpnews.pro/news/i-tried-to-sell-the-minutes-you-spend-waiting-for-your-coding-agent", "canonical_source": "https://dev.to/eliasjunit/i-tried-to-sell-the-minutes-you-spend-waiting-for-your-coding-agent-59o2", "published_at": "2026-09-03 23:00:03+00:00", "updated_at": "2026-09-03 23:53:57.840990+00:00", "lang": "en", "topics": ["developer-tools", "ai-agents", "ai-products"], "entities": ["vibestretch", "Claude Code", "Sourcegraph", "EthicalAds", "CodeFund", "npm"], "alternates": {"html": "https://wpnews.pro/news/i-tried-to-sell-the-minutes-you-spend-waiting-for-your-coding-agent", "markdown": "https://wpnews.pro/news/i-tried-to-sell-the-minutes-you-spend-waiting-for-your-coding-agent.md", "text": "https://wpnews.pro/news/i-tried-to-sell-the-minutes-you-spend-waiting-for-your-coding-agent.txt", "jsonld": "https://wpnews.pro/news/i-tried-to-sell-the-minutes-you-spend-waiting-for-your-coding-agent.jsonld"}}