Skip to main content
Most AI building tools are good at the first prompt and bad at the fiftieth. The conversation scrolls, the plan is gone, and next week your agent quietly reverses a decision you made on purpose. Workser Code gives every project a workspace that outlives the conversation — and gives your agent the commands to keep it honest.

Create a web app from a project channel

Board

What’s planned, in progress, in review and done — kept current as the work happens, not filled in afterwards.

Docs

Documentation attached to the project instead of drifting out of date in a separate wiki.

Decisions

A record of why a choice was made, with its context and consequences.

Memory

Durable, searchable knowledge shared with your project’s cloud agents.

Channels, goals and task handovers

Use project channels to discuss the work in context. Goals and milestones describe the outcome; tasks and subtasks track the implementation and the role responsible for each step. Handovers should name the changed files or services, the checks performed, known failures and the next decision. The next teammate receives relevant project and task context. This shared state is not a merged model context window, and it does not combine your provider subscriptions. Keep the distinction between an accepted plan, completed task, passing check and approved production release visible. Each answers a different question about readiness. Configure the people and agents responsible in Team. Watch a task approval in the conversation. Approving task work is separate from approving a production deployment.

The board

Statuses are backlog · in-progress · in-review · done; priorities are low · normal · high · urgent. Workser Code’s agent instructions require that a plan with more than one phase gets filed as cards before the work starts — one card per phase, with only the current one in progress. The test is simple: if you closed the conversation right now, the board should still show what’s left. There’s deliberately no board delete. done is the terminal state for finished work, and removing a card you filed is yours to do in Workser Code.

Documents

A doc is stored both as the rich text the Docs panel renders and as a git-tracked markdown mirror at .workser/docs/<id>.md, so your agent can read it with ordinary file tools.
A doc linked to a board card (--work-item <id>) renders on that card and is hidden from the Docs panel. So a plan spanning three phases should not be linked — it belongs to the project, not to phase 1.

Decisions

Decisions are append-only — there’s no decision update. A decision record states what was decided at a point in time; when it stops being right, a new decision supersedes it and says so in its context. Editing the history is how a decision log stops being worth reading. This is the single most useful thing in the workspace for long-lived projects: it’s what stands between your agent and quietly undoing a choice someone made deliberately.

Requirements

Requirements do move along, so unlike decisions they can be updated:

Memory

Memory is durable and searchable across conversations, scoped to the project — and it’s the same memory space Workser’s cloud agents use for that project. Something your local agent records, a cloud agent can find, and vice versa. forget is a soft delete: the content stays retrievable by id but drops out of future searches, which is the right way to retire something outdated rather than layering a contradiction on top.
Never store a secret in memory. It’s retrievable and displayable by design.

Brand

Set your brand once — logo, colours, fonts — and everything your agent builds follows it.

Explore screens in the design canvas

The same values are generated into the project as design/tokens.json (DTCG format) and design/tokens.css (plain CSS custom properties). Both are generated wholesale and overwritten on every sync, so they’re never hand-edited — your agent maps them into the app’s theme instead. Having no brand set is an ordinary state, not a blocker: your agent picks sensible styling and moves on. Changing the brand is yours to do in Workser Code, under Design → Brand, so that every surface it feeds stays consistent.

Asking you a question

When your agent is genuinely blocked — a missing value, an ambiguous requirement, permission for something consequential — it can ask you directly rather than guessing or burying the question in a message nobody answers:
This shows a real card in the conversation and blocks until you answer, then hands the answer back — so the agent asks, reads your reply, and keeps working in the same turn. It times out (10 minutes by default) rather than hanging forever.
Never answer one of these with a secret value. The answer is stored and displayed. If a key is needed, say where it should go and set it yourself with workser env set, which writes it without your agent ever seeing it.

Extras your agent can reach for

Web search

workser search "…" runs a grounded Google search server-side — the API key never reaches the agent — and returns an answer plus its sources.

Image generation

workser image generate "…" returns a public image URL, optionally conditioned on up to four reference images.

Computer-use tools

workser tool list / workser tool run give the agent files, shell, screen, input, clipboard and basic browser control on your machine — approval-gated, same safety policy as Computer Use.

Next

The workser CLI

Every command on this page, with flags, exit codes and the JSON contract.