Capability Matrix

Cross-provider feature comparison

Provider Capability Matrix

AIWG runs on nine AI coding platforms. Some features — scheduled tasks, parallel agent teams, behaviors, MCP integration — are available natively on certain platforms and emulated on others. This document explains what that means in practice and shows the full picture across all providers.

Data source: `agentic/code/providers/capability-matrix.yaml` (updated 2026.3)


Native vs. Emulated: What it Means in Practice

Native means the platform has a built-in mechanism for the feature. AIWG uses it directly. The experience is tightly integrated: the platform knows about the capability, manages its lifecycle, and reports its status through normal platform channels.

Emulated means the platform has no built-in equivalent. AIWG provides the same capability through its own infrastructure — typically the daemon, the scheduler, or Mission Control (`aiwg mc`). The end result is the same; the implementation path is different. Emulated features sometimes have practical differences worth knowing about, covered in the per-feature sections below.

When you are on a provider that emulates a feature, the AIWG command is the right tool — not a workaround. Emulation is first-class.


Full Capability Matrix

The baseline provider is Claude Code; all gap reporting in `aiwg doctor` is relative to it.

FeatureClaude CodeCodexCopilotCursorFactory AIOpenCodeWarpWindsurfHermesOpenClaw
SchedulerNativeEmulatedEmulatedEmulatedEmulatedEmulatedEmulatedEmulatedEmulatedEmulated
Agent TeamsNativeEmulatedEmulatedNativeNativeEmulatedEmulatedEmulatedEmulatedEmulated
Mission ControlNativeEmulatedEmulatedEmulatedNativeEmulatedEmulatedEmulatedEmulatedEmulated
BehaviorsEmulatedEmulatedEmulatedEmulatedEmulatedEmulatedEmulatedEmulatedEmulatedNative
MCPNativeOptionalOptionalNativeNativeNativeOptionalNativeOptionalNative
DaemonT1 + T2T1 + T2T1T1T1T1

Legend: Native = first-class platform support. Emulated = AIWG emulation via daemon/mc. Optional = provider can use AIWG MCP as a provider-agnostic enrichment hook, but baseline delivery uses files + CLI. — = not supported. Daemon tiers: T1 = native headless daemon (`aiwg daemon start`). T2 = PTY adapter (requires `node-pty`). — = requires display server/IDE host, not supported.


Feature Details

Scheduler

Create and manage recurring agent tasks using cron-like expressions.

ProviderSupportNative ToolAIWG Command
Claude CodeNative`CronCreate / CronList / CronDelete``aiwg schedule`
CodexEmulated`aiwg schedule`
GitHub CopilotEmulated`aiwg schedule`
CursorEmulated`aiwg schedule`
Factory AIEmulated`aiwg schedule`
OpenCodeEmulated`aiwg schedule`
Warp TerminalEmulated`aiwg schedule`
WindsurfEmulated`aiwg schedule`
OpenClawEmulated`aiwg schedule`

Claude Code routing note: `CronCreate` is available inside an agent session but not from the CLI directly. When running from the CLI (outside an agent context), use `aiwg schedule`, which routes through the AIWG daemon.

Warp note: System cron (`crontab`) works fine for non-AI shell tasks independently of AIWG. `aiwg schedule` is specifically for agent-integrated recurring tasks that need to submit work to the daemon.

Emulation difference: On all non-Claude-Code providers, scheduling is managed by the AIWG daemon's cron subsystem. Scheduled tasks are submitted to the daemon task queue at fire time. The daemon must be running for scheduled tasks to execute.


Agent Teams

Spawn and coordinate multiple agents in parallel within or across sessions.

ProviderSupportNative ToolAIWG Command
Claude CodeNativeAgent tool (Task)`aiwg mc dispatch`
CodexEmulated`aiwg mc dispatch`
GitHub CopilotEmulated`aiwg mc dispatch`
CursorNativeBackground Agents`aiwg mc dispatch`
Factory AINativeDroids`aiwg mc dispatch`
OpenCodeEmulated`aiwg mc dispatch`
Warp TerminalEmulated`aiwg mc dispatch`
WindsurfEmulated`aiwg mc dispatch`
OpenClawEmulated`aiwg mc dispatch`

Claude Code routing note: Use the native Agent tool for short-lived focused subagents within the current session. Use `aiwg mc dispatch` for long-running background missions that need to outlast the session.

Cursor note: Cursor Background Agents run in isolated containers — they do not share session context with the primary agent. For AIWG-coordinated orchestration with shared state, use `aiwg mc dispatch` instead.

Windsurf note: Windsurf Cascade is sequential multi-step execution, not parallel agent spawning. It is not equivalent to agent teams.

Factory AI note: Factory Droids provide native parallel execution. Use `aiwg mc dispatch` when you need AIWG lifecycle tracking across Droids.

Emulation difference: On emulated providers, `aiwg mc dispatch` submits each agent task to the AIWG daemon, which manages parallelism, state, and lifecycle. The team schema (`aiwg team run`) works identically across all providers — native providers use their spawning mechanism, others use `aiwg mc`.


Mission Control

Background task orchestration with persistence across sessions, status tracking, and a monitoring dashboard.

ProviderSupportNative ToolAIWG Command
Claude CodeNativeAgent tool (Task)`aiwg mc start / aiwg mc dispatch`
CodexEmulated`aiwg mc`
GitHub CopilotEmulated`aiwg mc`
CursorEmulated`aiwg mc`
Factory AINativeDroids`aiwg mc`
OpenCodeEmulated`aiwg mc`
Warp TerminalEmulated`aiwg mc`
WindsurfEmulated`aiwg mc`
OpenClawEmulated`aiwg mc`

Claude Code routing note: `aiwg mc` wraps the native Task/Agent tool with persistence, state tracking, and a monitoring dashboard. Prefer `aiwg mc` for complex multi-loop orchestrations where you need to watch progress or resume across sessions.

Factory AI note: Factory Droids handle parallelism natively. `aiwg mc` adds AIWG-specific state tracking, completion criteria, and cross-provider consistency on top.

Emulation difference: `aiwg mc` is the same experience everywhere — start a session, dispatch missions, watch status, stop the session. The backend varies (native tool vs. daemon) but the `aiwg mc` interface is identical.


Behaviors

Event-driven reactive capabilities — scripts and hooks triggered by file, time, or API events.

ProviderSupportNative ToolAIWG Command
Claude CodeEmulated— (hooks emulation)`aiwg add-behavior / aiwg behavior run`
CodexEmulated`aiwg add-behavior --provider codex`
GitHub CopilotEmulated`aiwg behavior run`
CursorEmulated`aiwg behavior run`
Factory AIEmulated`aiwg behavior run`
OpenCodeEmulated`aiwg behavior run`
Warp TerminalEmulated`aiwg behavior run`
WindsurfEmulated`aiwg behavior run`
OpenClawNative`~/.openclaw/behaviors/``aiwg add-behavior --provider openclaw`

OpenClaw note: OpenClaw is the first provider with native behavior support. Behaviors deploy to `~/.openclaw/behaviors/` and are triggered directly by the platform's file, time, and API event system. OpenClaw behaviors are the reference implementation for the AIWG behaviors spec.

Claude Code emulation note: Claude Code has lifecycle hooks (`pre-session`, `post-write`, `post-bash`) but not the full behavior event model. AIWG emulates behaviors by mapping behavior hook events to the closest Claude Code hook equivalents and running scripts through the daemon's automation engine.

All other providers: Behavior execution is managed entirely by the AIWG daemon. The daemon monitors file events, fires scheduled hooks, and runs the behavior's scripts. NL trigger phrases work identically across all providers — hook-driven execution is the only path where the provider distinction matters.

See `docs/behaviors-guide.md` for the full BEHAVIOR.md format specification.


MCP (Model Context Protocol)

Extend the provider with external tool servers via the Model Context Protocol.

ProviderSupportNative ToolAIWG Command
Claude CodeNativeMCP protocol (built-in)`aiwg mcp install claude`
CodexNot supported
GitHub CopilotNot supported
CursorNativeMCP protocol (built-in)`aiwg mcp install cursor`
Factory AINativeMCP protocol (stdio + HTTP)`aiwg mcp install factory`
OpenCodeNativeMCP protocol (built-in)`aiwg mcp install opencode`
Warp TerminalNot supported
WindsurfNativeMCP protocol (built-in)`aiwg mcp install windsurf`
HermesOptionalHermes MCP config (sidecar)`hermes mcp add aiwg --command aiwg --args mcp serve`
OpenClawNativeMCP protocol (built-in)`aiwg mcp install openclaw`

Factory AI: Native MCP support with both `stdio` (local process) and `http` (remote endpoint) transports. Configuration in `.factory/mcp.json` (project) and `~/.factory/mcp.json` (user). Built-in registry of 40+ pre-configured servers.

Provider-agnostic rule: AIWG baseline delivery does not require MCP. Use files plus `aiwg discover` / `aiwg show` first; add `aiwg mcp serve` only when the host should call structured tools directly. See `docs/integrations/mcp-capability-audit.md`.


Daemon

Persistent background process for headless/unattended operation — file watching, scheduled tasks, agent supervision, automation rules, and behaviors.

Platforms are grouped into three daemon tiers:

ProviderTierModeAIWG Command
Claude CodeTier 1 (native) + Tier 2 (PTY)Headless + PTY bridge`aiwg daemon start`
CodexTier 1 (native) + Tier 2 (PTY)Headless + PTY bridge`aiwg daemon start`
Factory AITier 1 (native)Headless via `droid exec``aiwg daemon start`
OpenCodeTier 1 (native)Headless`aiwg daemon start`
Warp TerminalTier 1 (native)Headless`aiwg daemon start`
OpenClawTier 1 (native)Headless`aiwg daemon start`
CursorTier 3 — IDE-hostedIDE extension (VS Code host required)
WindsurfTier 3 — IDE-hostedIDE extension (VS Code host required)
GitHub CopilotTier 3 — IDE-hostedIDE extension

Tier 1 (native): Full daemon support. `aiwg daemon start/stop/status/attach` all work. The daemon manages its own process lifecycle, IPC socket, and state files. Behaviors, automation rules, PTY orchestration, and all daemon subsystems are available. Factory AI's `droid exec` provides headless one-shot execution; the AIWG daemon wraps it with persistence, scheduling, and multi-session coordination.

Tier 2 (PTY adapter): Optional secondary mode for Claude Code and Codex. Spawns the platform's TUI under a pseudo-terminal and bridges I/O through the chat channel — enabling remote operation from messaging platforms, shell scripts, or agentic LLMs. Requires `node-pty`:

npm install node-pty    # requires node-gyp + C++ build tools
aiwg daemon pty start opencode
aiwg daemon pty start codex --cols 120

Tier 3 (IDE-hosted): These providers run as extensions inside a desktop IDE process that requires a display server. No standalone CLI process to bridge or supervise. The AIWG daemon cannot run within them, but they can connect to a daemon running elsewhere via HTTP/WS. All other AIWG features (agents, commands, skills, rules, Mission Control emulation) remain fully available.

See `docs/daemon-guide.md` for full configuration and usage.


Checking Your Provider's Capabilities

Full capability summary

aiwg runtime-info --capabilities

Shows which features are native vs. emulated for the detected provider, with the correct AIWG command for each.

Query a specific feature

aiwg steward capabilities

The AIWG Steward agent reads the capability matrix and provides routing advice for your current provider context. Ask it:

"How do I schedule a recurring task here?"
"Does this provider support agent teams natively?"
"What's the right way to use behaviors on Cursor?"

Health check

aiwg doctor

The doctor command includes a capabilities section that flags any emulated features and confirms their AIWG fallback command is functional.


See Also

  • Daemon Guide — The daemon that powers emulation for most features
  • Daemon Guide — Platform tiers, PTY adapter, and daemon configuration
  • Behaviors Guide — Full behavior format and provider details
  • Concierge Guide — Concierge behavior for daemon sessions
  • `agentic/code/providers/capability-matrix.yaml` — Canonical data source for this document