{"repo":"loop-js/loop.js","free":true,"listed":false,"github":"https://github.com/loop-js/loop.js","clone":"git clone https://github.com/loop-js/loop.js.git","description":"A loop engineering framework — state a Goal; Rounds run until a skeptical, read-only Verify agent settles it.","language":"TypeScript","stars":135,"topics":["agent-loop","agent-verification","ai-agents","autonomous-agents","claude","claude-agent-sdk","cron","llm","loop-engineering","typescript"],"license":"Apache-2.0","category":"ai-agents","readme_excerpt":"loop.js Loop.js is the framework for loop engineering. You state a goal and what \"done\" means. The engine runs an agent at it, Round after Round — fresh context every Round, memory read back from disk — until a separate, skeptical judge rules the bar met. Run it from a terminal, schedule it — on your machine or deployed to Modal's cloud — or embed it in a product: same engine, same guarantees. Loop engineering is designing the system that prompts an agent instead of prompting it turn by turn: a goal, a way to work, a way to verify, a stop discipline — the loop does the iterating. loop.js is that system as a framework: what is loop engineering → Why loops need a framework Running an agent in while (true) is one line. Whether that loop ever converges is everything around it — and that is the part loop.js owns: The pain The machinery --- --- The agent says \"done\" when it isn't A separate Verify agent — own session, own (cheaper, if you like) model, read-only by default — judges every Round. Only its verdict settles the Loop; the worker never grades its own homework. Long sessions bloat and drift Every Round starts with fresh context and reads its memory back from disk — the worker's own handoff notes. Round 40 starts as fresh as Round 1. Retries that don't converge A \"not yet\" verdict carries a mandatory reason , fed to the next Round. A goal that can never pass settles as an explicit give-up instead of burning the budget. Money runs away Declared guards: total usd (step-granula","default_branch":null,"files":null,"tree":[],"storefront":"/r/loop-js","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/loop-js/loop.js/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}