The canvas workspace
for AI delivery

Meee2 turns local agent work into nested canvases: a monitor home for status, workflow canvases for gated execution, and template-defined surfaces for artifacts, scenes, lists, and team handoffs.

Local context becomes team statesessions, evidence, branches, approvals
CANVASMonitor
Delivery plan created, waiting for feature_brief inputAll canvas nodes are in draft. First node depends on owner context...All clear  1m ago
Search deliveries, canvases, nodes
CompactComfortable
19 items
MonitorWorkflowKanbanSceneSubcanvascards can drill into child canvases
Blocked7
Canvas3d
Feature brief handoff
blocked
11 evidence2/4 nodes
Canvas3d
Release review canvas
blocked
3 evidence0/3 nodes
Canvas4d
Agent onboarding
blocked
4 evidence1/5 nodes
Approval1
Canvas1d
Insert transform session between nodes
pending
0 evidencehuman gate
Running1
Canvas16d
Landing page product pass
draft
0 evidence0/5 nodes
Ready10
Canvas3m
PR comment follow-up
ready
2 evidence0/1 nodes
Canvas8d
Inspect Meee2 modules
ready
0 evidence0/4 nodes
Canvas23h
NPC Canvas
ready
0 evidence0/4 nodes
Done0
Monitor: No items
Nested canvasMonitor cards can open workflow, scene, or subcanvas views.
Rollup statusChild canvas blockers and evidence roll back to the parent.

One workspace, several canvas forms

The monitor is only the home view. Meee2 canvases can nest, switch render forms, and carry their own orchestration, recap, evidence, and template policy.

Meee2 OnlineOnline Console
TeamMeee Labowner
Synced sessions14from local Meee2
Team canvases5read-only list
Connected Macs23 registered
Synced Local Sessions14 active

Landing page iterationcodex / kai-mbp / just nowactive

Canvas object protocolclaude-code / local shell / 6mrunning

Owned Sub-Canvases3 assigned

Release reviewparent node: approval_gateopen

Visual QA passfrozen I/O contract v12open

Home canvas

Monitor home

The home canvas shows synced Macs, active sessions, team canvases, owned sub-canvases, and delivery status in one read.

  • 14 sessions
  • 5 team canvases
  • 2 connected Macs
Canvas Workspaceworkflow: release landing
01Input contractfeature_brief required
02Codex buildtooling active
03Evidence gatebrowser QA + diff
04Owner approvalwaiting
Gated

Workflow gates

Workflow canvases keep parent input, tool runs, evidence requirements, and owner approval visible before work moves forward.

  • Input contract
  • Evidence gate
  • Owner approval
Blocked7
Feature brief handoff11 evidence · 2/4 nodesblocked
Release review canvas3 evidence · 0/3 nodesblocked
Approval1
Insert transform session between nodes0 evidence · human gatepending
Running1
Landing page product pass0 evidence · 0/5 nodesdraft
Ready10
PR comment follow-up2 evidence · 0/1 nodesready
Inspect Meee2 modules0 evidence · 0/4 nodesready
Status board

Kanban canvas

Kanban form is still a canvas: cards can carry sessions, blockers, recaps, and links into child work surfaces.

  • Blocked
  • Running
  • Ready
Scene: release lablive from local Meee2
Claude Codetool calls + diff
Browser QA127.0.0.1:3000
Evidencescreenshot + recap
Review gateowner decision
Spatial

Scene canvas

Scene form lets the team arrange terminals, browser evidence, diffs, and review gates around the work itself.

  • Terminal
  • Browser QA
  • Review gate
Sub-canvas · you own thisVisual QA pass
Back to console
Upstream / downstream contract

The work owed back to the assigner is bound by this frozen contract. The parent canvas itself is not shown here.

{ "version": 12, "input": { "upstream": "landing-page-iteration" }, "output": { "payload_kind": "artifact_ref" } }
3 nodes plannedread-only online viewupdated just now
Nested

Nested subcanvas

A subcanvas opens with its own owner, frozen I/O contract, version, node count, and safe read-only context boundary.

  • Frozen contract
  • 3 planned nodes
  • Version 12
Native terminal

Run the real terminal. Keep the canvas aware.

Meee2 does not turn Claude Code or Codex into a fake chat widget. It opens native terminal sessions inside the canvas, preserves the provider workflow, and binds each run back to nodes, blockers, and evidence.

  • Ghostty-backed terminal surfaces stay inside the Canvas workspace instead of jumping to another app.
  • Session identity stays separate from provider resume IDs, so reconnect and recovery remain reliable.
  • The planner contract, terminal transcript, and canvas state stay visible together when work needs review.
Claude Code - raycast-v2-agentrunning
CMUX_SURFACE_ID='ghostty-surface-0327...' claude --resume '6a949...'
Last login: Sun Jun  7 on ttys021
kai@kais-MacBook-Pro ~/.meee2/workspaces/global/raycast-v2-agent
› Claude Code v2.1.158

You are executing a Meee2 AI planner node.
Canvas ID: 224252bc-0b70-4421-9d15-8d6882406dd1
Node: M1 local product idea -> prd-draft
Completion signal: write Lark Wiki /prd-draft/<date>
Before doing work, call read_node_contract with this canvasId and nodeId.

Thought for 4s, called meee2 2 times
└ Interrupted · What should Claude do instead?
bypass permissions onfor agentsmax / effort
M1 and M3 waiting for inputNeeds reply 1
Claude Code sessionobserved by Meee2
native workflow
local shell / no context export
$ claude-code resume landing-page-iteration > inspect product route and update section copy tool: rg --files src/app tool: pnpm exec eslint src/app/page.tsx diff: page.tsx + page.module.css recap: waiting for visual QA evidence
PromptToolsDiffReview
Live observability
  • 01Command timelinerg, pnpm, browser QA
  • 02Evidence streamdiffs, screenshots, recaps
  • 03Canvas rollupblocked, running, ready
Claude Code native

Keep Claude Code in its flow. Make every run visible.

Meee2 adapts to Claude Code as a local session workflow instead of replacing it. Prompts, tool calls, commands, diffs, browser checks, recaps, and blockers become canvas evidence that teams can inspect, approve, and hand off.

  • Resume and monitor Claude Code sessions without moving context off the machine.
  • Turn terminal activity into a readable timeline attached to the canvas node.
  • Roll up evidence, blockers, and review state into parent canvases for team visibility.

A new surface for local AI work. Purpose-built for teams where agents, evidence, and nested canvases move together.

Meee2 does not flatten agent work into one tracker shape. It turns local execution into a spatial, inspectable operating layer for humans and agents.

FIG 0.1

Local-first by design

Sessions, artifacts, recaps, and evidence stay close to the machine, then roll up into a shared workspace.

FIG 0.2

Built for agent workflows

Codex, Claude Code, human gates, and child canvases can run as one observable delivery system.

FIG 0.3

Evidence over noise

Every decision can carry the screenshots, diffs, recaps, and template rules that explain why it moved.

Every decision keeps its trail

Recaps, proposals, diffs, screenshots, and handoffs are first-class material. The team can share the board while sensitive execution context remains local.

Canvas can nestWorkflow can gateMonitor rolls up statusTemplates define form

Help shape the next Meee2 build

Join the feedback group to share your local agent workflow, canvas forms, and observability needs with the team.

Join feedback group