跳转到内容

Persistent project coordinator — vs Grok Bot and Cursor Projects

Persistent project coordinator — vs Grok Bot and Cursor Projects

Section titled “Persistent project coordinator — vs Grok Bot and Cursor Projects”

Related: Cloud agent orchestrator · 2026-09-25 Cursor Project and pstack · 2026-09-28 Pi SDK sessions worktrees and TS coordinator · 2026-09-28 Minimal orchestrator core Web UI plugin


RoleLifetimeJob
Project coordinatorPersists for the life of the projectPM + dev lead: intake, plan, spawn/wait runs, review outcomes, update shared context, talk to the human
Run / workerEphemeral per worktree+PRImplements; does not own project memory

Coordinator orchestrates runs and keeps context between runs. It should not be the process that edits the product repo in the same session that also plans the fleet (mirrors Cursor’s “coordinator doesn’t write code”).

Context layers to separate explicitly:

  1. Coordinator chat / session — conversational state (summarize when full; do not treat as sole long-term store).
  2. Project shared files — decisions, how-to-test, architecture notes, open risks (survive summarization; workers read/write via policy).
  3. Run artifacts — branch, worktree path, Pi session JSONL, PR URL, e2e logs (owned by orchestrator store + worker cwd).

DimensionOur lockCursor ProjectsGrok Bot multi-bot
Unit of persistence1 coordinator / project1 coordinator chat / Project1 agent identity / sidebar chat (or role like Coordy)
Does coordinator code?Prefer no (delegate runs)No — plans/delegates onlyRole-dependent (Coordy = PM; Researchy = research; coding bots code)
Worker shapePi session + worktree + PRCloud/local coding agentsOther bots via SendToAgent, or subagents inside one bot
Cross-run memoryProject files + event store + coordinator sessionSynced Project Context files + auto-summarized coordinator chatPer-agent memory (profile/log) + vault notes + group chats; not auto-shared across bots unless messaged or written to vault
Human interfaceCore API + Web UI plugin (and/or a named bot like Coordy)Agents Window → Project → coordinator chatChat with the bot; bots message each other
Trigger modelCore events / CLI / subscriptions (open)Listening: Slack, schedule, PR, CIRoutines, inbound channels, agent-to-agent wakes
IsolationWorktree+PR by designCloud agent sandbox / branch+PRSoft: separate chats/memories; no built-in git worktree product
  • Human directs a persistent coordinator; coordinator stays responsive because it delegates instead of blocking on code.
  • Shared context files sync across machines; workers contribute learnings so future agents skip re-onboarding.
  • Coordinator chat still has a context window and auto-summarizes; durable knowledge belongs in Project files (docs, forum clarification).
  • Steal: non-coding coordinator, shared files as truth, fresh context per worker, Listening-style subscriptions later.

Grok Bot / multi-bot orchestration (reference)

Section titled “Grok Bot / multi-bot orchestration (reference)”
  • Persistent agents (Coordy, Researchy, Designy, …) are long-lived roles with their own memory, skills, and chat — closer to “always-on PM” than to ephemeral CI runners.
  • Ephemeral workers appear as subagents / one-shot tasks inside a bot, or as short-lived peer asks (SendToAgent with a concrete deliverable).
  • Cross-bot context is explicit: message a teammate, write a vault note, or share a project file — there is no automatic Project Context sync across bots.
  • Steal: named durable PM identity (Coordy ↔ project), clear fan-out rules (don’t wake the fleet casually), vault/project files as the shared substrate between roles.
  • Avoid: treating every specialist bot as a coding worker in the same repo without worktree isolation; avoid unbounded agent ping-pong.

ConcernWhere it lives
Coordinator identityLong-lived Pi session or host process that embeds Pi for the coordinator only; separate agentDir / session file from workers
Worker runscreateAgentSession({ cwd: worktree }) per run; dispose on settle (2026-09-28 Pi SDK sessions worktrees and TS coordinator)
Shared contextProject directory / object store the core mounts into workers (read-mostly) and coordinator (read-write)
EventsCore append-only log so UI/plugins see plan → spawn → PR without reading Pi JSONL (2026-09-28 Minimal orchestrator core Web UI plugin)
Grok Bot bridge (optional)Coordy (or clone) as the human-facing coordinator UI that calls the core API — same role split, different front door

  1. One coordinator per project, durable across runs; coding agents are run-scoped and disposable.
  2. Coordinator does not commit product code in the worker worktree; it opens/closes runs and updates shared context.
  3. Split memory: chat (summarizable) ≠ project files (durable) ≠ run artifacts (per PR).
  4. Align with Cursor on non-coding coordinator + shared files; align with Grok Bot on a named persistent PM identity and explicit handoffs.
  5. If Coordy remains the human PM surface, keep the TypeScript core as source of truth for runs/events so the Web UI plugin and Coordy stay interchangeable clients.