Skip to content

Compatibility Matrix

Not all tools support all features. This page shows what’s supported where, and what trade-offs are made when dotai emits configuration for tools with a smaller feature surface.

FeatureClaude CodeCursorCodexCopilot
Conditional rules
Intelligent selection
Skills (all 11 fields)
Sub-agents (14+ fields)PartialPartialPartial
MCP servers
MCP headers / OAuth
Lifecycle hooks (20 events)17218
Hook types (command/prompt/agent)
Per-tool permissions
Ask decision
Sandbox mode
Enterprise scope
User scope

dotai defines 20 lifecycle events. Each tool supports a subset:

ToolSupported eventsNotable gaps
Claude Code17preFileEdit, postFileEdit, errorOccurred not supported
Cursor2Only preFileEdit, postFileEdit (via rules)
Codex0No hook support
Copilot18preFileEdit, postFileEdit not supported

When dotai emits configuration for a tool that doesn’t support a given feature, it either drops the feature or maps it to the closest available equivalent. The table below documents those translation losses.

What’s lostAffected toolWorkaround
Conditional rule activationCodexAll rules always apply
ask permission decisionCursorDowngraded to deny
Per-tool permission rulesCodex, CopilotCollapsed to global policy / not supported
Lifecycle hooksCodexNot supported
File-edit hooksCopilotNot supported
Hook event name translationClaude CodeuserPromptSubmittedUserPromptSubmit, agentStopStop
Hook types (prompt/agent)Cursor, Codex, CopilotOnly Claude Code supports non-command hook types
Hook fields (timeout, once, async, model)Cursor, Codex, CopilotOnly Claude Code supports these fields
Agent model overrideCopilotNot supported in file config
Agent advanced fieldsCursor, Codex, CopilotpermissionMode, maxTurns, skills, memory, isolation, hooks, mcpServers — Claude Code only
MCP tool filteringCopilot, CodexNot supported
MCP headers / OAuthCodexNot supported
File-based permissionsCopilotNot supported
File-based settingsCopilotNot supported
Ignore patternsCopilotNot supported
ToolSupported scopes
Claude CodeEnterprise, project, user
CursorProject only
CodexProject only
GitHub CopilotProject only

Entities from enterprise and user scope are merged into project-scoped output with precedence respected for tools that only support project scope.