How it works

Plan. Act. Observe. Reflect.

Picasso is a coding-agent harness built around the loop engineers already use. It studies the repo, chooses a path, acts through tools, reads the result, and keeps going when the next step is clear.

picassoplan modeplan · draft
sonnetplan
picasso›picasso›plan draftsonnetplan

Composition.

Repair the expired-session test and keep the auth suite green.

Changes

EDITsrc/auth/session.tsenforce one-hour max age.
CREATEsrc/auth/session.test.tscover expired and current tokens.

Verification

Run `pnpm test src/auth/session.test.ts` and report any remaining failures.

⏎approveeeditescreject
∠maintools4ctx28k / 1Mcost$0.00modeplanwaiting

First, it understands the work.

Picasso reads the repo across 1M-token context windows, the request, relevant files, tests, scripts, configs, and useful memory. For larger tasks, Plan mode turns that context into a reviewable composition before edits begin.

agent loopplan / act / observe / reflect
01Planread repo, draft plan
02Actedit files, run tools
03Observetests, logs, diffs
04Reflectcontinue or stop
completion criteria

1M context.

Whole modules, call graphs, configs, and conventions fit in view.

Memory.

Facts, style, and decisions retrieved when relevant.

Review.

A written plan before serious changes.

Then it works through tools.

Picasso acts through declared tools. It edits files with automatic syntax and typecheck diagnostics, isolates threads in git worktrees, runs shell commands, reviews branch diffs, calls MCP servers, opens subagents, and records what happened.

File tools with auto-diagnostics.

Scoped reads, create_file, and str_replace edits with syntax and typecheck feedback in TypeScript, JavaScript, Python, JSON, and Swift.

Shell and branch review.

Tests, builds, linters, formatters, /diff main, and /review-branch.

Hooks.

Project policy can run around plans, tools, sessions, and goals.

It learns from the result.

After each stroke, Picasso observes. It reads edit-loop auto-diagnostics, test output, inline syntax-highlighted diffs, and changed files in the Reasoning | Changes inspector. Then it reflects and chooses the next step.

terminalpicasso / repo
›picasso plan "repair failing auth tests"
readsrc/auth/session.ts84 lines
editsrc/auth/hash.ts+18 / -9
testpnpm test auth7 passed
mode safetools 3tokens 12.4Kbudget visible

Edit-loop diagnostics.

Syntax and typecheck errors attach directly to file edits.

Test guided.

Checks and /review-branch tell the agent what is actually true.

Stateful.

The CLI stream and three-zone Mac workspace keep the path intact.

Parallel work, isolated on disk.

Subagents and parallel threads stay out of each other's way. Use /worktree create|apply|remove in the CLI or the Worktree pill in the Mac composer so concurrent runs edit isolated git worktrees and merge cleanly back to your branch.

Named roles.

Explorer, worker, reviewer, or project-specific brushes.

Worktree isolation.

Each thread can run in its own git worktree with unread completion dots when done.

Controlled merge.

Apply verified worktree changes back to your branch.

Sponsors support managed usage. They do not enter the loop.

Sponsors never appear in code, model output, tool results, plans, routing, memory, or subagent selection. They support access through labeled surfaces outside the agent's work.

trust boundaryoutside the agent loop
generated codeclean
model outputclean
tool resultsclean
plan documentsclean
routingnot influenced
memoryretrieval only

Outside output.

No sponsor text in generated code or model responses.

Outside tools.

Tool results remain factual.

Outside routing.

Sponsors do not steer models, memory, tools, or brushes.

The waitlist
Code Freely.

Picasso for Mac is almost here — a coding agent that looks the way serious tools should, and costs what creative freedom should: nothing. Leave your email and be first on the canvas.

Free for developers — that's the point.

Sponsors and labs — the early canvas is yours. Choose Sponsor or Lab above and we'll reach out before launch.