Now live — coding.agnus.work

The AI writes the code.
You see every move.

Agnus is a cloud IDE with a real multi-agent loop. Claude plans. DeepSeek or Codex writes the code. Every action streams live — nothing happens behind your back.

Real e2b sandboxes🔐 AES-256 encrypted⚖️ EU AI Act compliant🌍 13 languages
This is the real interface — click around
A
Running
Claude
DeepSeek
Codex
1// src/app/page.tsx - ConvoOps dashboard entry
2import { Suspense } from 'react';
3import { DataTable } from '@/components/DataTable';
4import { requireAuth } from '@/middleware/jwt';
5
6export default async function DashboardPage() {
7 const session = await requireAuth();
8 if (!session) throw new Error('unauthorized');
9
10 const rows = await loadConversations({
11 userId: session.id,
12 limit: 50,
13 expand: ['tags', 'lastMessage'],
14 });
15
16 return (
17 <main className="min-h-screen px-8 py-10">
18 <h1 className="text-3xl font-semibold">Conversations</h1>
19 <Suspense fallback={<Spinner />}>
20 <DataTable rows={rows} />
21 </Suspense>
22 </main>
23 );
24}
25
26// TODO(claude): rate-limit error toasts
TypeScript React · branch fix/jwt-expiry · 2 errorsLn 10, Col 23 · UTF-8 · LF
$ pnpm install
Lockfile is up to date, resolution step is skipped
Done in 1.2s using pnpm 9.5.0
$ pnpm dev
Next.js 15.0.3 (turbo)
Local: http://localhost:3000
Ready in 1.4s
Compiling /dashboard ...
Compiled /dashboard in 624ms
WARN Property 'expand' not in ConversationQuery - src/app/page.tsx:10
ERR TypeError: Cannot read properties of undefined (reading 'userId')

Sign up and your actual code runs in a live cloud sandbox.

How it works

From idea to deployed — without leaving the browser

01
Connect GitHub

Link one or more GitHub accounts. Each project picks its own. Personal and work repos stay separate. No long-lived tokens — access is minted fresh per operation, expires in one hour.

02
Pick a template

8 real scaffolds: Next.js, Vite, Express, FastAPI, Supabase full-stack, Static HTML, Mobile (Expo), or Blank. Or clone directly from any GitHub repo you have access to.

03
Chat with agents

Describe what you want. Claude plans and delegates. DeepSeek or Codex writes the code. Every tool call, every file diff, every approval request streams live — nothing happens behind your back.

04
Test, then ship

A CI gate runs your tests before every push. Deploy to Railway or Vercel in one click, gated by that same test pass. The Scribe writes an EU AI Act compliance record after every run.

The multi-agent loop

Claude plans. DeepSeek writes. Nothing ships without you.

Four roles. Every run. The Manager plans and delegates. The Worker writes the code. The Reviewer checks every delegation before it lands. The Scribe records everything. You approve before anything touches your repository.

Manager

Claude

Plans · Delegates · Decides

The Manager — always Claude — reads your request, breaks it into steps, and delegates each one to the Worker. It owns the strategy, decides the order, and calls for a Reviewer pass before anything lands. It thinks. It does not write code.

Worker

DeepSeek · Codex

Writes · Edits · Executes

The Worker receives a specific task from the Manager and writes the code. It applies file edits, runs terminal commands, and reports back. You watch every step stream live in the Decisions panel — every file change, every shell command — before anything is committed.

Reviewer

Optional

Checks · Flags · Approves

When enabled, the Reviewer intercepts every Manager-to-Worker delegation before it runs. It checks the proposed task for correctness, scope, and risk — then approves it, revises it, or sends it back. You choose which model plays Reviewer and whether it runs at all.

The Scribe

Always on

Records · Flags · Audits

The Scribe cannot be disabled. After every agent run it writes an EU AI Act compliance record: what actions were taken, which files were touched, and a machine-parsed RISK: yes/no verdict. It is not a feature you turn on. It is the foundation everything else builds on.

See everything the Scribe records

Supported providers

Bring your own key. Use any model you need.

Anthropic

Claude Sonnet · Haiku · Opus

OpenAI

GPT-4o · GPT-4o mini · Codex

DeepSeek

DeepSeek-V3 · DeepSeek-R1

Google

Gemini 1.5 Pro · Gemini Flash

Groq

Llama 3.3 70B — fast inference

OpenRouter

Any model on OpenRouter

Any OpenAI-compatible

Point to any endpoint you control

Agnus Powered by Claude

The actual Claude Agent SDK — same engine as Claude Code

Built-in modes

Manager + WorkerDefault

Claude plans. DeepSeek or Codex writes. The classic loop — coordination and execution split across two models.

Claude SoloSingle agent

Claude handles the full task end to end without delegating. Best for complex reasoning tasks.

DeepSeek SoloSingle agent

DeepSeek runs the full task. Fast, direct, no coordination overhead.

Custom AgentYour config

Set your own system prompt, pick any provider, attach any tools. Add skills — reusable knowledge blocks — to define what the agent knows.

Chat features

Attach a file or folder directly to any chat message — agents read it as context
Conversation memory across every turn and session switch
Multiple named sessions per project — independent chat histories, one sandbox at a time
Session switcher in the toolbar: create, rename, delete, switch
Agent badges stream live in the chat as each role activates
Scribe cost tracked separately per run — never hidden inside the agent total

EU AI Act compliance

Every run documented. Every risk flagged. You cannot turn it off.

The Scribe is a dedicated agent that runs automatically after every session, using a fixed hidden prompt you cannot change. It writes a compliance record — not a summary — because this is what Article 12 of the EU AI Act requires deployers to keep.

What every record contains

  • Session ID and timestamp — when the run started and ended
  • Which agent ran, which model, which tools were called
  • Which files were touched — names only, never content
  • What actions were taken — tool calls, terminal commands, commits
  • A machine-parsed verdict: RISK: yes or RISK: no
  • The hash of the previous record — linking the chain

The hash-chain ledger

Each record is hashed and that hash is embedded in the next record. Tamper with any entry and every subsequent hash breaks — structurally, not by claim. Verify the full chain in one click, or paste any hash to trace its position forward and back. Reverting a run creates a new chain entry; nothing is ever deleted or rewritten.

run_001prev:a3f8c2d1…RISK: no
run_002prev:b1d4e947…RISK: yes
run_003prev:c7a2f1b9…RISK: no

Each entry hashes the one before it. Break the chain and you know exactly where.

Statements that outlive the project

Weekly and monthly compliance statements are generated automatically — like bank statements. Delete the project and the statements remain. The audit trail belongs to you; it does not disappear with the code.

  • 30-day and 90-day range toggle
  • Raw log export as CSV
  • Printable audit report — PDF-ready layout
  • Real-time risk-flag badge on the Decisions button
  • Decisions panel: every tool call, diff, revert, and full timeline

EU AI Act articles covered

Article 12Record-keeping

The Scribe is the implementation. Every run produces a timestamped, hash-chained record of what the system did. Automatically. No manual logging required.

Article 14Human oversight

Commit and push require explicit approval. Every agent tool call streams live. You can halt, revert, or redirect at any point. The system does not proceed without you.

Article 26Deployer obligations

The compliance dashboard shows real numbers — not claims. Risk flags, statement coverage, revert history. The Decisions panel is your documented record of oversight.

Agnus is classified as a minimal-risk AI system under the EU AI Act — formally stated, not assumed. The Scribe exists so you have proof when someone asks.

The editor

A full cloud IDE. Open your browser. Start building.

Monaco — the VS Code editor engine — running against a real e2b cloud sandbox. Not a mock. Not a textarea. Every file you edit runs in a live microVM, and every agent turn is snapshotted so you can always go back.

Editor

  • Monaco editor — the same engine that powers VS Code
  • Full VS Code menu bar: File, Edit, Selection, View, Go, Run
  • Command Palette (Ctrl+Shift+P) with fuzzy search across all commands
  • Find in Files — real grep inside your live sandbox
  • Go to Line, Go to File, Go to Symbol
  • Undo / Redo, multi-cursor, expand and shrink selection
  • Word wrap, minimap, whitespace rendering — real toggles
  • Auto Save with a 1-second debounce
  • New File language picker — sets the extension automatically
  • Save As — sleek in-app modal, not a browser prompt
  • Add Folder to Workspace (File menu) — bring existing code in
  • Folder upload skips node_modules / .git / dist / .next automatically

Sandbox & preview

  • Live e2b microVM — real Node 22 environment, not emulation
  • Multi-terminal: each tab is a real PTY shell, close kills the process
  • Dev server auto-restarts on crash, up to 3 times in a row
  • Waits for port to be ready before showing preview — no false 404s
  • Device preview: Desktop / Tablet / Mobile — real device frame with dimension readout
  • Rotate button in Tablet/Mobile mode for landscape testing
  • Full-window maximize for Preview / Terminal / Output
  • Real browser fullscreen on the Preview panel (same as F11)
  • Preview follows whichever HTML file you have open
  • Static HTML projects get a real file-server preview automatically
  • Artifacts — sandboxed HTML/SVG renders from agents, saveable
  • Mobile (Expo) template — scan QR with Expo Go on your phone
  • Files snapshotted after every agent turn and on disconnect
  • Sandbox auto-restored if evicted or timed out
  • 8 real project templates — Next.js, Vite, Expo, FastAPI, and more

Source control & deploy

From first commit to live. Without leaving Agnus.

Real git. Real CI. Real deploys. The GitHub App grants access to specific repos only — not your entire account. Tokens expire in one hour. Nothing persists longer than it needs to.

GitHub

  • GitHub App — grant access to specific repos, not your whole account
  • Multiple GitHub accounts per user, one assigned per project
  • Fresh token per operation — expires in 1 hour, no long-lived secrets
  • Clone any accessible repo into a live sandbox
  • Source Control panel — see changed files, write a commit message, commit, push, pull, switch/create branches
  • Push blocked on permission error with a direct re-accept link
  • Per-project GitHub account reassignment after creation
  • Persistent status bar shows branch and sync state at all times
  • Disconnect a project from its repo entirely from Source Control

CI gate

  • Tests run before every push — automatically, not optionally
  • FAILED blocks the push; PASSED or NO_TESTS proceeds
  • "Push anyway" override — always available, never a hard block
  • Bounded auto-fix: up to 2 automatic retry attempts with a visible banner
  • TypeScript diagnostics run after every agent turn
  • Problems tab shows real tsc errors, not a placeholder

Deploy

  • Railway: OAuth connect, one-click trigger, live status polling
  • Vercel: OAuth connect, build logs + runtime logs
  • Deploy gate: blocks if tests haven't passed since last change
  • "Deploy anyway" override — disclosed, never hidden
  • Deployment history listed inside the IDE
  • Deploys and connection changes logged in compliance records
  • Supabase: OAuth connect, pick a project, get DATABASE_URL auto-assembled

Security

Your keys. Your data. Not ours.

Agnus does not have a shared operator key that all users draw from. You bring your own. We encrypt it with AES-256-GCM. We never see the plaintext. We never pass it between users.

BYOK — Bring Your Own Keys

  • AES-256-GCM encryption for every API key — yours and custom agents'
  • No shared operator key — each user's keys are fully isolated
  • Zero plaintext key storage anywhere in the system
  • Keys never appear in logs, errors, or chat messages (redacted)
  • All API keys tested with a real call before being saved
  • Per-user data isolation enforced on every tRPC call and WebSocket
  • Encrypted per-project environment variables (write-only after save)
  • Secrets injected at runtime — never visible in chat, logs, or errors
  • Agent database access is per-agent opt-in, never on by default
  • GDPR-compliant privacy policy, 12 sub-processors named
  • Full 715-package license audit, two MPL-2.0 packages formally cleared

Policy layer

Settings → Permissions shows this policy in plain language. Settings → Report lists every blocked attempt, searchable by project and agent.

  • rm, rmdir, git reset --hard, DROP/TRUNCATE/DELETE/UPDATE/ALTER — always blocked, reach the sandbox never
  • git commit, git push, force-push — always require explicit human approval
  • Policy breaches report: project, agent, category, reason, timestamp — every blocked attempt
  • Deploy and publish have no agent-callable path today — agents cannot trigger them
  • Interface in 13 languages: EN, ES, FR, ZH, IT, RU, JA, PT, SV, NO, DE, NL, ZH-TW

Usage & billing

Know exactly what you are spending. On what. And why.

Every token, every job, every dollar — broken down by agent and by project. The Scribe's own DeepSeek spend is tracked separately so the total is never understated. A hard monthly cap stops new runs the moment the limit is hit.

Live usage dashboard

  • Token count, job count, and cost per agent — this month
  • Token count, job count, and cost per project — this month
  • Scribe's own DeepSeek spend tracked separately, never hidden in agent totals
  • Per-agent spend share bar — see which agent drives the most cost at a glance
  • Projected end-of-month spend — linear extrapolation from real spend-per-day
  • Budget remaining — live, against your configured monthly cap
  • Hard cap: new runs blocked the moment the limit is reached (in-progress run finishes)

Statements & compliance exports

  • Downloadable monthly usage statements — one per completed month, archived, never changes
  • Compliance dashboard: Article 12 / 14 / 26 real numbers — not claims
  • 30-day / 90-day range toggle on the compliance view
  • Raw log export (CSV) — one row per real tool-call event, up to 5,000 rows
  • Printable audit report — a formal, self-contained HTML document, save as PDF
  • Summary CSV — rolled-up compliance numbers matching the on-screen dashboard exactly
  • All exports are authenticated: no auth cookie, no download

Pricing

Start free. Upgrade when you need more.

Bring your own AI provider keys — we enforce your budget, we don't mark up your tokens.

Free

$0

forever

  • $10 / month AI spend cap (hard limit)
  • Multi-agent loop: Manager + Worker
  • Claude, DeepSeek, Codex, and more — BYOK
  • Custom agents with your own prompt and skills
  • Optional Reviewer agent
  • 8 real project templates + GitHub clone
  • Multi-account GitHub with specific-repo grants
  • Real git: commit, push, pull, branch
  • Real CI test gate on every push
  • The Scribe — always on, every run
  • Hash-chain ledger + weekly / monthly statements
  • Compliance dashboard (Article 12 / 14 / 26)
  • Policy layer + breaches report
  • Decisions panel with per-run revert
  • 13-language interface
Get started free

Pro

$29

per month

  • $500 / month AI spend cap
  • Everything in Free
  • Railway deploy (OAuth + one-click + live status)
  • Vercel deploy (OAuth + build and runtime logs)
  • Supabase database linking + agent DB queries
  • Encrypted per-project environment variables
  • Device preview: Desktop / Tablet / Mobile + rotate
  • Artifacts — sandboxed HTML/SVG renders from agents
  • Multi-terminal (multiple real PTY shells per project)
  • 90-day compliance export history
  • Monthly usage statements with CSV export
  • Priority support
Start Pro free trial