Feature coverage map
This map assigns each requested product capability to the Maia slice that owns it, or marks it open or not planned. Status lives in the named roadmap entries, not here; most owners are planned in agents, routines and triggers, agent operations, personal agent and organizations and people.
Covered by a slice
| Feature | Maia owner |
|---|---|
| People, invitations, teams, built-in and custom roles, guests with an expiry | ORG1 |
| SSO, directory sync, MFA, verified domains, session policy | ORG2 |
| Service accounts and personal access tokens | ORG3 |
| Two-person approval, role limits on Connections, models and tools, access reviews | ORG4 |
| Audit search, export and streaming; usage per person and team; seats and license | ORG5 |
| Administration console | ORG5 in the CLI, then clients (S52, R9) |
| Offboarding with ownership transfer; personal data export and erasure; legal hold | ORG6 |
| Organizations and projects; several repositories per project | Workspaces and Projects (R1, R3); R5 bindings |
| Nested tasks; a parent wakes once on its last child | S53 |
| Blocks, wait, task tree, bulk close | S53 (exact task IDs, never all) |
| Branch name and PR links per task; close a task whose PR merged | S53, S61 |
| One task becomes subtasks | S50 step adding S53 tasks |
| Duplicate detection; triage, prioritisation and routing with Jev | S8, R10b, S62 |
| Goals with horizons, milestones and a focus; links to tasks, routines, agents | S48, S54 |
| Workspace and Project rules | S54 |
| Budgets; token or money caps with warn and hold | S55 |
| Approvals; an approved decision applies a configuration change | S4b; preview, confirmation and receipt |
| Inbox and decisions | R8 attention inbox |
| Agents; harness, model and effort per agent and per routine step | S49, S50 |
| An agent abandons its own run | S29 session.settle (abandoned) |
| Personal agent: one chat, focus per turn with its own memory, manages but never does Project work | S67 |
| Agents change configuration a person can, within standing approvals | S67 (goals, rules, grants and merges stay person-only) |
| Routines with cron and manual triggers; steps; retry policy; tick expiry | S30, S50, home Sessions |
| Event sources, signed ingest and event triggers, GitHub events | S51, S61 |
| Routines per agent and per project page | S50, S52 |
| Routine search, filters, folders and Jev grouping | S64 |
| Routine timeline and link graph | S56, S64 |
| Visual workflow editor with live step status | S64 (graph of after) |
| Autonomous unblock and escalation; stuck-run cancel | S60, R8 |
| Holds | S20 |
| Re-review in the reviewer's Session | S60 |
| Wake coalescing, no-op skip, Session reuse, self-wake bound | S60; S51 loop guard |
| Priority queue with aging; dispatch under a work-in-progress cap | S60 |
| Harness and model fallbacks with continuity, quota cooldowns, 429 breaker | S49, S60, S27, S43 |
| Run profiles; resume after a restart; drain before restart | S60; RL4 maia update |
| Steering a running agent | S26 |
| Vendor CLI adapters | Claude Code, Codex, Pi executors; S31 (ACP) |
| Skills; Skill patches and revision proposals | S22, S49; R4 learning |
| Secrets and provider keys | Connections; S47 providers |
| Activity log | Receipts and events |
| Agents cannot change their own configuration | Person-only confirmation (S1, S18a) |
| Sandboxing | S47 |
| Usage, failure and flow reports; cost per run; throughput metrics | T1–T3, T5, S55, S56 |
| Full observability and context visibility; run history export | S56, T1–T7 |
| Worker and instance capacity | S15, S59 |
| Remote workers over SSH; persistent remote checkouts | S10, S14, S58, MN0–MN5 |
| Move a Session between machines; sleep idle Sessions | S66 |
| Forcing a harness through a gateway such as a subscription proxy (D-071 per gateway) | S24, S57; S43 for a Node-hosted pool |
| Evals with stats and templates; drift, hallucination and review scores | S8, R10a, S62 |
| Databases and datasets | S62 |
| Datasets from decisions and usage; fine-tuned custom models for agents, evaluators and routers | S62, S68 |
| Closed frontier, open-weight and custom models; more harnesses over time | S24, R10, S31–S36 |
| Default agents and routines on install; backups | S63 |
| GitHub App, App-user identity, merge guard, protected paths, path allowlists | S61, R5 |
| API and CLI parity | Protocol registry and parity checks |
| Web app; theme with system, light and dark | S52, S64 |
| Command launcher, keyboard-only use, quick actions | S64, DP2 |
| Full Desktop app with mandatory performance gates | DP2 |
| Governed tool connections: admitted MCP servers, per-Agent tools, allow, ask or off, brokered credentials | S71 |
| Notifications by email, push or a chat connector; pairing; links to trusted screens | S72 |
| A Routine step that waits for a person, with expiry and escalation | S50 |
| Allow, ask and deny rules on commands, tools and hosts, lockable by an admin | S47e |
| Windows CLI and SDK; Windows Desktop after its design | RL7 |
| Third-party and Maia verified extensions: Skills, agents, tools, routines, services | S73 |
GitHub data and actions for agents without a person's gh credentials | S61 |
| Create an extension in one command, a live dev loop, or with Maia itself; a reviewed public directory | S73e, S73f |
| Self-managed deployment recipes (a managed version is tracked outside this repository) | S58, RL4 |
| Isolation between people on a shared Node; consented cross-person delegation | ORG7 |
| Reporting lines between Agents for escalation and review routing | S49 |
| Alerts on queue wait, failures, lost runs, quota and cost per merge | S74 |
| Import from another agent platform; rebuild a Workspace from a template | S75, S63 |
| GitHub writes, merging included, as Workspace configuration: tools granted to exact Agents and repositories | S61, D-116 |
| Agents build the product itself in parallel, one step ahead of the production migration | SH0–SH3, D-117 |
| Parallel delivery without shared-file conflicts: per-feature registry lists, merge queue | PD0 |
| Agent developer experience: one verify command, CI security, flake and performance gates | DX1–DX7 |
| Agents placed on named remote sandboxes from hosted sandbox services | S47f |
| Pause and resume work; seamless updates | S70, RL6 |
| MCP server | maia mcp |
| Wake rules and a reason for each wake that starts nothing | S65 |
| Refuse work for an agent that cannot run; stranded-work report | S65, R8 |
| Per-run token, context and turn caps; compact or restart at the limit | S65 |
| Quota governor under usage windows; staggered starts after a reset | S65, S27 |
| Parallel reviewers with one consolidated report; review profiles | S50 steps (join with after), S22 review Skills |
| Project Skills and Project settings within Workspace defaults | Project .maia scope, S54, E5 |
| Secret masking on Session content reads and live projections | S47 providers (keys stay outside the sandbox), S12t masking on read; S12r trace retention |
| Labels | S65 |
| Agent-built status cards | R9a json-render |
| Session goals: keep working until a check passes, with a harness's native goal where proven | S69 |
Open: no slice yet
- Agents calling evals as tools. Needs an owner decision on R10a's exclusion of worker tools.
- Hold lift conditions, merge queue, merged navigation, an intent-first chat page. No slice; an intent-first page must not infer intent (AGENTS.md).
- Project and Workspace goal changes by named agents. S48 and S67 keep goals person-only; allowing chosen agents would need an owner decision.
- Agent pools with least-loaded dispatch; per-project reviewer pools. S49 binds a step to one Agent.
- One access model for people and agents. ORG1 gives people roles and agents keep S2 grants (D-005); merging the two needs an owner decision.
- Outbound webhooks, a staging Node. Outbound calls are one more egress
beside ORG5 streaming, S56 export and T7; one egress mechanism for all of
them needs a decision. A staging Node could apply the same
.maiadigest through E5. - Support tiers and service levels. A business decision; E1 sets the support period.
- Messaging between organizations, shared browser profiles, more chat connectors, browser and computer use, short-lived Execution Nodes, more harnesses. Listed as later in the roadmap.
Not planned
- Routine conditions and send-back to an earlier step. The routine model has no routing language. A step's agent adds follow-up tasks instead (S53).
- Gate scripts and scripts as routine targets. No code runs in the Node. An event source filters before it posts, S60 skips unchanged ticks, and a step's agent runs scripts inside its S47 sandbox.
- High availability with several writers. One Control Node is the only durable writer (D-002).
- Node code plugins. No extension code runs in the Node; extensions (S73) compose existing primitives.
Imported from Maia OS docs at 3dc3e07