Coding jobs
“Add a test for the parser” is a job like any other. jigbee manages it; a coder does the edits; nothing leaves your Mac without asking.
Two kinds of coder, your choice
| Coder | What it is | What it needs |
|---|---|---|
| Codex CLI | OpenAI's agent, driven by jigbee | The same ChatGPT plan (npm i -g @openai/codex, codex login) |
| Claude Code | Anthropic's agent, driven by jigbee | An Anthropic account |
| Gemini CLI, Aider, OpenCode | Also detected when installed | Their own sign-in or key |
| jigbee native | jigbee's own loop: read, search, patch, write, test, finish | Nothing: it uses the model you already chose |
Auto picks the first agent installed, or the native loop when none is. Once a coder has three runs here, Auto goes by the record instead: the one whose runs most often ended with passing tests. Settings → Coding shows the pick and the record; pin one if you prefer.
Repos: where it may work
Add the folders jigbee may touch under Settings → Coding → Repos, each with an optional test command (cargo test, pnpm test). Only you set that command; the model cannot. If a job names a folder that is not listed, jigbee stops and asks before adding it.
What a job does
- Looks at the repo (
repo_inspect: status, log, diff). - Refuses to start if you have uncommitted changes, so your work never ends up in its commit.
- Checks out a fresh
jigbee/<slug>branch (never resets an existing one), hands the instruction to the coder, streams the coder's own lines into the thread. - Runs your tests, commits on that branch, reports what changed and the test result.
code_ship(push and open a PR withgh) always stops for your OK first.
Shell commands typed into a terminal through the desktop are refused outright; code changes go through a coder in an allowed repo, nowhere else.
jigbee inside your other agents
jigbee mcp turns the running app into an MCP server, so Claude Code, Codex or Cursor can hand it the parts of a task that need a browser or your signed-in sites, and read the result. See CLI and API.