<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: amavashev</title><link>https://news.ycombinator.com/user?id=amavashev</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 06 May 2026 08:23:24 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=amavashev" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by amavashev in "Your Website Is Not for You"]]></title><description><![CDATA[
<p>True website is not for you and in the age for AI is not even for people. Its for AI agents reading your website and deciding what to do with it: recommend it, skip it, integrate with it, etc.</p>
]]></description><pubDate>Fri, 01 May 2026 13:45:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=47974752</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47974752</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47974752</guid></item><item><title><![CDATA[New comment by amavashev in "Show HN: Stop over-budget AI API calls per customer/feature (no proxy)"]]></title><description><![CDATA[
<p>The no proxy approach makes sense for LLMs calls. The gap is non LLM calls.<p>Often times damage is done by non LLM calls -- tool calls like sending email, add records, files,  placing order, etc. Budget enforcement at the LLM layer wont work for those.<p>built an open protocol + reference implementation, handles both any tool calls, LLM calls, or any other call: <a href="https://runcycles.io" rel="nofollow">https://runcycles.io</a>, open sourced under Apache 2.0</p>
]]></description><pubDate>Mon, 23 Mar 2026 16:45:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47491924</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47491924</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47491924</guid></item><item><title><![CDATA[New comment by amavashev in "Be intentional about how AI changes your codebase"]]></title><description><![CDATA[
<p>Agree, you need to your own code review, although as AI gets better, this problem will most likely be solved.</p>
]]></description><pubDate>Fri, 20 Mar 2026 12:21:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47453561</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47453561</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47453561</guid></item><item><title><![CDATA[New comment by amavashev in "[dead]"]]></title><description><![CDATA[
<p>The core argument here is that autonomous agents will need a economic envelope enforced before execution not after.<p>This means agents must follow this flow: 
reserve, use, commit or release.<p>Interesting how others are handling runaway agents, loops, etc, especially under concurrency.</p>
]]></description><pubDate>Fri, 20 Mar 2026 12:19:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47453532</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47453532</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47453532</guid></item><item><title><![CDATA[New comment by amavashev in "Show HN: Cycles – hard limits on agent actions before execution"]]></title><description><![CDATA[
<p>technical breakdown: 
<a href="https://dev.to/amavashev/i-burned-153-in-30-minutes-with-an-agent-loop-heres-the-pattern-that-stopped-it-5332" rel="nofollow">https://dev.to/amavashev/i-burned-153-in-30-minutes-with-an-...</a></p>
]]></description><pubDate>Wed, 18 Mar 2026 16:15:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=47427607</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47427607</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47427607</guid></item><item><title><![CDATA[New comment by amavashev in "Show HN: Cycles – hard limits on agent actions before execution"]]></title><description><![CDATA[
<p>Demo (no API key needed): <a href="https://github.com/runcycles/cycles-runaway-demo" rel="nofollow">https://github.com/runcycles/cycles-runaway-demo</a></p>
]]></description><pubDate>Tue, 17 Mar 2026 20:07:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=47417616</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47417616</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47417616</guid></item><item><title><![CDATA[Show HN: Cycles – hard limits on agent actions before execution]]></title><description><![CDATA[
<p>Rate limits control velocity. They say nothing about what an agent is allowed to do next.
An agent can pass every rate-limit check and still delete 400 records, send 200 emails, or place orders before anyone notices. The damage isn't always in the bill — it's in the consequence.<p>Cycles is an open protocol for pre-execution enforcement. The core mechanism: reserve exposure before the action runs, commit actual usage after, release the remainder if it fails. Every reservation is idempotent so retries don't double-count.<p>Atomic operations mean concurrent agents can't both see "enough budget" and both proceed.
It's not a rate limiter. It's not an observability tool. It's a runtime authority that answers one question before every instrumented action: is this still allowed to proceed?<p>Three clients: Python (PyPI), TypeScript (npm), Spring Boot (Maven Central). 
Self-hostable server, Apache 2.0.<p>Integrations: OpenClaw, LangChain, Vercel, FastAPI<p>The demo shows the failure mode in 60 seconds — same agent, same bug, two outcomes: without Cycles it burns $6, with Cycles it stops at $1.<p>Happy to answer questions about the protocol design, the idempotency semantics, or the concurrency model.</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47417096">https://news.ycombinator.com/item?id=47417096</a></p>
<p>Points: 1</p>
<p># Comments: 2</p>
]]></description><pubDate>Tue, 17 Mar 2026 19:28:43 +0000</pubDate><link>https://runcycles.io/</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47417096</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47417096</guid></item><item><title><![CDATA[New comment by amavashev in "Show HN: OpenClaw plugin – hard budget limits for agent tool calls"]]></title><description><![CDATA[
<p>I'm the author. A few design decisions worth explaining:<p>The model downgrade is the most useful feature for daily use — when 
budget drops below a threshold, the plugin silently swaps claude-opus 
to claude-sonnet, gpt-4o to gpt-4o-mini. The agent keeps running, just 
cheaper. Only at full exhaustion does it stop.<p>The prompt hint (before_prompt_build hook) tells the model its remaining 
budget in the system prompt. Models self-regulate when they know the 
constraint exists — fewer unnecessary tool calls, shorter responses.<p>The underlying Cycles protocol handles idempotency under retries so 
concurrent tool calls don't double-spend against the same budget.<p>Happy to answer questions about the plugin or the protocol.</p>
]]></description><pubDate>Sun, 15 Mar 2026 16:03:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=47388709</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47388709</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47388709</guid></item><item><title><![CDATA[Show HN: OpenClaw plugin – hard budget limits for agent tool calls]]></title><description><![CDATA[
<p>OpenClaw agents can loop, pick expensive models, and burn budget before 
anyone notices. This plugin stops that.<p>Install:<p><pre><code>    openclaw plugins install @runcycles/openclaw-budget-guard
</code></pre>
Add one config block with your tenant and optional model fallbacks 
(e.g. claude-opus → claude-sonnet when budget is low). The plugin 
handles the rest: balance checks before model selection, reservations 
before tool calls, commits after, and cleanup at session end.<p>Built on the Cycles protocol — reserve budget before execution, commit 
actual spend after, release the remainder.<p>Plugin: <a href="https://github.com/runcycles/cycles-openclaw-budget-guard" rel="nofollow">https://github.com/runcycles/cycles-openclaw-budget-guard</a><p>npm: <a href="https://www.npmjs.com/package/@runcycles/openclaw-budget-guard" rel="nofollow">https://www.npmjs.com/package/@runcycles/openclaw-budget-gua...</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47388702">https://news.ycombinator.com/item?id=47388702</a></p>
<p>Points: 1</p>
<p># Comments: 1</p>
]]></description><pubDate>Sun, 15 Mar 2026 16:03:15 +0000</pubDate><link>https://github.com/runcycles/cycles-openclaw-budget-guard</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47388702</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47388702</guid></item><item><title><![CDATA[Show HN: RunCycles – pre-execution budget enforcement for autonomous agents]]></title><description><![CDATA[
<p>I built this after reading too many incident reports of agent loops spending 
$200 in 4 minutes because a quality threshold was never met.<p>The pattern is always the same: an agent retries, fans out, or loops. Each 
iteration passes individual rate-limit checks. Observability fires an alert 
after the money is gone. Provider caps are per-provider, not cross-provider. 
None of these stop the spend before it happens.<p>RunCycles takes a different approach: reserve budget before the call, commit 
actual spend after, release the remainder if the work is cancelled. The 
reservation is atomic across all affected budget scopes — tenant, workspace, 
agent — using Redis Lua scripts so concurrent agents sharing a budget can't 
collectively overrun it.<p>The integration surface is small:<p><pre><code>    @cycles(estimate=50_000, action_kind="llm.completion", action_name="gpt-4o")
    def call_llm(prompt: str) -> str:
        return openai.complete(prompt)
</code></pre>
When budget is exhausted, the next reservation attempt gets a 409 
BUDGET_EXCEEDED before the downstream call is made.<p>The architecture is three pieces:<p>- Cycles Protocol: an open OpenAPI spec defining the reservation lifecycle, 
  idempotency semantics, scope hierarchy, and overage policies.
- RunCycles Server: Spring Boot + Redis, implements the spec. Runs in Docker.
- Clients: Python, TypeScript, Java/Spring Boot.<p>The hardest part was idempotency under retries — if a commit fails transiently 
and retries with the same key, it should get the original response back, not 
double-charge. The Lua scripts handle this atomically.<p>What it's not: a billing system, observability dashboard, or agent framework. 
It's the layer that decides whether an action may proceed before it proceeds.<p>Org: <a href="https://github.com/runcycles" rel="nofollow">https://github.com/runcycles</a>
Docs: <a href="https://runcycles.github.io/docs" rel="nofollow">https://runcycles.github.io/docs</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47382742">https://news.ycombinator.com/item?id=47382742</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 15 Mar 2026 00:08:39 +0000</pubDate><link>https://github.com/runcycles/cycles-runaway-demo</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47382742</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47382742</guid></item><item><title><![CDATA[New comment by amavashev in "Show HN: I lost $200 from an agent loop, so I built per-tool AI budget controls"]]></title><description><![CDATA[
<p>Per-key isolation + model locking is a solid baseline — especially for multi-tool stacks where one shared key hides everything.<p>One thing we’ve noticed though: spend caps stop damage, but they don’t prevent pathological behavior. By the time the cap trips, the agent has already drifted.<p>We’ve been experimenting with pre-authorization per action (reserve → commit style) rather than just per-key ceilings. It lets you detect anomalous patterns before the burn accumulates — especially in looping or tool-chaining scenarios.<p>Curious — have you seen most overruns come from loops, retries, or just high-token completions?</p>
]]></description><pubDate>Wed, 18 Feb 2026 12:10:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47060184</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47060184</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47060184</guid></item><item><title><![CDATA[New comment by amavashev in "Ask HN: What are the biggest limitations of agentic AI in real-world workflows?"]]></title><description><![CDATA[
<p>Drift correlating more with constraint tension than raw step count matches what we’ve observed.<p>Your external gate instinct is right, but the gate has to be structurally external, not just logically external.
If the agent can reason about the gate, it can learn to route around it.<p>We’ve been experimenting with pre-authorization before high-impact actions (rather than post-hoc validation) - I've drafted Cycles Protocol v0 spec to deal with this problem.<p>What’s interesting is that anomalous reservation patterns often show up before output quality visibly degrades — which makes drift detectable earlier.<p>Still early work, but happy to compare notes if that’s useful.</p>
]]></description><pubDate>Wed, 18 Feb 2026 12:06:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47060153</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=47060153</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47060153</guid></item><item><title><![CDATA[Show HN: Scalerx.ai – Create, train and deploy AI agents]]></title><description><![CDATA[
<p>Article URL: <a href="https://scalerx.ai/">https://scalerx.ai/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42032528">https://news.ycombinator.com/item?id=42032528</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 03 Nov 2024 11:50:19 +0000</pubDate><link>https://scalerx.ai/</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=42032528</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42032528</guid></item><item><title><![CDATA[Create, train and launch personalized AI Agents]]></title><description><![CDATA[
<p>Article URL: <a href="https://scalerx.ai/">https://scalerx.ai/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42027409">https://news.ycombinator.com/item?id=42027409</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Sat, 02 Nov 2024 16:35:49 +0000</pubDate><link>https://scalerx.ai/</link><dc:creator>amavashev</dc:creator><comments>https://news.ycombinator.com/item?id=42027409</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42027409</guid></item></channel></rss>