Inspiration

Most coding agents hand you code they never ran, then forget every mistake when the session ends. I wanted an agent that proves its code works and gets better over time.

What it does

Give Forge a task in one line. It writes Python, runs it in an isolated sandbox, reads the real stdout/stderr, and fixes failures for up to 5 attempts. Every success and failure goes into a hash-chained memory ledger and is distilled into reusable skills, so the next similar task starts smarter.

How we built it

Forge runs one loop: Recall → Plan → Write → Run → Observe → Fix → Learn.

  • Plan: ambiguous tasks are sent back with one clarifying question instead of being guessed at.
  • Run: a sandbox with a temp workdir, scrubbed environment, no network, and a 30s timeout.
  • Governance: deny-lists and AST checks block shell access, network calls, secrets, and repo writes before anything executes. A HALT=1 switch stops all runs instantly.
  • Anti-gaming: identical retries are detected as spinning and stopped, and empty output is rejected.
  • Memory: a hash-chained ledger of episodes, distilled into skills.

Challenges we ran into

Making the agent trustworthy: stopping it from "passing" with empty output, and from looping on the same broken fix.

Accomplishments that we're proud of

57 offline tests, lint-clean, zero known dependency vulnerabilities, and an offline proof that anyone can run without an API key.

What we learned

What's next for Forge

Multi-language support and routing between Nemotron models (Nano, Super, Ultra) based on task difficulty.

Built With

Share this project:

Updates

Submission history