Everything, by area
Features
Bisa carries work from a stated want to a running outcome: you set the goal, agents do the work on the harnesses you already have, and you decide what matters. Here is all of it — and, at the end, what is not there yet.
Inbox and Pulse
The Inbox is the one place anything waits for you. A row is a thing — a goal, a channel, a conversation, a workstream, a project, a workflow — carrying what is asked of you and what happened.
- A gate to approve or decline, a question with the answers the agent thinks it has, a held step to release. I'm not sure sends the agent back with a narrower question.
- A harness waiting at its prompt in a terminal is a row too.
- Keyboard first: j k to move, Enter to open, a to reach the answer, e to mark read.
- The Pulse is the live feed of what happens across the workspace, paged back as far as it goes.
Agents and teams
An agent is a definition — a prompt, a harness, a model plan with failover, an effort, skills and MCP servers — with an attested keypair of its own, so its work is signed as itself. Bisa ships no harness: it drives the ones on your machine (every harness, and what Bisa does with each).
- Three core agents. The General Agent triages and staffs; the Workflow Agent designs and repairs; the Decision-Making Agent judges, off until you choose who answers for it.
- The catalog: 32 agents named after jobs you recognise, 25 skills, 9 teams, 8 channels and 13 templates — installed on demand, transitively and never destructively.
- Model plans: fallback, weighted, round-robin, least-busy or auto-route, with live health on each model.
- Effort: six levels from
minimaltomax, decided by the step, the model, the plan or the workspace, and fitted to what each harness and model take. - Skills delivered the way each harness reads them; MCP servers of your own over stdio or HTTP, probed for health.
- Teams of agents and people, one level deep; an agent's private memory, encrypted to you.
The Project IDE
A full development environment where agents work beside you. A project is a real folder — created, cloned, imported or adopted — and Bisa never writes into a folder it did not create. Every piece of work gets a workstream: a branch and a checkout of its own.
Editing and finding
- The Monaco editor; saves are compare-and-swap, never last-write-wins — a file changed under you opens a three-way merge.
- Search across the checkout and replace with a preview; quick open; language servers for diagnostics, hover and definitions.
- PDFs, pictures, video, spreadsheets, documents and slides rendered; annotate any rendered page for an agent.
Terminals and harnesses
- Many shells, one tab each, drawn on the GPU; scrollback that survives a restart.
- Every installed harness in a tab, resumed with its own flag; a harness's state on the roster as it works.
- Claude Code and GitHub Copilot CLI ask the guard before each tool runs.
Git and pull requests
- A streaming commit graph; staging by hunk or by line; stashes; interactive rebase without a terminal.
- Conflicts resolved block by block — keep mine, keep theirs, keep both — or handed to an agent.
- A recovery ref before anything moves your tree; Restore is the undo. Agents cannot reach those operations.
- Pull requests on GitHub, GitLab and Bitbucket Cloud in seven steps — Commit · Push · Open pull request · Checks · Review · Merge · Clean up — with an agent's review and Fix with for a comment or a failed check.
Agents in the IDE
- Agent mode: a conversation about a checkout in manual, auto or plan.
- Context only as chips you can see and remove; every edit attributed to its turn, kept or undone by hunk, file or turn; any message restored to before it.
- The Board: workstreams as cards in Backlog · Todo · Doing · Done · Archived.
- The embedded browser: folders of the checkout served on this machine, 21 browser tools for agents on the app's own tabs, the wand to point at what you mean.
- Mobile Development: a Flutter checkout's simulators and emulators, the device mirrored beside the code — off until you switch it on.
Workflows
A workflow is a small graph of steps in four families — events, gateways, loops and tasks — designed by hand, taken from one of 13 templates, or proposed by the Workflow Agent and adopted by you. It runs on a goal, or on its own in the workspace, as many at once as you start.
- The designer: a palette, a canvas, and Properties · Agent · Runs beside it. Every save is a new revision; when somebody else saved first, you keep yours on top of theirs or take theirs.
- The Workflow Agent in the designer: ask it to change the graph and watch the canvas follow.
- Conditions are a closed, typed set nesting at most eight deep — no expression language to script around.
- Budgets of tokens, cost and wall time per run; a spent budget pauses a goal's or a workflow's listening until you look.
Events and gateways
What starts a workflow is part of it: a start step for each way in. Turn a workflow On, or let a goal listen, and every occurrence is written down as a durable signal that begins a run.
manualby handscheduleon a schedulehookwhen calledmessagewhen a message arrivessignalwhen a signal is raisedprojectwhen a project changesrunwhen a run finishesplatformwhen the platform saysconnectorwhen an outside platform lists something newcheckwhen a check starts failing
- An event never acts. It is written down, and a run begins from what was written — one signal, one run, even across a crash.
- Boundary events on a running step: a timeout, a reminder, a message, a signal — each diverting the step or acting beside it.
- Public hooks are off until you turn them on, and a call proves itself with its secret or a GitHub-compatible signature.
- Templates install Off; four of them also begin on an event — a schedule, a hook, a failing check, a failed run.
Goals
A goal is the durable thing you come back to: a stated want, the workflow that makes it real, the run that carries it, and a signed journal of everything that happened. Its status — draft, running, waiting, done, failed, closed — is wherever its run has got to, and it always says who holds it: you, agents, the world, or the design.
- Three modes. auto (the default): the Workflow Agent designs and the platform adopts, starts and repairs, asking you after three failed repairs or where only a person can act. guided: the Workflow Agent proposes and you adopt, ask for changes, edit the steps or decline. manual: your own canvas.
- One live run at a time, others queued behind it; Stop, Restart, Close with a word on why — or the goal that replaces it.
- A goal can listen:
every Monday, post the digest
— its workflow's starts are heard until you stop it. - Documents as context, projects attached and detached without a byte moving on disk, and a retirement that says what it would touch before it touches it.
Channels, direct messages and conversations
- Standing channels with rosters; direct messages with people and agents, encrypted pairwise to the people in them.
- A message that names nobody reaches the General Agent, which answers or hands it on.
- Conversations about any goal, workflow, project, workstream, note or drawing; replies stream with the agent's thinking folded above.
- Artifacts render live — pages, charts, sheets, decks, PDFs, documents — and save where you choose.
Settings and the desktop
- One registry at three scopes — this machine, the workspace, a project — nearest winning, every control showing where its value comes from.
- Five theme families, each light and dark: Glass, Harbor, Orchard, Dune and Suede; a keymap with default, VS Code and vim presets.
- The menu bar icon, system notifications by category, and every screen back as you left it.
- 9 pets, one keeping you company in the footer.
Collaboration and people
Invite people from other machines into your workspace, as humans, at a role you choose — over ordinary Nostr relays, optional and off by default.
- An invitation is a link, a code or a QR: single-use, expiring, its secret kept only as a hash.
- Guest, member or admin; you decide who may decide which gates. People bring no agents.
- Every fact that leaves your node is sealed for one recipient (NIP-44) and gift-wrapped (NIP-59): a relay sees ciphertext and a recipient key. Exactly what is encrypted, and to whom.
- Every message from outside is read by the classifier before anyone hears it.
Connectors
15 connectors ship in the catalog, each a file you can read; your own is a TOML definition, not a change to the platform.
ConfluenceFacebook PagesGmailGoogle CalendarGoogle DriveInstagramJiraLinearNotionObsidianSlackTikTokTrelloXYouTube
- Accounts with an API key, a bearer token, basic auth, OAuth 2 with PKCE or a signed JWT — secrets in the keystore, never in a record or a prompt.
- A writing step has an approval before it, or you mark it to run unattended; every write is keyed, or stopped.
- A host that fails five times rests for thirty seconds before it is called again.
Notes
A markdown scratchpad beside the workspace, a project, a goal, a workflow, a channel or this node: write, split or read, find and replace, and ask an agent beside the note — it adds to the note only when asked. Your notes are a git repository of their own, and they never travel to other members.
Drawings
An Excalidraw canvas over the app, with ten templates and the platform's shape libraries. A drawing travels to every member of the workspace, and agents draw into it while you watch — a Mermaid flowchart becomes real shapes. Drawings are a git repository of their own too.
Security
The Redactor, the Tool & Commands Guard and the Classifier are on from the first run; a publish gate stands before anything leaves your machine; nothing is deleted while something points at it. They are best effort — never a sandbox. What is covered, and what is not.
Decision-making
The Decision-Making Agent answers typed questions — is it so, which one, how much — with a probability, at 11 decision points, each keeping its own rule for when the agent is off, unsure or silent. Answered by Jev or any calibrated RLCD model, or by a harness or an agent marked uncalibrated; off until you choose who judges. A judgement never signs a gate.
Addons
Small windows over the app, each a folder of HTML, CSS and JavaScript: Calculator, Clock, CPU, Disk, GPU, Memory, Needs you, Pomodoro, Sticky note, Stopwatch, Tic-tac-toe, Unit converter and Weather. Three walls and one bridge of seventeen methods, each needing a permission you granted; an addon reaches the network only through the platform, and only the hosts its manifest declares.
Command line and APIs
One binary is the command line (bisa), the daemon (bisa node, an HTTP API with one event stream on a socket of your own) and the MCP server every harness session is handed (bisa mcp). Agents can be exposed and used over A2A. The desktop is a Tauri app that drives the same node.
Not there yet
Said plainly, so nothing surprises you:
- Releases are for macOS; Linux and Windows are coming soon, and build from source today — unsigned, without the menu bar icon or system notifications.
- English is the only interface language.
- Language servers give diagnostics, hover and definitions — no completion or rename.
- The guard vetoes what Claude Code, GitHub Copilot CLI and ACP agents ask; Codex, OpenCode, pi, Oh My Pi and a custom harness are observed, not vetoed.
- There is no automatic update, and a release may not read an older workspace.