Webbee Code
The coding agent that lives in your terminal.
She reads, writes and runs the code in your working directory, while the brain runs in the cloud on ICNLI, the open protocol behind her. No model keys on your machine.
The model proposes. The kernel decides. The key, delete, drop, wipe, stays with you.
mode: default · model: Smart · 3.4k tok · 1.2M credits this session · ▶ 1 runningwebbee 0.3.50
Python 3.11+ · MIT · no model keys on your machinefull install guide →
This is what she looks like
One window. Tabs. A Home screen. A terminal that behaves like a workspace.
Not a prompt that scrolls away. Webbee Code opens as a dock: a Home screen you navigate with the arrow keys, session tabs across the top, a pinned input box, and a status line that always says what she is doing and what it has cost.
⋯ queued (3) ▾· ↑ edit last · click to edit · ✕ remove
[telegram] also bump the changelog
run the full suite once that lands✕
then push the tag✕
⠹ working · bash pytest -q · 12s · 7 · 41.2k tok · Esc/Ctrl-C to stopwebbee 0.3.50
Below is the real interface, rebuilt in the page, every colour, glyph and label is read from webbee 0.3.50 itself. Click the tabs.
Every command
/helpevery command/modedefault · plan · autopilot/modelSmart · SuperSmart · UltraSmart (or Ctrl+B to cycle)/statuscwd · git · surface · tokens · version/costwhat this session has spent/checkpointsthe session's snapshots/rollbackput the workspace back/tabsyour session tabs/newanother task, in parallel/attachhand her a local file (or a glob) to read/queueline up work while she's busy/notifyoff · panel · telegram · both/sessionswhat's running, anywhere/clearreset this conversation
One package. Any machine.
Pure-Python, one universal wheel, no native build step, so there is nothing that can be "wrong" for your chip. Runs wherever Python 3.11+ does: macOS (Apple Silicon or Intel), Linux, and Windows, on Intel, AMD or ARM alike.
- No model keys to manage, the brain runs in the cloud, the terminal stays light
- One login for every surface, the panel, the terminal and your messenger share the same session
- Upgrading is the exact one-liner you installed with
You hold the key
Three modes. One keystroke. You decide how much rope she gets.
Cycle them with Shift + TAB , mid-task, without restarting anything. Pick one below and read both columns: what she does herself, and what she will not touch without your word.
mode: default · model: Smart · 3.4k tok · 1.2M credits this session · ▶ 1 runningwebbee 0.3.50
One keystroke, three tiers
How much thinking a task is worth, you decide, mid-session.
Cycle tiers with Ctrl+B or type /modelno restart, no losing your place. Same shift + tab muscle memory as switching modes.
Smart
The default tier, fast, and strong enough for almost everything you'll throw at her. What runs when you never touch /model at all.
- The vast majority of everyday tasks
- Reading and mapping a repo
- Anything you want back fast
SuperSmart
For the especially heavy stuff, when a task is worth slowing down for.
- Multi-file refactors
- Debugging something non-obvious
- Tasks with real tradeoffs to weigh
UltraSmart
The unhinged one, maximum reasoning horsepower for the task you'd otherwise do yourself. Coming soon.
- Architecture-level decisions
- The hardest problem in the queue
- When being right matters more than being fast
The time machine
Reversibility is ours, not yours.
A shadow git repository of her own: its git directory lives in her cache, its worktree is your workspace. Your .git, index, refs, hooks, is never touched.
Every write is checkpointed
Before a write tool runs, the workspace is snapshotted. Not "most of the time", before every one.
Your git stays yours
Her commits are signed with her own identity, hooks disabled, and inherited git environment variables are scrubbed so a snapshot can never land in your repository.
A rollback is itself undoable
Rolling back snapshots the pre-rollback state first, so undoing the undo is one command away.
It never blocks the work
No git binary, init failure, disk full, the time machine degrades to an honest message instead of stopping you.
⠹ working · checkpoint·snapshot · 12s · 7 · 41.2k tok · Esc/Ctrl-C to stopwebbee 0.3.50
Not a chat about your code
She reads, writes and runs, in your working directory.
No pasting files into a box and pasting the answer back. She opens the real files, runs the real tests, and reads the real output, then fixes what the output actually said.
Her hands
15 tools · 5 groups
She reads the real files in your working directory, not a summary someone pasted into a chat.
read_filegrepglob
Several tasks at once, without them colliding.
- A second tab in the same repo gets its own checkoutOpen a second session against a repo another tab already holds and she gives that tab its own git worktree, so two parallel tasks can't overwrite each other.
- It fails soft, never loudNo git, not a repo, a dirty ref, disk full, the tab still opens on the shared checkout with an honest note.
⠹ working · pytest -q · 12s · 7 · 41.2k tok · Esc/Ctrl-C to stopwebbee 0.3.50
The part no other terminal agent has
She codes with the rest of your work in reach.
Other terminal agents see a folder. Webbee reaches the apps you already connected to Imperal, so the bug report, the note and the task are part of the same turn as the fix.
Mail
Read the crash report a customer mailed me and fix what it describes.
Tasks
Close the ticket for this bug and write what the fix was.
Notes
Save how this deploy works, so future me doesn't re-learn it.
Steer her from anywhere, mid-task
An instruction sent from Telegram or the panel while she is idle is picked up and run on the next tick. The terminal stays the only thing executing.
Every one of those still runs through the same gate: anything that writes, sends or spends stops and asks you first.
⠹ working · mail·search · 12s · 7 · 41.2k tok · Esc/Ctrl-C to stopwebbee 0.3.50
One Webbee, any window
Walk away mid-task. Approve it from your phone.
The terminal, your messenger, the panel, your own code, the same Webbee, one memory, one context. Answer a consent card wherever you are and the run picks up where it stopped, instead of starting over. A surface is a connector: Telegram ships today, Discord is next on the same seam.
- Your terminalWhere the code is. She reads, writes and runs it here, in your working directory.
- Your messenger: Telegram todayApprove a consent card from your phone and the terminal unfreezes and carries on, the answer travels, the work never restarts. A messenger is an adapter, not the product: Telegram is the one shipped, Discord is next on the same seam.
- The panelSteer the running session, watch the steps, or take over. Same memory, same context, same Webbee.
- Your own codeThe API is a surface like any other, drive the same Webbee, with the same memory and the same consent gate, from a script or your own product.
Webbee
streaming into your messenger
Two lines, and she’s in your terminal.
mode: default · model: Smart · 3.4k tok · 1.2M credits this session · ▶ 1 runningwebbee 0.3.50
What that means for your machine
- Risky and paid actions ask before they run, you stay in control.
- Personal details are masked before they reach the model.
- Encrypted in transit.
The model proposes. The kernel decides. The key, delete, drop, wipe, stays with you.