--- kind: epic slug: agent-participation title: AI agent studio, marketplace, and chat participation plan_slug: workspace-communications status: ready priority: P1 tenant_id: global cursor_epic_id: null updated_at: "2026-10-22" --- # Epic objective Turn the existing AI rail destination into a unified AI workspace where users switch between chatting with agents and creating/managing them through an AI-assisted studio and agent marketplace. Workspace-scoped agents can then join channels, respond to explicit invocations, use approved tools, and stream normalized run events without coupling the UI to a provider or execution runtime. ## In scope / out of scope **In scope** - A single `//ai` destination with URL-backed `Chat` and `Agents` tabs. - A shared composer shell whose behavior changes by tab: conversation in Chat and natural-language agent building in Agents. - A workspace agent registry and marketplace library for templates, installed agents, workspace-created agents, drafts, and new-agent entry points. - AI-assisted agent drafting that produces editable structured configuration before explicit save/install/publish actions. - Agent identities, channel membership, mention resolution, and invocation policy. - Durable agent jobs with claim, retry, cancellation, budget, and idempotency semantics. - A normalized harness event contract for text, tools, approvals, failures, and completion. - Streaming agent state to chat and persisting the final response and run linkage. **Out of scope** - Autonomous reading of every channel by default. - A chat-specific model registry. - Installing or publishing marketplace agents without an explicit review/confirmation step. - Public ratings, billing, or cross-workspace commercial distribution in the first release. - Bypassing workspace model policy or tenant-scoped MCP authorization. ## Related tasks | Task | Link | |------|------| | Build the AI Chat/Agents workspace shell | `./Task-ai-workspace-tabs.md` | | Define the versioned agent registry schema and contracts | `./Task-agent-registry-marketplace.md` | | Expose the shared catalog and private draft API | `./Task-agent-registry-api.md` | | Enforce reviewed installation and lifecycle | `./Task-agent-install-lifecycle.md` | | Build the agent marketplace library UI | `./Task-agent-marketplace-library-ui.md` | | Generate structured agent drafts with AI | `./Task-ai-assisted-agent-builder.md` | | Edit and persist AI-generated private drafts | `./Task-agent-builder-editor-drafts.md` | | Review, test, and activate agent drafts | `./Task-agent-builder-review-sandbox.md` | | Add durable chat-agent jobs | `./Task-agent-identities-and-jobs.md` | | Chat directly with saved agents | `./Task-direct-agent-chat.md` | | Add agents to workspace channels | `./Task-agent-channel-membership.md` | | Normalize harness run events | `./Task-agent-harness-chat-streaming.md` | | Stream and finalize agent runs in chat | `./Task-agent-chat-run-delivery.md` | ## Dependencies - The AI workspace shell and registry can begin from the existing AI route, model routing, harness registry, template UI patterns, and current AI SDK chat endpoint. - Registry schema → registry API → install/lifecycle are explicit server slices. Library/editor/review UIs consume those APIs. All AI selectors, builders, mentions and jobs share this registry, never a channel-local agent identity. - Durable jobs depend on registry/lifecycle. Direct-agent chat and reviewed channel membership depend on jobs; workspace membership integration needs chat persistence, while project/object participation also waits for authoritative contextual authorization. Unified notifications consumes outcomes later rather than blocking permission enforcement. Harness execution and shared delivery follow these contracts. - Full product includes mention-to-add with authorized confirmation, scoped history/tools, idempotency and revocation per the parent plan. Current AI convoy delivers only shell, schema/contracts and inert builder service. On 2026-10-22 the user approved kickoff and the independent shell implementer is active; no other role completion, DB transition, merge or release is asserted. - Blocks: richer approval cards, marketplace publishing, and autonomous channel workflows. ## Acceptance criteria - [ ] The existing AI rail destination exposes accessible, deep-linkable Chat and Agents tabs without adding another rail item. - [ ] The Agents tab presents templates, installed/workspace agents, drafts, and creation entry points as a coherent library. - [ ] A natural-language request creates an editable agent draft; nothing is installed, published, or granted tools until the user reviews and confirms it. - [ ] Explicitly mentioning an authorized agent creates one idempotent durable job. - [ ] Chat and the builder request roles/capabilities and do not select providers directly. - [ ] Harness adapters emit one normalized event protocol regardless of runtime. - [ ] Tool calls and generated messages preserve workspace authorization and audit linkage. - [ ] Approval-required, failed, and completed runs notify the initiating user. ## Proposed timeline | Phase | Window | Notes | |-------|--------|-------| | Identity and jobs | 1 | Persistence, mention policy, queue semantics | | Harness integration | 2 | Normalized events, streaming, finalization |