Skip to content

Traycer parity epic: gap analysis of capabilities Overdeck lacks #2566

Open

Description

@eltmon

PRD: drafts/pan-2566.md on overdeck-state


Summary

Epic: gap analysis of Traycer (traycerai/traycer, Apache-2.0) against Overdeck, derived from a full sweep of their open-source clients + protocol and docs (2026-07-10). This epic tracks only genuine gaps — capabilities Traycer has that Overdeck lacks. Each item pursued gets its own child issue; this epic is the triage list, not an implementation plan.

Excluded because Overdeck already has an equivalent (verified against main): multi-harness support, mid-conversation model/harness switching (switch-strategy.ts tiers + summary-fork.ts seeding ≈ Traycer's session re-seeding), conversation forking, voice dictation (VoiceWidget + useVoiceTranscription), image paste/drop attachments (ComposerFooter + composerStore), context-window meter, command palette, cost tracking, worktree-per-workspace isolation, planning/review/verification pipeline (deeper than Traycer's), desktop shell with tray/auto-update/deep-links/autostart (apps/desktop/src/), TTS, MCP wiring for agents.

Major gaps (each is a candidate child issue)

1. Multi-agent task surface + agent-to-agent messaging

Tracked separately — see PAN-2565. Listed here for completeness; it is the largest gap.

2. Checkpoints / restore / revert

Traycer records per-turn checkpoint manifests and offers restore-checkpoint and revert-on-edit flows from the chat timeline (checkpoint-manifests.ts, restore-checkpoint-dialog.tsx). Overdeck has git commits (per-bead in the pipeline) but no conversation-level "rewind the files this turn touched" affordance for interactive conversations.

3. Live collaborative artifacts with comments

Traycer's Epic mode stores specs/tickets/stories/reviews as live collaborative documents (Yjs, per-artifact rooms) with comment threads (create/reply/resolve), @mentions, statuses, hierarchy, and human assignment. Overdeck artifacts (PRDs, vBRIEFs) are git-committed files — durable and reviewable, but with no comments, no co-editing, no in-dashboard artifact editing. Related: PAN-277. The PAN-659-lineage "collaborative markdown editing" followup to PAN-658 is the natural home for the co-editing transport.

4. Real-time co-editing + persistent roles (owner/editor/viewer) + orgs/teams — GATED, filed as PAN-2608

Traycer collaboration is cloud-CRDT: persistent per-task roles, org/team-level grants, ticket assignment to humans, presence including cross-device "agent working" indicators. PAN-658 deliberately targets the live session model (lobby, ephemeral membership); the persistent-roles / team-workspace model is a different product surface and needs its own decision: do we want durable multi-user projects, or only live shared sessions?

5. Cross-device sync of conversations/tasks — PURSUED, filed as PAN-2609 (PRD: drafts/pan-2609.md)

Traycer syncs durable task state (transcripts, artifacts, agent metadata — not PTY buffers) across devices via cloud CRDT rooms. Overdeck is single-machine: overdeck-state syncs pipeline state per-project via git, but conversations/JSONL/tmux are machine-local. A design here must reconcile with the no-content-on-our-servers stance PAN-658 locks in (options: git-backed sync, E2E-encrypted relay, self-hosted room server).

6. Message queueing UI

Traycer queues prompts sent while the agent is mid-turn, with drag-reorder and edit-before-send of queued drafts. Overdeck typing during a turn just lands in the PTY input. Small but high-touch UX. (Also intersects PAN-658's contributor-queue open question — same queue primitive.)

7. Worktree safety classification + bulk cleanup UI

Traycer's worktrees settings classify each worktree by evidence tier (Merged / At base / Unreferenced / Review / Orphaned / In use) with bulk delete. Overdeck has close-out teardown + the reaper, but no operator-facing classification/cleanup surface for accumulated workspaces (a recurring real pain — disk pressure from stale workspaces).

8. Per-provider rate-limit usage views

Traycer surfaces provider rate-limit windows/usage in settings (host.getRateLimitUsage). Overdeck tracks cost but not rate-limit headroom per provider/subscription.

Minor gaps (batch into a polish issue if pursued)

  • Customizable keybindings (chord capture, per-action rebinding) — dashboard has fixed shortcuts.
  • MCP server management UI at user/org scope with auth status — Overdeck wires MCP per-agent internally, no management surface.
  • In-dashboard notification center (bell + turn-completion/comment notifications) — Overdeck has the activity feed, needs-you queue, and TTS; no unified bell/inbox.
  • Resource monitor UI chip (host CPU/mem) — the memory governor exists server-side with no frontend surface.
  • Terminal appearance settings (font family/size, cursor style/blink) per user.
  • Find-in-terminal / find-in-panel (dashboard has conversation search; no within-pane find).
  • Onboarding flow (guided first-run: detect agents, theme, first task) — pan install/pan new-project are CLI-only.
  • Prevent-sleep while agents run (desktop).
  • Agent selection guide (editable global + per-workspace instructions steering which child agent/model to spawn) — partially covered by context layers; revisit alongside the multi-agent issue.

Non-goals

  • Cloning Traycer's product shape. Overdeck's pipeline-first, git-durable, local-first architecture is a deliberate difference; parity items are adopted only where they serve it.
  • Anything already excluded above as "have it".

Process

  1. Triage each major gap: pursue / defer / reject, recorded here.
  2. Pursued items get child issues (linked back here) with their own PRDs.
  3. This epic closes when every major gap has a disposition.

Activity

  1. eltmon commented on Jul 25, 2026

    @eltmon
    OwnerAuthor

    Gap #1 (multi-agent task surface + A2A messaging) now has a research package attached at PAN-2565: traycerai/traycer clone review, 2026 A2A standards landscape, and two interactive mockups (architecture flow + task-room/council UX) on overdeck-state.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions