Skip to content
// isolated pods · your git provider · any harness

A container that already knows your code.

Every workspace gets a persistent, self-hosted pod — bound to your GitHub provider, every repo cloned, env injected, toolchains ready. Open a terminal in the browser and run Claude Code, OpenCode, or hand it to Hermes. Every step it takes lands back on your timeline.

3
harnesses
21
agent tools
8
lifecycle stages
0
shipped
pod-fo:claude opencode live
Welcome to Claude Code · in pod-fo · forked.online:main
cwd /workspace/forked.online · model claude-opus-4
> address WI-0042
get_work_item "WI-0042" · spec + directive + memory
recall "forked-online" · 5 guardrails · 1 gotcha
verify_repo "forked.online" · origin matches ✓
set_work_item_status in_progress · ok
create_todo ×4 · plan locked
commit 9f3c2a · complete_todo · token bucket
commit a1b7e4 · complete_todo · redis store
commit 4c90df · complete_todo · 429 + Retry-After
commit e2f8aa · complete_todo · request specs
remember gotcha "429 cap" · → shared with every WI
verify gate · coverage · tests · review — pass
assign_workitem_to_branch · PR #128
WI-0042·rate-limit the public api open
[ ]token-bucket limiter
[ ]redis-backed store
[ ]429 + Retry-After
[ ]request specs
[pod-fo] 0:claude*"CC | WI-0042" opus-4
/ pods/ containers/ isolated-env/ github/ tmux/ mise/ claude-code/ opencode/ hermes/ mcp/ work-items/ todos/ activity/ streaks/ invoices/ share-links/ truecolor/ browser-terminal/ pods/ containers/ isolated-env/ github/ tmux/ mise/ claude-code/ opencode/ hermes/ mcp/ work-items/ todos/ activity/ streaks/ invoices/ share-links/ truecolor/ browser-terminal
the pod

It boots into your whole world.

A pod registers with the platform, pulls a manifest, clones every repo onto a persistent volume, injects your env, and keeps a tmux session alive. No re-discovery, no "which directory am I in" — the agent gets its entire working world on the first call.

pod-runner · boot
[pod-runner] registered · working_root=/workspace · desired=on
[pod-runner] clone forked.online        
[pod-runner] clone lead-caller           
[pod-runner] clone drive-x · restaurant  
[pod-runner] reconciled: 6 cloned · env → /workspace/.pod.env
[pod-runner] MCP configs synced · claude=1 opencode=1
[pod-runner] terminal server on 127.0.0.1:43187
[pod-runner] heartbeat · online
baked into the image — a real polyglot dev box
miseon-demand toolchains — mise install reads .tool-versions and pins the exact Ruby/Node/Rust per repo.
agent CLIsClaude Code, OpenCode, and @forked-online/mcp pre-installed and auto-wired.
native libsgit · tmux · ripgrep · libpq · libvips · openssl — the things real builds need.
terminala truecolor xterm-256color tmux session, streamed to your browser.
off starting on stopping error manual on/off · you own the box
recall("forked-online") → shared project memory agents + you author it · spans every work item
{
  "pinned_memories": [          // ride along on every get_work_item
    { "kind": "guardrail",  "title": "One commit per completed todo" },
    { "kind": "convention", "title": "Branch first — feat/wi-XXXX-slug" },
    { "kind": "convention", "title": "WI-XXXX in every commit + PR title" }
  ],
  "recall": [                   // the long tail, pulled on demand
    { "kind": "gotcha", "title": "No fixtures — remote PG lacks SUPERUSER",
      "author": "deepseek", "recall_count": 7 }
  ]
}
the harnesses

Run the agent you love. In the browser.

The pod ships the real CLIs. Open a tab and you're in the actual TUI — truecolor themes and all — talking to your repos with the forked-online MCP already connected.

Claude Code
Welcome to Claude Code
v2.1 · /workspace/forked-online · opus-4
> what changed in the rate limiter?
read app/middleware/rate_limit.rb
grep "Retry-After" (3 hits)
A token bucket in Redis, 429 + Retry-After on overflow.
─────────────────────────────
Syntax theme: Monokai Extended · ctrl+t
[pod-fo] 0:claude*opus-4 · 4% ctx
OpenCode
▄▖▄▖▄▖▖ ▖▄▖▄▖▄▖▄▖
▌▌▙▌▙▖▛▌▌▌▌ ▌▌▌▌▙▖
▙▌▌ ▙▖▌▌▙▌▙▖▙▌▙▌▙▖
share /share to create a shareable link
init /init to create an AGENTS.md
Build·Claude Sonnet 4.6
tab agents · ctrl+p commands · forked-online mcp ✓
[pod-fo] 0:opencode*"OC | Build" sonnet-4.6
managed
Hermes — hand it off, get back a PR

Not at your desk? Hand off or Implement a work item and a managed agent runs in the pod — plans, builds, and won't ship until its gate passes: coverage · tests · self-review.

Hermes Claude Code OpenCode
the loop

One canonical surface. Everything logged.

21 MCP tools — the same surface whether you drive Claude Code from a pod tab or dispatch Hermes from a work item. Read tools ground the agent; write tools land on your timeline.

read · grounds the agent
get_work_itemverify_repolist_work_itemsget_projectlist_projectslist_todoslist_activitiesrecall
write · lands on the timeline
create_work_itemupdate_work_itemset_work_item_statuscreate_todocomplete_todolog_activitypost_thread_messageassign_workitem_to_branchrequest_repo_accessrequest_clarificationrecord_discussionrememberforget
the orchestrator loop
  1. 01 checkpoint — read the timeline — never restart from zero
  2. 02 plan — propose, then wait for your go-ahead
  3. 03 break down — fire create_todo in parallel
  4. 04 implement — verify_repo, then commit per todo
  5. 05 gate — coverage · tests · self-review
  6. 06 ship — assign_workitem_to_branch → in_review
run trace · WI-0042
10:02:14 💭 thinking read the spec + recent commits
10:02:18 🛠 get_work_item WI-0042
10:02:19 ✓ get_work_item · 0.2s
10:02:31 🛠 terminal git checkout -b feat/wi-0042
10:03:02 ✓ commit 9f3c2a token bucket
10:04:40 ● verify coverage · tests · review
10:04:55 📤 PR #128 opened → in_review
lifecycle: imagination research poc mvp production maintain released

Stop renting
your workflow.

A command center for one operator — with a container the agents work inside, and a timeline that proves you built it.