/** * Agent capability catalog. * * @experimental This API is unstable and may change without notice. */ /** @experimental This API is unstable and may change without notice. */ export declare const CONFIGURABLE_AGENTS_BY_ID: { adal: { readonly id: "adal"; readonly name: "AdaL"; readonly vendor: "SylphAI"; readonly homepage: "https://adalagent.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".adal"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "AdaL documentation"; readonly url: "https://docs.sylph.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/plugins-and-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".adal/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL manages MCP servers through the /mcp CLI flow and stores OAuth tokens under ~/.adal/mcp-auth; the docs describe add/remove/test actions rather than a stable editable config file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/mcp-support-proposed", "https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing file dialect and environment expansion were not revalidated."]; readonly claimScope: "CLI-managed MCP connections and supported local/remote transports"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an AdaL MCP writer for the CLI-managed MCP store."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL supports command-only PreToolUse, PostToolUse, PostToolUseFailure, UserPromptSubmit, PermissionRequest and Stop hooks in user settings. Project and plugin hook scopes are not supported."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".adal/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "user"; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly attribution: "agent"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "AdaL supports command-only PreToolUse, PostToolUse, PostToolUseFailure, UserPromptSubmit, PermissionRequest and Stop hooks in user settings. Project and plugin hook scopes are not supported."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/getting-started/workflows-and-examples"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL exposes /permissions to configure approval behavior, but the public docs do not document a stable settings file shape for AXM to patch."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/slash-commands"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an AdaL permission writer for the interactive /permissions surface."; }; }; readonly profile: { readonly identity: { readonly product: "AdaL"; readonly surface: "AdaL CLI and editor integration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/", "https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, subagent, instructions, permissions."]; readonly claimScope: "User-scoped command lifecycle hooks"; }; readonly lifecycleQualifications: readonly []; }; }; fx: { readonly id: "fx"; readonly name: "FX"; readonly vendor: "Vercel Labs"; readonly homepage: "https://fx.sh"; readonly interfaces: readonly ["cli", "embedded"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "FX"; readonly surface: "cli, embedded"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/vercel-labs/fx", "https://fx.sh/docs"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["Filesystem projections target the CLI; embedded and ACP hosts have separate configuration lifetimes."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".fx"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".fx"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "fx"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://github.com/vercel-labs/fx"; }, { readonly label: "Extension reference"; readonly url: "https://fx.sh/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/capabilities/skills"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/capabilities/skills"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".fx/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".fx/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project .mcp.json uses mcpServers and requires workspace approval; user ~/.fx/mcp.json uses mcp. Profile strings are literal and Authorization headers require environment-backed fields. AXM has not verified these distinct dialects."; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/capabilities/mcp", "https://fx.sh/docs/capabilities/mcp/protocol"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/capabilities/mcp", "https://fx.sh/docs/capabilities/mcp/protocol"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "FX supports session subagents. The reviewed documentation does not establish a reusable custom-agent file target."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/configure-fx/project-instructions"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/configure-fx/project-instructions"]; readonly claimScope: "Instruction discovery and precedence"; readonly conditions: readonly ["Instruction context must be enabled in FX settings."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".fx/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/instructions/respects-native-authority-and-observation"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Persistent permission rules live only in ~/.fx/settings.json, with global and workspace profiles; project .fx.json cannot define them. CLI permission-mode flags govern a run. AXM does not modify these policies."; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/configure-fx/permissions"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/configure-fx/permissions"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; }; "muse-code": { readonly id: "muse-code"; readonly name: "Muse Code"; readonly vendor: "Meta"; readonly homepage: "https://dev.meta.ai/docs/muse-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Muse Code"; readonly surface: "cli"; readonly edition: null; readonly ownership: null; readonly modelProviders: readonly ["Meta"]; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code", "https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "muse"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://dev.meta.ai/docs/muse-code"; }, { readonly label: "Extension reference"; readonly url: "https://dev.meta.ai/docs/muse-code/extending"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly ["Project skills require a trusted workspace."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "muse/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "User settings.json contains mcp_servers with stdio and streamable_http transports; required/optional modes affect startup. AXM does not write this settings dialect."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command hooks use project .muse/hooks.json, user settings and managed policy; trust and managed precedence apply."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly claimScope: "Instruction discovery and precedence"; readonly conditions: readonly ["Project instructions require a trusted workspace; at each level the first supported instruction filename wins."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/instructions/respects-native-authority-and-observation"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Muse configures permission profiles, sandbox and approval modes through settings and launch flags. Managed policy and workspace trust still apply; AXM does not grant access."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; }; "mimo-code": { readonly id: "mimo-code"; readonly name: "MiMo Code"; readonly vendor: "Xiaomi"; readonly homepage: "https://mimo.xiaomi.com"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "MiMo Code"; readonly surface: "CLI; desktop beta embeds the engine"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["CLI projections do not establish desktop beta behavior."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".mimocode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".mimocode"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "mimo"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://github.com/XiaomiMiMo/MiMo-Code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mimocode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "mimocode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default XDG configuration only; MIMOCODE_HOME and Windows path overrides are not resolved by AXM."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "JSON/JSONC mcp entries use local command arrays or remote URL entries. MIMOCODE_HOME and platform roots change discovery; AXM has not verified the complete writer contract."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/mcp.ts", "https://github.com/XiaomiMiMo/MiMo-Code"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/mcp.ts", "https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native metadata is passed through. MiMo expects native model, mode, permission and tool fields; AXM does not translate another vendor's tool grammar."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly claimScope: "Markdown custom-agent discovery and native frontmatter"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mimocode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "mimocode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default XDG configuration only; MIMOCODE_HOME and Windows path overrides are not resolved by AXM."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MiMo has native permission configuration including per-agent policy; outside-workspace access requires approval by default. AXM does not translate permission grammars."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code", "https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code", "https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["project", "user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; }; "coder-agents": { readonly id: "coder-agents"; readonly name: "Coder Agents"; readonly vendor: "Coder"; readonly homepage: "https://coder.com/docs/ai-coder/agents"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Coder Agents"; readonly surface: "workspace-agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents", "https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["AXM must run within the connected Coder workspace; template and administrator policy govern availability."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://coder.com/docs/ai-coder/agents"; }, { readonly label: "Extension reference"; readonly url: "https://coder.com/docs/ai-coder/agents/extending-agents"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Workspace skills can include supporting files. Personal skills are UI-managed single-file entries and are outside this filesystem projection."; readonly docs: readonly []; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly ["Skill names must match their directories; SKILL.md is limited to 64 KB and supporting files to 512 KB."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute Coder Agents or establish personal skill uploads."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Workspace MCP file, container and stdio/HTTP entry grammar"; readonly conditions: readonly ["Workspace template must expose MCP and the current agent mode must permit tool use."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; }; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/mcps/shared-native-writes-require-compatible-authority"]; readonly limitations: readonly ["Project .mcp.json install, update, repetition, disable and removal preserve sibling entries. Stdio and HTTP dialects are checked without executing Coder Agents or changing template policy."]; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; "aider-desk": { readonly id: "aider-desk"; readonly name: "AiderDesk"; readonly vendor: "HOTOVO"; readonly homepage: "https://github.com/hotovo/aider-desk"; readonly interfaces: readonly ["desktop"]; readonly family: null; readonly rootDir: ".aider-desk"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".aider-desk"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.aider-desk"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "AiderDesk repository"; readonly url: "https://github.com/hotovo/aider-desk"; }, { readonly label: "AiderDesk documentation"; readonly url: "https://aiderdesk.hotovo.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/features/skills", "https://github.com/hotovo/aider-desk/issues/568", "https://aiderdesk.hotovo.com/docs/agent-mode/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".aider-desk/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".aider-desk/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/skills"]; readonly conditions: readonly ["The selected agent profile must enable Use Skills Tools."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home skills; Skills Tools must be enabled"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk is a native MCP client: it connects to external standard MCP servers and exposes their tools to the agent, registering only the servers listed in a profile's enabledServers. MCP client configuration lives under the .aider-desk config, but the exact config file path, servers key, and per-transport dialect are not documented, so no AXM writer is modeled. AiderDesk can additionally act as an MCP server via @aiderdesk/mcp-server (the inverse direction)."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/hotovo/aider-desk"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AiderDesk's MCP client config dialect (exact file path, servers key, and transport-specific shape under .aider-desk) is not documented, so AXM has no MCP writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk agent profiles can be enabled as subagents through Settings > Agent. They have isolated context, tool approvals and automatic or on-demand invocation."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "AiderDesk agent profiles can be enabled as subagents through Settings > Agent. They have isolated context, tool approvals and automatic or on-demand invocation."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk has a native lifecycle hook / Extension System with 30+ events (onTaskCreated, onPromptFinished, onToolCalled, onFileAdded, ...) that can observe, modify, or block operations. Hooks are in-process JS/TS callbacks under .aider-desk/hooks/ (project) and ~/.aider-desk/hooks/ (user), with a newer Extension System under .aider-desk/extensions/. The native event names are not canonically mappable and there is no command-stdin dialect for AXM to serialize."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/hotovo/aider-desk"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AiderDesk hooks are in-process JS/TS callbacks with no command-stdin serialization dialect, and its 30+ native events are not canonically mapped, so AXM has no hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The /init command creates an AGENTS.md project rule file."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/core/commands"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/core/commands"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Global rule locations and nested instruction discovery were not established."]; readonly claimScope: "The /init command creates an AGENTS.md project rule file."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Agent profiles configure tool groups and per-tool Ask, Always or Never approval policies."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Agent profiles configure tool groups and per-tool Ask, Always or Never approval policies."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly profile: { readonly identity: { readonly product: "AiderDesk"; readonly surface: "AiderDesk desktop Agent mode"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents", "https://aiderdesk.hotovo.com/docs/agent-mode/skills", "https://aiderdesk.hotovo.com/docs/core/commands"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook."]; readonly claimScope: "UI-managed subagent profiles and per-tool approvals"; }; readonly lifecycleQualifications: readonly []; }; }; amp: { readonly id: "amp"; readonly name: "Amp"; readonly vendor: "Sourcegraph"; readonly homepage: "https://ampcode.com"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "sourcegraph"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Amp Owner's Manual"; readonly url: "https://ampcode.com/manual"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#agent-skills", "https://ampcode.com/docs/customize/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Claude skill discovery must be enabled."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Claude skill discovery must be enabled."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Documented skill roots, compatibility discovery and optional hosted skill repositories"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp declares always-available MCP servers under the flat amp.mcpServers settings key in ~/.config/amp/settings.json (user) or .amp/settings.json (workspace, which requires explicit approval), and skill-scoped MCP servers through mcp.json inside a skill directory."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#MCP", "https://ampcode.com/manual#configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Amp's native configuration locations and server entry dialect have not been verified in the catalog; an AXM writer requires those declarations."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Amp plugin API"; readonly homepage: "https://ampcode.com/manual"; readonly author: "Amp"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Save a plugin under .amp/plugins and reload plugins."; readonly packageRef: null; }; readonly detection: { readonly paths: readonly [{ readonly scope: "project"; readonly path: ".amp/plugins"; readonly kind: "dir"; }, { readonly scope: "user"; readonly path: "~/.config/amp/plugins"; readonly kind: "dir"; }]; readonly configKeys: readonly []; }; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp has built-in automatic subagents and first-party plugin APIs for custom subagent-like tools, but no documented Markdown subagent directory that AXM can materialize."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#subagents", "https://ampcode.com/manual#plugins"]; readonly scopes: readonly ["user", "project"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Amp plugin/subagent materialization."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp plugins can handle tool-call, tool-result, and agent lifecycle events. AXM models the in-process plugin surface but does not serialize Amp plugins or amp.hooks actions yet."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual", "https://ampcode.com/manual/plugin-api"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Amp plugin or declarative-action hook writers."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#agentsmd", "https://ampcode.com/docs/customize/agents-md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/AGENTS.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/agents-md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Hosted workspace guidance does not apply to every custom or built-in subagent."]; readonly claimScope: "AGENTS.md search and personal/workspace guidance"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp permission rules use the amp.permissions and amp.mcpPermissions settings. Enterprise administrators can enforce the same schema through platform-specific managed-settings.json files."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/news/tool-level-permissions", "https://ampcode.com/news/mcp-permissions", "https://ampcode.com/news/enterprise-managed-settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".amp/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "{\"tool\":\"Bash\",\"matches\":{\"cmd\":\"*git commit*\"},\"action\":\"ask\"}"; readonly notes: "amp.permissions rules select a tool, optionally glob-match tool arguments, and apply allow, reject, ask, or delegate."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Amp"; readonly surface: "Amp CLI and editor integration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/skills", "https://ampcode.com/docs/customize/agents-md"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, permissions."]; readonly claimScope: "Skill discovery and global guidance"; }; readonly lifecycleQualifications: readonly []; }; }; antigravity: { readonly id: "antigravity"; readonly name: "Antigravity"; readonly vendor: "Google"; readonly homepage: "https://antigravity.google"; readonly interfaces: readonly ["ide-extension"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Antigravity"; readonly surface: "Desktop/IDE"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/", "https://antigravity.google/docs/changelog/"]; readonly conditions: readonly []; readonly limitations: readonly ["Custom subagent discovery reviewed for Antigravity 2.0. The shared CLI harness does not make all legacy IDE settings equivalent.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".agents"; readonly signal: "supporting"; readonly note: null; }, { readonly kind: "dir"; readonly path: ".agent"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini/antigravity-cli"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Antigravity documentation"; readonly url: "https://antigravity.google/docs"; }, { readonly label: "Antigravity CLI overview"; readonly url: "https://antigravity.google/docs/cli-overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity 2.0 defaults to .agents/skills (project) and ~/.gemini/config/skills (user); .agent/skills remains supported for backward compatibility.\n"; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agent/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity stores global MCP servers in ~/.gemini/config/mcp_config.json and workspace MCP servers in .agents/mcp_config.json. Remote MCP definitions use serverUrl, and disabled is an optional per-server switch."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/mcp", "https://antigravity.google/docs/cli/plugins"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".agents/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly implicitTransport: "http-or-sse"; readonly urlKey: { readonly "streamable-http": "serverUrl"; readonly sse: "serverUrl"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Markdown subagents are read by Antigravity 2.0 and the CLI. Authors supply native frontmatter; AXM preserves it and applies explicit agent overrides without translating tool names or changing execution-policy defaults."; readonly docs: readonly [{ readonly label: "Custom subagents"; readonly url: "https://antigravity.google/docs/subagents/"; }]; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly conditions: readonly ["Use Antigravity 2.0 or the Antigravity CLI with native name and description frontmatter; tool names, model, skills, plugins, and execution-policy settings must match the target harness."]; readonly limitations: readonly ["Vendor execution of the generated subagent was not tested.", "AXM workspace setup currently supports project-scope Subagents; isolated user-scope adapter projection is checked but user-scope workspace installation remains unavailable."]; readonly claimScope: "Custom-subagent file discovery and native frontmatter contract."; }; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Checks cover project and isolated user-scope file projection, shared ownership metadata, repetition, removal, and preservation of unowned files. They do not execute Antigravity."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity documents command hooks in hooks.json for the current Antigravity execution loop. This supersedes earlier research that found hooks only in SDK/plugin surfaces. Each hooks.json entry is namespaced by a hook name that carries its own enabled flag, and event groups nest under that name rather than under a single top-level hooks key."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/hooks", "https://antigravity.google/docs/cli/plugins"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".agents/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "browser_.*"; readonly notes: "Matches on tool name; * selects every tool."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "run_command"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreInvocation"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostInvocation"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "run_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Antigravity namespaces each hook bundle under its own top-level name in hooks.json; AXM's writer targets a single settings key and cannot express that nesting."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/rules-workflows"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity CLI exposes fine-grained allow/ask/deny permissions in settings, with resources such as command(...), read_file(...), write_file(...), read_url(...), execute_url(...), and mcp(...)."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/cli-permissions", "https://antigravity.google/docs/cli-reference"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/antigravity-cli/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "command(axm)"; readonly notes: "Conflicting rules are evaluated Deny > Ask > Allow."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["command(${tool})"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["read_file(${workspaceRoot})", "write_file(${workspaceRoot})"]; }; }; readonly template: null; }; }; }; }; }; }; "antigravity-cli": { readonly id: "antigravity-cli"; readonly name: "Antigravity CLI"; readonly vendor: "Google"; readonly homepage: "https://antigravity.google/product/antigravity-cli"; readonly interfaces: readonly ["cli"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Antigravity"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/", "https://antigravity.google/docs/cli/overview/"]; readonly conditions: readonly []; readonly limitations: readonly ["Custom subagents and CLI surface reviewed; other native mechanics retain their separate evidence.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".agents"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini/antigravity-cli"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Antigravity CLI documentation"; readonly url: "https://antigravity.google/docs/cli-overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Because the CLI's project Skill directory is .agents/skills, --agent universal already wrote to the correct location; this entry adds CLI-specific detection and naming."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agent/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The Antigravity CLI shares product configuration with the desktop surface; AXM avoids a second writer until shared-target ownership is explicit."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Markdown subagents are read by Antigravity 2.0 and the CLI. Authors supply native frontmatter; AXM preserves it and applies explicit agent overrides without translating tool names or changing execution-policy defaults."; readonly docs: readonly [{ readonly label: "Custom subagents"; readonly url: "https://antigravity.google/docs/subagents/"; }]; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly conditions: readonly ["Use Antigravity 2.0 or the Antigravity CLI with native name and description frontmatter; tool names, model, skills, plugins, and execution-policy settings must match the target harness."]; readonly limitations: readonly ["Vendor execution of the generated subagent was not tested.", "AXM workspace setup currently supports project-scope Subagents; isolated user-scope adapter projection is checked but user-scope workspace installation remains unavailable."]; readonly claimScope: "Custom-subagent file discovery and native frontmatter contract."; }; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Checks cover project and isolated user-scope file projection, shared ownership metadata, repetition, removal, and preservation of unowned files. They do not execute Antigravity."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI reads command hooks from the workspace or global customization directory."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Antigravity's named hook bundles require a serializer AXM does not implement."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/rules-workflows"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/cli-permissions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/antigravity-cli/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "command(axm)"; readonly notes: "Conflicting rules are evaluated Deny > Ask > Allow."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not yet implement Antigravity CLI permission-rule patches."; }; }; }; augment: { readonly id: "augment"; readonly name: "Augment"; readonly vendor: "Augment Code"; readonly homepage: "https://www.augmentcode.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".augment"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Augment documentation"; readonly url: "https://docs.augmentcode.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie loads skills from .augment/skills, .claude/skills, and .agents/skills at both user and workspace scope. AXM writes the native Augment project directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".augment/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".augment/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Auggie CLI skill roots and precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie persists MCP server configuration in ~/.augment/settings.json. The CLI also supports per-run --mcp-config overrides that are not represented by AXM writers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/integrations"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".augment/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".augment/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/subagents"]; readonly conditions: readonly ["Custom subagents documented here are CLI-only."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "CLI custom agent Markdown files and scopes"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie hooks run command hooks from settings files and use JSON on stdin/stdout. Native Auggie also exposes SessionEnd and Notification, plus metadata options not represented in AXM's portable hook manifest."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "terminal"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "web-fetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie CLI evaluates toolPermissions top-to-bottom with first match winning. Tool permissions are CLI-only and live in ~/.augment/settings.json (user scope) or a repo-committed .augment/settings.json (project scope)."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "^axm(\\s|$)"; readonly notes: "Rules contain toolName plus permission.type allow/deny/ask-user; shell commands can be constrained with shellInputRegex."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly toolPermissions: readonly [{ readonly toolName: "terminal"; readonly shellInputRegex: "^${tool}(\\s|$)"; readonly permission: { readonly type: "allow"; }; }]; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly toolPermissions: readonly [{ readonly toolName: "read"; readonly permission: { readonly type: "allow"; }; }, { readonly toolName: "edit"; readonly permission: { readonly type: "allow"; }; }, { readonly toolName: "write"; readonly permission: { readonly type: "allow"; }; }]; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Augment"; readonly surface: "Auggie CLI; editor capabilities are separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills", "https://docs.augmentcode.com/cli/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook, instructions, permissions."]; readonly claimScope: "CLI skill discovery and custom subagents"; }; readonly lifecycleQualifications: readonly []; }; }; "claude-code": { readonly id: "claude-code"; readonly name: "Claude Code"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.com/product/claude-code"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "anthropic"; readonly profile: { readonly identity: { readonly product: "Claude Code"; readonly surface: "Terminal, IDE, desktop and cloud"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly conditions: readonly []; readonly limitations: readonly ["Hook mechanisms reviewed across documented surfaces. AXM currently writes command handlers; other handlers do not inherit AXM support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".claude"; readonly targeting: { readonly extends: null; readonly capabilities: { readonly "structured-input": { readonly grades: readonly ["native"]; readonly nouns: { readonly "tool:structured-input": "AskUserQuestion"; }; readonly affordances: { readonly "do:ask-structured": "Use the AskUserQuestion tool to collect structured input, then STOP and wait for the response."; }; }; }; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.claude"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "claude"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Claude Code documentation"; readonly url: "https://code.claude.com/docs/en/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly configRootRelativePath: "skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude.json"; readonly configRootRelativePath: ".claude.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/sub-agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/agents"; readonly configRootRelativePath: "agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Managed hooks merge into the Claude Code settings hooks block and execute materialized AXM package entrypoints. Claude Code exposes additional native events such as Notification, SessionEnd, CwdChanged, FileChanged, and WorktreeCreate; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/hooks", "https://code.claude.com/docs/en/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin", "http", "prompt", "agent", "mcp"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "settings.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WebFetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly claimScope: "Native hook invocation families"; readonly conditions: readonly []; readonly limitations: readonly ["Agent hooks are also documented. AXM projects command handlers only; other native handlers are descriptive."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project", "project-additional-1"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads CLAUDE.md, not the AGENTS.md spec filename."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "CLAUDE.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/CLAUDE.md"; readonly configRootRelativePath: "CLAUDE.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://code.claude.com/docs/en/memory", "https://code.claude.com/docs/en/claude-directory"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/permissions", "https://code.claude.com/docs/en/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly configRootRelativePath: "settings.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: "Tool(specifier) with * wildcards. Evaluated deny > ask > allow (first match wins). Settings merge across scopes rather than override.\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Write(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; }; cline: { readonly id: "cline"; readonly name: "Cline"; readonly vendor: "Cline"; readonly homepage: "https://cline.bot"; readonly interfaces: readonly ["cli", "ide-extension", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Cline"; readonly surface: "CLI, IDE and desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://cline.bot/blog/cline-desktop-an-open-source-app-for-open-weight-models", "https://cline.bot/blog/how-we-migrated-11-million-users-to-clines-biggest-harness-upgrade"]; readonly conditions: readonly []; readonly limitations: readonly ["Desktop and harness migration reviewed; parallel sessions do not establish a custom subagent definition format.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".cline"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Cline documentation"; readonly url: "https://docs.cline.bot"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cline/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".clinerules/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline supports MCP in both the extension and CLI. The CLI MCP config is ~/.cline/mcp.json; extension config is exposed through the MCP settings UI. Entries use the community-standard mcpServers shape with a streamableHttp remote discriminator plus Cline-specific disabled and autoApprove fields."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/mcp/mcp-overview"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cline/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "streamableHttp"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "streamableHttp"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline stores executable hooks under ~/Documents/Cline/Hooks and .clinerules/hooks. The native script-directory shape is not compatible with AXM's grouped JSON command-hook writer."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Cline hook script directory writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/cline-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".clinerules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline exposes auto-approve controls in the extension/CLI UI and toolPolicies in the SDK. The public docs do not define a stable AXM-writable project permission grant file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/cline-cli/interactive-mode", "https://docs.cline.bot/sdk/guides/permission-handling"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Cline permission grant writer."; }; }; }; "codearts-agent": { readonly id: "codearts-agent"; readonly name: "CodeArts Agent"; readonly vendor: "Huawei Cloud"; readonly homepage: "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0001.html"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".codeartsdoer"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".codeartsdoer"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codeartsdoer"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "CodeArts Agent CLI documentation"; readonly url: "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0001.html"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .codeartsdoer/skills and home .codeartsdoer/skills; project names override user names"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent stores local and remote MCP servers under the mcp key in its shared JSON or JSONC configuration."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0017.html", "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0028.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/codearts_cli.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/codearts_cli.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; readonly command: "array"; readonly envKey: "environment"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; readonly sse: "remote"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; readonly sse: "remote"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent discovers Markdown agent definitions with YAML frontmatter and supports primary and subagent modes."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-codeartssnap/codeartsagent_ug_0051.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent hooks are JavaScript or TypeScript plugin callbacks rather than declarative command hooks that AXM can serialize."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0018.html"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not serialize CodeArts Agent JavaScript or TypeScript plugins."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent uses AGENTS.md for project instructions and can generate it with /init."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0014.html"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent stores ordered allow, ask, and deny-style rules in a user-level JSON permission file."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0006.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/cli-data/storage/permission/global.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "{\"permission\":\"bash\",\"pattern\":\"axm *\",\"action\":\"allow\"}"; readonly notes: "Each array entry selects a permission name and wildcard pattern, then applies an allow, ask, or deny action."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a CodeArts Agent permission-list writer."; }; }; readonly profile: { readonly identity: { readonly product: "CodeArts Agent"; readonly surface: "CodeArts coding CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI SKILL.md discovery paths"; }; readonly lifecycleQualifications: readonly []; }; }; codebuddy: { readonly id: "codebuddy"; readonly name: "CodeBuddy"; readonly vendor: "Tencent Cloud"; readonly homepage: "https://www.codebuddy.ai/docs"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".codebuddy"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "CodeBuddy documentation"; readonly url: "https://www.codebuddy.ai/docs/ide/Introduction"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/ide/Introduction", "https://www.codebuddy.ai/docs/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/skills"]; readonly conditions: readonly ["Frontmatter hooks require fork context and the untrusted-hook opt-in unless built in."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Reader paths were not independently rechecked in this review."]; readonly claimScope: "Invocation controls and fork-only skill frontmatter hooks"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy MCP configs are JSONC and use first-existing-file precedence within each scope; AXM writes the recommended project/user files."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/.mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/sub-agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CLI v1.16+ documents Beta hooks with 27+ events. User, project and local settings are supported; the modeled mappings are a subset of the vendor event surface."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide", "https://www.codebuddy.ai/docs/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "literal-list"; readonly example: "startup|resume"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Edit|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Edit|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WebFetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks"]; readonly conditions: readonly ["Hooks are documented as Beta in CLI v1.16+."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The pre-existing event mappings and entry dialect cover a subset and were not exhaustively revalidated."]; readonly claimScope: "Beta hook availability, settings scopes and additional lifecycle events"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy loads CODEBUDDY.md plus nested .codebuddy/rules instruction files and supports @path imports."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "none"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "CODEBUDDY.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy permissions support allow/ask/deny rules in settings.json plus CLI permission flags. Bash rules are prefix-style and can include :* suffixes."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings", "https://www.codebuddy.ai/docs/cli/cli-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: "Rules live in permissions.allow/ask/deny arrays; Bash patterns use prefix matching."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--dangerously-skip-permissions"; readonly note: "Bypasses CodeBuddy Code permission prompts."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(**)", "Write(**)", "Edit"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "CodeBuddy"; readonly surface: "CodeBuddy CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks", "https://www.codebuddy.ai/docs/cli/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, instructions, permissions."]; readonly claimScope: "CLI lifecycle hooks and skill invocation controls"; }; readonly lifecycleQualifications: readonly []; }; }; codemaker: { readonly id: "codemaker"; readonly name: "Codemaker"; readonly vendor: "CodeMaker AI"; readonly homepage: "https://github.com/codemakerai/codemaker-cli"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "retired"; readonly since: null; readonly note: "CodeMaker AI's vendor domains no longer resolve, and its vendor-owned CLI repository has not shipped an agent-extension surface."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codemaker"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "CodeMaker CLI repository"; readonly url: "https://github.com/codemakerai/codemaker-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The vendor CLI source and documentation do not implement skills or read .codemaker/skills; the prior claim came only from a third-party installer path table. Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Codemaker"; readonly surface: "CodeMaker AI CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/codemakerai/codemaker-cli"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI product identity; extension availability remains unresolved"; }; readonly lifecycleQualifications: readonly []; }; }; codestudio: { readonly id: "codestudio"; readonly name: "Code Studio"; readonly vendor: "Syncfusion"; readonly homepage: "https://www.syncfusion.com/code-studio/"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".codestudio"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".codestudio"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codestudio"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Code Studio documentation"; readonly url: "https://help.syncfusion.com/code-studio/welcome-to-code-studio"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codestudio/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio supports custom stdio and remote HTTP MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/", "https://help.syncfusion.com/code-studio/reference/configure-properties/mcp/customservers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio custom agents are stored under .codestudio/agents."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/", "https://github.com/syncfusion/code-studio-library"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codestudio/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio exposes command-based lifecycle hooks, but its public documentation does not enumerate a stable event and matcher grammar."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The current Global Agent guide specifies lowercase agents.md at the workspace root, enabled with Agent Enabled and Use Agent MD File."; readonly docs: readonly []; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent", "https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "agents.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Enable Agent Enabled and Use Agent MD File in Code Studio."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent"]; readonly conditions: readonly ["Agent Enabled and Use Agent MD File must both be enabled."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Other Code Studio instruction surfaces were not reviewed."]; readonly claimScope: "Exact lowercase filename and opt-in requirements"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Code Studio"; readonly surface: "Code Studio editor agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, permissions."]; readonly claimScope: "Opt-in project instruction file"; }; readonly lifecycleQualifications: readonly []; }; }; codex: { readonly id: "codex"; readonly name: "Codex"; readonly vendor: "OpenAI"; readonly homepage: "https://learn.chatgpt.com/docs"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "openai"; readonly profile: { readonly identity: { readonly product: "Codex"; readonly surface: "CLI and IDE extension"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks", "https://developers.openai.com/codex/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Hook invocation and decisions reviewed; prompt/agent hook entries may parse without executing. Other existing paths retain their earlier evidence.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".codex"; readonly targeting: { readonly extends: null; readonly capabilities: { readonly "structured-input": { readonly grades: readonly ["native"]; readonly nouns: { readonly "tool:structured-input": "request_user_input"; }; readonly affordances: { readonly "do:ask-structured": "Use request_user_input to collect structured input, then STOP and wait for the response."; }; }; }; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "file"; readonly path: "AGENTS.md"; readonly signal: "ambiguous"; readonly note: "Shared instruction filename used by multiple agents."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codex"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "codex"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Codex documentation"; readonly url: "https://learn.chatgpt.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads SKILL.md skills from repository (.agents/skills) and user (~/.agents/skills) locations with progressive disclosure, using the cross-tool Agent Skills convention rather than a .codex/ path.\n"; readonly docs: readonly []; readonly sources: readonly ["https://developers.openai.com/codex/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://developers.openai.com/codex/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; readonly configRootRelativePath: "config.toml"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; readonly envVarsKey: "env_vars"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "http_headers"; readonly bearerTokenEnvKey: "bearer_token_env_var"; readonly envHeadersKey: "env_http_headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agents are standalone TOML files under .codex/agents (project) or ~/.codex/agents (user); a custom agent overrides a built-in of the same name.\n"; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codex/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/agents"; readonly configRootRelativePath: "agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command and mcp_tool hooks execute. Prompt and agent handlers are parsed but skipped. AXM projects command handlers only; native allow/deny and updatedInput semantics do not expand the AXM canonical decision subset."; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin", "mcp"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "hooks.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PermissionRequest"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear|compact"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: "Matcher filters subagent type."; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "apply_patch"; readonly canonical: "file.edit"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly claimScope: "Documented executable hook mechanisms and permission decision behavior"; readonly conditions: readonly []; readonly limitations: readonly ["AXM writes command handlers only."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/openai/codex/blob/main/docs/agents_md.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/AGENTS.md"; readonly configRootRelativePath: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/agents-md"]; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/AGENTS.override.md"; readonly configRootRelativePath: "AGENTS.override.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Overrides AGENTS.md when non-empty under the selected CODEX_HOME."; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/agents-md"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/config-file/config-reference", "https://learn.chatgpt.com/docs/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; readonly configRootRelativePath: "config.toml"; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/axm.config.toml"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; readonly configRootRelativePath: "axm.config.toml"; }]; readonly grammar: { readonly style: "glob"; readonly example: "[permissions.agentxm.filesystem.\":workspace_roots\"] \".\" = \"write\""; readonly notes: "Permission profiles combine filesystem, network, and workspace-root rules. Narrower deny rules remain in force over broader readable or writable paths.\n"; }; readonly prerequisites: readonly [{ readonly key: "default_permissions"; readonly value: "agentxm"; readonly scope: "user"; readonly note: "Selects the named permission profile."; }]; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Alias for danger-full-access; use only when broad local access is intentional."; }, { readonly flag: "--dangerously-bypass-approvals-and-sandbox"; readonly note: "Runs without local sandbox restrictions."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user-additional-1"; }; readonly patch: { readonly default_permissions: "agentxm"; readonly permissions: { readonly agentxm: { readonly extends: ":workspace"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user-additional-1"; }; readonly patch: { readonly default_permissions: "agentxm"; readonly permissions: { readonly agentxm: { readonly extends: ":workspace"; readonly workspace_roots: { readonly "${workspaceRoot}": true; }; readonly filesystem: { readonly ":workspace_roots": { readonly ".": "write"; }; }; readonly network: { readonly enabled: true; }; }; }; }; readonly template: null; }; }; }; }; }; }; "command-code": { readonly id: "command-code"; readonly name: "Command Code"; readonly vendor: "Command Code"; readonly homepage: "https://commandcode.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".commandcode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Command Code documentation"; readonly url: "https://commandcode.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The shared/project-scoped MCP config is .mcp.json at the repo root; the user-scoped config is ~/.commandcode/mcp.json. A private local scope (~/.commandcode/projects//mcp.json) also exists but is not managed here."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "transport"; readonly value: "stdio"; }, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }, { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code Custom Agents / Sub-Agents are single Markdown files with frontmatter under .commandcode/agents (project) and ~/.commandcode/agents (user)."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/custom-agents", "https://commandcode.ai/docs/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://commandcode.ai/docs/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .commandcode/agents Markdown definitions"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code documents a lifecycle hook system configured in settings.json. AXM has not modeled its native event dialect."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Command Code hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code reads AGENTS.md memory/instruction files."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code exposes permission allow/deny lists and an autoApprove system in settings.json. AXM does not yet write these grants."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Command Code permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Command Code"; readonly surface: "Command Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://commandcode.ai/docs/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Custom agent definitions and scopes"; }; readonly lifecycleQualifications: readonly []; }; }; continue: { readonly id: "continue"; readonly name: "Continue"; readonly vendor: "Continue"; readonly homepage: "https://www.continue.dev"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Continue"; readonly surface: "IDE and CLI"; readonly edition: null; readonly ownership: { readonly company: "Continue"; readonly parentCompany: "Cursor"; readonly sources: readonly ["https://continue.dev", "https://github.com/continuedev"]; }; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://continue.dev", "https://github.com/continuedev"]; readonly conditions: readonly []; readonly limitations: readonly ["Acquisition by Cursor reviewed. Acquisition alone does not establish a shutdown date or retirement of every surface.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".continue"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Continue documentation"; readonly url: "https://docs.continue.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".continue/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Continue agent-mode tools include MCP servers configured as tools in Continue config. AXM does not currently write Continue's YAML/config package format."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/guides/configuring-models-rules-tools", "https://docs.continue.dev/reference/config"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Continue MCP config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The Continue CLI ships a Claude Code-compatible hooks system keyed under settings.json hooks, merged across ~/.continue, .continue, and the matching .claude locations. Beyond the events mapped here it also fires PostToolUseFailure, PermissionRequest, SessionEnd, Notification, SubagentStart, ConfigChange, TeammateIdle, TaskCompleted, WorktreeCreate, and WorktreeRemove, which have no canonical AXM event. Command handlers sit beside http, prompt, and agent handler types, and the surface is not yet covered by the published Continue docs."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".continue/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".continue/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".continue/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: "Matchers select tools by name; an optional per-handler if condition narrows by argument, such as Edit(src/**)."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Continue's hook surface is only described in tracking issues, not published reference docs, so the settings key and handler shape are not stable enough to write."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/guides/configuring-models-rules-tools"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".continue/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The Continue CLI sorts tool patterns into allow, ask, and exclude lists in a user-scoped permissions.yaml that the TUI writes as approvals are granted; there is no project-scoped permission file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/cli/tool-permissions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".continue/permissions.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "Bash(axm *)"; readonly notes: "Tool(pattern) entries under allow, ask, or exclude; the argument pattern is a glob, as in Write(**/*.ts)."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto"; readonly note: "Allows every tool for the session; not tool-scoped."; }, { readonly flag: "--readonly"; readonly note: "Restricts the session to read-only tools."; }, { readonly flag: "--allow"; readonly note: "Adds a session allow rule for one tool pattern."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "permissions.yaml is owned by the Continue TUI and AXM has no writer for its YAML permission grammar."; }; }; }; cortex: { readonly id: "cortex"; readonly name: "Snowflake CoCo"; readonly vendor: "Snowflake"; readonly homepage: "https://www.snowflake.com/en/product/features/cortex-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".cortex"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".cortex"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.snowflake/cortex"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Cortex Code CLI extensibility"; readonly url: "https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility", "https://github.com/Snowflake-Labs/coco-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code configures MCP servers under the mcpServers key."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code subagents are Markdown definitions under .cortex/agents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code hooks execute commands with event data on standard input."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code loads AGENTS.md instruction files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code permission rules are stored in permissions.json and layered settings files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/permissions.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git status)"; readonly notes: "Permission allow and deny entries match tool calls and command prefixes."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Snowflake CoCo"; readonly surface: "Snowflake CoCo CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly ["This profile models CLI paths. Desktop shares the user configuration root but has distinct workspace paths; Snowsight uses hosted Horizon Catalog skills."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: instructions, permissions."]; readonly claimScope: "Product naming and CLI/Desktop/Snowsight extensibility boundaries"; }; readonly lifecycleQualifications: readonly []; }; }; crush: { readonly id: "crush"; readonly name: "Crush"; readonly vendor: "Charm"; readonly homepage: "https://charm.land/crush"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".crush"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Crush repository"; readonly url: "https://github.com/charmbracelet/crush"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".crush/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "crush/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Documented project, global and configurable skill roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush now prefers executable crushrc configuration. AXM targets the deprecated-but-still-supported JSON configuration because the generic writer cannot safely author shell configuration."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush", "https://github.com/charmbracelet/crush/blob/main/schema.json"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/crush/crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush currently supports PreToolUse hooks in crush.json/.crush.json with direct event arrays. The native shape is Claude Code-compatible conceptually but not AXM's grouped command-hook JSON writer shape."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush/tree/main/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Crush hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush can allow broad built-in tools through permissions.allowed_tools and can bypass prompts with --yolo. This does not provide a narrow shell-command grant for AXM."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/crush/crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "\"permissions\": { \"allowed_tools\": [\"view\", \"edit\", \"bash\"] }"; readonly notes: "allowed_tools grants whole tools such as bash; it cannot narrowly grant only the axm command."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Skips all permission prompts for the workspace."; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing grant grammar and writer behavior were not revalidated."]; readonly claimScope: "Permission allow/deny controls and yolo bypass"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a narrow Crush permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Crush"; readonly surface: "Crush terminal agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions."]; readonly claimScope: "Skill discovery and permission controls"; }; readonly lifecycleQualifications: readonly []; }; }; cursor: { readonly id: "cursor"; readonly name: "Cursor"; readonly vendor: "Anysphere"; readonly homepage: "https://cursor.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: "cursor"; readonly profile: { readonly identity: { readonly product: "Cursor"; readonly surface: "Desktop IDE and CLI"; readonly edition: null; readonly ownership: { readonly company: "Anysphere"; readonly parentCompany: "SpaceX"; readonly sources: readonly ["https://cursor.com/blog/joining-spacex"]; }; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://cursor.com/blog/joining-spacex"]; readonly conditions: readonly []; readonly limitations: readonly ["Parent-company acquisition reviewed; the product/operator identity is distinct from parent and model provider. Existing capability paths were not all re-exercised.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".cursor"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "file"; readonly path: "AGENTS.md"; readonly signal: "ambiguous"; readonly note: "Shared instruction filename used by multiple agents."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.cursor"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "cursor-agent"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Cursor documentation"; readonly url: "https://docs.cursor.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cursor 2.4 added Agent Skills (SKILL.md) across the editor and the cursor-agent CLI."; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codex/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/mcp.md", "https://prod.cursor.com/docs/mcp#using-mcpjson"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "env-colon"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly implicitTransport: "http-or-sse"; readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom subagents are Markdown files with YAML frontmatter under .cursor/agents (project) or ~/.cursor/agents (user); added in Cursor 2.4.\n"; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command handlers use flat event arrays. User handlers run from the Cursor configuration directory; project handlers run from the project root. Runtime execution remains unverified."; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "hooks.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "preToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "postToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["modify-output", "inject-context"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "beforeSubmitPrompt"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "sessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "subagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "preCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }]; readonly tools: readonly [{ readonly nativeName: "Shell"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }]; readonly entryDialect: { readonly serializer: "flat-command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-02"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly claimScope: "Documented native command event grammar, native decisions, and project/user locations"; readonly conditions: readonly []; readonly limitations: readonly ["AXM projects command handlers only. The preToolUse ask response is not enforced and is not advertised. Cloud profiles do not load user hooks or sessionStart. No native host execution was observed."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["project", "user"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/rules.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/cli/reference/permissions.md", "https://cursor.com/docs/cli/reference/parameters.md", "https://cursor.com/docs/agent/tools/terminal"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/permissions.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/sandbox.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/sandbox.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-2"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/cli-config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/cli.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "axm"; readonly notes: "IDE: case-sensitive command prefix in terminalAllowlist. CLI: Tool-call syntax Shell()/Read()/Write() with glob patterns. Deny always beats allow.\n"; }; readonly prerequisites: readonly [{ readonly key: "Settings > Cursor Settings > Agents > Auto-Run"; readonly value: "Run in Sandbox | Run Everything"; readonly scope: "user"; readonly note: "IDE Auto-Run must be enabled before terminalAllowlist takes effect."; }]; readonly cliFlags: readonly [{ readonly flag: "--force"; readonly note: "Force allow commands unless explicitly denied."; }, { readonly flag: "--yolo"; readonly note: "Alias for --force."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly terminalAllowlist: readonly ["${tool}"]; }; readonly template: null; }; readonly cliShell: { readonly destination: { readonly kind: "location"; readonly locationId: "project-additional-1"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Shell(${tool})", "Shell(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly type: "workspace_readwrite"; readonly additionalReadwritePaths: readonly []; }; readonly template: null; }; }; }; }; }; }; deepagents: { readonly id: "deepagents"; readonly name: "Deep Agents Code"; readonly vendor: "LangChain"; readonly homepage: "https://docs.langchain.com/oss/python/deepagents/overview"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.deepagents"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Deep Agents skills documentation"; readonly url: "https://docs.langchain.com/oss/python/deepagents/skills"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skill sources are layered built-in, then plugin, then user ~/.deepagents//skills and ~/.agents/skills, then project .deepagents/skills and .agents/skills.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/python/deepagents/skills", "https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/project_utils.py", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active Deep Agents profile from native configuration before selecting this location."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["DEEPAGENTS_HOME relocates the entire user profile."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed definition/frontmatter grammar was not revalidated."]; readonly claimScope: "Current Deep Agents Code data directories and user/project precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The deepagents CLI natively supports MCP servers via 'mcp-servers add|list|tools|update|delete|connect' commands, project-level MCP config discovery/merge, per-server trust/approval, and MCP OAuth session management.\n"; readonly docs: readonly []; readonly sources: readonly ["https://reference.langchain.com/python/deepagents-cli", "https://pypi.org/project/deepagents-cli/", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents/.mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default DEEPAGENTS_HOME only; resolve the active profile directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "default-user"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing project discovery, transport and entry dialect claims were not fully revalidated."]; readonly claimScope: "Global MCP path and relocated profile boundary"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Deep Agents natively supports MCP servers, but the exact config file path, servers key, and serialization dialect are unverified; no AXM writer is defined to avoid fabricating an install path."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Each subagent is a folder holding an AGENTS.md with YAML frontmatter: .deepagents/agents//AGENTS.md for the project and ~/.deepagents//agents//AGENTS.md for the user. The name field is optional and defaults to the folder name."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/subagents.py", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active Deep Agents profile from native configuration before selecting this location."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["DEEPAGENTS_HOME relocates the entire user profile."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed definition/frontmatter grammar was not revalidated."]; readonly claimScope: "Current Deep Agents Code data directories and user/project precedence"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native nested AGENTS.md profile writing is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Deep Agents Code accepts lifecycle command hooks in the profile hooks.json file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default DEEPAGENTS_HOME only; resolve the active profile directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "default-user"; readonly format: "json"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Deep Agents Code accepts lifecycle command hooks in the profile hooks.json file."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "User instructions live under ~/.deepagents//AGENTS.md. Project .deepagents/AGENTS.md and root AGENTS.md are both appended when present; DEEPAGENTS_HOME relocates the user profile."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/project_utils.py", "https://docs.langchain.com/oss/python/deepagents/overview", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/AGENTS.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active profile and DEEPAGENTS_HOME before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["The selected agent determines the user AGENTS.md location."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Agent-specific user instructions and project instruction sources"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Deep Agents Code provides human approval controls for sensitive tool operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Deep Agents Code provides human approval controls for sensitive tool operations."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Deep Agents Code"; readonly surface: "Deep Agents Code CLI; distinct from the library"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "CLI product identity, separate from the Deep Agents framework"; }; readonly lifecycleQualifications: readonly []; }; }; devin: { readonly id: "devin"; readonly name: "Devin CLI"; readonly vendor: "Cognition"; readonly homepage: "https://devin.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Devin"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.devin.ai/cli/subagents", "https://docs.devin.ai/cli/extensibility/mcp/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["Flat and directory subagent forms reviewed; MCP uses current CLI documentation rather than older desktop configuration descriptions.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".devin"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".devin"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "$XDG_CONFIG_HOME/devin"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Devin CLI documentation"; readonly url: "https://docs.devin.ai/cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin also reads universal .agents/skills locations; AXM targets the native .devin/skills project path and XDG user path.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/skills/overview"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".devin/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI stores MCP servers under mcpServers in layered config files. Remote URL servers default to Streamable HTTP and can fall back to SSE."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/mcp/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Devin CLI subagents are AGENT.md files under .devin/agents, .agents/agents, or the global Devin agents directory. Claude Code .claude/agents/*.md files are also imported."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".devin/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI hooks are compatible with Claude Code hooks. AXM writes to the hooks key in .devin/config.json rather than the standalone hooks.v1.json file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/hooks.v1.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-2"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "exec|edit|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "exec|edit|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "exec"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["project-additional-1"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI permissions use allow/ask/deny arrays in layered config files. Rules cover scope matchers such as Read/Write/Exec/Fetch and tool names such as read/edit/grep/glob/exec."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Exec(axm)"; readonly notes: "Exec rules match shell command prefixes as complete words; Read/Write rules use glob-style path scopes."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--permission-mode"; readonly note: "Selects modes such as normal, accept edits, bypass, or autonomous with sandboxing."; }, { readonly flag: "--sandbox"; readonly note: "Enables OS-level sandboxing and autonomous permission behavior."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Exec(${tool})"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(**)", "Write(**)", "edit"]; }; }; readonly template: null; }; }; }; }; }; }; dexto: { readonly id: "dexto"; readonly name: "Dexto"; readonly vendor: "Truffle AI"; readonly homepage: "https://www.dexto.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.dexto"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Dexto documentation"; readonly url: "https://docs.dexto.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/truffle-ai/dexto/blob/main/packages/core/src/skills/workspace-skill-source.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Dexto declares MCP servers under mcpServers in a project agent.yml. The vendor schema adds connectionMode and type fields around the standard server definitions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.dexto.ai/mcp/"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Dexto permissions use manual or auto-approve mode plus alwaysAllow and alwaysDeny tool policies in agent.yml."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/truffle-ai/dexto/blob/main/docs/docs/guides/configuring-dexto/permissions.md"]; readonly scopes: readonly ["project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "agent.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "mcp--filesystem--write_file"; readonly notes: "toolPolicies.alwaysAllow and toolPolicies.alwaysDeny contain tool identifiers such as read_file, bash_exec, and mcp--server--tool."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto-approve"; readonly note: "Enables auto-approve mode for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Dexto"; readonly surface: "Dexto CLI profile; current documentation also describes Dexto Cloud"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.dexto.ai/docs/", "https://www.dexto.ai/docs/features/agents/", "https://www.dexto.ai/docs/features/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Current Cloud documentation does not reconfirm the historical CLI agent.yml or .agents/skills reader contracts.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Cloud product and reusable agent profiles; historical CLI details are not reconfirmed"; }; readonly lifecycleQualifications: readonly []; }; }; droid: { readonly id: "droid"; readonly name: "Droid"; readonly vendor: "Factory"; readonly homepage: "https://www.factory.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".factory"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Factory documentation"; readonly url: "https://docs.factory.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".factory/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory MCP configuration supports local and remote servers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory custom droids are Markdown files under .factory/droids."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/custom-droids", "https://docs.factory.ai/harness/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".factory/droids"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".factory/droids"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Subagents do not spawn further subagents or use AskUser."]; readonly claimScope: "Custom droids and builtin delegation boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory prefers .factory/hooks.json and ~/.factory/hooks.json with an unwrapped event map. The hooks key in settings files is a fallback; older .factory/hooks/hooks.json is a migration source."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide", "https://docs.factory.ai/harness/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".factory/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly keyPath: readonly []; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".factory/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly keyPath: readonly []; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "user-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project-local-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Execute|Create|Edit|ApplyPatch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Execute|Create|Edit|ApplyPatch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Execute"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Create"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "ApplyPatch"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/hooks"]; readonly conditions: readonly ["Canonical hooks.json uses an unwrapped event map; settings.json wraps entries in hooks."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing event mappings are not an exhaustive review of every hook event."]; readonly claimScope: "Canonical hooks.json files and settings-file fallback"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/agents-md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory layers command allow, deny, and block lists; blocklist rules take precedence over denylist and allowlist rules."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/settings", "https://docs.factory.ai/cli/droid-exec/overview"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "commandAllowlist: [\"git status\", \"ls\"]"; readonly notes: "Command-prefix allow, deny, and block lists are matched after program resolution to prevent path-based bypasses."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto "; readonly note: "Selects the automation level."; }, { readonly flag: "--skip-permissions-unsafe"; readonly note: "Bypasses permission checks."; }, { readonly flag: "--enabled-tools "; readonly note: "Restricts the enabled tool set."; }, { readonly flag: "--disabled-tools "; readonly note: "Disables selected tools."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Droid"; readonly surface: "Factory Droid shared harness; CLI configuration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/hooks", "https://docs.factory.ai/harness/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, instructions, permissions."]; readonly claimScope: "Hook configuration and custom droids"; }; readonly lifecycleQualifications: readonly []; }; }; firebender: { readonly id: "firebender"; readonly name: "Firebender"; readonly vendor: "Firebender"; readonly homepage: "https://firebender.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".firebender"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".firebender"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "file"; readonly path: "firebender.json"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.firebender"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Firebender documentation"; readonly url: "https://docs.firebender.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codex/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender stores MCP servers under mcpServers in firebender.json and ~/.firebender/firebender.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/context/mcp/overview", "https://firebendercorp.mintlify.app/api-reference/syntax"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agent Markdown files must be listed in the agents array of firebender.json or ~/.firebender/firebender.json. A conventional directory alone does not register an agent."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Register each Markdown file in the agents array of firebender.json; the directory is not auto-discovered."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly conditions: readonly ["Paths are resolved relative to the applicable project or personal configuration."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Explicit custom agent path registration"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender hooks execute commands with JSON event payloads on standard input and can observe, block, or modify selected operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".firebender/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "sessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "preToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "Shell,Read,Write,MCP"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "postToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "Shell,Read,Write,MCP"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "subagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "preCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Shell"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "MCP"; readonly canonical: "mcp.call"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "afterFileEdit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender reads .firebender/rules/*.mdc and also supports AGENTS.md; this entry models its primary vendor rule directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/global-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Firebender"; readonly surface: "Firebender IDE agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Explicit registration of custom agent Markdown files"; }; readonly lifecycleQualifications: readonly []; }; }; forgecode: { readonly id: "forgecode"; readonly name: "ForgeCode"; readonly vendor: "Tailcall"; readonly homepage: "https://forgecode.dev"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".forge"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".forge"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.forge"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/forge"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "ForgeCode skills documentation"; readonly url: "https://forgecode.dev/docs/skills/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode also reads shared ~/.agents/skills and documents ~/forge/skills as its global skills path."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".forge/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: "forge/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .forge/skills, shared ~/.agents/skills and global ~/forge/skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode supports local and remote MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/mcp-integration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode custom agents are files under .forge/agents."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/creating-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".forge/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/custom-rules/"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode permissions.yaml policies combine read, write, command, and URL glob rules with all, any, and not operators; decisions are allow, deny, or confirm."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/permissions/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".forge/permissions.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".forge.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "command: \"git *\""; readonly notes: "Rules support all, any, and not composition with allow, deny, and confirm decisions."; }; readonly prerequisites: readonly [{ readonly key: "restricted"; readonly value: "true"; readonly scope: "project"; readonly note: "Enables restricted permission policy enforcement from .forge.toml."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "ForgeCode"; readonly surface: "ForgeCode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and global skill discovery"; }; readonly lifecycleQualifications: readonly []; }; }; "gemini-cli": { readonly id: "gemini-cli"; readonly name: "Gemini CLI"; readonly vendor: "Google"; readonly homepage: "https://github.com/google-gemini/gemini-cli"; readonly interfaces: readonly ["cli"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Gemini CLI"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; readonly conditions: readonly ["Continued availability is for supported enterprise subscriptions or paid API-key usage."]; readonly limitations: readonly ["Consumer retirement is edition-specific. Standard/Enterprise and paid API-key users continue to receive support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly [{ readonly scope: "edition"; readonly subject: "Consumer Gemini CLI"; readonly state: "retired"; readonly since: "2026-06-18"; readonly note: "Consumer access transitioned to Antigravity CLI; Standard, Enterprise and paid API access continue."; readonly sources: readonly ["https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; }]; }; readonly rootDir: ".gemini"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "gemini"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Gemini CLI documentation"; readonly url: "https://github.com/google-gemini/gemini-cli/tree/main/docs"; }, { readonly label: "Transitioning Gemini CLI to Antigravity CLI"; readonly url: "https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "httpUrl"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Subagents are Markdown files with YAML frontmatter under .gemini/agents (project) or ~/.gemini/agents (user); shipped in Gemini CLI v0.38.1.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/core/subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Gemini CLI hooks run command hooks from settings files and use JSON on stdin/stdout. Native Gemini CLI exposes additional events such as SessionEnd, BeforeModel, AfterModel, BeforeToolSelection, and Notification; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/index.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear"; readonly notes: "Gemini CLI lifecycle matchers are exact strings; AXM serializes raw matcher text."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeAgent"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterAgent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeTool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "write_file|replace"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterTool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "write_file|replace"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompress"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/index.md"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read_file"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "read_many_files"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write_file"; readonly canonical: "file.write"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "replace"; readonly canonical: "file.edit"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "run_shell_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "web_fetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "manifest"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Consumer access (free, AI Pro, AI Ultra) ended 2026-06-18; Antigravity CLI succeeded Gemini CLI for those tiers. Enterprise customers on paid API keys retain access. The contextFileName setting can also point Gemini CLI at AGENTS.md.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md", "https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "GEMINI.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/GEMINI.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://geminicli.com/docs/cli/gemini-md/"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/policy-engine.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/tools/shell.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/trusted-folders.md"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "run_shell_command(axm)"; readonly notes: "The current configuration reference exposes tools.allowed / tools.core / tools.exclude (formerly coreTools/excludeTools) and the policy engine; command-specific run_shell_command rules are simple string matches and should not be treated as a strong security boundary.\n"; }; readonly prerequisites: readonly [{ readonly key: "security.folderTrust.enabled"; readonly value: "true"; readonly scope: "user"; readonly note: "Untrusted folders disable all auto-acceptance regardless of other settings."; }]; readonly cliFlags: readonly [{ readonly flag: "--approval-mode=yolo"; readonly note: "Broad bypass; not tool-scoped. Blocked when security.disableYoloMode=true."; }, { readonly flag: "--yolo"; readonly note: "Alias for --approval-mode=yolo."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly security: { readonly folderTrust: { readonly enabled: true; }; readonly enablePermanentToolApproval: true; }; readonly tools: { readonly allowed: readonly ["run_shell_command(${tool})"]; }; }; readonly template: null; }; }; }; }; }; }; "github-copilot-cli": { readonly id: "github-copilot-cli"; readonly name: "GitHub Copilot CLI"; readonly vendor: "GitHub"; readonly homepage: "https://docs.github.com/en/copilot/concepts/agents/about-copilot-cli"; readonly interfaces: readonly ["cli"]; readonly family: "github"; readonly profile: { readonly identity: { readonly product: "GitHub Copilot"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/github/copilot-cli/blob/main/changelog.md", "https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly conditions: readonly []; readonly limitations: readonly ["CLI instructions/inheritance and hook mechanisms reviewed. CLI version and agent instruction opt-in affect behavior.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".copilot"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".github/copilot"; readonly signal: "supporting"; readonly note: "Repository and local Copilot CLI settings live under .github/copilot."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.copilot"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "copilot"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "GitHub Copilot CLI documentation"; readonly url: "https://docs.github.com/en/copilot/how-tos/copilot-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-skills", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".github/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-command-reference", "https://github.com/github/copilot-cli/issues/1232#issuecomment-4198097885"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/mcp-config.json"; readonly configRootRelativePath: "mcp-config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "project-github"; readonly scope: "project"; readonly root: "project"; readonly path: ".github/mcp.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, { readonly name: "type"; readonly value: "local"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; GitHub Copilot CLI custom agents are Markdown agent profiles under .github/agents or ~/.copilot/agents.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/concepts/agents/copilot-cli/about-custom-agents", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".github/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Copilot CLI documents command, HTTP and prompt hooks. AXM does not serialize its hook configuration."; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/overview", "https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly claimScope: "Native hook invocation families"; readonly conditions: readonly []; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a GitHub Copilot CLI hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "GitHub Copilot CLI supports AGENTS.md plus Copilot-specific instruction files; AXM syncs the cross-agent AGENTS.md convention.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/github/copilot-cli/blob/main/changelog.md"]; readonly claimScope: "CLI 1.0.89 reads .claude/rules; custom-agent instruction inheritance is opt-in"; readonly conditions: readonly ["Custom agents must set include-custom-instructions: true to inherit repository instructions."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools", "https://docs.github.com/en/copilot/how-tos/copilot-cli/set-up-copilot-cli/configure-copilot-cli", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["cli-flag", "config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/permissions-config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".github/copilot/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "--allow-tool='shell(axm:*)'"; readonly notes: "Copilot CLI permission flags use tool-kind patterns such as shell(git:*), write(path), url(domain), or MCP_SERVER(tool). Deny rules take precedence over allow rules.\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--allow-tool='shell(${tool}:*)'"; readonly note: "Allow a command family without prompting."; }, { readonly flag: "--allow-all-tools"; readonly note: "Allow all available tools without prompting."; }, { readonly flag: "--allow-all"; readonly note: "Allow all tools, paths, and URLs."; }, { readonly flag: "--deny-tool"; readonly note: "Deny a tool pattern; deny rules take precedence over allow rules."; }, { readonly flag: "--available-tools"; readonly note: "Restrict the tools available to the session."; }, { readonly flag: "--excluded-tools"; readonly note: "Remove tools from the session."; }, { readonly flag: "--yolo"; readonly note: "Alias for allowing all tools, paths, and URLs."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "invocation"; }; readonly patch: null; readonly template: "--allow-tool='shell(${tool}:*)'"; }; readonly filesystem: { readonly destination: { readonly kind: "invocation"; }; readonly patch: null; readonly template: "--allow-tool='write(${workspaceRoot}/**)'"; }; }; }; }; }; }; goose: { readonly id: "goose"; readonly name: "Goose"; readonly vendor: "Agentic AI Foundation (AAIF)"; readonly homepage: "https://goose-docs.ai"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly rootDir: ".goose"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Goose documentation"; readonly url: "https://goose-docs.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The built-in Skills platform extension loads project and global .agents/skills plus compatibility roots. Summon separately loads recipes and agents and delegates work."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/mcp/skills-mcp/", "https://goose-docs.ai/docs/guides/context-engineering/using-skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-skills/"]; readonly conditions: readonly ["The Skills platform extension must be enabled."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Built-in Skills platform extension, canonical and compatibility roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/getting-started/using-extensions/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Goose YAML extension config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose discovers reusable Markdown agents and delegates them through the built-in Summon extension."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/custom-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".goose/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/custom-agents/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Goose discovers reusable Markdown agents and delegates them through the built-in Summon extension."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native Open Plugins hooks run commands from hooks/hooks.json inside discovered user or project .agents/plugins packages. Plugin discovery and enablement are required."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/hooks/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Native Open Plugins hooks run commands from hooks/hooks.json inside discovered user or project .agents/plugins packages. Plugin discovery and enablement are required."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose loads AGENTS.md and .goosehints through directory hierarchies. CONTEXT_FILE_NAMES can override the filenames."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goosehints"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "goose/.goosehints"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Goose loads AGENTS.md and .goosehints through directory hierarchies. CONTEXT_FILE_NAMES can override the filenames."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose exposes permission mode, tool permissions, and .gooseignore controls. AXM has not modeled a narrow permission grant writer for Goose."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/managing-tools/tool-permissions/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Goose permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Goose"; readonly surface: "Goose CLI and desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-skills/", "https://goose-docs.ai/docs/guides/context-engineering/custom-agents/", "https://goose-docs.ai/docs/guides/context-engineering/hooks/", "https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, permissions."]; readonly claimScope: "Skills, custom agents, hooks and instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; }; "grok-cli": { readonly id: "grok-cli"; readonly name: "Grok Build"; readonly vendor: "xAI"; readonly homepage: "https://x.ai/cli"; readonly interfaces: readonly ["cli"]; readonly family: "xai"; readonly profile: { readonly identity: { readonly product: "Grok Build"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces", "https://x.ai/news/grok-build-for-everyone"]; readonly conditions: readonly []; readonly limitations: readonly ["Official product and plugin capability reviewed; web/mobile access does not imply local-file support for hosted sessions.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".grok"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Grok CLI documentation"; readonly url: "https://docs.x.ai/build/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads SKILL.md Agent Skills from project (.grok/skills) and user (~/.grok/skills, ~/.agents/skills) locations, plus additional paths configured via [skills] in ~/.grok/config.toml.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".grok/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".grok/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MCP servers are managed with grok mcp commands or [mcp_servers] tables in ~/.grok/config.toml and project .grok/config.toml. Grok also reads ~/.claude.json, .cursor/mcp.json, and .mcp.json compatibility files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Grok CLI MCP config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Agent definitions are Markdown files in .grok/agents or ~/.grok/agents and may add new subagent types or shadow the built-in general-purpose, explore, and plan types. Personas are a separate TOML overlay under .grok/personas and are not modeled as subagents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/subagents", "https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/16-subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".grok/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".grok/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "xAI Grok CLI discovers hook scripts from .grok hooks paths and also advertises Claude Code hook compatibility. Exact in-app hook event details should be reverified before adding a writer."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Grok CLI hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project rules are merged by directory depth from the repository root. Grok also reads documented AGENTS.md filename variants and Markdown files in .grok/rules, with compatibility for .claude/rules and .cursor/rules; AXM writes the universal AGENTS.md surface."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/project-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Grok [permission] settings define allow, deny, and ask lists using Tool(pattern) rules. UI permission modes and CLI flags provide coarse approval behavior in addition to the per-tool grammar."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/settings", "https://docs.x.ai/build/settings/reference"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".grok/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git *)"; readonly notes: "Patterns can target tools and their arguments, including Read(src/**) and MCPTool(server__*)."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--always-approve"; readonly note: "Skip permission prompts for tool calls."; }, { readonly flag: "--permission-mode "; readonly note: "Selects default, dontAsk, acceptEdits, bypassPermissions, or plan mode."; }, { readonly flag: "--deny "; readonly note: "Adds a deny rule for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Grok CLI permission grant writing."; }; }; }; hermes: { readonly id: "hermes"; readonly name: "Hermes Agent"; readonly vendor: "Nous Research"; readonly homepage: "https://hermes-agent.nousresearch.com"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".hermes"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Hermes Agent documentation"; readonly url: "https://hermes-agent.nousresearch.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes reads SKILL.md skills from ~/.hermes/skills as the source of truth. Additional external skill directories can be configured in ~/.hermes/config.yaml for shared team use.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Additional directory precedence and every frontmatter field were not revalidated."]; readonly claimScope: "User skill library and additional configured sources"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes declares MCP servers under mcp_servers in ~/.hermes/config.yaml. AXM writes declared named entries in that YAML file without ownership metadata, preserving other entries and coexisting with hermes mcp commands.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/config.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native delegate_task workers have isolated contexts, parallel execution and configurable delegation models."; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "Native delegate_task workers have isolated contexts, parallel execution and configurable delegation models."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes has profile config.yaml shell hooks, Python plugin hooks, outbound webhooks and Gateway-only HOOK.yaml plus handler.py directories. Gateway hooks do not run in the CLI or Desktop; modeled event mappings cover only part of this surface."; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks", "https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/"]; readonly scopes: readonly ["user"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/config.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/shell-hooks-allowlist.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The existing event mappings and allowlist mechanics were not exhaustively revalidated."]; readonly claimScope: "Hook system availability and surface boundaries"; }; readonly mechanism: readonly ["command-stdin"]; readonly events: readonly [{ readonly nativeName: "pre_tool_call"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_tool_call"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_llm_call"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_llm_call"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "on_session_start"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "subagent_stop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "transform_llm_output"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "modify"; readonly operations: readonly ["modify-output"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes reads AGENTS.md as a recursive project instruction source. .hermes.md and SOUL.md are higher-priority native alternatives at the git root, but AGENTS.md is the cross-tool standard AXM writes.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/configuration"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Hermes Agent"; readonly surface: "Hermes CLI and Gateway; hook behavior varies by surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/", "https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/", "https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, instructions, permissions."]; readonly claimScope: "Hook systems and native subagent delegation"; }; readonly lifecycleQualifications: readonly []; }; }; "ibm-bob": { readonly id: "ibm-bob"; readonly name: "IBM Bob"; readonly vendor: "IBM"; readonly homepage: "https://bob.ibm.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".bob"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "IBM Bob documentation"; readonly url: "https://bob.ibm.com/docs/ide"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".bob/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project servers live in .bob/mcp.json; user servers in ~/.bob/mcp.json. Both files key entries under mcpServers. Streamable HTTP entries use \"type\": \"streamable-http\"; legacy SSE entries remain URL-only.\n"; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/mcp/mcp-in-bob"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".bob/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".bob/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "streamable-http"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "streamable-http"; }; }, null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom modes use .bob/custom_modes.yaml or ~/.bob/settings/custom_modes.yaml. Modes configure tool groups, including subtask/subagent access and allowedSubagents; older JSON mode definitions are converted by the UI."; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".bob/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".bob/settings/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "IDE custom mode YAML and permitted subagents"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Bob automatically loads AGENTS.md from the workspace root.\n"; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".bob/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "IBM Bob custom modes define tool access groups and file permissions, including read, edit, command, and mcp groups. AXM has not implemented a custom_modes permission writer."; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/features/modes", "https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".bob/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".bob/settings/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an IBM Bob custom-modes permission writer."; }; }; readonly profile: { readonly identity: { readonly product: "IBM Bob"; readonly surface: "IBM Bob IDE custom modes"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Custom modes, tool groups and instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; }; "iflow-cli": { readonly id: "iflow-cli"; readonly name: "iFlow CLI"; readonly vendor: "XinLiu AI"; readonly homepage: "https://platform.iflow.cn/cli"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".iflow"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".iflow"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "iflow"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/.iflow"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "iFlow CLI documentation"; readonly url: "https://platform.iflow.cn/en/cli/quickstart"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/skill"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".iflow/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow CLI supports CLI-managed and JSON-configured MCP servers at user and project scopes."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The vendor docs name both settings and legacy MCP files; AXM has not verified one lossless writer dialect across them."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".iflow/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow documents command hooks at user and project scopes, but AXM has not modeled the event and serialization contract."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the iFlow hook dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/configuration/iflow"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "IFLOW.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow exposes confirmation and YOLO execution modes, but vendor docs do not define stable granular permission files for AXM."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/quickstart"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["cli-flag", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Allow tool execution without per-operation confirmation."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not emit broad bypass flags as permission grants."; }; }; readonly profile: { readonly identity: { readonly product: "iFlow CLI"; readonly surface: "iFlow CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://platform.iflow.cn/en/cli/quickstart"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI product availability and advertised MCP/subagent support"; }; readonly lifecycleQualifications: readonly []; }; }; junie: { readonly id: "junie"; readonly name: "Junie"; readonly vendor: "JetBrains"; readonly homepage: "https://www.jetbrains.com/junie"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: "jetbrains"; readonly profile: { readonly identity: { readonly product: "Junie"; readonly surface: "IDE and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli.html", "https://junie.jetbrains.com/docs/agent-skills.html", "https://junie.jetbrains.com/docs/junie-cli-hooks.html"]; readonly conditions: readonly ["CLI hooks remain an Early Access surface."]; readonly limitations: readonly ["CLI and skill discovery reviewed; CLI hooks are Early Access and must not be inferred for every IDE.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".junie"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Junie documentation"; readonly url: "https://junie.jetbrains.com/docs/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/agent-skills.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-mcp-configuration.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".junie/mcp/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/mcp/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-subagents.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI hooks support seven command (type:command) event types: SessionStart, UserPromptSubmit, PreToolUse, Stop, StopFailure, PermissionRequest, and SessionEnd, configured from user config or explicit --config-location files. Default project hooks are still ignored for safety, so AXM does not write Junie hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-hooks.html", "https://junie.jetbrains.com/docs/junie-cli-configuration.html"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no trusted project hook writer target for Junie CLI hooks."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI reads persistent project guidance from .junie/AGENTS.md and suggests importing AGENTS.md-style files from other agents into that location."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/guidelines-and-memory.html", "https://junie.jetbrains.com/docs/junie-cli-usage.html"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI uses the Action Allowlist for terminal commands, MCP tools, and other sensitive actions; brave mode allows all sensitive actions for a session."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-usage.html", "https://junie.jetbrains.com/docs/action-allowlist.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/allowlist.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "^\\Qaxm \\E[^\\s;&|<>@$]+.*$"; readonly notes: "Terminal rules can be exact commands, Java regular expressions, or standard regular expressions."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Junie Action Allowlist writer."; }; }; }; lingma: { readonly id: "lingma"; readonly name: "Lingma"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://help.aliyun.com/zh/lingma"; readonly interfaces: readonly ["ide-extension"]; readonly family: "alibaba"; readonly rootDir: ".lingma"; readonly lifecycle: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "Alibaba renamed TONGYI Lingma to Qoder CN."; readonly supersededBy: "qoder-cn"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".lingma"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.lingma"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Qoder CN (formerly Lingma) documentation"; readonly url: "https://help.aliyun.com/en/lingma/introduction-of-lingma"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/qoder-cn/user-guide/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".lingma/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "The IDE reads MCP services from its settings file; AXM has no verified writer for the legacy Lingma surface."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/qoder-cn/user-guide/guide-for-using-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the legacy Lingma IDE settings dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Lingma/Qoder CN IDE command hooks are documented in ~/.lingma/settings.json."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn/user-guide/hooks"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the Lingma IDE hook dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "The IDE exposes Auto-Run controls in settings rather than a documented portable rule grammar."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn/user-guide/agent"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM cannot write UI-only Lingma Auto-Run settings."; }; }; readonly profile: { readonly identity: { readonly product: "Lingma"; readonly surface: "Legacy Lingma IDE identity, renamed to Qoder CN"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.aliyun.com/en/lingma/introduction-of-lingma"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Alibaba warns that the Lingma documentation may be outdated; current Qoder CN IDE reader mechanics were not revalidated.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "May 2026 product rename and current documentation authority"; }; readonly lifecycleQualifications: readonly [{ readonly scope: "product"; readonly subject: "TONGYI Lingma branding"; readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "Alibaba renamed the product Qoder CN. This identity records the legacy IDE surface; the qoder-cn entry models the CLI, not every renamed product."; readonly sources: readonly ["https://help.aliyun.com/en/lingma/introduction-of-lingma"]; }]; }; }; kilo: { readonly id: "kilo"; readonly name: "Kilo Code"; readonly vendor: "Kilo"; readonly homepage: "https://kilo.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".kilo"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kilo Code documentation"; readonly url: "https://kilo.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/automate/mcp/using-in-cli", "https://kilo.ai/docs/automate/mcp/using-in-kilo-code"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "kilo.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/kilo.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; readonly command: "array"; readonly envKey: "environment"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "CLI project .kilo/agents and user ~/.config/kilo/agents Markdown files"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/code-with-ai/platforms/cli", "https://kilo.ai/docs/getting-started/settings/auto-approving-actions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/kilo.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "kilo.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/kilo.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "axm *"; readonly notes: "Permission values are \"allow\", \"ask\", or \"deny\". Object rules are wildcard matched, and the last matching rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly bash: { readonly "*": "ask"; readonly "${tool} *": "allow"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly external_directory: { readonly "${workspaceRoot}/**": "allow"; }; readonly read: { readonly "${workspaceRoot}/**": "allow"; }; readonly edit: { readonly "${workspaceRoot}/**": "allow"; }; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Kilo Code"; readonly surface: "Kilo CLI; editor extensions have separate configuration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "CLI custom subagent paths and configuration precedence"; }; readonly lifecycleQualifications: readonly []; }; }; "kimi-cli": { readonly id: "kimi-cli"; readonly name: "Kimi Code CLI"; readonly vendor: "Moonshot AI"; readonly homepage: "https://www.kimi.com/code/docs/en/kimi-code-cli/"; readonly interfaces: readonly ["cli"]; readonly family: "moonshot"; readonly profile: { readonly identity: { readonly product: "Kimi Code"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code/whats-new.html"]; readonly conditions: readonly []; readonly limitations: readonly ["Recent releases and remote/web features reviewed. Existing local definition paths retain their earlier evidence; remote session access is not a distinct writer.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".kimi-code"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.kimi-code"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Kimi Code CLI documentation"; readonly url: "https://www.kimi.com/code/docs/en/kimi-code-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code discovers skills from Kimi-specific and cross-tool directories; AXM writes the universal .agents/skills location."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/skills.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/mcp.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kimi-code/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [null, { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; readonly bearerTokenEnvKey: "bearerTokenEnvVar"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code recursively discovers Markdown custom agents with YAML frontmatter and can delegate to them as subagents."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/agents.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kimi-code/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code hooks are TOML array entries, execute commands with JSON on standard input, and can block selected events."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Read|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Read|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "regex"; readonly example: "deploy|release"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM's grouped hook serializer cannot emit Kimi Code's flat TOML hook arrays."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code loads AGENTS.md from project and Kimi-specific or cross-tool user locations."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/agents.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code loads ordered allow, deny, and ask rules from its user configuration; invocation flags can still apply coarse session modes."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/configuration/config-files"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "decision = \"allow\"; pattern = \"Bash(axm *)\""; readonly notes: "Rules are ordered [[permission.rules]] tables whose first matching ToolName or ToolName(argument-pattern) rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Auto-approves all tool calls; aliased as --yes and --auto-approve."; }, { readonly flag: "--afk"; readonly note: "Auto-approves tool calls and auto-dismisses AskUserQuestion."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not serialize ordered TOML array-of-table permission rules."; }; }; }; "kiro-cli": { readonly id: "kiro-cli"; readonly name: "Kiro CLI"; readonly vendor: "AWS"; readonly homepage: "https://kiro.dev"; readonly interfaces: readonly ["cli"]; readonly family: "amazon"; readonly rootDir: ".kiro"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kiro CLI documentation"; readonly url: "https://kiro.dev/docs/cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/mcp/configuration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/settings/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/settings/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly ["Legacy CLI 2.x agent files remain visible and can be upgraded with /upgrade-agent."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Full V3 permission and MCP dialects were not revalidated."]; readonly claimScope: "V3 custom agent configuration and project/home discovery"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro custom agent configuration V3 requires a hooks array. Legacy CLI 2.x hook objects are migrated by /upgrade-agent; AXM has no Kiro hook writer."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/hooks/", "https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly ["V3 requires hook arrays; /upgrade-agent migrates CLI 2.x hook objects."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "V3 hook array migration from legacy object form"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Kiro CLI hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro CLI steering files live under .kiro/steering and can be always-on, conditional, or manually referenced."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/steering/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/steering"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro CLI custom agent configuration supports allowedTools, toolsSettings, and the hooks/MCP tools settings surfaces. The public docs do not define a single default AXM-writable permission grant target."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/cli/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/agents/*.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/agents/*.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "allowedTools: [\"Read\", \"Write\", \"Bash\"]"; readonly notes: "Permission rules are embedded in custom agent configuration files."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Kiro CLI custom-agent permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Kiro CLI"; readonly surface: "Kiro CLI custom agent configuration V3"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, instructions, permissions."]; readonly claimScope: "Versioned custom-agent configuration and hook migration"; }; readonly lifecycleQualifications: readonly []; }; }; kode: { readonly id: "kode"; readonly name: "Kode"; readonly vendor: "shareAI-lab"; readonly homepage: "https://github.com/shareAI-lab/Kode-CLI"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".kode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kode CLI repository"; readonly url: "https://github.com/shareAI-lab/Kode-CLI"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kode connects to MCP servers via .mcp.json (mcpServers key) and .mcprc, managed with kode mcp add/list/get/remove; server tools are exposed as mcp____. Kode also supports a ws transport that is outside AXM's transport enum."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Native MCP config uses .mcp.json (mcpServers key), but the exact writer dialect is not documented; leaving the AXM MCP writer unbuilt pending an AXM product decision."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kode walks repository-root to working-directory instruction files, preferring AGENTS.override.md to AGENTS.md at a level; legacy CLAUDE.md remains readable. The default combined project document cap is 32 KiB."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.override.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Repository-to-cwd AGENTS.md discovery and AGENTS.override.md precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--safe"; readonly note: "Enables permission checks instead of Kode's default YOLO mode."; }, { readonly flag: "--dangerously-skip-permissions"; readonly note: "Explicitly bypasses permission checks."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Kode"; readonly surface: "Kode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, permissions."]; readonly claimScope: "CLI product and AGENTS.md instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; }; mcpjam: { readonly id: "mcpjam"; readonly name: "MCPJam"; readonly vendor: "MCPJam"; readonly homepage: "https://www.mcpjam.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".mcpjam"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MCPJam Inspector documentation"; readonly url: "https://docs.mcpjam.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcpjam/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing local filesystem reader paths were not revalidated by the hosted workflow review."]; readonly claimScope: "Skill use in local Inspector and cloud projects"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MCPJam Inspector loads MCP servers from a config file (mcpServers object) passed via `npx @mcpjam/inspector --config `, supporting stdio and remote (streamable-HTTP/SSE) transports. The config path is arbitrary with no fixed writable location."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mcpjam.com/installation"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not manage MCPJam's inspector config file — the --config path is arbitrary with no stable writable project location."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "MCPJam"; readonly surface: "MCPJam local Inspector; cloud skill workflows are a separate surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Local and hosted skill use"; }; readonly lifecycleQualifications: readonly []; }; }; "minimax-code": { readonly id: "minimax-code"; readonly name: "MiniMax Code"; readonly vendor: "MiniMax"; readonly homepage: "https://agent.minimax.io/download"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly rootDir: ".minimax"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MiniMax Code"; readonly url: "https://github.com/MiniMax-AI/minimax-code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI discovers workspace SKILL.md directories, built-in skills and installed plugin skills."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".minimax/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Full Agent Skills conformance and every discovery priority were not assessed."]; readonly claimScope: "Workspace skill roots and directory symlink support"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The runtime reads .mcp.json only from the session main workspace. It supports stdio, HTTP and SSE; no ancestor or additional-directory search is performed."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The user-profile configuration and writer dialect remain unmodeled."]; readonly claimScope: "Project MCP path and transports"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI runtime provides native subagent tools. A portable custom-subagent directory was not established."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "The CLI runtime provides native subagent tools. A portable custom-subagent directory was not established."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MiniMax-format plugins register hook documents through their manifest hooks array; synchronous command hooks can return TUI systemMessage notices."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "MiniMax-format plugins register hook documents through their manifest hooks array; synchronous command hooks can return TUI systemMessage notices."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "mcode init creates or updates AGENTS.md project guidance."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Nested instruction traversal and personal instruction locations were not established."]; readonly claimScope: "mcode init creates or updates AGENTS.md project guidance."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI exposes execution permission modes, local rules and sandboxing."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only", "config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "The CLI exposes execution permission modes, local rules and sandboxing."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "MiniMax Code"; readonly surface: "MiniMax Code terminal TUI, headless CLI and ACP; desktop is separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: readonly ["MiniMax", "User-configured compatible providers"]; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code", "https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md", "https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md", "https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly conditions: readonly ["Capabilities reviewed against public CLI source targeting TUI 0.4.12; matching npm versions do not prove identical source/build provenance.", "The desktop app source is outside the public CLI repository; ACP is a CLI protocol surface."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "Public CLI source capabilities and desktop boundary"; }; readonly lifecycleQualifications: readonly []; }; }; "mistral-vibe": { readonly id: "mistral-vibe"; readonly name: "Mistral Vibe"; readonly vendor: "Mistral AI"; readonly homepage: "https://docs.mistral.ai/vibe/code/overview"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "mistral"; readonly rootDir: ".vibe"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Mistral Vibe documentation"; readonly url: "https://docs.mistral.ai/vibe/code/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Mistral Vibe stores MCP servers as repeated [[mcp_servers]] TOML array-of-table entries. AXM's generic MCP writer currently serializes keyed server maps and cannot represent that shape without corrupting the configuration."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom definitions are TOML files under project or home .vibe/agents. agent_type is required; subagent definitions are invoked by task delegation, not --agent."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .vibe/agents TOML with agent_type agent or subagent"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Vibe executes TOML-configured hook commands with event data on standard input; pre-tool hooks can deny or modify tool input and hook output can inject context."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/hooks.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/hooks.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "pre_tool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "bash|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input", "inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_tool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "bash|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_agent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Vibe supports per-tool always/ask policies and Bash allow/deny command rules in layered config files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/safety-approvals-permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "[tools.bash]\npermission = \"ask\""; readonly notes: "Per-tool policy is always or ask; Bash rules additionally allow or deny command patterns."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Mistral Vibe"; readonly surface: "Mistral Vibe Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "TOML custom agents and subagent types"; }; readonly lifecycleQualifications: readonly []; }; }; mux: { readonly id: "mux"; readonly name: "Xum"; readonly vendor: "Coder"; readonly homepage: "https://xum.coder.com"; readonly interfaces: readonly ["cli", "desktop", "ide-extension"]; readonly family: null; readonly rootDir: ".xum"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Xum documentation"; readonly url: "https://xum.coder.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "New project skills use .xum/skills. Xum also reads shared .agents/skills and legacy .mux/skills; .xum wins when both canonical and legacy directories exist."; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents/agent-skills", "https://xum.coder.com/agents/agent-skills", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".xum/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".xum/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".mux/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Used when the canonical .xum skills directory is absent."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/agents/agent-skills", "https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical Xum skill roots and documented legacy readers"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Xum stores stdio command strings under the servers key in ~/.xum/mcp.jsonc, .xum/mcp.jsonc, and .xum/mcp.local.jsonc."; readonly docs: readonly []; readonly sources: readonly ["https://xum.coder.com/config/mcp-servers", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio"]; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing detailed protocol and hook behavior were not revalidated."]; readonly claimScope: "Canonical directory and environment naming after the rename"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".xum/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".xum/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".mux/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Used when the corresponding canonical .xum directory is absent."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Agent frontmatter and delegation semantics were not revalidated."]; readonly claimScope: "Canonical project agent directory after the rename"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Xum executes raw tool_pre, tool_post, tool_env, and init scripts from .xum or ~/.xum. Input is provided through XUM_* environment variables; tool_pre can block with a non-zero exit."; readonly docs: readonly []; readonly sources: readonly ["https://xum.coder.com/hooks/tools.md", "https://xum.coder.com/hooks/init.md", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing detailed protocol and hook behavior were not revalidated."]; readonly claimScope: "Canonical directory and environment naming after the rename"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents/instruction-files"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Xum"; readonly surface: "Xum CLI and desktop, formerly Mux"; readonly edition: null; readonly ownership: { readonly company: "Coder"; readonly parentCompany: null; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; }; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility", "https://xum.coder.com/agents/agent-skills"]; readonly conditions: readonly ["The catalog identifier mux is retained; Xum is the current product name. Vendor compatibility locations are reader facts, not AXM compatibility shims."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: instructions, permissions."]; readonly claimScope: "Product rename and canonical configuration locations"; }; readonly lifecycleQualifications: readonly []; }; }; neovate: { readonly id: "neovate"; readonly name: "Neovate"; readonly vendor: "Ant Group"; readonly homepage: "https://github.com/neovateai/neovate-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".neovate"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Neovate Code documentation"; readonly url: "https://github.com/neovateai/neovate-code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Neovate loads directory-based skills (each subdirectory contains a SKILL.md with name+description frontmatter) from .neovate/skills (project) and ~/.neovate/skills (user)."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".neovate/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".neovate/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Native and Claude-compatible skill discovery"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/mcp.ts", "https://github.com/neovateai/neovate-code/blob/master/src/config.ts", "https://github.com/neovateai/neovate-code/blob/master/src/commands/mcp.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".neovate/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".neovate/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disable"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disable"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native configuration defines approvalMode values default, autoEdit and yolo."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Native configuration defines approvalMode values default, autoEdit and yolo."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Neovate"; readonly surface: "Neovate Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts", "https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions."]; readonly claimScope: "Skill discovery and native approval modes from vendor source"; }; readonly lifecycleQualifications: readonly []; }; }; openclaw: { readonly id: "openclaw"; readonly name: "OpenClaw"; readonly vendor: "OpenClaw"; readonly homepage: "https://openclaw.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenClaw documentation"; readonly url: "https://docs.openclaw.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills", "https://github.com/openclaw/openclaw/blob/main/docs/tools/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the configured OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the configured OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".openclaw/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default OPENCLAW_STATE_DIR only; otherwise resolve the configured state directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Personal home skills are excluded when using a non-default state directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills"]; readonly conditions: readonly ["Project locations refer to the configured agent workspace, which need not be the current repository."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Workspace, state-owned and personal skill discovery"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenClaw connects MCP servers through mcp.servers in its Gateway configuration. UI and CLI administration support stdio, Streamable HTTP and SSE; configured servers remain subject to tool policy. The default file is ~/.openclaw/openclaw.json (JSON5); resolve the active state/configuration path. JSON5 reader mechanics are not yet modeled in this catalog."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/mcp"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Exact entry grammar, secret handling and vendor runtime connectivity were not verified."]; readonly claimScope: "Native MCP client, transports and configuration key"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native sessions_spawn starts isolated background subagent runs with per-agent configuration and lifecycle tracking."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "Native sessions_spawn starts isolated background subagent runs with per-agent configuration and lifecycle tracking."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Internal hooks use HOOK.md and a handler module; typed plugin hooks use api.on. Workspace hooks require explicit opt-in; HTTP ingress hooks are a separate feature."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/automation/hooks"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/automation/hooks"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Internal hooks use HOOK.md and a handler module; typed plugin hooks use api.on. Workspace hooks require explicit opt-in; HTTP ingress hooks are a separate feature."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The configured agent workspace AGENTS.md is loaded at session start. Workspace location is explicit agent configuration and is not necessarily the current repository."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/concepts/agent-workspace"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/concepts/agent-workspace"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "The configured agent workspace AGENTS.md is loaded at session start. Workspace location is explicit agent configuration and is not necessarily the current repository."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native tools.exec.mode controls host execution policy. Host-local approvals, session posture and delegated harness settings can impose additional restrictions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/permission-modes"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/permission-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Native tools.exec.mode controls host execution policy. Host-local approvals, session posture and delegated harness settings can impose additional restrictions."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "OpenClaw"; readonly surface: "OpenClaw Gateway agent with CLI and Control UI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills", "https://docs.openclaw.ai/tools/subagents", "https://docs.openclaw.ai/automation/hooks", "https://docs.openclaw.ai/tools/mcp", "https://docs.openclaw.ai/concepts/agent-workspace", "https://docs.openclaw.ai/tools/permission-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "Workspace skill scopes, hooks and subagent delegation"; }; readonly lifecycleQualifications: readonly []; }; }; opencode: { readonly id: "opencode"; readonly name: "OpenCode"; readonly vendor: "Anomaly"; readonly homepage: "https://opencode.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".opencode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenCode documentation"; readonly url: "https://opencode.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/skills/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://opencode.ai/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical and compatible project/home skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode V2 stores server definitions beneath mcp.servers and expands {env:NAME} references without shell defaults."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/v2/docs/mcp-servers", "https://opencode.ai/v2/docs/config", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/config.ts", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/config/mcp.ts", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "env-tag"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-jsonc"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-directory"; readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/opencode.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-directory-jsonc"; readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "user-jsonc"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [null, { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }]; }; readonly stdio: { readonly command: "array"; readonly envKey: "environment"; readonly cwdKey: "cwd"; readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; }; readonly remote: { readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; readonly typeField: { readonly required: { readonly name: "type"; readonly value: "remote"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "remote"; }]; }; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/agents/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode exposes lifecycle hooks through in-process JavaScript/TypeScript plugins. AXM models the surface but does not serialize plugin hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/plugins/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "OpenCode hooks are in-process JavaScript plugin exports, not declarative config; AXM's command-stdin serializer has no way to emit them."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode reads AGENTS.md project rules, a global ~/.config/opencode/AGENTS.md, and Claude-compatible CLAUDE.md fallbacks. AXM can target the universal AGENTS.md project file."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/rules/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://opencode.ai/docs/rules/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/CLAUDE.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Fallback when the OpenCode global AGENTS.md is absent and Claude Code prompt compatibility is enabled."; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://opencode.ai/docs/rules/"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/permissions/", "https://opencode.ai/docs/config/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "axm *"; readonly notes: "Permission values are \"allow\", \"ask\", or \"deny\". Object rules are pattern matched, and the last matching rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly bash: { readonly "*": "ask"; readonly "${tool} *": "allow"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly external_directory: { readonly "${workspaceRoot}/**": "allow"; }; readonly read: { readonly "${workspaceRoot}/**": "allow"; }; readonly edit: { readonly "${workspaceRoot}/**": "allow"; }; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "OpenCode"; readonly surface: "OpenCode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://opencode.ai/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Local skill discovery and compatible skill directories"; }; readonly lifecycleQualifications: readonly []; }; }; openhands: { readonly id: "openhands"; readonly name: "OpenHands"; readonly vendor: "All Hands AI"; readonly homepage: "https://www.openhands.dev"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".openhands"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenHands documentation"; readonly url: "https://docs.openhands.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/microagents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical .agents/skills and legacy .openhands skill roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenHands stores MCP servers under mcpServers in ~/.openhands/mcp.json and manages them through the openhands mcp CLI."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/sdk/guides/mcp", "https://docs.openhands.dev/openhands/usage/cli/mcp-servers"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an OpenHands MCP writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenHands lifecycle hooks are shell commands receiving JSON event payloads on stdin. Blocking events can deny with exit code 2 or a JSON decision; several events can inject additional context."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly scopes: readonly ["project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "terminal"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "terminal"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "OpenHands"; readonly surface: "OpenHands agent; reviewed skill contract"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Canonical and legacy skill paths"; }; readonly lifecycleQualifications: readonly []; }; }; ona: { readonly id: "ona"; readonly name: "Ona"; readonly vendor: "Ona"; readonly homepage: "https://ona.com"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly rootDir: ".ona"; readonly lifecycle: { readonly state: "deprecated"; readonly since: null; readonly note: "The original Ona Agent is deprecated. Ona Cloud migrated to Codex; Enterprise customer-managed Anthropic remains temporarily available."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".ona"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Ona Agent documentation"; readonly url: "https://ona.com/docs/ona/agents"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".ona/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Ona reads repository MCP definitions from .ona/mcp-config.json and also offers organization-managed HTTP integrations."; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/mcp"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Ona's mcp-config.json dialect or hosted integration delivery."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Ona administrators configure command and executable deny lists as organization guardrails; the vendor does not document a repository permission file."; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Ona guardrails are managed through the organization administration surface."; }; }; readonly profile: { readonly identity: { readonly product: "Ona"; readonly surface: "Original Ona Agent harness in isolated development environments; not the whole Ona platform"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly conditions: readonly ["Continued use requires Enterprise with customer-managed Anthropic model access on a supported AWS or GCP runner."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Harness deprecation with cloud and Enterprise qualifications"; }; readonly lifecycleQualifications: readonly [{ readonly scope: "surface"; readonly subject: "Original Ona Agent on Ona Cloud"; readonly state: "retired"; readonly since: null; readonly note: "No longer available; affected projects move to Codex Agent."; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; }, { readonly scope: "edition"; readonly subject: "Enterprise customer-managed Anthropic Ona Agent"; readonly state: "deprecated"; readonly since: null; readonly note: "Remains available temporarily on supported AWS/GCP Enterprise deployments. This does not retire the Ona platform."; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; }]; }; }; pi: { readonly id: "pi"; readonly name: "Pi"; readonly vendor: "Earendil Inc"; readonly homepage: "https://github.com/earendil-works/pi"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".pi"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Pi coding agent documentation"; readonly url: "https://pi.dev/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills follow the Agent Skills SKILL.md standard and are invoked via /skill:name. Pi discovers them from .pi/skills and .agents/skills (project, searched up through parent directories) and ~/.pi/agent/skills and ~/.agents/skills (user).\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".pi/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".pi/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Requires Pi 1.0 or later. Native runtime verification is pending. Hyphens and underscores collide in exposed server names. Reload the host after configuration changes."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/v1.0.0/packages/coding-agent/docs/mcp.md"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; readonly fields: readonly ["env", "headers"]; readonly executableValues: true; readonly homeExpansion: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".pi/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".pi/agent/mcp.json"; readonly configRootRelativePath: "mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [null, { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "http"; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "http"; }, { readonly name: "type"; readonly value: "streamable-http"; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "third-party"; readonly plugin: { readonly name: "pi-subagents"; readonly homepage: "https://github.com/nicobailon/pi-subagents"; readonly author: "nicobailon"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "pi install npm:pi-subagents"; readonly packageRef: "npm:pi-subagents"; }; readonly detection: { readonly paths: readonly [{ readonly scope: "user"; readonly path: "~/.pi/agent/agents/"; readonly kind: "dir"; }, { readonly scope: "project"; readonly path: ".pi/agents/"; readonly kind: "dir"; }, { readonly scope: "user"; readonly path: "~/.pi/agent/extensions/subagent/agents/"; readonly kind: "dir"; }]; readonly configKeys: readonly [{ readonly scope: "user"; readonly file: "~/.pi/agent/settings.json"; readonly key: "subagents"; }, { readonly scope: "project"; readonly file: ".pi/settings.json"; readonly key: "subagents"; }]; }; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pi has no built-in subagent system by design, but the third-party pi-subagents plugin adds a subagent extension surface. AXM describes and may detect this plugin, but does not install, resolve, or manage it.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md", "https://github.com/nicobailon/pi-subagents"]; readonly scopes: readonly ["user", "project"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pi extension hooks are in-process TypeScript extension points; this is the core Pi project, not the oh-my-pi fork. AXM models the surface but does not serialize Pi extension hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Pi extension hook writers."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AGENTS.md and CLAUDE.md context load at startup from the global directory (~/.pi/agent), parent directories, and the current directory; all matching files are concatenated.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project trust is documented separately from per-tool grants. The current per-tool permission boundary was not established by this review."; readonly docs: readonly []; readonly sources: readonly ["https://pi.dev/docs/latest/settings"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Pi"; readonly surface: "Pi terminal coding agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md", "https://github.com/earendil-works/pi/blob/main/packages/coding-agent/docs/configuration.md"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Pi 1.0 MCP configuration is implemented from its versioned documentation; native runtime acceptance remains pending.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current terminal product and configuration entry points"; }; readonly lifecycleQualifications: readonly []; }; }; vscode: { readonly id: "vscode"; readonly name: "Visual Studio Code"; readonly vendor: "Microsoft"; readonly homepage: "https://code.visualstudio.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".vscode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MCP configuration"; readonly url: "https://code.visualstudio.com/docs/agents/reference/mcp-configuration"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Local extension host only. Select the absolute user-profile mcp.json path with AXM_VSCODE_USER_MCP_CONFIG. Trust, input prompts, OAuth, policies and remote windows remain host-owned. Native runtime acceptance is pending."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "env-colon"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vscode/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: "mcp.json"; readonly selectedFile: "vscode-user-mcp"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["servers"]; readonly attribution: "agent"; }, { readonly id: "agent-host-project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "VS Code Agent Host is selected; local extension-host configuration alone does not establish this reader."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "agent-host-user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/mcp-config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "VS Code Agent Host is selected with the default Copilot home."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; pochi: { readonly id: "pochi"; readonly name: "Pochi"; readonly vendor: "TabbyML"; readonly homepage: "https://getpochi.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".pochi"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Pochi documentation"; readonly url: "https://docs.getpochi.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project Pochi and shared skill roots and invocation controls"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/mcp/", "https://docs.getpochi.com/tutorials/secure-db-access-in-pochi/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/config.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".pochi/config.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agents are Markdown files in project or home .pochi/agents with YAML frontmatter. Description is required; name defaults to the filename."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".pochi/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Custom agents are Markdown files in project or home .pochi/agents with YAML frontmatter. Description is required; name defaults to the filename."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pochi reads custom-instruction files at the workspace root: README.pochi.md (primary) and AGENTS.md (alternative, treated identically), plus ~/.pochi/README.pochi.md at user scope. AXM manages the universal AGENTS.md."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/rules/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "UI Auto-Approve controls cover reading, writing, execution, MCP use and retry behavior."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/permissions/"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/permissions/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "UI Auto-Approve controls cover reading, writing, execution, MCP use and retry behavior."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Pochi"; readonly surface: "Pochi editor agent and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/", "https://docs.getpochi.com/permissions/", "https://docs.getpochi.com/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook, instructions."]; readonly claimScope: "Custom agent Markdown definitions and UI approvals"; }; readonly lifecycleQualifications: readonly []; }; }; qoder: { readonly id: "qoder"; readonly name: "Qoder"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://qoder.com"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "alibaba"; readonly rootDir: ".qoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Qoder documentation"; readonly url: "https://docs.qoder.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/Skills", "https://docs.qoder.com/cli/Skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.com/cli/Skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Other capability contracts were not revalidated."]; readonly claimScope: "CLI project/user skill discovery and /skills reload"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CLI 1.1.64 expands braced environment references and unset-variable defaults in MCP headers and stdio env values."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/user-guide/chat/model-context-protocol", "https://docs.qoder.com/cli/mcp-servers", "https://unpkg.com/@qoder-ai/qodercli@1.1.64/bundle/qodercli.js"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CLI hooks run command hooks from settings files and use JSON on stdin/stdout. Native Qoder exposes additional events such as SessionEnd, PostToolUseFailure, SubagentStart, Notification, and PermissionRequest; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|compact"; readonly notes: "Qoder matcher values can be exact strings, pipe-separated values, or regex."; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: "task"; readonly notes: "Matcher targets the agent type name."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/command"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder permissions use allow/ask/deny rules in settings. User settings live under ~/.qoder/settings.json; project rules can live in .qoder/settings.json or .qoder/settings.local.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--permission-mode"; readonly note: "Chooses the session permission mode."; }, { readonly flag: "--allowed-tools"; readonly note: "Allows specific tools or tool rules for a run."; }, { readonly flag: "--dangerously-skip-permissions"; readonly note: "Alias for --permission-mode bypass_permissions."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)", "Write(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Qoder"; readonly surface: "Qoder CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.com/cli/Skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI skill discovery and reload behavior"; }; readonly lifecycleQualifications: readonly []; }; }; "qoder-cn": { readonly id: "qoder-cn"; readonly name: "Qoder CN CLI"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://help.aliyun.com/zh/lingma/qoder-cn-cli"; readonly interfaces: readonly ["cli"]; readonly family: "alibaba"; readonly rootDir: ".qoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".qoder"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "qoderclicn"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/.qoder-cn"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Qoder CN CLI documentation"; readonly url: "https://help.aliyun.com/zh/lingma/qoder-cn-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/skills-3033419", "https://help.aliyun.com/zh/lingma/qoder-cn-cli"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI stores user, local-project, and shared-project MCP definitions in distinct settings files."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not verified the Qoder CN CLI dialect independently from global Qoder."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI exposes command hooks, but AXM has not independently verified its complete event and serialization contract."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn-cli"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The regional CLI hook dialect requires a separate vendor-doc verification before AXM writes it."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/using-the-cli"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI supports allow, ask, and deny rules plus session flags."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/tools-3044418"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder-cn/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "Bash(git status)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--allowed-tools"; readonly note: "Pre-allow named tools or tool patterns for the session."; }, { readonly flag: "--disallowed-tools"; readonly note: "Deny named tools or tool patterns for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented regional Qoder permission settings."; }; }; readonly profile: { readonly identity: { readonly product: "Qoder CN CLI"; readonly surface: "Qoder CN CLI; distinct from the legacy Lingma IDE surface"; readonly edition: "Mainland China CLI"; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.cn/en/cli/built-ins"]; readonly conditions: readonly ["The Lingma-to-Qoder CN rename does not make legacy IDE paths interchangeable with the Qoder CN CLI."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current CLI built-in capabilities and product identity"; }; readonly lifecycleQualifications: readonly []; }; }; "qwen-code": { readonly id: "qwen-code"; readonly name: "Qwen Code"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://qwenlm.github.io/qwen-code-docs/"; readonly interfaces: readonly ["cli"]; readonly family: "alibaba"; readonly rootDir: ".qwen"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Qwen Code documentation"; readonly url: "https://qwenlm.github.io/qwen-code-docs/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly conditions: readonly ["Bare mode disables discovery watchers."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and user roots, /learn and AutoSkill scopes"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "httpUrl"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/sub-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code hooks run command hooks from settings files and use JSON on stdin/stdout. Native Qwen Code also exposes HTTP hooks and additional events such as SessionEnd, PostToolUseFailure, SubagentStart, PostCompact, Notification, and PermissionRequest; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "WriteFile|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "WriteFile|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Explorer"; readonly notes: "Matcher targets the subagent type."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "ReadFile"; readonly canonical: "file.read"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WriteFile"; readonly canonical: "file.write"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/shell/"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "manifest"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code loads QWEN.md from the project root and ~/.qwen/QWEN.md, and also reads AGENTS.md when present. AXM targets the universal AGENTS.md convention for project rules."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/memory/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code grades tool access through a Claude Code-style permissions block with allow/ask/deny rule arrays. The legacy tools.allowed and tools.exclude keys are deprecated and migrate into permissions on first load; tools.approvalMode still sets the coarse default mode."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/configuration/settings/", "https://qwenlm.github.io/qwen-code-docs/en/users/features/approval-mode/", "https://qwenlm.github.io/qwen-code-docs/en/developers/tools/shell/", "https://qwenlm.github.io/qwen-code-docs/en/users/features/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm *)"; readonly notes: "Tool(pattern) rules sorted into permissions.allow, permissions.ask, and permissions.deny; deny wins over ask over allow. Approval modes are plan/default/auto-edit/auto/yolo set by tools.approvalMode (Default is surfaced as 'Ask Permissions'; the value stays 'default').\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool} *)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Qwen Code"; readonly surface: "Qwen Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and user skills, learning and reload behavior"; }; readonly lifecycleQualifications: readonly []; }; }; replit: { readonly id: "replit"; readonly name: "Replit"; readonly vendor: "Replit"; readonly homepage: "https://replit.com"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Replit Agent documentation"; readonly url: "https://docs.replit.com/replitai/agent"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project skills are repository files. Team workspace skills are a separate centrally managed Workspace Settings surface, not a local user-home reader."; readonly docs: readonly []; readonly sources: readonly ["https://docs.replit.com/core-concepts/agent/skills", "https://docs.replit.com/features/agent/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.replit.com/features/agent/skills"]; readonly conditions: readonly ["Workspace skills are configured centrally in Workspace Settings."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .agents/skills and workspace-managed skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Replit Agent MCP is UI-driven via the Integrations pane and 'Add to Replit' install-links, connecting only to remote HTTP servers (baseUrl + headers/OAuth). There is no AXM-writable MCP config file, so no writer dialect is modeled."; readonly docs: readonly []; readonly sources: readonly ["https://docs.replit.com/replitai/mcp/overview"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Replit Agent MCP is UI-managed (Integrations pane / install-links) with no AXM-writable config file."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Replit"; readonly surface: "Replit Agent reading project files in its hosted workspace"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.replit.com/features/agent/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and workspace-managed skills"; }; readonly lifecycleQualifications: readonly []; }; }; roo: { readonly id: "roo"; readonly name: "Roo Code"; readonly vendor: "Roo Code"; readonly homepage: "https://roocode.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".roo"; readonly lifecycle: { readonly state: "retired"; readonly since: "2026-05-15"; readonly note: "Roo Code shut down its VS Code extension, Cloud, and Router on 2026-05-15 (final release v3.54.0); the RooCodeInc/Roo-Code repo is archived and read-only. The former team pivoted to a separate cloud-agent product, Roomote."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Roo Code documentation"; readonly url: "https://docs.roocode.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Roo Code supports Roo-specific .roo/skills and cross-agent .agents/skills locations, including mode-specific skill directories."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".roo/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://roocodeinc.github.io/Roo-Code/features/mcp/using-mcp-in-roo"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The current AXM Roo Code service returns MCP add/remove as unsupported."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".roomodes"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "This review did not establish whether Roo Code provided native hooks; its recorded product retirement does not establish feature absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella; Roo also loads AGENTS.md when agent rules are enabled."; readonly docs: readonly []; readonly sources: readonly ["https://roocodeinc.github.io/Roo-Code/features/custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".roo/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Roo Code exposes auto-approval controls through the extension settings UI, including read, write, command, MCP, browser, and mode-switch approvals. The docs do not describe a stable AXM-writable permission config file for these controls."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/auto-approving-actions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly [{ readonly key: "Auto-Approve Settings"; readonly value: "enabled per operation"; readonly scope: "user"; readonly note: "Configure in Roo Code's Auto-Approve Settings panel."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Roo Code permission grant writing."; }; }; readonly profile: { readonly identity: { readonly product: "Roo Code"; readonly surface: "Retired Roo Code product; Roomote is a separate product"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://roomote.dev/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "The existing Roo retirement date was not independently reverified. The former homepage redirects to Roomote, which says it is built by Roo Code creators and currently uses OpenCode; this is not evidence that Roo Code resumed.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current former homepage destination and distinct successor-team product"; }; readonly lifecycleQualifications: readonly []; }; }; rovodev: { readonly id: "rovodev"; readonly name: "Rovo Dev"; readonly vendor: "Atlassian"; readonly homepage: "https://www.atlassian.com/software/rovo-dev"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".rovodev"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".rovodev"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.rovodev"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Rovo Dev CLI skills"; readonly url: "https://support.atlassian.com/rovo/docs/extend-rovo-dev-cli-with-agent-skills/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev also reads universal .agents/skills in both project and user scopes.\n"; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/extend-rovo-dev-cli-with-agent-skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev supports local and remote MCP server configuration."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/connect-to-an-mcp-server-in-rovo-dev-cli/", "https://support.atlassian.com/bitbucket-cloud/docs/rovo-dev-advanced-agentic-configuration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/subagents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".rovodev/subagents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .rovodev/subagents Markdown files"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev exposes event hooks including tool-permission, response-finished, and error events; the public surface is recorded without an AXM serializer model."; readonly docs: readonly []; readonly sources: readonly ["https://www.atlassian.com/blog/developer/streamline-rovo-dev-cli-with-event-hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev reads hierarchical AGENTS.md memory files."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-memory-in-rovo-dev-cli/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev toolPermissions rules select allow, ask, or deny behavior by tool call."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/manage-rovo-dev-cli-settings/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".rovodev/config.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/config.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git status)"; readonly notes: "Rules choose allow, ask, or deny, with a configurable default."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Rovo Dev"; readonly surface: "Rovo Dev CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Project and user subagent Markdown definitions"; }; readonly lifecycleQualifications: readonly []; }; }; "tabnine-cli": { readonly id: "tabnine-cli"; readonly name: "Tabnine CLI"; readonly vendor: "Tabnine"; readonly homepage: "https://www.tabnine.com/platform-cli/"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".tabnine"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".tabnine"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.tabnine"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Tabnine CLI"; readonly url: "https://www.tabnine.com/platform-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Native and universal roots in both scopes; workspace alias has highest priority"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine MCP servers are configured in .tabnine/mcp_servers.json and ~/.tabnine/mcp_servers.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-agent/mcp-intro-and-setup"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine hooks execute synchronously from layered agent settings and can observe, block, or modify selected lifecycle operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeAgent"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterAgent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeTool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "shell,read,write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterTool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "shell,read,write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompress"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine reads guidelines.md files under .tabnine/guidelines and can override the context filename through settings."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-agent/guidelines"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "guidelines.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/guidelines"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine settings define allowed and excluded tools plus persistent-approval and policy-path controls."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/settings/settings-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "tools.allowed: [\"shell\"]"; readonly notes: "Allowed and excluded tool lists combine with security and policy-path settings."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Tabnine CLI"; readonly surface: "Tabnine CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Native and shared skill roots and management commands"; }; readonly lifecycleQualifications: readonly []; }; }; "trae-cn": { readonly id: "trae-cn"; readonly name: "Trae CN"; readonly vendor: "ByteDance"; readonly homepage: "https://www.trae.cn"; readonly interfaces: readonly ["ide-extension"]; readonly family: "bytedance"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Trae CN documentation"; readonly url: "https://docs.trae.cn"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide/skills"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide_add-mcp-servers"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".trae/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide/rules"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Trae CN"; readonly surface: "TRAE CN IDE; TraeWork is a separate reviewed surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.trae.cn/work_skills"]; readonly conditions: readonly ["TraeWork documentation describes .trae/skills locally and ~/.trae-cn/skills globally plus uploads; it does not establish the existing IDE reader contract."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "TraeWork skill discovery; IDE capability details remain unreviewed"; }; readonly lifecycleQualifications: readonly []; }; }; trae: { readonly id: "trae"; readonly name: "Trae"; readonly vendor: "ByteDance"; readonly homepage: "https://www.trae.ai"; readonly interfaces: readonly ["ide-extension"]; readonly family: "bytedance"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Trae documentation"; readonly url: "https://docs.trae.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.trae.ai/blog/trae_tutorial_0115"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.ai/ide/model-context-protocol"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".trae/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Trae combines global user rules with project and nested .trae/rules directories for module-specific instructions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.ai/ide/rules"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Trae"; readonly surface: "TRAE IDE"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.trae.ai/ide/rules"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "The official rules page returned no usable content. Existing positive capabilities and paths have not been freshly verified.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Official documentation entry point; content could not establish current mechanics"; }; readonly lifecycleQualifications: readonly []; }; }; warp: { readonly id: "warp"; readonly name: "Warp"; readonly vendor: "Warp"; readonly homepage: "https://www.warp.dev"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Warp"; readonly surface: "Desktop and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.warp.dev/blog/introducing-the-warp-agent-cli-coding-agent"]; readonly conditions: readonly []; readonly limitations: readonly ["Standalone CLI/product surface reviewed. Orchestration does not establish a file-based custom-subagent definition.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.warp"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Warp documentation"; readonly url: "https://docs.warp.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp stores project MCP servers in .warp/.mcp.json and user servers in ~/.warp/.mcp.json under mcpServers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "sse", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp discovers hierarchical AGENTS.md project rules and exposes user-level rules through Warp Drive."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/rules/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp Agent Profiles configure autonomy per action and regular-expression command allowlists and denylists; deny rules take precedence."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/agent-profiles-permissions/"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: { readonly style: "regex"; readonly example: "ls(\\s.*)?"; readonly notes: "Command allowlist and denylist entries are regular expressions configured in Settings."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; windsurf: { readonly id: "windsurf"; readonly name: "Devin Desktop (Windsurf)"; readonly vendor: "Cognition"; readonly homepage: "https://devin.ai/desktop"; readonly interfaces: readonly ["ide-extension"]; readonly family: "cognition"; readonly profile: { readonly identity: { readonly product: "Devin Desktop"; readonly surface: "Desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.devin.ai/desktop/changelog", "https://docs.devin.ai/desktop/devin-local"]; readonly conditions: readonly []; readonly limitations: readonly ["Cascade removal and Devin Local reviewed. Stable catalog ID is retained; legacy Cascade capability paths are not automatically Devin Local paths.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".windsurf"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Devin Desktop documentation"; readonly url: "https://docs.devin.ai/desktop"; }, { readonly label: "Windsurf is now Devin Desktop"; readonly url: "https://devin.ai/blog/windsurf-is-now-devin-desktop"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin Desktop reads SKILL.md skills from .windsurf/skills (project) and ~/.codeium/windsurf/skills (user) with progressive disclosure. It also discovers universal .agents/skills paths. The built-in Cascade agent reached end-of-life 2026-07-01 and is being replaced by Devin Local; the .windsurf/* and ~/.codeium/windsurf/* config surfaces persist under Devin Local.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".windsurf/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "serverUrl"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The reviewed desktop instruction documentation does not establish a reusable custom-subagent target. This is not evidence that the current product lacks subagents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/agents-md"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin Desktop/Cascade hooks are direct per-event command arrays in hooks.json. AXM's generic hook writer emits grouped command-stdin hooks and cannot serialize this shape yet."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".windsurf/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "pre_read_code"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_read_code"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_write_code"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_write_code"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_run_command"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_run_command"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_mcp_tool_use"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_mcp_tool_use"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_user_prompt"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_cascade_response"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_cascade_response_with_transcript"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read_code"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write_code"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "run_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "mcp_tool_use"; readonly canonical: "mcp.call"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Devin Desktop/Cascade hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/agents-md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".devin/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/terminal", "https://docs.devin.ai/desktop/cascade"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: { readonly style: "prefix"; readonly example: "axm"; readonly notes: "windsurf.cascadeCommandsAllowList is prefix-matched. Workspace-scoped override for these keys is not documented; configure at user scope. Teams/Enterprise can merge in lists via the Admin Portal.\n"; }; readonly prerequisites: readonly [{ readonly key: "Cascade auto-execution level"; readonly value: "allowlist_only | turbo"; readonly scope: "user"; readonly note: "Disabled and Auto modes ignore allowlist entries; set via the Windsurf Settings panel."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "settings-ui"; }; readonly patch: { readonly "windsurf.cascadeCommandsAllowList": readonly ["${tool}"]; }; readonly template: null; }; }; }; }; }; }; zencoder: { readonly id: "zencoder"; readonly name: "Zencoder"; readonly vendor: "Zencoder"; readonly homepage: "https://zencoder.ai"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".zencoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Zencoder documentation"; readonly url: "https://docs.zencoder.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills are discovered from project and user .agents/skills and project .claude/skills. Legacy .zencoder/skills remains readable but is deprecated; the agent selects skills automatically."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt", "https://docs.zencoder.ai/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical shared skill roots and deprecated vendor directory"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM cannot yet model the dotted zencoder.mcpServers VS Code settings key, and the previous standalone .zencoder/mcp.json target was not vendor-documented."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zencoder documents named AI agents configured and shared through its UI. This alone does not establish autonomous subagent delegation or a portable subagent directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no delivery path for Zencoder's UI-managed custom agents."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zencoder added MCP tool permission prompts in April 2026. The docs describe user-visible MCP permission control, not a stable AXM-writable permission file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Zencoder permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Zencoder"; readonly surface: "Zencoder IDE Agents"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Skill discovery and UI-managed agent distinction"; }; readonly lifecycleQualifications: readonly []; }; }; zed: { readonly id: "zed"; readonly name: "Zed"; readonly vendor: "Zed Industries"; readonly homepage: "https://zed.dev"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".zed"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".zed"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.config/zed"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Zed Agent documentation"; readonly url: "https://zed.dev/docs/ai/zed-agent"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Because Zed's project Skill directory is .agents/skills, --agent universal already wrote to the correct location; this entry adds Zed-specific detection and naming."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly conditions: readonly ["Project skills require a trusted worktree.", "Skills apply to Zed Agent, not automatically to external agents or terminal threads."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Only direct child skill folders are discovered."]; readonly claimScope: "Built-in Zed Agent skill roots and trust boundary"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zed configures context servers in settings; AXM has not modeled the Zed settings dialect."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Zed settings writer for context servers."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/instructions"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zed exposes tool permissions through agent settings and prompts; AXM does not model that settings surface."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/tool-permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Zed tool-permission settings."; }; }; readonly profile: { readonly identity: { readonly product: "Zed"; readonly surface: "Zed built-in Agent; external agents are separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Skill scopes, trust conditions and invocation"; }; readonly lifecycleQualifications: readonly []; }; }; zenflow: { readonly id: "zenflow"; readonly name: "Zenflow"; readonly vendor: "Zencoder"; readonly homepage: "https://zencoder.ai/zenflow"; readonly interfaces: readonly ["desktop"]; readonly family: null; readonly rootDir: ".zenflow"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".zenflow"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Zenflow documentation"; readonly url: "https://docs.zencoder.ai/zenflow/task-types"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills are discovered from project and user .agents/skills and project .claude/skills. Legacy .zencoder/skills remains readable but is deprecated; the agent selects skills automatically."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical shared skill roots and deprecated vendor directory"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zenflow supports custom MCP integrations. The reviewed overview does not establish transport or filesystem configuration mechanics."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/integrations"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/integrations"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Transport, scope and client configuration details remain unmodeled."]; readonly claimScope: "Native MCP availability"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ZenCLI can invoke subprocess subagents with distinct contexts, models, tools and runtimes. Presets and pipelines configure orchestration without a portable agent directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "ZenCLI can invoke subprocess subagents with distinct contexts, models, tools and runtimes. Presets and pipelines configure orchestration without a portable agent directory."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zenflow runs supported underlying agents in worktrees; instruction-file behavior belongs to the selected agent rather than a Zenflow-specific rule format. Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/clis/overview"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Saved agent presets select the coding runtime, model and permission mode, including execution and tool access."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Saved agent presets select the coding runtime, model and permission mode, including execution and tool access."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Zenflow"; readonly surface: "Zenflow orchestration and ZenCLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents", "https://docs.zencoder.ai/features/skills", "https://docs.zencoder.ai/zenflow/integrations", "https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: hook, instructions."]; readonly claimScope: "Native subprocess delegation, MCP integrations and shared skills"; }; readonly lifecycleQualifications: readonly []; }; }; }; /** @experimental This API is unstable and may change without notice. */ export declare const HOSTED_AGENTS_BY_ID: { chatgpt: { readonly id: "chatgpt"; readonly name: "ChatGPT"; readonly vendor: "OpenAI"; readonly homepage: "https://chatgpt.com"; readonly interfaces: readonly ["chat", "hosted-agent"]; readonly family: "openai"; readonly profile: { readonly identity: { readonly product: "ChatGPT"; readonly surface: "Hosted chat and workspace"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly claimScope: "Standalone skills versus hosted workspace and plugin delivery"; readonly conditions: readonly ["Workspace plan and administrator controls apply."]; readonly limitations: readonly ["The standalone filesystem skill path is represented by the Codex target. No upload or hosted runtime was exercised."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload"]; readonly artifact: "directory"; readonly instructions: "Validate the skill with axm lint. Use ChatGPT workspace skill administration for an eligible workspace, or package it in a ChatGPT plugin for web/mobile distribution; AXM does not upload or publish it."; readonly docs: "https://learn.chatgpt.com/docs/enterprise/skills"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Skills in ChatGPT"; readonly url: "https://help.openai.com/en/articles/20001066-skills-in-chatgpt"; }, { readonly label: "Developer mode and MCP apps in ChatGPT"; readonly url: "https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Standalone skills are documented for desktop, Codex CLI and IDE; web/mobile reuse skills through plugins. Workspace-managed skills have separate availability and administrator controls."; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly claimScope: "Delivery surface distinction"; readonly conditions: readonly ["Hosted distribution depends on workspace administration or plugin packaging."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ChatGPT developer mode accepts remote MCP servers for custom apps; plan, role, and administrator controls apply."; readonly docs: readonly []; readonly sources: readonly ["https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "ChatGPT connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ChatGPT app action permissions and confirmations are managed in the hosted UI."; readonly docs: readonly []; readonly sources: readonly ["https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; "claude-ai": { readonly id: "claude-ai"; readonly name: "Claude.ai"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.ai"; readonly interfaces: readonly ["chat"]; readonly family: "claude"; readonly profile: { readonly identity: { readonly product: "Claude"; readonly surface: "Hosted chat"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-using-skills-in-claude"]; readonly conditions: readonly []; readonly limitations: readonly ["Hosted skill discovery and upload require account availability; local Claude Code configuration does not establish hosted support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload", "directory"]; readonly artifact: "zip"; readonly instructions: "Run axm lint to validate the skill, package its folder as a ZIP, then use Customize > Skills > Create skill > Upload a skill in Claude."; readonly docs: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Use skills in Claude"; readonly url: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }, { readonly label: "Remote MCP custom connectors"; readonly url: "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude accepts custom skill folders packaged as ZIP files. Account, organization, and code-execution controls apply; enabled skills are shared with Cowork."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-use-skills-in-claude"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude accepts publicly reachable remote MCP servers as custom connectors."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Claude connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "none"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Plugin subagents run in Cowork, not in Claude chat."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly claimScope: "Plugin hooks and subagents do not execute in Claude chat; Cowork and Claude Code are separate surfaces."; readonly conditions: readonly ["Scoped to chat, not the complete Claude product family."]; readonly limitations: readonly ["Documentation review only."]; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "none"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Plugin hooks run in Cowork, not in Claude chat."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly claimScope: "Plugin hooks and subagents do not execute in Claude chat; Cowork and Claude Code are separate surfaces."; readonly conditions: readonly ["Scoped to chat, not the complete Claude product family."]; readonly limitations: readonly ["Documentation review only."]; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; cowork: { readonly id: "cowork"; readonly name: "Claude Cowork"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.ai"; readonly interfaces: readonly ["hosted-agent"]; readonly family: "claude"; readonly profile: { readonly identity: { readonly product: "Claude Cowork"; readonly surface: "Hosted task runtime across web, desktop and mobile"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13345190-get-started-with-cowork"]; readonly conditions: readonly []; readonly limitations: readonly ["Product surface reviewed; no hosted interoperability exercise was performed.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload", "directory"]; readonly artifact: "zip"; readonly instructions: "Run axm lint to validate the skill, package its folder as a ZIP, then use Customize > Skills in Cowork to upload it or install a shared skill from the directory."; readonly docs: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Use skills in Claude"; readonly url: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }, { readonly label: "Use plugins in Claude"; readonly url: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; }, { readonly label: "Remote MCP custom connectors"; readonly url: "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cowork uses the Claude account's custom and shared skills, which are uploaded as ZIP-packaged skill folders or installed from an organization directory."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-use-skills-in-claude"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cowork uses Claude account connectors backed by publicly reachable remote MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Claude plugins"; readonly homepage: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; readonly author: "Anthropic"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Install or upload the plugin from Customize > Plugins in Cowork."; readonly packageRef: null; }; readonly detection: null; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude plugins can bundle subagents, which run only in Cowork."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly scopes: readonly ["user"]; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork plugin installation is hosted and UI-mediated."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Claude plugins"; readonly homepage: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; readonly author: "Anthropic"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Install or upload the plugin from Customize > Plugins in Cowork."; readonly packageRef: null; }; readonly detection: null; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude plugin hooks run only in Cowork; event mechanics are not cataloged yet."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork plugin hooks have no AXM writer."; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; "gemini-app": { readonly id: "gemini-app"; readonly name: "Gemini app"; readonly vendor: "Google"; readonly homepage: "https://gemini.google.com"; readonly interfaces: readonly ["chat", "hosted-agent"]; readonly family: "gemini"; readonly profile: { readonly identity: { readonly product: "Gemini"; readonly surface: "Hosted chat"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?co=GENIE.Platform%3DDesktop&hl=en"]; readonly conditions: readonly []; readonly limitations: readonly ["Skills apply to ordinary chats and Spark; personal-account rollout is staged and excludes work/school accounts.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload"]; readonly artifact: "skill-file-or-zip"; readonly instructions: "Run axm lint to validate the skill, then open Gemini Settings > Skills and upload its SKILL.md or a ZIP with SKILL.md at the root."; readonly docs: "https://support.google.com/gemini/answer/17094296?hl=en"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Create and manage skills for Gemini Apps"; readonly url: "https://support.google.com/gemini/answer/17094296?hl=en"; }, { readonly label: "Connected Apps in Gemini"; readonly url: "https://support.google.com/gemini/answer/13695044?co=GENIE.Platform%3DDesktop&hl=en"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills work in ordinary Gemini chats and Spark. Availability is rolling out to personal Google accounts; work and school accounts are not supported."; readonly docs: readonly []; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?hl=en"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?co=GENIE.Platform%3DDesktop&hl=en"]; readonly claimScope: "Skills eligibility, upload shape, and chat/Spark availability"; readonly conditions: readonly ["Available personal-account rollout; not work or school accounts."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Gemini Spark accepts remote MCP server URLs as custom Connected Apps; Spark eligibility restrictions apply."; readonly docs: readonly []; readonly sources: readonly ["https://support.google.com/gemini/answer/13695044?co=GENIE.Platform%3DDesktop&hl=en"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Gemini Connected App setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; }; /** @experimental This API is unstable and may change without notice. */ export declare const AGENTS_BY_ID: { readonly chatgpt: { readonly id: "chatgpt"; readonly name: "ChatGPT"; readonly vendor: "OpenAI"; readonly homepage: "https://chatgpt.com"; readonly interfaces: readonly ["chat", "hosted-agent"]; readonly family: "openai"; readonly profile: { readonly identity: { readonly product: "ChatGPT"; readonly surface: "Hosted chat and workspace"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly claimScope: "Standalone skills versus hosted workspace and plugin delivery"; readonly conditions: readonly ["Workspace plan and administrator controls apply."]; readonly limitations: readonly ["The standalone filesystem skill path is represented by the Codex target. No upload or hosted runtime was exercised."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload"]; readonly artifact: "directory"; readonly instructions: "Validate the skill with axm lint. Use ChatGPT workspace skill administration for an eligible workspace, or package it in a ChatGPT plugin for web/mobile distribution; AXM does not upload or publish it."; readonly docs: "https://learn.chatgpt.com/docs/enterprise/skills"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Skills in ChatGPT"; readonly url: "https://help.openai.com/en/articles/20001066-skills-in-chatgpt"; }, { readonly label: "Developer mode and MCP apps in ChatGPT"; readonly url: "https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Standalone skills are documented for desktop, Codex CLI and IDE; web/mobile reuse skills through plugins. Workspace-managed skills have separate availability and administrator controls."; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly claimScope: "Delivery surface distinction"; readonly conditions: readonly ["Hosted distribution depends on workspace administration or plugin packaging."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ChatGPT developer mode accepts remote MCP servers for custom apps; plan, role, and administrator controls apply."; readonly docs: readonly []; readonly sources: readonly ["https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "ChatGPT connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ChatGPT app action permissions and confirmations are managed in the hosted UI."; readonly docs: readonly []; readonly sources: readonly ["https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly "claude-ai": { readonly id: "claude-ai"; readonly name: "Claude.ai"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.ai"; readonly interfaces: readonly ["chat"]; readonly family: "claude"; readonly profile: { readonly identity: { readonly product: "Claude"; readonly surface: "Hosted chat"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-using-skills-in-claude"]; readonly conditions: readonly []; readonly limitations: readonly ["Hosted skill discovery and upload require account availability; local Claude Code configuration does not establish hosted support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload", "directory"]; readonly artifact: "zip"; readonly instructions: "Run axm lint to validate the skill, package its folder as a ZIP, then use Customize > Skills > Create skill > Upload a skill in Claude."; readonly docs: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Use skills in Claude"; readonly url: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }, { readonly label: "Remote MCP custom connectors"; readonly url: "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude accepts custom skill folders packaged as ZIP files. Account, organization, and code-execution controls apply; enabled skills are shared with Cowork."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-use-skills-in-claude"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude accepts publicly reachable remote MCP servers as custom connectors."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Claude connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "none"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Plugin subagents run in Cowork, not in Claude chat."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly claimScope: "Plugin hooks and subagents do not execute in Claude chat; Cowork and Claude Code are separate surfaces."; readonly conditions: readonly ["Scoped to chat, not the complete Claude product family."]; readonly limitations: readonly ["Documentation review only."]; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "none"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Plugin hooks run in Cowork, not in Claude chat."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly claimScope: "Plugin hooks and subagents do not execute in Claude chat; Cowork and Claude Code are separate surfaces."; readonly conditions: readonly ["Scoped to chat, not the complete Claude product family."]; readonly limitations: readonly ["Documentation review only."]; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly cowork: { readonly id: "cowork"; readonly name: "Claude Cowork"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.ai"; readonly interfaces: readonly ["hosted-agent"]; readonly family: "claude"; readonly profile: { readonly identity: { readonly product: "Claude Cowork"; readonly surface: "Hosted task runtime across web, desktop and mobile"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13345190-get-started-with-cowork"]; readonly conditions: readonly []; readonly limitations: readonly ["Product surface reviewed; no hosted interoperability exercise was performed.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload", "directory"]; readonly artifact: "zip"; readonly instructions: "Run axm lint to validate the skill, package its folder as a ZIP, then use Customize > Skills in Cowork to upload it or install a shared skill from the directory."; readonly docs: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Use skills in Claude"; readonly url: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }, { readonly label: "Use plugins in Claude"; readonly url: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; }, { readonly label: "Remote MCP custom connectors"; readonly url: "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cowork uses the Claude account's custom and shared skills, which are uploaded as ZIP-packaged skill folders or installed from an organization directory."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-use-skills-in-claude"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cowork uses Claude account connectors backed by publicly reachable remote MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Claude plugins"; readonly homepage: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; readonly author: "Anthropic"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Install or upload the plugin from Customize > Plugins in Cowork."; readonly packageRef: null; }; readonly detection: null; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude plugins can bundle subagents, which run only in Cowork."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly scopes: readonly ["user"]; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork plugin installation is hosted and UI-mediated."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Claude plugins"; readonly homepage: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; readonly author: "Anthropic"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Install or upload the plugin from Customize > Plugins in Cowork."; readonly packageRef: null; }; readonly detection: null; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude plugin hooks run only in Cowork; event mechanics are not cataloged yet."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork plugin hooks have no AXM writer."; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly "gemini-app": { readonly id: "gemini-app"; readonly name: "Gemini app"; readonly vendor: "Google"; readonly homepage: "https://gemini.google.com"; readonly interfaces: readonly ["chat", "hosted-agent"]; readonly family: "gemini"; readonly profile: { readonly identity: { readonly product: "Gemini"; readonly surface: "Hosted chat"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?co=GENIE.Platform%3DDesktop&hl=en"]; readonly conditions: readonly []; readonly limitations: readonly ["Skills apply to ordinary chats and Spark; personal-account rollout is staged and excludes work/school accounts.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload"]; readonly artifact: "skill-file-or-zip"; readonly instructions: "Run axm lint to validate the skill, then open Gemini Settings > Skills and upload its SKILL.md or a ZIP with SKILL.md at the root."; readonly docs: "https://support.google.com/gemini/answer/17094296?hl=en"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Create and manage skills for Gemini Apps"; readonly url: "https://support.google.com/gemini/answer/17094296?hl=en"; }, { readonly label: "Connected Apps in Gemini"; readonly url: "https://support.google.com/gemini/answer/13695044?co=GENIE.Platform%3DDesktop&hl=en"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills work in ordinary Gemini chats and Spark. Availability is rolling out to personal Google accounts; work and school accounts are not supported."; readonly docs: readonly []; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?hl=en"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?co=GENIE.Platform%3DDesktop&hl=en"]; readonly claimScope: "Skills eligibility, upload shape, and chat/Spark availability"; readonly conditions: readonly ["Available personal-account rollout; not work or school accounts."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Gemini Spark accepts remote MCP server URLs as custom Connected Apps; Spark eligibility restrictions apply."; readonly docs: readonly []; readonly sources: readonly ["https://support.google.com/gemini/answer/13695044?co=GENIE.Platform%3DDesktop&hl=en"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Gemini Connected App setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly adal: { readonly id: "adal"; readonly name: "AdaL"; readonly vendor: "SylphAI"; readonly homepage: "https://adalagent.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".adal"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "AdaL documentation"; readonly url: "https://docs.sylph.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/plugins-and-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".adal/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL manages MCP servers through the /mcp CLI flow and stores OAuth tokens under ~/.adal/mcp-auth; the docs describe add/remove/test actions rather than a stable editable config file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/mcp-support-proposed", "https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing file dialect and environment expansion were not revalidated."]; readonly claimScope: "CLI-managed MCP connections and supported local/remote transports"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an AdaL MCP writer for the CLI-managed MCP store."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL supports command-only PreToolUse, PostToolUse, PostToolUseFailure, UserPromptSubmit, PermissionRequest and Stop hooks in user settings. Project and plugin hook scopes are not supported."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".adal/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "user"; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly attribution: "agent"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "AdaL supports command-only PreToolUse, PostToolUse, PostToolUseFailure, UserPromptSubmit, PermissionRequest and Stop hooks in user settings. Project and plugin hook scopes are not supported."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/getting-started/workflows-and-examples"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL exposes /permissions to configure approval behavior, but the public docs do not document a stable settings file shape for AXM to patch."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/slash-commands"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an AdaL permission writer for the interactive /permissions surface."; }; }; readonly profile: { readonly identity: { readonly product: "AdaL"; readonly surface: "AdaL CLI and editor integration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/", "https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, subagent, instructions, permissions."]; readonly claimScope: "User-scoped command lifecycle hooks"; }; readonly lifecycleQualifications: readonly []; }; }; readonly fx: { readonly id: "fx"; readonly name: "FX"; readonly vendor: "Vercel Labs"; readonly homepage: "https://fx.sh"; readonly interfaces: readonly ["cli", "embedded"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "FX"; readonly surface: "cli, embedded"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/vercel-labs/fx", "https://fx.sh/docs"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["Filesystem projections target the CLI; embedded and ACP hosts have separate configuration lifetimes."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".fx"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".fx"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "fx"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://github.com/vercel-labs/fx"; }, { readonly label: "Extension reference"; readonly url: "https://fx.sh/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/capabilities/skills"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/capabilities/skills"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".fx/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".fx/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project .mcp.json uses mcpServers and requires workspace approval; user ~/.fx/mcp.json uses mcp. Profile strings are literal and Authorization headers require environment-backed fields. AXM has not verified these distinct dialects."; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/capabilities/mcp", "https://fx.sh/docs/capabilities/mcp/protocol"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/capabilities/mcp", "https://fx.sh/docs/capabilities/mcp/protocol"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "FX supports session subagents. The reviewed documentation does not establish a reusable custom-agent file target."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/configure-fx/project-instructions"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/configure-fx/project-instructions"]; readonly claimScope: "Instruction discovery and precedence"; readonly conditions: readonly ["Instruction context must be enabled in FX settings."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".fx/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/instructions/respects-native-authority-and-observation"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Persistent permission rules live only in ~/.fx/settings.json, with global and workspace profiles; project .fx.json cannot define them. CLI permission-mode flags govern a run. AXM does not modify these policies."; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/configure-fx/permissions"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/configure-fx/permissions"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; }; readonly "muse-code": { readonly id: "muse-code"; readonly name: "Muse Code"; readonly vendor: "Meta"; readonly homepage: "https://dev.meta.ai/docs/muse-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Muse Code"; readonly surface: "cli"; readonly edition: null; readonly ownership: null; readonly modelProviders: readonly ["Meta"]; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code", "https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "muse"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://dev.meta.ai/docs/muse-code"; }, { readonly label: "Extension reference"; readonly url: "https://dev.meta.ai/docs/muse-code/extending"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly ["Project skills require a trusted workspace."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "muse/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "User settings.json contains mcp_servers with stdio and streamable_http transports; required/optional modes affect startup. AXM does not write this settings dialect."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command hooks use project .muse/hooks.json, user settings and managed policy; trust and managed precedence apply."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly claimScope: "Instruction discovery and precedence"; readonly conditions: readonly ["Project instructions require a trusted workspace; at each level the first supported instruction filename wins."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/instructions/respects-native-authority-and-observation"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Muse configures permission profiles, sandbox and approval modes through settings and launch flags. Managed policy and workspace trust still apply; AXM does not grant access."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; }; readonly "mimo-code": { readonly id: "mimo-code"; readonly name: "MiMo Code"; readonly vendor: "Xiaomi"; readonly homepage: "https://mimo.xiaomi.com"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "MiMo Code"; readonly surface: "CLI; desktop beta embeds the engine"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["CLI projections do not establish desktop beta behavior."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".mimocode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".mimocode"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "mimo"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://github.com/XiaomiMiMo/MiMo-Code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mimocode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "mimocode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default XDG configuration only; MIMOCODE_HOME and Windows path overrides are not resolved by AXM."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "JSON/JSONC mcp entries use local command arrays or remote URL entries. MIMOCODE_HOME and platform roots change discovery; AXM has not verified the complete writer contract."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/mcp.ts", "https://github.com/XiaomiMiMo/MiMo-Code"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/mcp.ts", "https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native metadata is passed through. MiMo expects native model, mode, permission and tool fields; AXM does not translate another vendor's tool grammar."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly claimScope: "Markdown custom-agent discovery and native frontmatter"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mimocode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "mimocode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default XDG configuration only; MIMOCODE_HOME and Windows path overrides are not resolved by AXM."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MiMo has native permission configuration including per-agent policy; outside-workspace access requires approval by default. AXM does not translate permission grammars."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code", "https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code", "https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["project", "user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; }; readonly "coder-agents": { readonly id: "coder-agents"; readonly name: "Coder Agents"; readonly vendor: "Coder"; readonly homepage: "https://coder.com/docs/ai-coder/agents"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Coder Agents"; readonly surface: "workspace-agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents", "https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["AXM must run within the connected Coder workspace; template and administrator policy govern availability."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://coder.com/docs/ai-coder/agents"; }, { readonly label: "Extension reference"; readonly url: "https://coder.com/docs/ai-coder/agents/extending-agents"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Workspace skills can include supporting files. Personal skills are UI-managed single-file entries and are outside this filesystem projection."; readonly docs: readonly []; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly ["Skill names must match their directories; SKILL.md is limited to 64 KB and supporting files to 512 KB."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute Coder Agents or establish personal skill uploads."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Workspace MCP file, container and stdio/HTTP entry grammar"; readonly conditions: readonly ["Workspace template must expose MCP and the current agent mode must permit tool use."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; }; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/mcps/shared-native-writes-require-compatible-authority"]; readonly limitations: readonly ["Project .mcp.json install, update, repetition, disable and removal preserve sibling entries. Stdio and HTTP dialects are checked without executing Coder Agents or changing template policy."]; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly "aider-desk": { readonly id: "aider-desk"; readonly name: "AiderDesk"; readonly vendor: "HOTOVO"; readonly homepage: "https://github.com/hotovo/aider-desk"; readonly interfaces: readonly ["desktop"]; readonly family: null; readonly rootDir: ".aider-desk"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".aider-desk"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.aider-desk"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "AiderDesk repository"; readonly url: "https://github.com/hotovo/aider-desk"; }, { readonly label: "AiderDesk documentation"; readonly url: "https://aiderdesk.hotovo.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/features/skills", "https://github.com/hotovo/aider-desk/issues/568", "https://aiderdesk.hotovo.com/docs/agent-mode/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".aider-desk/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".aider-desk/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/skills"]; readonly conditions: readonly ["The selected agent profile must enable Use Skills Tools."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home skills; Skills Tools must be enabled"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk is a native MCP client: it connects to external standard MCP servers and exposes their tools to the agent, registering only the servers listed in a profile's enabledServers. MCP client configuration lives under the .aider-desk config, but the exact config file path, servers key, and per-transport dialect are not documented, so no AXM writer is modeled. AiderDesk can additionally act as an MCP server via @aiderdesk/mcp-server (the inverse direction)."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/hotovo/aider-desk"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AiderDesk's MCP client config dialect (exact file path, servers key, and transport-specific shape under .aider-desk) is not documented, so AXM has no MCP writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk agent profiles can be enabled as subagents through Settings > Agent. They have isolated context, tool approvals and automatic or on-demand invocation."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "AiderDesk agent profiles can be enabled as subagents through Settings > Agent. They have isolated context, tool approvals and automatic or on-demand invocation."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk has a native lifecycle hook / Extension System with 30+ events (onTaskCreated, onPromptFinished, onToolCalled, onFileAdded, ...) that can observe, modify, or block operations. Hooks are in-process JS/TS callbacks under .aider-desk/hooks/ (project) and ~/.aider-desk/hooks/ (user), with a newer Extension System under .aider-desk/extensions/. The native event names are not canonically mappable and there is no command-stdin dialect for AXM to serialize."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/hotovo/aider-desk"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AiderDesk hooks are in-process JS/TS callbacks with no command-stdin serialization dialect, and its 30+ native events are not canonically mapped, so AXM has no hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The /init command creates an AGENTS.md project rule file."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/core/commands"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/core/commands"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Global rule locations and nested instruction discovery were not established."]; readonly claimScope: "The /init command creates an AGENTS.md project rule file."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Agent profiles configure tool groups and per-tool Ask, Always or Never approval policies."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Agent profiles configure tool groups and per-tool Ask, Always or Never approval policies."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly profile: { readonly identity: { readonly product: "AiderDesk"; readonly surface: "AiderDesk desktop Agent mode"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents", "https://aiderdesk.hotovo.com/docs/agent-mode/skills", "https://aiderdesk.hotovo.com/docs/core/commands"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook."]; readonly claimScope: "UI-managed subagent profiles and per-tool approvals"; }; readonly lifecycleQualifications: readonly []; }; }; readonly amp: { readonly id: "amp"; readonly name: "Amp"; readonly vendor: "Sourcegraph"; readonly homepage: "https://ampcode.com"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "sourcegraph"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Amp Owner's Manual"; readonly url: "https://ampcode.com/manual"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#agent-skills", "https://ampcode.com/docs/customize/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Claude skill discovery must be enabled."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Claude skill discovery must be enabled."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Documented skill roots, compatibility discovery and optional hosted skill repositories"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp declares always-available MCP servers under the flat amp.mcpServers settings key in ~/.config/amp/settings.json (user) or .amp/settings.json (workspace, which requires explicit approval), and skill-scoped MCP servers through mcp.json inside a skill directory."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#MCP", "https://ampcode.com/manual#configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Amp's native configuration locations and server entry dialect have not been verified in the catalog; an AXM writer requires those declarations."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Amp plugin API"; readonly homepage: "https://ampcode.com/manual"; readonly author: "Amp"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Save a plugin under .amp/plugins and reload plugins."; readonly packageRef: null; }; readonly detection: { readonly paths: readonly [{ readonly scope: "project"; readonly path: ".amp/plugins"; readonly kind: "dir"; }, { readonly scope: "user"; readonly path: "~/.config/amp/plugins"; readonly kind: "dir"; }]; readonly configKeys: readonly []; }; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp has built-in automatic subagents and first-party plugin APIs for custom subagent-like tools, but no documented Markdown subagent directory that AXM can materialize."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#subagents", "https://ampcode.com/manual#plugins"]; readonly scopes: readonly ["user", "project"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Amp plugin/subagent materialization."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp plugins can handle tool-call, tool-result, and agent lifecycle events. AXM models the in-process plugin surface but does not serialize Amp plugins or amp.hooks actions yet."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual", "https://ampcode.com/manual/plugin-api"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Amp plugin or declarative-action hook writers."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#agentsmd", "https://ampcode.com/docs/customize/agents-md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/AGENTS.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/agents-md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Hosted workspace guidance does not apply to every custom or built-in subagent."]; readonly claimScope: "AGENTS.md search and personal/workspace guidance"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp permission rules use the amp.permissions and amp.mcpPermissions settings. Enterprise administrators can enforce the same schema through platform-specific managed-settings.json files."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/news/tool-level-permissions", "https://ampcode.com/news/mcp-permissions", "https://ampcode.com/news/enterprise-managed-settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".amp/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "{\"tool\":\"Bash\",\"matches\":{\"cmd\":\"*git commit*\"},\"action\":\"ask\"}"; readonly notes: "amp.permissions rules select a tool, optionally glob-match tool arguments, and apply allow, reject, ask, or delegate."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Amp"; readonly surface: "Amp CLI and editor integration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/skills", "https://ampcode.com/docs/customize/agents-md"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, permissions."]; readonly claimScope: "Skill discovery and global guidance"; }; readonly lifecycleQualifications: readonly []; }; }; readonly antigravity: { readonly id: "antigravity"; readonly name: "Antigravity"; readonly vendor: "Google"; readonly homepage: "https://antigravity.google"; readonly interfaces: readonly ["ide-extension"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Antigravity"; readonly surface: "Desktop/IDE"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/", "https://antigravity.google/docs/changelog/"]; readonly conditions: readonly []; readonly limitations: readonly ["Custom subagent discovery reviewed for Antigravity 2.0. The shared CLI harness does not make all legacy IDE settings equivalent.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".agents"; readonly signal: "supporting"; readonly note: null; }, { readonly kind: "dir"; readonly path: ".agent"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini/antigravity-cli"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Antigravity documentation"; readonly url: "https://antigravity.google/docs"; }, { readonly label: "Antigravity CLI overview"; readonly url: "https://antigravity.google/docs/cli-overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity 2.0 defaults to .agents/skills (project) and ~/.gemini/config/skills (user); .agent/skills remains supported for backward compatibility.\n"; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agent/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity stores global MCP servers in ~/.gemini/config/mcp_config.json and workspace MCP servers in .agents/mcp_config.json. Remote MCP definitions use serverUrl, and disabled is an optional per-server switch."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/mcp", "https://antigravity.google/docs/cli/plugins"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".agents/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly implicitTransport: "http-or-sse"; readonly urlKey: { readonly "streamable-http": "serverUrl"; readonly sse: "serverUrl"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Markdown subagents are read by Antigravity 2.0 and the CLI. Authors supply native frontmatter; AXM preserves it and applies explicit agent overrides without translating tool names or changing execution-policy defaults."; readonly docs: readonly [{ readonly label: "Custom subagents"; readonly url: "https://antigravity.google/docs/subagents/"; }]; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly conditions: readonly ["Use Antigravity 2.0 or the Antigravity CLI with native name and description frontmatter; tool names, model, skills, plugins, and execution-policy settings must match the target harness."]; readonly limitations: readonly ["Vendor execution of the generated subagent was not tested.", "AXM workspace setup currently supports project-scope Subagents; isolated user-scope adapter projection is checked but user-scope workspace installation remains unavailable."]; readonly claimScope: "Custom-subagent file discovery and native frontmatter contract."; }; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Checks cover project and isolated user-scope file projection, shared ownership metadata, repetition, removal, and preservation of unowned files. They do not execute Antigravity."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity documents command hooks in hooks.json for the current Antigravity execution loop. This supersedes earlier research that found hooks only in SDK/plugin surfaces. Each hooks.json entry is namespaced by a hook name that carries its own enabled flag, and event groups nest under that name rather than under a single top-level hooks key."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/hooks", "https://antigravity.google/docs/cli/plugins"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".agents/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "browser_.*"; readonly notes: "Matches on tool name; * selects every tool."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "run_command"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreInvocation"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostInvocation"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "run_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Antigravity namespaces each hook bundle under its own top-level name in hooks.json; AXM's writer targets a single settings key and cannot express that nesting."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/rules-workflows"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity CLI exposes fine-grained allow/ask/deny permissions in settings, with resources such as command(...), read_file(...), write_file(...), read_url(...), execute_url(...), and mcp(...)."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/cli-permissions", "https://antigravity.google/docs/cli-reference"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/antigravity-cli/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "command(axm)"; readonly notes: "Conflicting rules are evaluated Deny > Ask > Allow."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["command(${tool})"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["read_file(${workspaceRoot})", "write_file(${workspaceRoot})"]; }; }; readonly template: null; }; }; }; }; }; }; readonly "antigravity-cli": { readonly id: "antigravity-cli"; readonly name: "Antigravity CLI"; readonly vendor: "Google"; readonly homepage: "https://antigravity.google/product/antigravity-cli"; readonly interfaces: readonly ["cli"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Antigravity"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/", "https://antigravity.google/docs/cli/overview/"]; readonly conditions: readonly []; readonly limitations: readonly ["Custom subagents and CLI surface reviewed; other native mechanics retain their separate evidence.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".agents"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini/antigravity-cli"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Antigravity CLI documentation"; readonly url: "https://antigravity.google/docs/cli-overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Because the CLI's project Skill directory is .agents/skills, --agent universal already wrote to the correct location; this entry adds CLI-specific detection and naming."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agent/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The Antigravity CLI shares product configuration with the desktop surface; AXM avoids a second writer until shared-target ownership is explicit."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Markdown subagents are read by Antigravity 2.0 and the CLI. Authors supply native frontmatter; AXM preserves it and applies explicit agent overrides without translating tool names or changing execution-policy defaults."; readonly docs: readonly [{ readonly label: "Custom subagents"; readonly url: "https://antigravity.google/docs/subagents/"; }]; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly conditions: readonly ["Use Antigravity 2.0 or the Antigravity CLI with native name and description frontmatter; tool names, model, skills, plugins, and execution-policy settings must match the target harness."]; readonly limitations: readonly ["Vendor execution of the generated subagent was not tested.", "AXM workspace setup currently supports project-scope Subagents; isolated user-scope adapter projection is checked but user-scope workspace installation remains unavailable."]; readonly claimScope: "Custom-subagent file discovery and native frontmatter contract."; }; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Checks cover project and isolated user-scope file projection, shared ownership metadata, repetition, removal, and preservation of unowned files. They do not execute Antigravity."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI reads command hooks from the workspace or global customization directory."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Antigravity's named hook bundles require a serializer AXM does not implement."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/rules-workflows"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/cli-permissions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/antigravity-cli/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "command(axm)"; readonly notes: "Conflicting rules are evaluated Deny > Ask > Allow."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not yet implement Antigravity CLI permission-rule patches."; }; }; }; readonly augment: { readonly id: "augment"; readonly name: "Augment"; readonly vendor: "Augment Code"; readonly homepage: "https://www.augmentcode.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".augment"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Augment documentation"; readonly url: "https://docs.augmentcode.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie loads skills from .augment/skills, .claude/skills, and .agents/skills at both user and workspace scope. AXM writes the native Augment project directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".augment/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".augment/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Auggie CLI skill roots and precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie persists MCP server configuration in ~/.augment/settings.json. The CLI also supports per-run --mcp-config overrides that are not represented by AXM writers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/integrations"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".augment/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".augment/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/subagents"]; readonly conditions: readonly ["Custom subagents documented here are CLI-only."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "CLI custom agent Markdown files and scopes"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie hooks run command hooks from settings files and use JSON on stdin/stdout. Native Auggie also exposes SessionEnd and Notification, plus metadata options not represented in AXM's portable hook manifest."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "terminal"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "web-fetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie CLI evaluates toolPermissions top-to-bottom with first match winning. Tool permissions are CLI-only and live in ~/.augment/settings.json (user scope) or a repo-committed .augment/settings.json (project scope)."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "^axm(\\s|$)"; readonly notes: "Rules contain toolName plus permission.type allow/deny/ask-user; shell commands can be constrained with shellInputRegex."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly toolPermissions: readonly [{ readonly toolName: "terminal"; readonly shellInputRegex: "^${tool}(\\s|$)"; readonly permission: { readonly type: "allow"; }; }]; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly toolPermissions: readonly [{ readonly toolName: "read"; readonly permission: { readonly type: "allow"; }; }, { readonly toolName: "edit"; readonly permission: { readonly type: "allow"; }; }, { readonly toolName: "write"; readonly permission: { readonly type: "allow"; }; }]; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Augment"; readonly surface: "Auggie CLI; editor capabilities are separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills", "https://docs.augmentcode.com/cli/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook, instructions, permissions."]; readonly claimScope: "CLI skill discovery and custom subagents"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "claude-code": { readonly id: "claude-code"; readonly name: "Claude Code"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.com/product/claude-code"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "anthropic"; readonly profile: { readonly identity: { readonly product: "Claude Code"; readonly surface: "Terminal, IDE, desktop and cloud"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly conditions: readonly []; readonly limitations: readonly ["Hook mechanisms reviewed across documented surfaces. AXM currently writes command handlers; other handlers do not inherit AXM support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".claude"; readonly targeting: { readonly extends: null; readonly capabilities: { readonly "structured-input": { readonly grades: readonly ["native"]; readonly nouns: { readonly "tool:structured-input": "AskUserQuestion"; }; readonly affordances: { readonly "do:ask-structured": "Use the AskUserQuestion tool to collect structured input, then STOP and wait for the response."; }; }; }; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.claude"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "claude"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Claude Code documentation"; readonly url: "https://code.claude.com/docs/en/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly configRootRelativePath: "skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude.json"; readonly configRootRelativePath: ".claude.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/sub-agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/agents"; readonly configRootRelativePath: "agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Managed hooks merge into the Claude Code settings hooks block and execute materialized AXM package entrypoints. Claude Code exposes additional native events such as Notification, SessionEnd, CwdChanged, FileChanged, and WorktreeCreate; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/hooks", "https://code.claude.com/docs/en/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin", "http", "prompt", "agent", "mcp"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "settings.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WebFetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly claimScope: "Native hook invocation families"; readonly conditions: readonly []; readonly limitations: readonly ["Agent hooks are also documented. AXM projects command handlers only; other native handlers are descriptive."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project", "project-additional-1"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads CLAUDE.md, not the AGENTS.md spec filename."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "CLAUDE.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/CLAUDE.md"; readonly configRootRelativePath: "CLAUDE.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://code.claude.com/docs/en/memory", "https://code.claude.com/docs/en/claude-directory"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/permissions", "https://code.claude.com/docs/en/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly configRootRelativePath: "settings.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: "Tool(specifier) with * wildcards. Evaluated deny > ask > allow (first match wins). Settings merge across scopes rather than override.\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Write(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; }; readonly cline: { readonly id: "cline"; readonly name: "Cline"; readonly vendor: "Cline"; readonly homepage: "https://cline.bot"; readonly interfaces: readonly ["cli", "ide-extension", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Cline"; readonly surface: "CLI, IDE and desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://cline.bot/blog/cline-desktop-an-open-source-app-for-open-weight-models", "https://cline.bot/blog/how-we-migrated-11-million-users-to-clines-biggest-harness-upgrade"]; readonly conditions: readonly []; readonly limitations: readonly ["Desktop and harness migration reviewed; parallel sessions do not establish a custom subagent definition format.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".cline"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Cline documentation"; readonly url: "https://docs.cline.bot"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cline/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".clinerules/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline supports MCP in both the extension and CLI. The CLI MCP config is ~/.cline/mcp.json; extension config is exposed through the MCP settings UI. Entries use the community-standard mcpServers shape with a streamableHttp remote discriminator plus Cline-specific disabled and autoApprove fields."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/mcp/mcp-overview"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cline/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "streamableHttp"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "streamableHttp"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline stores executable hooks under ~/Documents/Cline/Hooks and .clinerules/hooks. The native script-directory shape is not compatible with AXM's grouped JSON command-hook writer."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Cline hook script directory writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/cline-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".clinerules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline exposes auto-approve controls in the extension/CLI UI and toolPolicies in the SDK. The public docs do not define a stable AXM-writable project permission grant file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/cline-cli/interactive-mode", "https://docs.cline.bot/sdk/guides/permission-handling"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Cline permission grant writer."; }; }; }; readonly "codearts-agent": { readonly id: "codearts-agent"; readonly name: "CodeArts Agent"; readonly vendor: "Huawei Cloud"; readonly homepage: "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0001.html"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".codeartsdoer"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".codeartsdoer"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codeartsdoer"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "CodeArts Agent CLI documentation"; readonly url: "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0001.html"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .codeartsdoer/skills and home .codeartsdoer/skills; project names override user names"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent stores local and remote MCP servers under the mcp key in its shared JSON or JSONC configuration."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0017.html", "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0028.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/codearts_cli.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/codearts_cli.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; readonly command: "array"; readonly envKey: "environment"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; readonly sse: "remote"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; readonly sse: "remote"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent discovers Markdown agent definitions with YAML frontmatter and supports primary and subagent modes."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-codeartssnap/codeartsagent_ug_0051.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent hooks are JavaScript or TypeScript plugin callbacks rather than declarative command hooks that AXM can serialize."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0018.html"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not serialize CodeArts Agent JavaScript or TypeScript plugins."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent uses AGENTS.md for project instructions and can generate it with /init."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0014.html"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent stores ordered allow, ask, and deny-style rules in a user-level JSON permission file."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0006.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/cli-data/storage/permission/global.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "{\"permission\":\"bash\",\"pattern\":\"axm *\",\"action\":\"allow\"}"; readonly notes: "Each array entry selects a permission name and wildcard pattern, then applies an allow, ask, or deny action."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a CodeArts Agent permission-list writer."; }; }; readonly profile: { readonly identity: { readonly product: "CodeArts Agent"; readonly surface: "CodeArts coding CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI SKILL.md discovery paths"; }; readonly lifecycleQualifications: readonly []; }; }; readonly codebuddy: { readonly id: "codebuddy"; readonly name: "CodeBuddy"; readonly vendor: "Tencent Cloud"; readonly homepage: "https://www.codebuddy.ai/docs"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".codebuddy"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "CodeBuddy documentation"; readonly url: "https://www.codebuddy.ai/docs/ide/Introduction"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/ide/Introduction", "https://www.codebuddy.ai/docs/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/skills"]; readonly conditions: readonly ["Frontmatter hooks require fork context and the untrusted-hook opt-in unless built in."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Reader paths were not independently rechecked in this review."]; readonly claimScope: "Invocation controls and fork-only skill frontmatter hooks"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy MCP configs are JSONC and use first-existing-file precedence within each scope; AXM writes the recommended project/user files."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/.mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/sub-agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CLI v1.16+ documents Beta hooks with 27+ events. User, project and local settings are supported; the modeled mappings are a subset of the vendor event surface."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide", "https://www.codebuddy.ai/docs/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "literal-list"; readonly example: "startup|resume"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Edit|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Edit|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WebFetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks"]; readonly conditions: readonly ["Hooks are documented as Beta in CLI v1.16+."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The pre-existing event mappings and entry dialect cover a subset and were not exhaustively revalidated."]; readonly claimScope: "Beta hook availability, settings scopes and additional lifecycle events"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy loads CODEBUDDY.md plus nested .codebuddy/rules instruction files and supports @path imports."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "none"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "CODEBUDDY.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy permissions support allow/ask/deny rules in settings.json plus CLI permission flags. Bash rules are prefix-style and can include :* suffixes."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings", "https://www.codebuddy.ai/docs/cli/cli-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: "Rules live in permissions.allow/ask/deny arrays; Bash patterns use prefix matching."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--dangerously-skip-permissions"; readonly note: "Bypasses CodeBuddy Code permission prompts."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(**)", "Write(**)", "Edit"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "CodeBuddy"; readonly surface: "CodeBuddy CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks", "https://www.codebuddy.ai/docs/cli/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, instructions, permissions."]; readonly claimScope: "CLI lifecycle hooks and skill invocation controls"; }; readonly lifecycleQualifications: readonly []; }; }; readonly codemaker: { readonly id: "codemaker"; readonly name: "Codemaker"; readonly vendor: "CodeMaker AI"; readonly homepage: "https://github.com/codemakerai/codemaker-cli"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "retired"; readonly since: null; readonly note: "CodeMaker AI's vendor domains no longer resolve, and its vendor-owned CLI repository has not shipped an agent-extension surface."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codemaker"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "CodeMaker CLI repository"; readonly url: "https://github.com/codemakerai/codemaker-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The vendor CLI source and documentation do not implement skills or read .codemaker/skills; the prior claim came only from a third-party installer path table. Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Codemaker"; readonly surface: "CodeMaker AI CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/codemakerai/codemaker-cli"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI product identity; extension availability remains unresolved"; }; readonly lifecycleQualifications: readonly []; }; }; readonly codestudio: { readonly id: "codestudio"; readonly name: "Code Studio"; readonly vendor: "Syncfusion"; readonly homepage: "https://www.syncfusion.com/code-studio/"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".codestudio"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".codestudio"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codestudio"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Code Studio documentation"; readonly url: "https://help.syncfusion.com/code-studio/welcome-to-code-studio"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codestudio/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio supports custom stdio and remote HTTP MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/", "https://help.syncfusion.com/code-studio/reference/configure-properties/mcp/customservers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio custom agents are stored under .codestudio/agents."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/", "https://github.com/syncfusion/code-studio-library"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codestudio/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio exposes command-based lifecycle hooks, but its public documentation does not enumerate a stable event and matcher grammar."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The current Global Agent guide specifies lowercase agents.md at the workspace root, enabled with Agent Enabled and Use Agent MD File."; readonly docs: readonly []; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent", "https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "agents.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Enable Agent Enabled and Use Agent MD File in Code Studio."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent"]; readonly conditions: readonly ["Agent Enabled and Use Agent MD File must both be enabled."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Other Code Studio instruction surfaces were not reviewed."]; readonly claimScope: "Exact lowercase filename and opt-in requirements"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Code Studio"; readonly surface: "Code Studio editor agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, permissions."]; readonly claimScope: "Opt-in project instruction file"; }; readonly lifecycleQualifications: readonly []; }; }; readonly codex: { readonly id: "codex"; readonly name: "Codex"; readonly vendor: "OpenAI"; readonly homepage: "https://learn.chatgpt.com/docs"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "openai"; readonly profile: { readonly identity: { readonly product: "Codex"; readonly surface: "CLI and IDE extension"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks", "https://developers.openai.com/codex/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Hook invocation and decisions reviewed; prompt/agent hook entries may parse without executing. Other existing paths retain their earlier evidence.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".codex"; readonly targeting: { readonly extends: null; readonly capabilities: { readonly "structured-input": { readonly grades: readonly ["native"]; readonly nouns: { readonly "tool:structured-input": "request_user_input"; }; readonly affordances: { readonly "do:ask-structured": "Use request_user_input to collect structured input, then STOP and wait for the response."; }; }; }; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "file"; readonly path: "AGENTS.md"; readonly signal: "ambiguous"; readonly note: "Shared instruction filename used by multiple agents."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codex"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "codex"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Codex documentation"; readonly url: "https://learn.chatgpt.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads SKILL.md skills from repository (.agents/skills) and user (~/.agents/skills) locations with progressive disclosure, using the cross-tool Agent Skills convention rather than a .codex/ path.\n"; readonly docs: readonly []; readonly sources: readonly ["https://developers.openai.com/codex/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://developers.openai.com/codex/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; readonly configRootRelativePath: "config.toml"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; readonly envVarsKey: "env_vars"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "http_headers"; readonly bearerTokenEnvKey: "bearer_token_env_var"; readonly envHeadersKey: "env_http_headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agents are standalone TOML files under .codex/agents (project) or ~/.codex/agents (user); a custom agent overrides a built-in of the same name.\n"; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codex/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/agents"; readonly configRootRelativePath: "agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command and mcp_tool hooks execute. Prompt and agent handlers are parsed but skipped. AXM projects command handlers only; native allow/deny and updatedInput semantics do not expand the AXM canonical decision subset."; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin", "mcp"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "hooks.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PermissionRequest"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear|compact"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: "Matcher filters subagent type."; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "apply_patch"; readonly canonical: "file.edit"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly claimScope: "Documented executable hook mechanisms and permission decision behavior"; readonly conditions: readonly []; readonly limitations: readonly ["AXM writes command handlers only."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/openai/codex/blob/main/docs/agents_md.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/AGENTS.md"; readonly configRootRelativePath: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/agents-md"]; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/AGENTS.override.md"; readonly configRootRelativePath: "AGENTS.override.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Overrides AGENTS.md when non-empty under the selected CODEX_HOME."; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/agents-md"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/config-file/config-reference", "https://learn.chatgpt.com/docs/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; readonly configRootRelativePath: "config.toml"; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/axm.config.toml"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; readonly configRootRelativePath: "axm.config.toml"; }]; readonly grammar: { readonly style: "glob"; readonly example: "[permissions.agentxm.filesystem.\":workspace_roots\"] \".\" = \"write\""; readonly notes: "Permission profiles combine filesystem, network, and workspace-root rules. Narrower deny rules remain in force over broader readable or writable paths.\n"; }; readonly prerequisites: readonly [{ readonly key: "default_permissions"; readonly value: "agentxm"; readonly scope: "user"; readonly note: "Selects the named permission profile."; }]; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Alias for danger-full-access; use only when broad local access is intentional."; }, { readonly flag: "--dangerously-bypass-approvals-and-sandbox"; readonly note: "Runs without local sandbox restrictions."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user-additional-1"; }; readonly patch: { readonly default_permissions: "agentxm"; readonly permissions: { readonly agentxm: { readonly extends: ":workspace"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user-additional-1"; }; readonly patch: { readonly default_permissions: "agentxm"; readonly permissions: { readonly agentxm: { readonly extends: ":workspace"; readonly workspace_roots: { readonly "${workspaceRoot}": true; }; readonly filesystem: { readonly ":workspace_roots": { readonly ".": "write"; }; }; readonly network: { readonly enabled: true; }; }; }; }; readonly template: null; }; }; }; }; }; }; readonly "command-code": { readonly id: "command-code"; readonly name: "Command Code"; readonly vendor: "Command Code"; readonly homepage: "https://commandcode.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".commandcode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Command Code documentation"; readonly url: "https://commandcode.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The shared/project-scoped MCP config is .mcp.json at the repo root; the user-scoped config is ~/.commandcode/mcp.json. A private local scope (~/.commandcode/projects//mcp.json) also exists but is not managed here."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "transport"; readonly value: "stdio"; }, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }, { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code Custom Agents / Sub-Agents are single Markdown files with frontmatter under .commandcode/agents (project) and ~/.commandcode/agents (user)."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/custom-agents", "https://commandcode.ai/docs/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://commandcode.ai/docs/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .commandcode/agents Markdown definitions"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code documents a lifecycle hook system configured in settings.json. AXM has not modeled its native event dialect."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Command Code hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code reads AGENTS.md memory/instruction files."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code exposes permission allow/deny lists and an autoApprove system in settings.json. AXM does not yet write these grants."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Command Code permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Command Code"; readonly surface: "Command Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://commandcode.ai/docs/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Custom agent definitions and scopes"; }; readonly lifecycleQualifications: readonly []; }; }; readonly continue: { readonly id: "continue"; readonly name: "Continue"; readonly vendor: "Continue"; readonly homepage: "https://www.continue.dev"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Continue"; readonly surface: "IDE and CLI"; readonly edition: null; readonly ownership: { readonly company: "Continue"; readonly parentCompany: "Cursor"; readonly sources: readonly ["https://continue.dev", "https://github.com/continuedev"]; }; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://continue.dev", "https://github.com/continuedev"]; readonly conditions: readonly []; readonly limitations: readonly ["Acquisition by Cursor reviewed. Acquisition alone does not establish a shutdown date or retirement of every surface.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".continue"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Continue documentation"; readonly url: "https://docs.continue.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".continue/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Continue agent-mode tools include MCP servers configured as tools in Continue config. AXM does not currently write Continue's YAML/config package format."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/guides/configuring-models-rules-tools", "https://docs.continue.dev/reference/config"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Continue MCP config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The Continue CLI ships a Claude Code-compatible hooks system keyed under settings.json hooks, merged across ~/.continue, .continue, and the matching .claude locations. Beyond the events mapped here it also fires PostToolUseFailure, PermissionRequest, SessionEnd, Notification, SubagentStart, ConfigChange, TeammateIdle, TaskCompleted, WorktreeCreate, and WorktreeRemove, which have no canonical AXM event. Command handlers sit beside http, prompt, and agent handler types, and the surface is not yet covered by the published Continue docs."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".continue/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".continue/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".continue/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: "Matchers select tools by name; an optional per-handler if condition narrows by argument, such as Edit(src/**)."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Continue's hook surface is only described in tracking issues, not published reference docs, so the settings key and handler shape are not stable enough to write."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/guides/configuring-models-rules-tools"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".continue/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The Continue CLI sorts tool patterns into allow, ask, and exclude lists in a user-scoped permissions.yaml that the TUI writes as approvals are granted; there is no project-scoped permission file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/cli/tool-permissions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".continue/permissions.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "Bash(axm *)"; readonly notes: "Tool(pattern) entries under allow, ask, or exclude; the argument pattern is a glob, as in Write(**/*.ts)."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto"; readonly note: "Allows every tool for the session; not tool-scoped."; }, { readonly flag: "--readonly"; readonly note: "Restricts the session to read-only tools."; }, { readonly flag: "--allow"; readonly note: "Adds a session allow rule for one tool pattern."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "permissions.yaml is owned by the Continue TUI and AXM has no writer for its YAML permission grammar."; }; }; }; readonly cortex: { readonly id: "cortex"; readonly name: "Snowflake CoCo"; readonly vendor: "Snowflake"; readonly homepage: "https://www.snowflake.com/en/product/features/cortex-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".cortex"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".cortex"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.snowflake/cortex"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Cortex Code CLI extensibility"; readonly url: "https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility", "https://github.com/Snowflake-Labs/coco-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code configures MCP servers under the mcpServers key."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code subagents are Markdown definitions under .cortex/agents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code hooks execute commands with event data on standard input."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code loads AGENTS.md instruction files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code permission rules are stored in permissions.json and layered settings files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/permissions.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git status)"; readonly notes: "Permission allow and deny entries match tool calls and command prefixes."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Snowflake CoCo"; readonly surface: "Snowflake CoCo CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly ["This profile models CLI paths. Desktop shares the user configuration root but has distinct workspace paths; Snowsight uses hosted Horizon Catalog skills."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: instructions, permissions."]; readonly claimScope: "Product naming and CLI/Desktop/Snowsight extensibility boundaries"; }; readonly lifecycleQualifications: readonly []; }; }; readonly crush: { readonly id: "crush"; readonly name: "Crush"; readonly vendor: "Charm"; readonly homepage: "https://charm.land/crush"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".crush"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Crush repository"; readonly url: "https://github.com/charmbracelet/crush"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".crush/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "crush/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Documented project, global and configurable skill roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush now prefers executable crushrc configuration. AXM targets the deprecated-but-still-supported JSON configuration because the generic writer cannot safely author shell configuration."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush", "https://github.com/charmbracelet/crush/blob/main/schema.json"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/crush/crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush currently supports PreToolUse hooks in crush.json/.crush.json with direct event arrays. The native shape is Claude Code-compatible conceptually but not AXM's grouped command-hook JSON writer shape."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush/tree/main/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Crush hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush can allow broad built-in tools through permissions.allowed_tools and can bypass prompts with --yolo. This does not provide a narrow shell-command grant for AXM."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/crush/crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "\"permissions\": { \"allowed_tools\": [\"view\", \"edit\", \"bash\"] }"; readonly notes: "allowed_tools grants whole tools such as bash; it cannot narrowly grant only the axm command."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Skips all permission prompts for the workspace."; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing grant grammar and writer behavior were not revalidated."]; readonly claimScope: "Permission allow/deny controls and yolo bypass"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a narrow Crush permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Crush"; readonly surface: "Crush terminal agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions."]; readonly claimScope: "Skill discovery and permission controls"; }; readonly lifecycleQualifications: readonly []; }; }; readonly cursor: { readonly id: "cursor"; readonly name: "Cursor"; readonly vendor: "Anysphere"; readonly homepage: "https://cursor.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: "cursor"; readonly profile: { readonly identity: { readonly product: "Cursor"; readonly surface: "Desktop IDE and CLI"; readonly edition: null; readonly ownership: { readonly company: "Anysphere"; readonly parentCompany: "SpaceX"; readonly sources: readonly ["https://cursor.com/blog/joining-spacex"]; }; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://cursor.com/blog/joining-spacex"]; readonly conditions: readonly []; readonly limitations: readonly ["Parent-company acquisition reviewed; the product/operator identity is distinct from parent and model provider. Existing capability paths were not all re-exercised.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".cursor"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "file"; readonly path: "AGENTS.md"; readonly signal: "ambiguous"; readonly note: "Shared instruction filename used by multiple agents."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.cursor"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "cursor-agent"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Cursor documentation"; readonly url: "https://docs.cursor.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cursor 2.4 added Agent Skills (SKILL.md) across the editor and the cursor-agent CLI."; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codex/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/mcp.md", "https://prod.cursor.com/docs/mcp#using-mcpjson"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "env-colon"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly implicitTransport: "http-or-sse"; readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom subagents are Markdown files with YAML frontmatter under .cursor/agents (project) or ~/.cursor/agents (user); added in Cursor 2.4.\n"; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command handlers use flat event arrays. User handlers run from the Cursor configuration directory; project handlers run from the project root. Runtime execution remains unverified."; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "hooks.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "preToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "postToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["modify-output", "inject-context"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "beforeSubmitPrompt"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "sessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "subagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "preCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }]; readonly tools: readonly [{ readonly nativeName: "Shell"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }]; readonly entryDialect: { readonly serializer: "flat-command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-02"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly claimScope: "Documented native command event grammar, native decisions, and project/user locations"; readonly conditions: readonly []; readonly limitations: readonly ["AXM projects command handlers only. The preToolUse ask response is not enforced and is not advertised. Cloud profiles do not load user hooks or sessionStart. No native host execution was observed."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["project", "user"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/rules.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/cli/reference/permissions.md", "https://cursor.com/docs/cli/reference/parameters.md", "https://cursor.com/docs/agent/tools/terminal"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/permissions.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/sandbox.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/sandbox.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-2"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/cli-config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/cli.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "axm"; readonly notes: "IDE: case-sensitive command prefix in terminalAllowlist. CLI: Tool-call syntax Shell()/Read()/Write() with glob patterns. Deny always beats allow.\n"; }; readonly prerequisites: readonly [{ readonly key: "Settings > Cursor Settings > Agents > Auto-Run"; readonly value: "Run in Sandbox | Run Everything"; readonly scope: "user"; readonly note: "IDE Auto-Run must be enabled before terminalAllowlist takes effect."; }]; readonly cliFlags: readonly [{ readonly flag: "--force"; readonly note: "Force allow commands unless explicitly denied."; }, { readonly flag: "--yolo"; readonly note: "Alias for --force."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly terminalAllowlist: readonly ["${tool}"]; }; readonly template: null; }; readonly cliShell: { readonly destination: { readonly kind: "location"; readonly locationId: "project-additional-1"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Shell(${tool})", "Shell(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly type: "workspace_readwrite"; readonly additionalReadwritePaths: readonly []; }; readonly template: null; }; }; }; }; }; }; readonly deepagents: { readonly id: "deepagents"; readonly name: "Deep Agents Code"; readonly vendor: "LangChain"; readonly homepage: "https://docs.langchain.com/oss/python/deepagents/overview"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.deepagents"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Deep Agents skills documentation"; readonly url: "https://docs.langchain.com/oss/python/deepagents/skills"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skill sources are layered built-in, then plugin, then user ~/.deepagents//skills and ~/.agents/skills, then project .deepagents/skills and .agents/skills.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/python/deepagents/skills", "https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/project_utils.py", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active Deep Agents profile from native configuration before selecting this location."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["DEEPAGENTS_HOME relocates the entire user profile."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed definition/frontmatter grammar was not revalidated."]; readonly claimScope: "Current Deep Agents Code data directories and user/project precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The deepagents CLI natively supports MCP servers via 'mcp-servers add|list|tools|update|delete|connect' commands, project-level MCP config discovery/merge, per-server trust/approval, and MCP OAuth session management.\n"; readonly docs: readonly []; readonly sources: readonly ["https://reference.langchain.com/python/deepagents-cli", "https://pypi.org/project/deepagents-cli/", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents/.mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default DEEPAGENTS_HOME only; resolve the active profile directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "default-user"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing project discovery, transport and entry dialect claims were not fully revalidated."]; readonly claimScope: "Global MCP path and relocated profile boundary"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Deep Agents natively supports MCP servers, but the exact config file path, servers key, and serialization dialect are unverified; no AXM writer is defined to avoid fabricating an install path."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Each subagent is a folder holding an AGENTS.md with YAML frontmatter: .deepagents/agents//AGENTS.md for the project and ~/.deepagents//agents//AGENTS.md for the user. The name field is optional and defaults to the folder name."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/subagents.py", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active Deep Agents profile from native configuration before selecting this location."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["DEEPAGENTS_HOME relocates the entire user profile."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed definition/frontmatter grammar was not revalidated."]; readonly claimScope: "Current Deep Agents Code data directories and user/project precedence"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native nested AGENTS.md profile writing is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Deep Agents Code accepts lifecycle command hooks in the profile hooks.json file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default DEEPAGENTS_HOME only; resolve the active profile directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "default-user"; readonly format: "json"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Deep Agents Code accepts lifecycle command hooks in the profile hooks.json file."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "User instructions live under ~/.deepagents//AGENTS.md. Project .deepagents/AGENTS.md and root AGENTS.md are both appended when present; DEEPAGENTS_HOME relocates the user profile."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/project_utils.py", "https://docs.langchain.com/oss/python/deepagents/overview", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/AGENTS.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active profile and DEEPAGENTS_HOME before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["The selected agent determines the user AGENTS.md location."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Agent-specific user instructions and project instruction sources"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Deep Agents Code provides human approval controls for sensitive tool operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Deep Agents Code provides human approval controls for sensitive tool operations."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Deep Agents Code"; readonly surface: "Deep Agents Code CLI; distinct from the library"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "CLI product identity, separate from the Deep Agents framework"; }; readonly lifecycleQualifications: readonly []; }; }; readonly devin: { readonly id: "devin"; readonly name: "Devin CLI"; readonly vendor: "Cognition"; readonly homepage: "https://devin.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Devin"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.devin.ai/cli/subagents", "https://docs.devin.ai/cli/extensibility/mcp/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["Flat and directory subagent forms reviewed; MCP uses current CLI documentation rather than older desktop configuration descriptions.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".devin"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".devin"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "$XDG_CONFIG_HOME/devin"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Devin CLI documentation"; readonly url: "https://docs.devin.ai/cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin also reads universal .agents/skills locations; AXM targets the native .devin/skills project path and XDG user path.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/skills/overview"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".devin/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI stores MCP servers under mcpServers in layered config files. Remote URL servers default to Streamable HTTP and can fall back to SSE."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/mcp/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Devin CLI subagents are AGENT.md files under .devin/agents, .agents/agents, or the global Devin agents directory. Claude Code .claude/agents/*.md files are also imported."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".devin/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI hooks are compatible with Claude Code hooks. AXM writes to the hooks key in .devin/config.json rather than the standalone hooks.v1.json file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/hooks.v1.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-2"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "exec|edit|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "exec|edit|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "exec"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["project-additional-1"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI permissions use allow/ask/deny arrays in layered config files. Rules cover scope matchers such as Read/Write/Exec/Fetch and tool names such as read/edit/grep/glob/exec."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Exec(axm)"; readonly notes: "Exec rules match shell command prefixes as complete words; Read/Write rules use glob-style path scopes."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--permission-mode"; readonly note: "Selects modes such as normal, accept edits, bypass, or autonomous with sandboxing."; }, { readonly flag: "--sandbox"; readonly note: "Enables OS-level sandboxing and autonomous permission behavior."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Exec(${tool})"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(**)", "Write(**)", "edit"]; }; }; readonly template: null; }; }; }; }; }; }; readonly dexto: { readonly id: "dexto"; readonly name: "Dexto"; readonly vendor: "Truffle AI"; readonly homepage: "https://www.dexto.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.dexto"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Dexto documentation"; readonly url: "https://docs.dexto.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/truffle-ai/dexto/blob/main/packages/core/src/skills/workspace-skill-source.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Dexto declares MCP servers under mcpServers in a project agent.yml. The vendor schema adds connectionMode and type fields around the standard server definitions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.dexto.ai/mcp/"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Dexto permissions use manual or auto-approve mode plus alwaysAllow and alwaysDeny tool policies in agent.yml."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/truffle-ai/dexto/blob/main/docs/docs/guides/configuring-dexto/permissions.md"]; readonly scopes: readonly ["project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "agent.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "mcp--filesystem--write_file"; readonly notes: "toolPolicies.alwaysAllow and toolPolicies.alwaysDeny contain tool identifiers such as read_file, bash_exec, and mcp--server--tool."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto-approve"; readonly note: "Enables auto-approve mode for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Dexto"; readonly surface: "Dexto CLI profile; current documentation also describes Dexto Cloud"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.dexto.ai/docs/", "https://www.dexto.ai/docs/features/agents/", "https://www.dexto.ai/docs/features/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Current Cloud documentation does not reconfirm the historical CLI agent.yml or .agents/skills reader contracts.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Cloud product and reusable agent profiles; historical CLI details are not reconfirmed"; }; readonly lifecycleQualifications: readonly []; }; }; readonly droid: { readonly id: "droid"; readonly name: "Droid"; readonly vendor: "Factory"; readonly homepage: "https://www.factory.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".factory"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Factory documentation"; readonly url: "https://docs.factory.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".factory/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory MCP configuration supports local and remote servers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory custom droids are Markdown files under .factory/droids."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/custom-droids", "https://docs.factory.ai/harness/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".factory/droids"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".factory/droids"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Subagents do not spawn further subagents or use AskUser."]; readonly claimScope: "Custom droids and builtin delegation boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory prefers .factory/hooks.json and ~/.factory/hooks.json with an unwrapped event map. The hooks key in settings files is a fallback; older .factory/hooks/hooks.json is a migration source."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide", "https://docs.factory.ai/harness/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".factory/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly keyPath: readonly []; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".factory/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly keyPath: readonly []; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "user-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project-local-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Execute|Create|Edit|ApplyPatch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Execute|Create|Edit|ApplyPatch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Execute"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Create"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "ApplyPatch"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/hooks"]; readonly conditions: readonly ["Canonical hooks.json uses an unwrapped event map; settings.json wraps entries in hooks."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing event mappings are not an exhaustive review of every hook event."]; readonly claimScope: "Canonical hooks.json files and settings-file fallback"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/agents-md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory layers command allow, deny, and block lists; blocklist rules take precedence over denylist and allowlist rules."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/settings", "https://docs.factory.ai/cli/droid-exec/overview"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "commandAllowlist: [\"git status\", \"ls\"]"; readonly notes: "Command-prefix allow, deny, and block lists are matched after program resolution to prevent path-based bypasses."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto "; readonly note: "Selects the automation level."; }, { readonly flag: "--skip-permissions-unsafe"; readonly note: "Bypasses permission checks."; }, { readonly flag: "--enabled-tools "; readonly note: "Restricts the enabled tool set."; }, { readonly flag: "--disabled-tools "; readonly note: "Disables selected tools."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Droid"; readonly surface: "Factory Droid shared harness; CLI configuration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/hooks", "https://docs.factory.ai/harness/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, instructions, permissions."]; readonly claimScope: "Hook configuration and custom droids"; }; readonly lifecycleQualifications: readonly []; }; }; readonly firebender: { readonly id: "firebender"; readonly name: "Firebender"; readonly vendor: "Firebender"; readonly homepage: "https://firebender.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".firebender"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".firebender"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "file"; readonly path: "firebender.json"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.firebender"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Firebender documentation"; readonly url: "https://docs.firebender.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codex/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender stores MCP servers under mcpServers in firebender.json and ~/.firebender/firebender.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/context/mcp/overview", "https://firebendercorp.mintlify.app/api-reference/syntax"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agent Markdown files must be listed in the agents array of firebender.json or ~/.firebender/firebender.json. A conventional directory alone does not register an agent."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Register each Markdown file in the agents array of firebender.json; the directory is not auto-discovered."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly conditions: readonly ["Paths are resolved relative to the applicable project or personal configuration."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Explicit custom agent path registration"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender hooks execute commands with JSON event payloads on standard input and can observe, block, or modify selected operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".firebender/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "sessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "preToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "Shell,Read,Write,MCP"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "postToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "Shell,Read,Write,MCP"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "subagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "preCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Shell"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "MCP"; readonly canonical: "mcp.call"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "afterFileEdit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender reads .firebender/rules/*.mdc and also supports AGENTS.md; this entry models its primary vendor rule directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/global-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Firebender"; readonly surface: "Firebender IDE agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Explicit registration of custom agent Markdown files"; }; readonly lifecycleQualifications: readonly []; }; }; readonly forgecode: { readonly id: "forgecode"; readonly name: "ForgeCode"; readonly vendor: "Tailcall"; readonly homepage: "https://forgecode.dev"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".forge"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".forge"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.forge"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/forge"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "ForgeCode skills documentation"; readonly url: "https://forgecode.dev/docs/skills/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode also reads shared ~/.agents/skills and documents ~/forge/skills as its global skills path."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".forge/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: "forge/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .forge/skills, shared ~/.agents/skills and global ~/forge/skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode supports local and remote MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/mcp-integration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode custom agents are files under .forge/agents."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/creating-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".forge/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/custom-rules/"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode permissions.yaml policies combine read, write, command, and URL glob rules with all, any, and not operators; decisions are allow, deny, or confirm."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/permissions/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".forge/permissions.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".forge.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "command: \"git *\""; readonly notes: "Rules support all, any, and not composition with allow, deny, and confirm decisions."; }; readonly prerequisites: readonly [{ readonly key: "restricted"; readonly value: "true"; readonly scope: "project"; readonly note: "Enables restricted permission policy enforcement from .forge.toml."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "ForgeCode"; readonly surface: "ForgeCode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and global skill discovery"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "gemini-cli": { readonly id: "gemini-cli"; readonly name: "Gemini CLI"; readonly vendor: "Google"; readonly homepage: "https://github.com/google-gemini/gemini-cli"; readonly interfaces: readonly ["cli"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Gemini CLI"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; readonly conditions: readonly ["Continued availability is for supported enterprise subscriptions or paid API-key usage."]; readonly limitations: readonly ["Consumer retirement is edition-specific. Standard/Enterprise and paid API-key users continue to receive support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly [{ readonly scope: "edition"; readonly subject: "Consumer Gemini CLI"; readonly state: "retired"; readonly since: "2026-06-18"; readonly note: "Consumer access transitioned to Antigravity CLI; Standard, Enterprise and paid API access continue."; readonly sources: readonly ["https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; }]; }; readonly rootDir: ".gemini"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "gemini"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Gemini CLI documentation"; readonly url: "https://github.com/google-gemini/gemini-cli/tree/main/docs"; }, { readonly label: "Transitioning Gemini CLI to Antigravity CLI"; readonly url: "https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "httpUrl"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Subagents are Markdown files with YAML frontmatter under .gemini/agents (project) or ~/.gemini/agents (user); shipped in Gemini CLI v0.38.1.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/core/subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Gemini CLI hooks run command hooks from settings files and use JSON on stdin/stdout. Native Gemini CLI exposes additional events such as SessionEnd, BeforeModel, AfterModel, BeforeToolSelection, and Notification; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/index.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear"; readonly notes: "Gemini CLI lifecycle matchers are exact strings; AXM serializes raw matcher text."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeAgent"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterAgent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeTool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "write_file|replace"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterTool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "write_file|replace"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompress"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/index.md"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read_file"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "read_many_files"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write_file"; readonly canonical: "file.write"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "replace"; readonly canonical: "file.edit"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "run_shell_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "web_fetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "manifest"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Consumer access (free, AI Pro, AI Ultra) ended 2026-06-18; Antigravity CLI succeeded Gemini CLI for those tiers. Enterprise customers on paid API keys retain access. The contextFileName setting can also point Gemini CLI at AGENTS.md.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md", "https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "GEMINI.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/GEMINI.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://geminicli.com/docs/cli/gemini-md/"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/policy-engine.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/tools/shell.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/trusted-folders.md"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "run_shell_command(axm)"; readonly notes: "The current configuration reference exposes tools.allowed / tools.core / tools.exclude (formerly coreTools/excludeTools) and the policy engine; command-specific run_shell_command rules are simple string matches and should not be treated as a strong security boundary.\n"; }; readonly prerequisites: readonly [{ readonly key: "security.folderTrust.enabled"; readonly value: "true"; readonly scope: "user"; readonly note: "Untrusted folders disable all auto-acceptance regardless of other settings."; }]; readonly cliFlags: readonly [{ readonly flag: "--approval-mode=yolo"; readonly note: "Broad bypass; not tool-scoped. Blocked when security.disableYoloMode=true."; }, { readonly flag: "--yolo"; readonly note: "Alias for --approval-mode=yolo."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly security: { readonly folderTrust: { readonly enabled: true; }; readonly enablePermanentToolApproval: true; }; readonly tools: { readonly allowed: readonly ["run_shell_command(${tool})"]; }; }; readonly template: null; }; }; }; }; }; }; readonly "github-copilot-cli": { readonly id: "github-copilot-cli"; readonly name: "GitHub Copilot CLI"; readonly vendor: "GitHub"; readonly homepage: "https://docs.github.com/en/copilot/concepts/agents/about-copilot-cli"; readonly interfaces: readonly ["cli"]; readonly family: "github"; readonly profile: { readonly identity: { readonly product: "GitHub Copilot"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/github/copilot-cli/blob/main/changelog.md", "https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly conditions: readonly []; readonly limitations: readonly ["CLI instructions/inheritance and hook mechanisms reviewed. CLI version and agent instruction opt-in affect behavior.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".copilot"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".github/copilot"; readonly signal: "supporting"; readonly note: "Repository and local Copilot CLI settings live under .github/copilot."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.copilot"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "copilot"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "GitHub Copilot CLI documentation"; readonly url: "https://docs.github.com/en/copilot/how-tos/copilot-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-skills", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".github/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-command-reference", "https://github.com/github/copilot-cli/issues/1232#issuecomment-4198097885"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/mcp-config.json"; readonly configRootRelativePath: "mcp-config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "project-github"; readonly scope: "project"; readonly root: "project"; readonly path: ".github/mcp.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, { readonly name: "type"; readonly value: "local"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; GitHub Copilot CLI custom agents are Markdown agent profiles under .github/agents or ~/.copilot/agents.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/concepts/agents/copilot-cli/about-custom-agents", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".github/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Copilot CLI documents command, HTTP and prompt hooks. AXM does not serialize its hook configuration."; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/overview", "https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly claimScope: "Native hook invocation families"; readonly conditions: readonly []; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a GitHub Copilot CLI hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "GitHub Copilot CLI supports AGENTS.md plus Copilot-specific instruction files; AXM syncs the cross-agent AGENTS.md convention.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/github/copilot-cli/blob/main/changelog.md"]; readonly claimScope: "CLI 1.0.89 reads .claude/rules; custom-agent instruction inheritance is opt-in"; readonly conditions: readonly ["Custom agents must set include-custom-instructions: true to inherit repository instructions."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools", "https://docs.github.com/en/copilot/how-tos/copilot-cli/set-up-copilot-cli/configure-copilot-cli", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["cli-flag", "config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/permissions-config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".github/copilot/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "--allow-tool='shell(axm:*)'"; readonly notes: "Copilot CLI permission flags use tool-kind patterns such as shell(git:*), write(path), url(domain), or MCP_SERVER(tool). Deny rules take precedence over allow rules.\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--allow-tool='shell(${tool}:*)'"; readonly note: "Allow a command family without prompting."; }, { readonly flag: "--allow-all-tools"; readonly note: "Allow all available tools without prompting."; }, { readonly flag: "--allow-all"; readonly note: "Allow all tools, paths, and URLs."; }, { readonly flag: "--deny-tool"; readonly note: "Deny a tool pattern; deny rules take precedence over allow rules."; }, { readonly flag: "--available-tools"; readonly note: "Restrict the tools available to the session."; }, { readonly flag: "--excluded-tools"; readonly note: "Remove tools from the session."; }, { readonly flag: "--yolo"; readonly note: "Alias for allowing all tools, paths, and URLs."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "invocation"; }; readonly patch: null; readonly template: "--allow-tool='shell(${tool}:*)'"; }; readonly filesystem: { readonly destination: { readonly kind: "invocation"; }; readonly patch: null; readonly template: "--allow-tool='write(${workspaceRoot}/**)'"; }; }; }; }; }; }; readonly goose: { readonly id: "goose"; readonly name: "Goose"; readonly vendor: "Agentic AI Foundation (AAIF)"; readonly homepage: "https://goose-docs.ai"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly rootDir: ".goose"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Goose documentation"; readonly url: "https://goose-docs.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The built-in Skills platform extension loads project and global .agents/skills plus compatibility roots. Summon separately loads recipes and agents and delegates work."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/mcp/skills-mcp/", "https://goose-docs.ai/docs/guides/context-engineering/using-skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-skills/"]; readonly conditions: readonly ["The Skills platform extension must be enabled."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Built-in Skills platform extension, canonical and compatibility roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/getting-started/using-extensions/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Goose YAML extension config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose discovers reusable Markdown agents and delegates them through the built-in Summon extension."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/custom-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".goose/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/custom-agents/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Goose discovers reusable Markdown agents and delegates them through the built-in Summon extension."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native Open Plugins hooks run commands from hooks/hooks.json inside discovered user or project .agents/plugins packages. Plugin discovery and enablement are required."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/hooks/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Native Open Plugins hooks run commands from hooks/hooks.json inside discovered user or project .agents/plugins packages. Plugin discovery and enablement are required."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose loads AGENTS.md and .goosehints through directory hierarchies. CONTEXT_FILE_NAMES can override the filenames."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goosehints"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "goose/.goosehints"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Goose loads AGENTS.md and .goosehints through directory hierarchies. CONTEXT_FILE_NAMES can override the filenames."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose exposes permission mode, tool permissions, and .gooseignore controls. AXM has not modeled a narrow permission grant writer for Goose."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/managing-tools/tool-permissions/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Goose permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Goose"; readonly surface: "Goose CLI and desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-skills/", "https://goose-docs.ai/docs/guides/context-engineering/custom-agents/", "https://goose-docs.ai/docs/guides/context-engineering/hooks/", "https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, permissions."]; readonly claimScope: "Skills, custom agents, hooks and instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "grok-cli": { readonly id: "grok-cli"; readonly name: "Grok Build"; readonly vendor: "xAI"; readonly homepage: "https://x.ai/cli"; readonly interfaces: readonly ["cli"]; readonly family: "xai"; readonly profile: { readonly identity: { readonly product: "Grok Build"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces", "https://x.ai/news/grok-build-for-everyone"]; readonly conditions: readonly []; readonly limitations: readonly ["Official product and plugin capability reviewed; web/mobile access does not imply local-file support for hosted sessions.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".grok"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Grok CLI documentation"; readonly url: "https://docs.x.ai/build/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads SKILL.md Agent Skills from project (.grok/skills) and user (~/.grok/skills, ~/.agents/skills) locations, plus additional paths configured via [skills] in ~/.grok/config.toml.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".grok/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".grok/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MCP servers are managed with grok mcp commands or [mcp_servers] tables in ~/.grok/config.toml and project .grok/config.toml. Grok also reads ~/.claude.json, .cursor/mcp.json, and .mcp.json compatibility files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Grok CLI MCP config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Agent definitions are Markdown files in .grok/agents or ~/.grok/agents and may add new subagent types or shadow the built-in general-purpose, explore, and plan types. Personas are a separate TOML overlay under .grok/personas and are not modeled as subagents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/subagents", "https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/16-subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".grok/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".grok/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "xAI Grok CLI discovers hook scripts from .grok hooks paths and also advertises Claude Code hook compatibility. Exact in-app hook event details should be reverified before adding a writer."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Grok CLI hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project rules are merged by directory depth from the repository root. Grok also reads documented AGENTS.md filename variants and Markdown files in .grok/rules, with compatibility for .claude/rules and .cursor/rules; AXM writes the universal AGENTS.md surface."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/project-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Grok [permission] settings define allow, deny, and ask lists using Tool(pattern) rules. UI permission modes and CLI flags provide coarse approval behavior in addition to the per-tool grammar."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/settings", "https://docs.x.ai/build/settings/reference"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".grok/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git *)"; readonly notes: "Patterns can target tools and their arguments, including Read(src/**) and MCPTool(server__*)."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--always-approve"; readonly note: "Skip permission prompts for tool calls."; }, { readonly flag: "--permission-mode "; readonly note: "Selects default, dontAsk, acceptEdits, bypassPermissions, or plan mode."; }, { readonly flag: "--deny "; readonly note: "Adds a deny rule for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Grok CLI permission grant writing."; }; }; }; readonly hermes: { readonly id: "hermes"; readonly name: "Hermes Agent"; readonly vendor: "Nous Research"; readonly homepage: "https://hermes-agent.nousresearch.com"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".hermes"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Hermes Agent documentation"; readonly url: "https://hermes-agent.nousresearch.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes reads SKILL.md skills from ~/.hermes/skills as the source of truth. Additional external skill directories can be configured in ~/.hermes/config.yaml for shared team use.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Additional directory precedence and every frontmatter field were not revalidated."]; readonly claimScope: "User skill library and additional configured sources"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes declares MCP servers under mcp_servers in ~/.hermes/config.yaml. AXM writes declared named entries in that YAML file without ownership metadata, preserving other entries and coexisting with hermes mcp commands.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/config.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native delegate_task workers have isolated contexts, parallel execution and configurable delegation models."; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "Native delegate_task workers have isolated contexts, parallel execution and configurable delegation models."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes has profile config.yaml shell hooks, Python plugin hooks, outbound webhooks and Gateway-only HOOK.yaml plus handler.py directories. Gateway hooks do not run in the CLI or Desktop; modeled event mappings cover only part of this surface."; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks", "https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/"]; readonly scopes: readonly ["user"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/config.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/shell-hooks-allowlist.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The existing event mappings and allowlist mechanics were not exhaustively revalidated."]; readonly claimScope: "Hook system availability and surface boundaries"; }; readonly mechanism: readonly ["command-stdin"]; readonly events: readonly [{ readonly nativeName: "pre_tool_call"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_tool_call"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_llm_call"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_llm_call"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "on_session_start"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "subagent_stop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "transform_llm_output"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "modify"; readonly operations: readonly ["modify-output"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes reads AGENTS.md as a recursive project instruction source. .hermes.md and SOUL.md are higher-priority native alternatives at the git root, but AGENTS.md is the cross-tool standard AXM writes.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/configuration"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Hermes Agent"; readonly surface: "Hermes CLI and Gateway; hook behavior varies by surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/", "https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/", "https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, instructions, permissions."]; readonly claimScope: "Hook systems and native subagent delegation"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "ibm-bob": { readonly id: "ibm-bob"; readonly name: "IBM Bob"; readonly vendor: "IBM"; readonly homepage: "https://bob.ibm.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".bob"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "IBM Bob documentation"; readonly url: "https://bob.ibm.com/docs/ide"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".bob/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project servers live in .bob/mcp.json; user servers in ~/.bob/mcp.json. Both files key entries under mcpServers. Streamable HTTP entries use \"type\": \"streamable-http\"; legacy SSE entries remain URL-only.\n"; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/mcp/mcp-in-bob"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".bob/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".bob/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "streamable-http"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "streamable-http"; }; }, null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom modes use .bob/custom_modes.yaml or ~/.bob/settings/custom_modes.yaml. Modes configure tool groups, including subtask/subagent access and allowedSubagents; older JSON mode definitions are converted by the UI."; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".bob/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".bob/settings/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "IDE custom mode YAML and permitted subagents"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Bob automatically loads AGENTS.md from the workspace root.\n"; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".bob/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "IBM Bob custom modes define tool access groups and file permissions, including read, edit, command, and mcp groups. AXM has not implemented a custom_modes permission writer."; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/features/modes", "https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".bob/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".bob/settings/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an IBM Bob custom-modes permission writer."; }; }; readonly profile: { readonly identity: { readonly product: "IBM Bob"; readonly surface: "IBM Bob IDE custom modes"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Custom modes, tool groups and instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "iflow-cli": { readonly id: "iflow-cli"; readonly name: "iFlow CLI"; readonly vendor: "XinLiu AI"; readonly homepage: "https://platform.iflow.cn/cli"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".iflow"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".iflow"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "iflow"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/.iflow"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "iFlow CLI documentation"; readonly url: "https://platform.iflow.cn/en/cli/quickstart"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/skill"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".iflow/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow CLI supports CLI-managed and JSON-configured MCP servers at user and project scopes."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The vendor docs name both settings and legacy MCP files; AXM has not verified one lossless writer dialect across them."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".iflow/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow documents command hooks at user and project scopes, but AXM has not modeled the event and serialization contract."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the iFlow hook dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/configuration/iflow"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "IFLOW.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow exposes confirmation and YOLO execution modes, but vendor docs do not define stable granular permission files for AXM."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/quickstart"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["cli-flag", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Allow tool execution without per-operation confirmation."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not emit broad bypass flags as permission grants."; }; }; readonly profile: { readonly identity: { readonly product: "iFlow CLI"; readonly surface: "iFlow CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://platform.iflow.cn/en/cli/quickstart"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI product availability and advertised MCP/subagent support"; }; readonly lifecycleQualifications: readonly []; }; }; readonly junie: { readonly id: "junie"; readonly name: "Junie"; readonly vendor: "JetBrains"; readonly homepage: "https://www.jetbrains.com/junie"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: "jetbrains"; readonly profile: { readonly identity: { readonly product: "Junie"; readonly surface: "IDE and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli.html", "https://junie.jetbrains.com/docs/agent-skills.html", "https://junie.jetbrains.com/docs/junie-cli-hooks.html"]; readonly conditions: readonly ["CLI hooks remain an Early Access surface."]; readonly limitations: readonly ["CLI and skill discovery reviewed; CLI hooks are Early Access and must not be inferred for every IDE.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".junie"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Junie documentation"; readonly url: "https://junie.jetbrains.com/docs/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/agent-skills.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-mcp-configuration.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".junie/mcp/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/mcp/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-subagents.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI hooks support seven command (type:command) event types: SessionStart, UserPromptSubmit, PreToolUse, Stop, StopFailure, PermissionRequest, and SessionEnd, configured from user config or explicit --config-location files. Default project hooks are still ignored for safety, so AXM does not write Junie hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-hooks.html", "https://junie.jetbrains.com/docs/junie-cli-configuration.html"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no trusted project hook writer target for Junie CLI hooks."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI reads persistent project guidance from .junie/AGENTS.md and suggests importing AGENTS.md-style files from other agents into that location."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/guidelines-and-memory.html", "https://junie.jetbrains.com/docs/junie-cli-usage.html"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI uses the Action Allowlist for terminal commands, MCP tools, and other sensitive actions; brave mode allows all sensitive actions for a session."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-usage.html", "https://junie.jetbrains.com/docs/action-allowlist.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/allowlist.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "^\\Qaxm \\E[^\\s;&|<>@$]+.*$"; readonly notes: "Terminal rules can be exact commands, Java regular expressions, or standard regular expressions."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Junie Action Allowlist writer."; }; }; }; readonly lingma: { readonly id: "lingma"; readonly name: "Lingma"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://help.aliyun.com/zh/lingma"; readonly interfaces: readonly ["ide-extension"]; readonly family: "alibaba"; readonly rootDir: ".lingma"; readonly lifecycle: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "Alibaba renamed TONGYI Lingma to Qoder CN."; readonly supersededBy: "qoder-cn"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".lingma"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.lingma"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Qoder CN (formerly Lingma) documentation"; readonly url: "https://help.aliyun.com/en/lingma/introduction-of-lingma"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/qoder-cn/user-guide/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".lingma/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "The IDE reads MCP services from its settings file; AXM has no verified writer for the legacy Lingma surface."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/qoder-cn/user-guide/guide-for-using-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the legacy Lingma IDE settings dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Lingma/Qoder CN IDE command hooks are documented in ~/.lingma/settings.json."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn/user-guide/hooks"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the Lingma IDE hook dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "The IDE exposes Auto-Run controls in settings rather than a documented portable rule grammar."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn/user-guide/agent"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM cannot write UI-only Lingma Auto-Run settings."; }; }; readonly profile: { readonly identity: { readonly product: "Lingma"; readonly surface: "Legacy Lingma IDE identity, renamed to Qoder CN"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.aliyun.com/en/lingma/introduction-of-lingma"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Alibaba warns that the Lingma documentation may be outdated; current Qoder CN IDE reader mechanics were not revalidated.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "May 2026 product rename and current documentation authority"; }; readonly lifecycleQualifications: readonly [{ readonly scope: "product"; readonly subject: "TONGYI Lingma branding"; readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "Alibaba renamed the product Qoder CN. This identity records the legacy IDE surface; the qoder-cn entry models the CLI, not every renamed product."; readonly sources: readonly ["https://help.aliyun.com/en/lingma/introduction-of-lingma"]; }]; }; }; readonly kilo: { readonly id: "kilo"; readonly name: "Kilo Code"; readonly vendor: "Kilo"; readonly homepage: "https://kilo.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".kilo"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kilo Code documentation"; readonly url: "https://kilo.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/automate/mcp/using-in-cli", "https://kilo.ai/docs/automate/mcp/using-in-kilo-code"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "kilo.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/kilo.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; readonly command: "array"; readonly envKey: "environment"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "CLI project .kilo/agents and user ~/.config/kilo/agents Markdown files"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/code-with-ai/platforms/cli", "https://kilo.ai/docs/getting-started/settings/auto-approving-actions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/kilo.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "kilo.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/kilo.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "axm *"; readonly notes: "Permission values are \"allow\", \"ask\", or \"deny\". Object rules are wildcard matched, and the last matching rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly bash: { readonly "*": "ask"; readonly "${tool} *": "allow"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly external_directory: { readonly "${workspaceRoot}/**": "allow"; }; readonly read: { readonly "${workspaceRoot}/**": "allow"; }; readonly edit: { readonly "${workspaceRoot}/**": "allow"; }; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Kilo Code"; readonly surface: "Kilo CLI; editor extensions have separate configuration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "CLI custom subagent paths and configuration precedence"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "kimi-cli": { readonly id: "kimi-cli"; readonly name: "Kimi Code CLI"; readonly vendor: "Moonshot AI"; readonly homepage: "https://www.kimi.com/code/docs/en/kimi-code-cli/"; readonly interfaces: readonly ["cli"]; readonly family: "moonshot"; readonly profile: { readonly identity: { readonly product: "Kimi Code"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code/whats-new.html"]; readonly conditions: readonly []; readonly limitations: readonly ["Recent releases and remote/web features reviewed. Existing local definition paths retain their earlier evidence; remote session access is not a distinct writer.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".kimi-code"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.kimi-code"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Kimi Code CLI documentation"; readonly url: "https://www.kimi.com/code/docs/en/kimi-code-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code discovers skills from Kimi-specific and cross-tool directories; AXM writes the universal .agents/skills location."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/skills.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/mcp.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kimi-code/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [null, { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; readonly bearerTokenEnvKey: "bearerTokenEnvVar"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code recursively discovers Markdown custom agents with YAML frontmatter and can delegate to them as subagents."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/agents.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kimi-code/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code hooks are TOML array entries, execute commands with JSON on standard input, and can block selected events."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Read|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Read|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "regex"; readonly example: "deploy|release"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM's grouped hook serializer cannot emit Kimi Code's flat TOML hook arrays."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code loads AGENTS.md from project and Kimi-specific or cross-tool user locations."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/agents.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code loads ordered allow, deny, and ask rules from its user configuration; invocation flags can still apply coarse session modes."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/configuration/config-files"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "decision = \"allow\"; pattern = \"Bash(axm *)\""; readonly notes: "Rules are ordered [[permission.rules]] tables whose first matching ToolName or ToolName(argument-pattern) rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Auto-approves all tool calls; aliased as --yes and --auto-approve."; }, { readonly flag: "--afk"; readonly note: "Auto-approves tool calls and auto-dismisses AskUserQuestion."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not serialize ordered TOML array-of-table permission rules."; }; }; }; readonly "kiro-cli": { readonly id: "kiro-cli"; readonly name: "Kiro CLI"; readonly vendor: "AWS"; readonly homepage: "https://kiro.dev"; readonly interfaces: readonly ["cli"]; readonly family: "amazon"; readonly rootDir: ".kiro"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kiro CLI documentation"; readonly url: "https://kiro.dev/docs/cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/mcp/configuration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/settings/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/settings/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly ["Legacy CLI 2.x agent files remain visible and can be upgraded with /upgrade-agent."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Full V3 permission and MCP dialects were not revalidated."]; readonly claimScope: "V3 custom agent configuration and project/home discovery"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro custom agent configuration V3 requires a hooks array. Legacy CLI 2.x hook objects are migrated by /upgrade-agent; AXM has no Kiro hook writer."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/hooks/", "https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly ["V3 requires hook arrays; /upgrade-agent migrates CLI 2.x hook objects."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "V3 hook array migration from legacy object form"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Kiro CLI hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro CLI steering files live under .kiro/steering and can be always-on, conditional, or manually referenced."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/steering/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/steering"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro CLI custom agent configuration supports allowedTools, toolsSettings, and the hooks/MCP tools settings surfaces. The public docs do not define a single default AXM-writable permission grant target."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/cli/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/agents/*.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/agents/*.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "allowedTools: [\"Read\", \"Write\", \"Bash\"]"; readonly notes: "Permission rules are embedded in custom agent configuration files."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Kiro CLI custom-agent permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Kiro CLI"; readonly surface: "Kiro CLI custom agent configuration V3"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, instructions, permissions."]; readonly claimScope: "Versioned custom-agent configuration and hook migration"; }; readonly lifecycleQualifications: readonly []; }; }; readonly kode: { readonly id: "kode"; readonly name: "Kode"; readonly vendor: "shareAI-lab"; readonly homepage: "https://github.com/shareAI-lab/Kode-CLI"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".kode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kode CLI repository"; readonly url: "https://github.com/shareAI-lab/Kode-CLI"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kode connects to MCP servers via .mcp.json (mcpServers key) and .mcprc, managed with kode mcp add/list/get/remove; server tools are exposed as mcp____. Kode also supports a ws transport that is outside AXM's transport enum."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Native MCP config uses .mcp.json (mcpServers key), but the exact writer dialect is not documented; leaving the AXM MCP writer unbuilt pending an AXM product decision."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kode walks repository-root to working-directory instruction files, preferring AGENTS.override.md to AGENTS.md at a level; legacy CLAUDE.md remains readable. The default combined project document cap is 32 KiB."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.override.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Repository-to-cwd AGENTS.md discovery and AGENTS.override.md precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--safe"; readonly note: "Enables permission checks instead of Kode's default YOLO mode."; }, { readonly flag: "--dangerously-skip-permissions"; readonly note: "Explicitly bypasses permission checks."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Kode"; readonly surface: "Kode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, permissions."]; readonly claimScope: "CLI product and AGENTS.md instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; }; readonly mcpjam: { readonly id: "mcpjam"; readonly name: "MCPJam"; readonly vendor: "MCPJam"; readonly homepage: "https://www.mcpjam.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".mcpjam"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MCPJam Inspector documentation"; readonly url: "https://docs.mcpjam.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcpjam/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing local filesystem reader paths were not revalidated by the hosted workflow review."]; readonly claimScope: "Skill use in local Inspector and cloud projects"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MCPJam Inspector loads MCP servers from a config file (mcpServers object) passed via `npx @mcpjam/inspector --config `, supporting stdio and remote (streamable-HTTP/SSE) transports. The config path is arbitrary with no fixed writable location."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mcpjam.com/installation"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not manage MCPJam's inspector config file — the --config path is arbitrary with no stable writable project location."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "MCPJam"; readonly surface: "MCPJam local Inspector; cloud skill workflows are a separate surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Local and hosted skill use"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "minimax-code": { readonly id: "minimax-code"; readonly name: "MiniMax Code"; readonly vendor: "MiniMax"; readonly homepage: "https://agent.minimax.io/download"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly rootDir: ".minimax"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MiniMax Code"; readonly url: "https://github.com/MiniMax-AI/minimax-code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI discovers workspace SKILL.md directories, built-in skills and installed plugin skills."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".minimax/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Full Agent Skills conformance and every discovery priority were not assessed."]; readonly claimScope: "Workspace skill roots and directory symlink support"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The runtime reads .mcp.json only from the session main workspace. It supports stdio, HTTP and SSE; no ancestor or additional-directory search is performed."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The user-profile configuration and writer dialect remain unmodeled."]; readonly claimScope: "Project MCP path and transports"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI runtime provides native subagent tools. A portable custom-subagent directory was not established."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "The CLI runtime provides native subagent tools. A portable custom-subagent directory was not established."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MiniMax-format plugins register hook documents through their manifest hooks array; synchronous command hooks can return TUI systemMessage notices."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "MiniMax-format plugins register hook documents through their manifest hooks array; synchronous command hooks can return TUI systemMessage notices."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "mcode init creates or updates AGENTS.md project guidance."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Nested instruction traversal and personal instruction locations were not established."]; readonly claimScope: "mcode init creates or updates AGENTS.md project guidance."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI exposes execution permission modes, local rules and sandboxing."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only", "config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "The CLI exposes execution permission modes, local rules and sandboxing."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "MiniMax Code"; readonly surface: "MiniMax Code terminal TUI, headless CLI and ACP; desktop is separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: readonly ["MiniMax", "User-configured compatible providers"]; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code", "https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md", "https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md", "https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly conditions: readonly ["Capabilities reviewed against public CLI source targeting TUI 0.4.12; matching npm versions do not prove identical source/build provenance.", "The desktop app source is outside the public CLI repository; ACP is a CLI protocol surface."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "Public CLI source capabilities and desktop boundary"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "mistral-vibe": { readonly id: "mistral-vibe"; readonly name: "Mistral Vibe"; readonly vendor: "Mistral AI"; readonly homepage: "https://docs.mistral.ai/vibe/code/overview"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "mistral"; readonly rootDir: ".vibe"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Mistral Vibe documentation"; readonly url: "https://docs.mistral.ai/vibe/code/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Mistral Vibe stores MCP servers as repeated [[mcp_servers]] TOML array-of-table entries. AXM's generic MCP writer currently serializes keyed server maps and cannot represent that shape without corrupting the configuration."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom definitions are TOML files under project or home .vibe/agents. agent_type is required; subagent definitions are invoked by task delegation, not --agent."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .vibe/agents TOML with agent_type agent or subagent"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Vibe executes TOML-configured hook commands with event data on standard input; pre-tool hooks can deny or modify tool input and hook output can inject context."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/hooks.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/hooks.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "pre_tool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "bash|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input", "inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_tool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "bash|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_agent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Vibe supports per-tool always/ask policies and Bash allow/deny command rules in layered config files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/safety-approvals-permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "[tools.bash]\npermission = \"ask\""; readonly notes: "Per-tool policy is always or ask; Bash rules additionally allow or deny command patterns."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Mistral Vibe"; readonly surface: "Mistral Vibe Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "TOML custom agents and subagent types"; }; readonly lifecycleQualifications: readonly []; }; }; readonly mux: { readonly id: "mux"; readonly name: "Xum"; readonly vendor: "Coder"; readonly homepage: "https://xum.coder.com"; readonly interfaces: readonly ["cli", "desktop", "ide-extension"]; readonly family: null; readonly rootDir: ".xum"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Xum documentation"; readonly url: "https://xum.coder.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "New project skills use .xum/skills. Xum also reads shared .agents/skills and legacy .mux/skills; .xum wins when both canonical and legacy directories exist."; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents/agent-skills", "https://xum.coder.com/agents/agent-skills", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".xum/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".xum/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".mux/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Used when the canonical .xum skills directory is absent."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/agents/agent-skills", "https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical Xum skill roots and documented legacy readers"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Xum stores stdio command strings under the servers key in ~/.xum/mcp.jsonc, .xum/mcp.jsonc, and .xum/mcp.local.jsonc."; readonly docs: readonly []; readonly sources: readonly ["https://xum.coder.com/config/mcp-servers", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio"]; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing detailed protocol and hook behavior were not revalidated."]; readonly claimScope: "Canonical directory and environment naming after the rename"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".xum/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".xum/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".mux/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Used when the corresponding canonical .xum directory is absent."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Agent frontmatter and delegation semantics were not revalidated."]; readonly claimScope: "Canonical project agent directory after the rename"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Xum executes raw tool_pre, tool_post, tool_env, and init scripts from .xum or ~/.xum. Input is provided through XUM_* environment variables; tool_pre can block with a non-zero exit."; readonly docs: readonly []; readonly sources: readonly ["https://xum.coder.com/hooks/tools.md", "https://xum.coder.com/hooks/init.md", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing detailed protocol and hook behavior were not revalidated."]; readonly claimScope: "Canonical directory and environment naming after the rename"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents/instruction-files"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Xum"; readonly surface: "Xum CLI and desktop, formerly Mux"; readonly edition: null; readonly ownership: { readonly company: "Coder"; readonly parentCompany: null; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; }; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility", "https://xum.coder.com/agents/agent-skills"]; readonly conditions: readonly ["The catalog identifier mux is retained; Xum is the current product name. Vendor compatibility locations are reader facts, not AXM compatibility shims."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: instructions, permissions."]; readonly claimScope: "Product rename and canonical configuration locations"; }; readonly lifecycleQualifications: readonly []; }; }; readonly neovate: { readonly id: "neovate"; readonly name: "Neovate"; readonly vendor: "Ant Group"; readonly homepage: "https://github.com/neovateai/neovate-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".neovate"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Neovate Code documentation"; readonly url: "https://github.com/neovateai/neovate-code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Neovate loads directory-based skills (each subdirectory contains a SKILL.md with name+description frontmatter) from .neovate/skills (project) and ~/.neovate/skills (user)."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".neovate/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".neovate/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Native and Claude-compatible skill discovery"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/mcp.ts", "https://github.com/neovateai/neovate-code/blob/master/src/config.ts", "https://github.com/neovateai/neovate-code/blob/master/src/commands/mcp.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".neovate/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".neovate/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disable"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disable"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native configuration defines approvalMode values default, autoEdit and yolo."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Native configuration defines approvalMode values default, autoEdit and yolo."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Neovate"; readonly surface: "Neovate Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts", "https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions."]; readonly claimScope: "Skill discovery and native approval modes from vendor source"; }; readonly lifecycleQualifications: readonly []; }; }; readonly openclaw: { readonly id: "openclaw"; readonly name: "OpenClaw"; readonly vendor: "OpenClaw"; readonly homepage: "https://openclaw.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenClaw documentation"; readonly url: "https://docs.openclaw.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills", "https://github.com/openclaw/openclaw/blob/main/docs/tools/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the configured OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the configured OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".openclaw/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default OPENCLAW_STATE_DIR only; otherwise resolve the configured state directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Personal home skills are excluded when using a non-default state directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills"]; readonly conditions: readonly ["Project locations refer to the configured agent workspace, which need not be the current repository."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Workspace, state-owned and personal skill discovery"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenClaw connects MCP servers through mcp.servers in its Gateway configuration. UI and CLI administration support stdio, Streamable HTTP and SSE; configured servers remain subject to tool policy. The default file is ~/.openclaw/openclaw.json (JSON5); resolve the active state/configuration path. JSON5 reader mechanics are not yet modeled in this catalog."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/mcp"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Exact entry grammar, secret handling and vendor runtime connectivity were not verified."]; readonly claimScope: "Native MCP client, transports and configuration key"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native sessions_spawn starts isolated background subagent runs with per-agent configuration and lifecycle tracking."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "Native sessions_spawn starts isolated background subagent runs with per-agent configuration and lifecycle tracking."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Internal hooks use HOOK.md and a handler module; typed plugin hooks use api.on. Workspace hooks require explicit opt-in; HTTP ingress hooks are a separate feature."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/automation/hooks"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/automation/hooks"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Internal hooks use HOOK.md and a handler module; typed plugin hooks use api.on. Workspace hooks require explicit opt-in; HTTP ingress hooks are a separate feature."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The configured agent workspace AGENTS.md is loaded at session start. Workspace location is explicit agent configuration and is not necessarily the current repository."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/concepts/agent-workspace"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/concepts/agent-workspace"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "The configured agent workspace AGENTS.md is loaded at session start. Workspace location is explicit agent configuration and is not necessarily the current repository."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native tools.exec.mode controls host execution policy. Host-local approvals, session posture and delegated harness settings can impose additional restrictions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/permission-modes"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/permission-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Native tools.exec.mode controls host execution policy. Host-local approvals, session posture and delegated harness settings can impose additional restrictions."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "OpenClaw"; readonly surface: "OpenClaw Gateway agent with CLI and Control UI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills", "https://docs.openclaw.ai/tools/subagents", "https://docs.openclaw.ai/automation/hooks", "https://docs.openclaw.ai/tools/mcp", "https://docs.openclaw.ai/concepts/agent-workspace", "https://docs.openclaw.ai/tools/permission-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "Workspace skill scopes, hooks and subagent delegation"; }; readonly lifecycleQualifications: readonly []; }; }; readonly opencode: { readonly id: "opencode"; readonly name: "OpenCode"; readonly vendor: "Anomaly"; readonly homepage: "https://opencode.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".opencode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenCode documentation"; readonly url: "https://opencode.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/skills/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://opencode.ai/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical and compatible project/home skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode V2 stores server definitions beneath mcp.servers and expands {env:NAME} references without shell defaults."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/v2/docs/mcp-servers", "https://opencode.ai/v2/docs/config", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/config.ts", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/config/mcp.ts", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "env-tag"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-jsonc"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-directory"; readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/opencode.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-directory-jsonc"; readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "user-jsonc"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [null, { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }]; }; readonly stdio: { readonly command: "array"; readonly envKey: "environment"; readonly cwdKey: "cwd"; readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; }; readonly remote: { readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; readonly typeField: { readonly required: { readonly name: "type"; readonly value: "remote"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "remote"; }]; }; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/agents/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode exposes lifecycle hooks through in-process JavaScript/TypeScript plugins. AXM models the surface but does not serialize plugin hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/plugins/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "OpenCode hooks are in-process JavaScript plugin exports, not declarative config; AXM's command-stdin serializer has no way to emit them."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode reads AGENTS.md project rules, a global ~/.config/opencode/AGENTS.md, and Claude-compatible CLAUDE.md fallbacks. AXM can target the universal AGENTS.md project file."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/rules/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://opencode.ai/docs/rules/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/CLAUDE.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Fallback when the OpenCode global AGENTS.md is absent and Claude Code prompt compatibility is enabled."; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://opencode.ai/docs/rules/"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/permissions/", "https://opencode.ai/docs/config/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "axm *"; readonly notes: "Permission values are \"allow\", \"ask\", or \"deny\". Object rules are pattern matched, and the last matching rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly bash: { readonly "*": "ask"; readonly "${tool} *": "allow"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly external_directory: { readonly "${workspaceRoot}/**": "allow"; }; readonly read: { readonly "${workspaceRoot}/**": "allow"; }; readonly edit: { readonly "${workspaceRoot}/**": "allow"; }; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "OpenCode"; readonly surface: "OpenCode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://opencode.ai/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Local skill discovery and compatible skill directories"; }; readonly lifecycleQualifications: readonly []; }; }; readonly openhands: { readonly id: "openhands"; readonly name: "OpenHands"; readonly vendor: "All Hands AI"; readonly homepage: "https://www.openhands.dev"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".openhands"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenHands documentation"; readonly url: "https://docs.openhands.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/microagents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical .agents/skills and legacy .openhands skill roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenHands stores MCP servers under mcpServers in ~/.openhands/mcp.json and manages them through the openhands mcp CLI."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/sdk/guides/mcp", "https://docs.openhands.dev/openhands/usage/cli/mcp-servers"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an OpenHands MCP writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenHands lifecycle hooks are shell commands receiving JSON event payloads on stdin. Blocking events can deny with exit code 2 or a JSON decision; several events can inject additional context."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly scopes: readonly ["project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "terminal"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "terminal"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "OpenHands"; readonly surface: "OpenHands agent; reviewed skill contract"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Canonical and legacy skill paths"; }; readonly lifecycleQualifications: readonly []; }; }; readonly ona: { readonly id: "ona"; readonly name: "Ona"; readonly vendor: "Ona"; readonly homepage: "https://ona.com"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly rootDir: ".ona"; readonly lifecycle: { readonly state: "deprecated"; readonly since: null; readonly note: "The original Ona Agent is deprecated. Ona Cloud migrated to Codex; Enterprise customer-managed Anthropic remains temporarily available."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".ona"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Ona Agent documentation"; readonly url: "https://ona.com/docs/ona/agents"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".ona/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Ona reads repository MCP definitions from .ona/mcp-config.json and also offers organization-managed HTTP integrations."; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/mcp"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Ona's mcp-config.json dialect or hosted integration delivery."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Ona administrators configure command and executable deny lists as organization guardrails; the vendor does not document a repository permission file."; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Ona guardrails are managed through the organization administration surface."; }; }; readonly profile: { readonly identity: { readonly product: "Ona"; readonly surface: "Original Ona Agent harness in isolated development environments; not the whole Ona platform"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly conditions: readonly ["Continued use requires Enterprise with customer-managed Anthropic model access on a supported AWS or GCP runner."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Harness deprecation with cloud and Enterprise qualifications"; }; readonly lifecycleQualifications: readonly [{ readonly scope: "surface"; readonly subject: "Original Ona Agent on Ona Cloud"; readonly state: "retired"; readonly since: null; readonly note: "No longer available; affected projects move to Codex Agent."; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; }, { readonly scope: "edition"; readonly subject: "Enterprise customer-managed Anthropic Ona Agent"; readonly state: "deprecated"; readonly since: null; readonly note: "Remains available temporarily on supported AWS/GCP Enterprise deployments. This does not retire the Ona platform."; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; }]; }; }; readonly pi: { readonly id: "pi"; readonly name: "Pi"; readonly vendor: "Earendil Inc"; readonly homepage: "https://github.com/earendil-works/pi"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".pi"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Pi coding agent documentation"; readonly url: "https://pi.dev/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills follow the Agent Skills SKILL.md standard and are invoked via /skill:name. Pi discovers them from .pi/skills and .agents/skills (project, searched up through parent directories) and ~/.pi/agent/skills and ~/.agents/skills (user).\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".pi/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".pi/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Requires Pi 1.0 or later. Native runtime verification is pending. Hyphens and underscores collide in exposed server names. Reload the host after configuration changes."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/v1.0.0/packages/coding-agent/docs/mcp.md"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; readonly fields: readonly ["env", "headers"]; readonly executableValues: true; readonly homeExpansion: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".pi/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".pi/agent/mcp.json"; readonly configRootRelativePath: "mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [null, { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "http"; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "http"; }, { readonly name: "type"; readonly value: "streamable-http"; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "third-party"; readonly plugin: { readonly name: "pi-subagents"; readonly homepage: "https://github.com/nicobailon/pi-subagents"; readonly author: "nicobailon"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "pi install npm:pi-subagents"; readonly packageRef: "npm:pi-subagents"; }; readonly detection: { readonly paths: readonly [{ readonly scope: "user"; readonly path: "~/.pi/agent/agents/"; readonly kind: "dir"; }, { readonly scope: "project"; readonly path: ".pi/agents/"; readonly kind: "dir"; }, { readonly scope: "user"; readonly path: "~/.pi/agent/extensions/subagent/agents/"; readonly kind: "dir"; }]; readonly configKeys: readonly [{ readonly scope: "user"; readonly file: "~/.pi/agent/settings.json"; readonly key: "subagents"; }, { readonly scope: "project"; readonly file: ".pi/settings.json"; readonly key: "subagents"; }]; }; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pi has no built-in subagent system by design, but the third-party pi-subagents plugin adds a subagent extension surface. AXM describes and may detect this plugin, but does not install, resolve, or manage it.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md", "https://github.com/nicobailon/pi-subagents"]; readonly scopes: readonly ["user", "project"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pi extension hooks are in-process TypeScript extension points; this is the core Pi project, not the oh-my-pi fork. AXM models the surface but does not serialize Pi extension hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Pi extension hook writers."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AGENTS.md and CLAUDE.md context load at startup from the global directory (~/.pi/agent), parent directories, and the current directory; all matching files are concatenated.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project trust is documented separately from per-tool grants. The current per-tool permission boundary was not established by this review."; readonly docs: readonly []; readonly sources: readonly ["https://pi.dev/docs/latest/settings"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Pi"; readonly surface: "Pi terminal coding agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md", "https://github.com/earendil-works/pi/blob/main/packages/coding-agent/docs/configuration.md"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Pi 1.0 MCP configuration is implemented from its versioned documentation; native runtime acceptance remains pending.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current terminal product and configuration entry points"; }; readonly lifecycleQualifications: readonly []; }; }; readonly vscode: { readonly id: "vscode"; readonly name: "Visual Studio Code"; readonly vendor: "Microsoft"; readonly homepage: "https://code.visualstudio.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".vscode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MCP configuration"; readonly url: "https://code.visualstudio.com/docs/agents/reference/mcp-configuration"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Local extension host only. Select the absolute user-profile mcp.json path with AXM_VSCODE_USER_MCP_CONFIG. Trust, input prompts, OAuth, policies and remote windows remain host-owned. Native runtime acceptance is pending."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "env-colon"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vscode/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: "mcp.json"; readonly selectedFile: "vscode-user-mcp"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["servers"]; readonly attribution: "agent"; }, { readonly id: "agent-host-project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "VS Code Agent Host is selected; local extension-host configuration alone does not establish this reader."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "agent-host-user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/mcp-config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "VS Code Agent Host is selected with the default Copilot home."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly pochi: { readonly id: "pochi"; readonly name: "Pochi"; readonly vendor: "TabbyML"; readonly homepage: "https://getpochi.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".pochi"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Pochi documentation"; readonly url: "https://docs.getpochi.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project Pochi and shared skill roots and invocation controls"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/mcp/", "https://docs.getpochi.com/tutorials/secure-db-access-in-pochi/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/config.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".pochi/config.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agents are Markdown files in project or home .pochi/agents with YAML frontmatter. Description is required; name defaults to the filename."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".pochi/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Custom agents are Markdown files in project or home .pochi/agents with YAML frontmatter. Description is required; name defaults to the filename."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pochi reads custom-instruction files at the workspace root: README.pochi.md (primary) and AGENTS.md (alternative, treated identically), plus ~/.pochi/README.pochi.md at user scope. AXM manages the universal AGENTS.md."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/rules/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "UI Auto-Approve controls cover reading, writing, execution, MCP use and retry behavior."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/permissions/"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/permissions/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "UI Auto-Approve controls cover reading, writing, execution, MCP use and retry behavior."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Pochi"; readonly surface: "Pochi editor agent and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/", "https://docs.getpochi.com/permissions/", "https://docs.getpochi.com/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook, instructions."]; readonly claimScope: "Custom agent Markdown definitions and UI approvals"; }; readonly lifecycleQualifications: readonly []; }; }; readonly qoder: { readonly id: "qoder"; readonly name: "Qoder"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://qoder.com"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "alibaba"; readonly rootDir: ".qoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Qoder documentation"; readonly url: "https://docs.qoder.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/Skills", "https://docs.qoder.com/cli/Skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.com/cli/Skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Other capability contracts were not revalidated."]; readonly claimScope: "CLI project/user skill discovery and /skills reload"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CLI 1.1.64 expands braced environment references and unset-variable defaults in MCP headers and stdio env values."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/user-guide/chat/model-context-protocol", "https://docs.qoder.com/cli/mcp-servers", "https://unpkg.com/@qoder-ai/qodercli@1.1.64/bundle/qodercli.js"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CLI hooks run command hooks from settings files and use JSON on stdin/stdout. Native Qoder exposes additional events such as SessionEnd, PostToolUseFailure, SubagentStart, Notification, and PermissionRequest; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|compact"; readonly notes: "Qoder matcher values can be exact strings, pipe-separated values, or regex."; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: "task"; readonly notes: "Matcher targets the agent type name."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/command"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder permissions use allow/ask/deny rules in settings. User settings live under ~/.qoder/settings.json; project rules can live in .qoder/settings.json or .qoder/settings.local.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--permission-mode"; readonly note: "Chooses the session permission mode."; }, { readonly flag: "--allowed-tools"; readonly note: "Allows specific tools or tool rules for a run."; }, { readonly flag: "--dangerously-skip-permissions"; readonly note: "Alias for --permission-mode bypass_permissions."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)", "Write(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Qoder"; readonly surface: "Qoder CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.com/cli/Skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI skill discovery and reload behavior"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "qoder-cn": { readonly id: "qoder-cn"; readonly name: "Qoder CN CLI"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://help.aliyun.com/zh/lingma/qoder-cn-cli"; readonly interfaces: readonly ["cli"]; readonly family: "alibaba"; readonly rootDir: ".qoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".qoder"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "qoderclicn"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/.qoder-cn"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Qoder CN CLI documentation"; readonly url: "https://help.aliyun.com/zh/lingma/qoder-cn-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/skills-3033419", "https://help.aliyun.com/zh/lingma/qoder-cn-cli"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI stores user, local-project, and shared-project MCP definitions in distinct settings files."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not verified the Qoder CN CLI dialect independently from global Qoder."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI exposes command hooks, but AXM has not independently verified its complete event and serialization contract."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn-cli"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The regional CLI hook dialect requires a separate vendor-doc verification before AXM writes it."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/using-the-cli"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI supports allow, ask, and deny rules plus session flags."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/tools-3044418"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder-cn/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "Bash(git status)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--allowed-tools"; readonly note: "Pre-allow named tools or tool patterns for the session."; }, { readonly flag: "--disallowed-tools"; readonly note: "Deny named tools or tool patterns for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented regional Qoder permission settings."; }; }; readonly profile: { readonly identity: { readonly product: "Qoder CN CLI"; readonly surface: "Qoder CN CLI; distinct from the legacy Lingma IDE surface"; readonly edition: "Mainland China CLI"; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.cn/en/cli/built-ins"]; readonly conditions: readonly ["The Lingma-to-Qoder CN rename does not make legacy IDE paths interchangeable with the Qoder CN CLI."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current CLI built-in capabilities and product identity"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "qwen-code": { readonly id: "qwen-code"; readonly name: "Qwen Code"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://qwenlm.github.io/qwen-code-docs/"; readonly interfaces: readonly ["cli"]; readonly family: "alibaba"; readonly rootDir: ".qwen"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Qwen Code documentation"; readonly url: "https://qwenlm.github.io/qwen-code-docs/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly conditions: readonly ["Bare mode disables discovery watchers."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and user roots, /learn and AutoSkill scopes"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "httpUrl"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/sub-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code hooks run command hooks from settings files and use JSON on stdin/stdout. Native Qwen Code also exposes HTTP hooks and additional events such as SessionEnd, PostToolUseFailure, SubagentStart, PostCompact, Notification, and PermissionRequest; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "WriteFile|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "WriteFile|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Explorer"; readonly notes: "Matcher targets the subagent type."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "ReadFile"; readonly canonical: "file.read"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WriteFile"; readonly canonical: "file.write"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/shell/"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "manifest"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code loads QWEN.md from the project root and ~/.qwen/QWEN.md, and also reads AGENTS.md when present. AXM targets the universal AGENTS.md convention for project rules."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/memory/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code grades tool access through a Claude Code-style permissions block with allow/ask/deny rule arrays. The legacy tools.allowed and tools.exclude keys are deprecated and migrate into permissions on first load; tools.approvalMode still sets the coarse default mode."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/configuration/settings/", "https://qwenlm.github.io/qwen-code-docs/en/users/features/approval-mode/", "https://qwenlm.github.io/qwen-code-docs/en/developers/tools/shell/", "https://qwenlm.github.io/qwen-code-docs/en/users/features/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm *)"; readonly notes: "Tool(pattern) rules sorted into permissions.allow, permissions.ask, and permissions.deny; deny wins over ask over allow. Approval modes are plan/default/auto-edit/auto/yolo set by tools.approvalMode (Default is surfaced as 'Ask Permissions'; the value stays 'default').\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool} *)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Qwen Code"; readonly surface: "Qwen Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and user skills, learning and reload behavior"; }; readonly lifecycleQualifications: readonly []; }; }; readonly replit: { readonly id: "replit"; readonly name: "Replit"; readonly vendor: "Replit"; readonly homepage: "https://replit.com"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Replit Agent documentation"; readonly url: "https://docs.replit.com/replitai/agent"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project skills are repository files. Team workspace skills are a separate centrally managed Workspace Settings surface, not a local user-home reader."; readonly docs: readonly []; readonly sources: readonly ["https://docs.replit.com/core-concepts/agent/skills", "https://docs.replit.com/features/agent/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.replit.com/features/agent/skills"]; readonly conditions: readonly ["Workspace skills are configured centrally in Workspace Settings."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .agents/skills and workspace-managed skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Replit Agent MCP is UI-driven via the Integrations pane and 'Add to Replit' install-links, connecting only to remote HTTP servers (baseUrl + headers/OAuth). There is no AXM-writable MCP config file, so no writer dialect is modeled."; readonly docs: readonly []; readonly sources: readonly ["https://docs.replit.com/replitai/mcp/overview"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Replit Agent MCP is UI-managed (Integrations pane / install-links) with no AXM-writable config file."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Replit"; readonly surface: "Replit Agent reading project files in its hosted workspace"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.replit.com/features/agent/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and workspace-managed skills"; }; readonly lifecycleQualifications: readonly []; }; }; readonly roo: { readonly id: "roo"; readonly name: "Roo Code"; readonly vendor: "Roo Code"; readonly homepage: "https://roocode.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".roo"; readonly lifecycle: { readonly state: "retired"; readonly since: "2026-05-15"; readonly note: "Roo Code shut down its VS Code extension, Cloud, and Router on 2026-05-15 (final release v3.54.0); the RooCodeInc/Roo-Code repo is archived and read-only. The former team pivoted to a separate cloud-agent product, Roomote."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Roo Code documentation"; readonly url: "https://docs.roocode.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Roo Code supports Roo-specific .roo/skills and cross-agent .agents/skills locations, including mode-specific skill directories."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".roo/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://roocodeinc.github.io/Roo-Code/features/mcp/using-mcp-in-roo"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The current AXM Roo Code service returns MCP add/remove as unsupported."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".roomodes"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "This review did not establish whether Roo Code provided native hooks; its recorded product retirement does not establish feature absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella; Roo also loads AGENTS.md when agent rules are enabled."; readonly docs: readonly []; readonly sources: readonly ["https://roocodeinc.github.io/Roo-Code/features/custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".roo/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Roo Code exposes auto-approval controls through the extension settings UI, including read, write, command, MCP, browser, and mode-switch approvals. The docs do not describe a stable AXM-writable permission config file for these controls."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/auto-approving-actions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly [{ readonly key: "Auto-Approve Settings"; readonly value: "enabled per operation"; readonly scope: "user"; readonly note: "Configure in Roo Code's Auto-Approve Settings panel."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Roo Code permission grant writing."; }; }; readonly profile: { readonly identity: { readonly product: "Roo Code"; readonly surface: "Retired Roo Code product; Roomote is a separate product"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://roomote.dev/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "The existing Roo retirement date was not independently reverified. The former homepage redirects to Roomote, which says it is built by Roo Code creators and currently uses OpenCode; this is not evidence that Roo Code resumed.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current former homepage destination and distinct successor-team product"; }; readonly lifecycleQualifications: readonly []; }; }; readonly rovodev: { readonly id: "rovodev"; readonly name: "Rovo Dev"; readonly vendor: "Atlassian"; readonly homepage: "https://www.atlassian.com/software/rovo-dev"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".rovodev"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".rovodev"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.rovodev"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Rovo Dev CLI skills"; readonly url: "https://support.atlassian.com/rovo/docs/extend-rovo-dev-cli-with-agent-skills/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev also reads universal .agents/skills in both project and user scopes.\n"; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/extend-rovo-dev-cli-with-agent-skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev supports local and remote MCP server configuration."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/connect-to-an-mcp-server-in-rovo-dev-cli/", "https://support.atlassian.com/bitbucket-cloud/docs/rovo-dev-advanced-agentic-configuration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/subagents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".rovodev/subagents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .rovodev/subagents Markdown files"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev exposes event hooks including tool-permission, response-finished, and error events; the public surface is recorded without an AXM serializer model."; readonly docs: readonly []; readonly sources: readonly ["https://www.atlassian.com/blog/developer/streamline-rovo-dev-cli-with-event-hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev reads hierarchical AGENTS.md memory files."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-memory-in-rovo-dev-cli/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev toolPermissions rules select allow, ask, or deny behavior by tool call."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/manage-rovo-dev-cli-settings/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".rovodev/config.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/config.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git status)"; readonly notes: "Rules choose allow, ask, or deny, with a configurable default."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Rovo Dev"; readonly surface: "Rovo Dev CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Project and user subagent Markdown definitions"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "tabnine-cli": { readonly id: "tabnine-cli"; readonly name: "Tabnine CLI"; readonly vendor: "Tabnine"; readonly homepage: "https://www.tabnine.com/platform-cli/"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".tabnine"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".tabnine"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.tabnine"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Tabnine CLI"; readonly url: "https://www.tabnine.com/platform-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Native and universal roots in both scopes; workspace alias has highest priority"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine MCP servers are configured in .tabnine/mcp_servers.json and ~/.tabnine/mcp_servers.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-agent/mcp-intro-and-setup"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine hooks execute synchronously from layered agent settings and can observe, block, or modify selected lifecycle operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeAgent"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterAgent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeTool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "shell,read,write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterTool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "shell,read,write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompress"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine reads guidelines.md files under .tabnine/guidelines and can override the context filename through settings."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-agent/guidelines"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "guidelines.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/guidelines"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine settings define allowed and excluded tools plus persistent-approval and policy-path controls."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/settings/settings-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "tools.allowed: [\"shell\"]"; readonly notes: "Allowed and excluded tool lists combine with security and policy-path settings."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Tabnine CLI"; readonly surface: "Tabnine CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Native and shared skill roots and management commands"; }; readonly lifecycleQualifications: readonly []; }; }; readonly "trae-cn": { readonly id: "trae-cn"; readonly name: "Trae CN"; readonly vendor: "ByteDance"; readonly homepage: "https://www.trae.cn"; readonly interfaces: readonly ["ide-extension"]; readonly family: "bytedance"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Trae CN documentation"; readonly url: "https://docs.trae.cn"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide/skills"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide_add-mcp-servers"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".trae/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide/rules"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Trae CN"; readonly surface: "TRAE CN IDE; TraeWork is a separate reviewed surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.trae.cn/work_skills"]; readonly conditions: readonly ["TraeWork documentation describes .trae/skills locally and ~/.trae-cn/skills globally plus uploads; it does not establish the existing IDE reader contract."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "TraeWork skill discovery; IDE capability details remain unreviewed"; }; readonly lifecycleQualifications: readonly []; }; }; readonly trae: { readonly id: "trae"; readonly name: "Trae"; readonly vendor: "ByteDance"; readonly homepage: "https://www.trae.ai"; readonly interfaces: readonly ["ide-extension"]; readonly family: "bytedance"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Trae documentation"; readonly url: "https://docs.trae.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.trae.ai/blog/trae_tutorial_0115"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.ai/ide/model-context-protocol"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".trae/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Trae combines global user rules with project and nested .trae/rules directories for module-specific instructions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.ai/ide/rules"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Trae"; readonly surface: "TRAE IDE"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.trae.ai/ide/rules"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "The official rules page returned no usable content. Existing positive capabilities and paths have not been freshly verified.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Official documentation entry point; content could not establish current mechanics"; }; readonly lifecycleQualifications: readonly []; }; }; readonly warp: { readonly id: "warp"; readonly name: "Warp"; readonly vendor: "Warp"; readonly homepage: "https://www.warp.dev"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Warp"; readonly surface: "Desktop and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.warp.dev/blog/introducing-the-warp-agent-cli-coding-agent"]; readonly conditions: readonly []; readonly limitations: readonly ["Standalone CLI/product surface reviewed. Orchestration does not establish a file-based custom-subagent definition.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.warp"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Warp documentation"; readonly url: "https://docs.warp.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp stores project MCP servers in .warp/.mcp.json and user servers in ~/.warp/.mcp.json under mcpServers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "sse", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp discovers hierarchical AGENTS.md project rules and exposes user-level rules through Warp Drive."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/rules/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp Agent Profiles configure autonomy per action and regular-expression command allowlists and denylists; deny rules take precedence."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/agent-profiles-permissions/"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: { readonly style: "regex"; readonly example: "ls(\\s.*)?"; readonly notes: "Command allowlist and denylist entries are regular expressions configured in Settings."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly windsurf: { readonly id: "windsurf"; readonly name: "Devin Desktop (Windsurf)"; readonly vendor: "Cognition"; readonly homepage: "https://devin.ai/desktop"; readonly interfaces: readonly ["ide-extension"]; readonly family: "cognition"; readonly profile: { readonly identity: { readonly product: "Devin Desktop"; readonly surface: "Desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.devin.ai/desktop/changelog", "https://docs.devin.ai/desktop/devin-local"]; readonly conditions: readonly []; readonly limitations: readonly ["Cascade removal and Devin Local reviewed. Stable catalog ID is retained; legacy Cascade capability paths are not automatically Devin Local paths.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".windsurf"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Devin Desktop documentation"; readonly url: "https://docs.devin.ai/desktop"; }, { readonly label: "Windsurf is now Devin Desktop"; readonly url: "https://devin.ai/blog/windsurf-is-now-devin-desktop"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin Desktop reads SKILL.md skills from .windsurf/skills (project) and ~/.codeium/windsurf/skills (user) with progressive disclosure. It also discovers universal .agents/skills paths. The built-in Cascade agent reached end-of-life 2026-07-01 and is being replaced by Devin Local; the .windsurf/* and ~/.codeium/windsurf/* config surfaces persist under Devin Local.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".windsurf/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "serverUrl"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The reviewed desktop instruction documentation does not establish a reusable custom-subagent target. This is not evidence that the current product lacks subagents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/agents-md"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin Desktop/Cascade hooks are direct per-event command arrays in hooks.json. AXM's generic hook writer emits grouped command-stdin hooks and cannot serialize this shape yet."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".windsurf/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "pre_read_code"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_read_code"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_write_code"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_write_code"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_run_command"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_run_command"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_mcp_tool_use"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_mcp_tool_use"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_user_prompt"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_cascade_response"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_cascade_response_with_transcript"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read_code"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write_code"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "run_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "mcp_tool_use"; readonly canonical: "mcp.call"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Devin Desktop/Cascade hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/agents-md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".devin/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/terminal", "https://docs.devin.ai/desktop/cascade"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: { readonly style: "prefix"; readonly example: "axm"; readonly notes: "windsurf.cascadeCommandsAllowList is prefix-matched. Workspace-scoped override for these keys is not documented; configure at user scope. Teams/Enterprise can merge in lists via the Admin Portal.\n"; }; readonly prerequisites: readonly [{ readonly key: "Cascade auto-execution level"; readonly value: "allowlist_only | turbo"; readonly scope: "user"; readonly note: "Disabled and Auto modes ignore allowlist entries; set via the Windsurf Settings panel."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "settings-ui"; }; readonly patch: { readonly "windsurf.cascadeCommandsAllowList": readonly ["${tool}"]; }; readonly template: null; }; }; }; }; }; }; readonly zencoder: { readonly id: "zencoder"; readonly name: "Zencoder"; readonly vendor: "Zencoder"; readonly homepage: "https://zencoder.ai"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".zencoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Zencoder documentation"; readonly url: "https://docs.zencoder.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills are discovered from project and user .agents/skills and project .claude/skills. Legacy .zencoder/skills remains readable but is deprecated; the agent selects skills automatically."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt", "https://docs.zencoder.ai/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical shared skill roots and deprecated vendor directory"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM cannot yet model the dotted zencoder.mcpServers VS Code settings key, and the previous standalone .zencoder/mcp.json target was not vendor-documented."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zencoder documents named AI agents configured and shared through its UI. This alone does not establish autonomous subagent delegation or a portable subagent directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no delivery path for Zencoder's UI-managed custom agents."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zencoder added MCP tool permission prompts in April 2026. The docs describe user-visible MCP permission control, not a stable AXM-writable permission file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Zencoder permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Zencoder"; readonly surface: "Zencoder IDE Agents"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Skill discovery and UI-managed agent distinction"; }; readonly lifecycleQualifications: readonly []; }; }; readonly zed: { readonly id: "zed"; readonly name: "Zed"; readonly vendor: "Zed Industries"; readonly homepage: "https://zed.dev"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".zed"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".zed"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.config/zed"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Zed Agent documentation"; readonly url: "https://zed.dev/docs/ai/zed-agent"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Because Zed's project Skill directory is .agents/skills, --agent universal already wrote to the correct location; this entry adds Zed-specific detection and naming."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly conditions: readonly ["Project skills require a trusted worktree.", "Skills apply to Zed Agent, not automatically to external agents or terminal threads."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Only direct child skill folders are discovered."]; readonly claimScope: "Built-in Zed Agent skill roots and trust boundary"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zed configures context servers in settings; AXM has not modeled the Zed settings dialect."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Zed settings writer for context servers."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/instructions"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zed exposes tool permissions through agent settings and prompts; AXM does not model that settings surface."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/tool-permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Zed tool-permission settings."; }; }; readonly profile: { readonly identity: { readonly product: "Zed"; readonly surface: "Zed built-in Agent; external agents are separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Skill scopes, trust conditions and invocation"; }; readonly lifecycleQualifications: readonly []; }; }; readonly zenflow: { readonly id: "zenflow"; readonly name: "Zenflow"; readonly vendor: "Zencoder"; readonly homepage: "https://zencoder.ai/zenflow"; readonly interfaces: readonly ["desktop"]; readonly family: null; readonly rootDir: ".zenflow"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".zenflow"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Zenflow documentation"; readonly url: "https://docs.zencoder.ai/zenflow/task-types"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills are discovered from project and user .agents/skills and project .claude/skills. Legacy .zencoder/skills remains readable but is deprecated; the agent selects skills automatically."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical shared skill roots and deprecated vendor directory"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zenflow supports custom MCP integrations. The reviewed overview does not establish transport or filesystem configuration mechanics."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/integrations"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/integrations"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Transport, scope and client configuration details remain unmodeled."]; readonly claimScope: "Native MCP availability"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ZenCLI can invoke subprocess subagents with distinct contexts, models, tools and runtimes. Presets and pipelines configure orchestration without a portable agent directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "ZenCLI can invoke subprocess subagents with distinct contexts, models, tools and runtimes. Presets and pipelines configure orchestration without a portable agent directory."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zenflow runs supported underlying agents in worktrees; instruction-file behavior belongs to the selected agent rather than a Zenflow-specific rule format. Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/clis/overview"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Saved agent presets select the coding runtime, model and permission mode, including execution and tool access."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Saved agent presets select the coding runtime, model and permission mode, including execution and tool access."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Zenflow"; readonly surface: "Zenflow orchestration and ZenCLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents", "https://docs.zencoder.ai/features/skills", "https://docs.zencoder.ai/zenflow/integrations", "https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: hook, instructions."]; readonly claimScope: "Native subprocess delegation, MCP integrations and shared skills"; }; readonly lifecycleQualifications: readonly []; }; }; }; /** @experimental This API is unstable and may change without notice. */ export declare const AGENTS: ({ readonly id: "adal"; readonly name: "AdaL"; readonly vendor: "SylphAI"; readonly homepage: "https://adalagent.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".adal"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "AdaL documentation"; readonly url: "https://docs.sylph.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/plugins-and-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".adal/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL manages MCP servers through the /mcp CLI flow and stores OAuth tokens under ~/.adal/mcp-auth; the docs describe add/remove/test actions rather than a stable editable config file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/mcp-support-proposed", "https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing file dialect and environment expansion were not revalidated."]; readonly claimScope: "CLI-managed MCP connections and supported local/remote transports"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an AdaL MCP writer for the CLI-managed MCP store."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL supports command-only PreToolUse, PostToolUse, PostToolUseFailure, UserPromptSubmit, PermissionRequest and Stop hooks in user settings. Project and plugin hook scopes are not supported."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".adal/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "user"; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly attribution: "agent"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "AdaL supports command-only PreToolUse, PostToolUse, PostToolUseFailure, UserPromptSubmit, PermissionRequest and Stop hooks in user settings. Project and plugin hook scopes are not supported."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/getting-started/workflows-and-examples"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AdaL exposes /permissions to configure approval behavior, but the public docs do not document a stable settings file shape for AXM to patch."; readonly docs: readonly []; readonly sources: readonly ["https://docs.sylph.ai/features/slash-commands"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an AdaL permission writer for the interactive /permissions surface."; }; }; readonly profile: { readonly identity: { readonly product: "AdaL"; readonly surface: "AdaL CLI and editor integration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.sylph.ai/customize/lifecycle-hooks/", "https://docs.sylph.ai/features/mcp-support-proposed/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, subagent, instructions, permissions."]; readonly claimScope: "User-scoped command lifecycle hooks"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "aider-desk"; readonly name: "AiderDesk"; readonly vendor: "HOTOVO"; readonly homepage: "https://github.com/hotovo/aider-desk"; readonly interfaces: readonly ["desktop"]; readonly family: null; readonly rootDir: ".aider-desk"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".aider-desk"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.aider-desk"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "AiderDesk repository"; readonly url: "https://github.com/hotovo/aider-desk"; }, { readonly label: "AiderDesk documentation"; readonly url: "https://aiderdesk.hotovo.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/features/skills", "https://github.com/hotovo/aider-desk/issues/568", "https://aiderdesk.hotovo.com/docs/agent-mode/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".aider-desk/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".aider-desk/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/skills"]; readonly conditions: readonly ["The selected agent profile must enable Use Skills Tools."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home skills; Skills Tools must be enabled"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk is a native MCP client: it connects to external standard MCP servers and exposes their tools to the agent, registering only the servers listed in a profile's enabledServers. MCP client configuration lives under the .aider-desk config, but the exact config file path, servers key, and per-transport dialect are not documented, so no AXM writer is modeled. AiderDesk can additionally act as an MCP server via @aiderdesk/mcp-server (the inverse direction)."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/hotovo/aider-desk"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AiderDesk's MCP client config dialect (exact file path, servers key, and transport-specific shape under .aider-desk) is not documented, so AXM has no MCP writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk agent profiles can be enabled as subagents through Settings > Agent. They have isolated context, tool approvals and automatic or on-demand invocation."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "AiderDesk agent profiles can be enabled as subagents through Settings > Agent. They have isolated context, tool approvals and automatic or on-demand invocation."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AiderDesk has a native lifecycle hook / Extension System with 30+ events (onTaskCreated, onPromptFinished, onToolCalled, onFileAdded, ...) that can observe, modify, or block operations. Hooks are in-process JS/TS callbacks under .aider-desk/hooks/ (project) and ~/.aider-desk/hooks/ (user), with a newer Extension System under .aider-desk/extensions/. The native event names are not canonically mappable and there is no command-stdin dialect for AXM to serialize."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/hotovo/aider-desk"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AiderDesk hooks are in-process JS/TS callbacks with no command-stdin serialization dialect, and its 30+ native events are not canonically mapped, so AXM has no hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The /init command creates an AGENTS.md project rule file."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/core/commands"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/core/commands"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Global rule locations and nested instruction discovery were not established."]; readonly claimScope: "The /init command creates an AGENTS.md project rule file."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Agent profiles configure tool groups and per-tool Ask, Always or Never approval policies."; readonly docs: readonly []; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Agent profiles configure tool groups and per-tool Ask, Always or Never approval policies."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly profile: { readonly identity: { readonly product: "AiderDesk"; readonly surface: "AiderDesk desktop Agent mode"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://aiderdesk.hotovo.com/docs/agent-mode/subagents", "https://aiderdesk.hotovo.com/docs/agent-mode/skills", "https://aiderdesk.hotovo.com/docs/core/commands"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook."]; readonly claimScope: "UI-managed subagent profiles and per-tool approvals"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "amp"; readonly name: "Amp"; readonly vendor: "Sourcegraph"; readonly homepage: "https://ampcode.com"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "sourcegraph"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Amp Owner's Manual"; readonly url: "https://ampcode.com/manual"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#agent-skills", "https://ampcode.com/docs/customize/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Claude skill discovery must be enabled."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Claude skill discovery must be enabled."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Documented skill roots, compatibility discovery and optional hosted skill repositories"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp declares always-available MCP servers under the flat amp.mcpServers settings key in ~/.config/amp/settings.json (user) or .amp/settings.json (workspace, which requires explicit approval), and skill-scoped MCP servers through mcp.json inside a skill directory."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#MCP", "https://ampcode.com/manual#configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Amp's native configuration locations and server entry dialect have not been verified in the catalog; an AXM writer requires those declarations."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Amp plugin API"; readonly homepage: "https://ampcode.com/manual"; readonly author: "Amp"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Save a plugin under .amp/plugins and reload plugins."; readonly packageRef: null; }; readonly detection: { readonly paths: readonly [{ readonly scope: "project"; readonly path: ".amp/plugins"; readonly kind: "dir"; }, { readonly scope: "user"; readonly path: "~/.config/amp/plugins"; readonly kind: "dir"; }]; readonly configKeys: readonly []; }; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp has built-in automatic subagents and first-party plugin APIs for custom subagent-like tools, but no documented Markdown subagent directory that AXM can materialize."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#subagents", "https://ampcode.com/manual#plugins"]; readonly scopes: readonly ["user", "project"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Amp plugin/subagent materialization."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp plugins can handle tool-call, tool-result, and agent lifecycle events. AXM models the in-process plugin surface but does not serialize Amp plugins or amp.hooks actions yet."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual", "https://ampcode.com/manual/plugin-api"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Amp plugin or declarative-action hook writers."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/manual#agentsmd", "https://ampcode.com/docs/customize/agents-md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/AGENTS.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/agents-md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Hosted workspace guidance does not apply to every custom or built-in subagent."]; readonly claimScope: "AGENTS.md search and personal/workspace guidance"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Amp permission rules use the amp.permissions and amp.mcpPermissions settings. Enterprise administrators can enforce the same schema through platform-specific managed-settings.json files."; readonly docs: readonly []; readonly sources: readonly ["https://ampcode.com/news/tool-level-permissions", "https://ampcode.com/news/mcp-permissions", "https://ampcode.com/news/enterprise-managed-settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/amp/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".amp/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "{\"tool\":\"Bash\",\"matches\":{\"cmd\":\"*git commit*\"},\"action\":\"ask\"}"; readonly notes: "amp.permissions rules select a tool, optionally glob-match tool arguments, and apply allow, reject, ask, or delegate."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Amp"; readonly surface: "Amp CLI and editor integration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ampcode.com/docs/customize/skills", "https://ampcode.com/docs/customize/agents-md"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, permissions."]; readonly claimScope: "Skill discovery and global guidance"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "antigravity"; readonly name: "Antigravity"; readonly vendor: "Google"; readonly homepage: "https://antigravity.google"; readonly interfaces: readonly ["ide-extension"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Antigravity"; readonly surface: "Desktop/IDE"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/", "https://antigravity.google/docs/changelog/"]; readonly conditions: readonly []; readonly limitations: readonly ["Custom subagent discovery reviewed for Antigravity 2.0. The shared CLI harness does not make all legacy IDE settings equivalent.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".agents"; readonly signal: "supporting"; readonly note: null; }, { readonly kind: "dir"; readonly path: ".agent"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini/antigravity-cli"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Antigravity documentation"; readonly url: "https://antigravity.google/docs"; }, { readonly label: "Antigravity CLI overview"; readonly url: "https://antigravity.google/docs/cli-overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity 2.0 defaults to .agents/skills (project) and ~/.gemini/config/skills (user); .agent/skills remains supported for backward compatibility.\n"; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agent/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity stores global MCP servers in ~/.gemini/config/mcp_config.json and workspace MCP servers in .agents/mcp_config.json. Remote MCP definitions use serverUrl, and disabled is an optional per-server switch."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/mcp", "https://antigravity.google/docs/cli/plugins"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".agents/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly implicitTransport: "http-or-sse"; readonly urlKey: { readonly "streamable-http": "serverUrl"; readonly sse: "serverUrl"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Markdown subagents are read by Antigravity 2.0 and the CLI. Authors supply native frontmatter; AXM preserves it and applies explicit agent overrides without translating tool names or changing execution-policy defaults."; readonly docs: readonly [{ readonly label: "Custom subagents"; readonly url: "https://antigravity.google/docs/subagents/"; }]; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly conditions: readonly ["Use Antigravity 2.0 or the Antigravity CLI with native name and description frontmatter; tool names, model, skills, plugins, and execution-policy settings must match the target harness."]; readonly limitations: readonly ["Vendor execution of the generated subagent was not tested.", "AXM workspace setup currently supports project-scope Subagents; isolated user-scope adapter projection is checked but user-scope workspace installation remains unavailable."]; readonly claimScope: "Custom-subagent file discovery and native frontmatter contract."; }; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Checks cover project and isolated user-scope file projection, shared ownership metadata, repetition, removal, and preservation of unowned files. They do not execute Antigravity."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity documents command hooks in hooks.json for the current Antigravity execution loop. This supersedes earlier research that found hooks only in SDK/plugin surfaces. Each hooks.json entry is namespaced by a hook name that carries its own enabled flag, and event groups nest under that name rather than under a single top-level hooks key."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/hooks", "https://antigravity.google/docs/cli/plugins"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".agents/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "browser_.*"; readonly notes: "Matches on tool name; * selects every tool."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "run_command"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreInvocation"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostInvocation"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "run_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Antigravity namespaces each hook bundle under its own top-level name in hooks.json; AXM's writer targets a single settings key and cannot express that nesting."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/rules-workflows"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Antigravity CLI exposes fine-grained allow/ask/deny permissions in settings, with resources such as command(...), read_file(...), write_file(...), read_url(...), execute_url(...), and mcp(...)."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/cli-permissions", "https://antigravity.google/docs/cli-reference"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/antigravity-cli/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "command(axm)"; readonly notes: "Conflicting rules are evaluated Deny > Ask > Allow."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["command(${tool})"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["read_file(${workspaceRoot})", "write_file(${workspaceRoot})"]; }; }; readonly template: null; }; }; }; }; }; } | { readonly id: "antigravity-cli"; readonly name: "Antigravity CLI"; readonly vendor: "Google"; readonly homepage: "https://antigravity.google/product/antigravity-cli"; readonly interfaces: readonly ["cli"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Antigravity"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/", "https://antigravity.google/docs/cli/overview/"]; readonly conditions: readonly []; readonly limitations: readonly ["Custom subagents and CLI surface reviewed; other native mechanics retain their separate evidence.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".agents"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini/antigravity-cli"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Antigravity CLI documentation"; readonly url: "https://antigravity.google/docs/cli-overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Because the CLI's project Skill directory is .agents/skills, --agent universal already wrote to the correct location; this entry adds CLI-specific detection and naming."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agent/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The Antigravity CLI shares product configuration with the desktop surface; AXM avoids a second writer until shared-target ownership is explicit."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Markdown subagents are read by Antigravity 2.0 and the CLI. Authors supply native frontmatter; AXM preserves it and applies explicit agent overrides without translating tool names or changing execution-policy defaults."; readonly docs: readonly [{ readonly label: "Custom subagents"; readonly url: "https://antigravity.google/docs/subagents/"; }]; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://antigravity.google/docs/subagents/"]; readonly conditions: readonly ["Use Antigravity 2.0 or the Antigravity CLI with native name and description frontmatter; tool names, model, skills, plugins, and execution-policy settings must match the target harness."]; readonly limitations: readonly ["Vendor execution of the generated subagent was not tested.", "AXM workspace setup currently supports project-scope Subagents; isolated user-scope adapter projection is checked but user-scope workspace installation remains unavailable."]; readonly claimScope: "Custom-subagent file discovery and native frontmatter contract."; }; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/config/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Checks cover project and isolated user-scope file projection, shared ownership metadata, repetition, removal, and preservation of unowned files. They do not execute Antigravity."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI reads command hooks from the workspace or global customization directory."; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Antigravity's named hook bundles require a serializer AXM does not implement."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/rules-workflows"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://antigravity.google/docs/cli-permissions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/antigravity-cli/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "command(axm)"; readonly notes: "Conflicting rules are evaluated Deny > Ask > Allow."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not yet implement Antigravity CLI permission-rule patches."; }; }; } | { readonly id: "augment"; readonly name: "Augment"; readonly vendor: "Augment Code"; readonly homepage: "https://www.augmentcode.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".augment"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Augment documentation"; readonly url: "https://docs.augmentcode.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie loads skills from .augment/skills, .claude/skills, and .agents/skills at both user and workspace scope. AXM writes the native Augment project directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".augment/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".augment/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Auggie CLI skill roots and precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie persists MCP server configuration in ~/.augment/settings.json. The CLI also supports per-run --mcp-config overrides that are not represented by AXM writers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/integrations"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".augment/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".augment/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/subagents"]; readonly conditions: readonly ["Custom subagents documented here are CLI-only."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "CLI custom agent Markdown files and scopes"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie hooks run command hooks from settings files and use JSON on stdin/stdout. Native Auggie also exposes SessionEnd and Notification, plus metadata options not represented in AXM's portable hook manifest."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "terminal"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "web-fetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://docs.augmentcode.com/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Auggie CLI evaluates toolPermissions top-to-bottom with first match winning. Tool permissions are CLI-only and live in ~/.augment/settings.json (user scope) or a repo-committed .augment/settings.json (project scope)."; readonly docs: readonly []; readonly sources: readonly ["https://docs.augmentcode.com/cli/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".augment/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "^axm(\\s|$)"; readonly notes: "Rules contain toolName plus permission.type allow/deny/ask-user; shell commands can be constrained with shellInputRegex."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly toolPermissions: readonly [{ readonly toolName: "terminal"; readonly shellInputRegex: "^${tool}(\\s|$)"; readonly permission: { readonly type: "allow"; }; }]; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly toolPermissions: readonly [{ readonly toolName: "read"; readonly permission: { readonly type: "allow"; }; }, { readonly toolName: "edit"; readonly permission: { readonly type: "allow"; }; }, { readonly toolName: "write"; readonly permission: { readonly type: "allow"; }; }]; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Augment"; readonly surface: "Auggie CLI; editor capabilities are separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.augmentcode.com/cli/skills", "https://docs.augmentcode.com/cli/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook, instructions, permissions."]; readonly claimScope: "CLI skill discovery and custom subagents"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "chatgpt"; readonly name: "ChatGPT"; readonly vendor: "OpenAI"; readonly homepage: "https://chatgpt.com"; readonly interfaces: readonly ["chat", "hosted-agent"]; readonly family: "openai"; readonly profile: { readonly identity: { readonly product: "ChatGPT"; readonly surface: "Hosted chat and workspace"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly claimScope: "Standalone skills versus hosted workspace and plugin delivery"; readonly conditions: readonly ["Workspace plan and administrator controls apply."]; readonly limitations: readonly ["The standalone filesystem skill path is represented by the Codex target. No upload or hosted runtime was exercised."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload"]; readonly artifact: "directory"; readonly instructions: "Validate the skill with axm lint. Use ChatGPT workspace skill administration for an eligible workspace, or package it in a ChatGPT plugin for web/mobile distribution; AXM does not upload or publish it."; readonly docs: "https://learn.chatgpt.com/docs/enterprise/skills"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Skills in ChatGPT"; readonly url: "https://help.openai.com/en/articles/20001066-skills-in-chatgpt"; }, { readonly label: "Developer mode and MCP apps in ChatGPT"; readonly url: "https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Standalone skills are documented for desktop, Codex CLI and IDE; web/mobile reuse skills through plugins. Workspace-managed skills have separate availability and administrator controls."; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/build-skills", "https://learn.chatgpt.com/docs/enterprise/skills"]; readonly claimScope: "Delivery surface distinction"; readonly conditions: readonly ["Hosted distribution depends on workspace administration or plugin packaging."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ChatGPT developer mode accepts remote MCP servers for custom apps; plan, role, and administrator controls apply."; readonly docs: readonly []; readonly sources: readonly ["https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "ChatGPT connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ChatGPT app action permissions and confirmations are managed in the hosted UI."; readonly docs: readonly []; readonly sources: readonly ["https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt-beta"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; } | { readonly id: "claude-ai"; readonly name: "Claude.ai"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.ai"; readonly interfaces: readonly ["chat"]; readonly family: "claude"; readonly profile: { readonly identity: { readonly product: "Claude"; readonly surface: "Hosted chat"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-using-skills-in-claude"]; readonly conditions: readonly []; readonly limitations: readonly ["Hosted skill discovery and upload require account availability; local Claude Code configuration does not establish hosted support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload", "directory"]; readonly artifact: "zip"; readonly instructions: "Run axm lint to validate the skill, package its folder as a ZIP, then use Customize > Skills > Create skill > Upload a skill in Claude."; readonly docs: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Use skills in Claude"; readonly url: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }, { readonly label: "Remote MCP custom connectors"; readonly url: "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude accepts custom skill folders packaged as ZIP files. Account, organization, and code-execution controls apply; enabled skills are shared with Cowork."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-use-skills-in-claude"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude accepts publicly reachable remote MCP servers as custom connectors."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Claude connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "none"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Plugin subagents run in Cowork, not in Claude chat."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly claimScope: "Plugin hooks and subagents do not execute in Claude chat; Cowork and Claude Code are separate surfaces."; readonly conditions: readonly ["Scoped to chat, not the complete Claude product family."]; readonly limitations: readonly ["Documentation review only."]; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "none"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Plugin hooks run in Cowork, not in Claude chat."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly claimScope: "Plugin hooks and subagents do not execute in Claude chat; Cowork and Claude Code are separate surfaces."; readonly conditions: readonly ["Scoped to chat, not the complete Claude product family."]; readonly limitations: readonly ["Documentation review only."]; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; } | { readonly id: "claude-code"; readonly name: "Claude Code"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.com/product/claude-code"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "anthropic"; readonly profile: { readonly identity: { readonly product: "Claude Code"; readonly surface: "Terminal, IDE, desktop and cloud"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly conditions: readonly []; readonly limitations: readonly ["Hook mechanisms reviewed across documented surfaces. AXM currently writes command handlers; other handlers do not inherit AXM support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".claude"; readonly targeting: { readonly extends: null; readonly capabilities: { readonly "structured-input": { readonly grades: readonly ["native"]; readonly nouns: { readonly "tool:structured-input": "AskUserQuestion"; }; readonly affordances: { readonly "do:ask-structured": "Use the AskUserQuestion tool to collect structured input, then STOP and wait for the response."; }; }; }; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.claude"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "claude"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Claude Code documentation"; readonly url: "https://code.claude.com/docs/en/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly configRootRelativePath: "skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude.json"; readonly configRootRelativePath: ".claude.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/sub-agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/agents"; readonly configRootRelativePath: "agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Managed hooks merge into the Claude Code settings hooks block and execute materialized AXM package entrypoints. Claude Code exposes additional native events such as Notification, SessionEnd, CwdChanged, FileChanged, and WorktreeCreate; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/hooks", "https://code.claude.com/docs/en/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin", "http", "prompt", "agent", "mcp"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "settings.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WebFetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://code.claude.com/docs/en/hooks"]; readonly claimScope: "Native hook invocation families"; readonly conditions: readonly []; readonly limitations: readonly ["Agent hooks are also documented. AXM projects command handlers only; other native handlers are descriptive."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project", "project-additional-1"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads CLAUDE.md, not the AGENTS.md spec filename."; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "CLAUDE.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/CLAUDE.md"; readonly configRootRelativePath: "CLAUDE.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://code.claude.com/docs/en/memory", "https://code.claude.com/docs/en/claude-directory"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://code.claude.com/docs/en/permissions", "https://code.claude.com/docs/en/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly configRootRelativePath: "settings.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".claude/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: "Tool(specifier) with * wildcards. Evaluated deny > ask > allow (first match wins). Settings merge across scopes rather than override.\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Write(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; } | { readonly id: "cline"; readonly name: "Cline"; readonly vendor: "Cline"; readonly homepage: "https://cline.bot"; readonly interfaces: readonly ["cli", "ide-extension", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Cline"; readonly surface: "CLI, IDE and desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://cline.bot/blog/cline-desktop-an-open-source-app-for-open-weight-models", "https://cline.bot/blog/how-we-migrated-11-million-users-to-clines-biggest-harness-upgrade"]; readonly conditions: readonly []; readonly limitations: readonly ["Desktop and harness migration reviewed; parallel sessions do not establish a custom subagent definition format.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".cline"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Cline documentation"; readonly url: "https://docs.cline.bot"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cline/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".clinerules/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline supports MCP in both the extension and CLI. The CLI MCP config is ~/.cline/mcp.json; extension config is exposed through the MCP settings UI. Entries use the community-standard mcpServers shape with a streamableHttp remote discriminator plus Cline-specific disabled and autoApprove fields."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/mcp/mcp-overview"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cline/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "streamableHttp"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "streamableHttp"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline stores executable hooks under ~/Documents/Cline/Hooks and .clinerules/hooks. The native script-directory shape is not compatible with AXM's grouped JSON command-hook writer."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Cline hook script directory writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/customization/cline-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".clinerules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cline exposes auto-approve controls in the extension/CLI UI and toolPolicies in the SDK. The public docs do not define a stable AXM-writable project permission grant file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.cline.bot/cline-cli/interactive-mode", "https://docs.cline.bot/sdk/guides/permission-handling"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Cline permission grant writer."; }; }; } | { readonly id: "codearts-agent"; readonly name: "CodeArts Agent"; readonly vendor: "Huawei Cloud"; readonly homepage: "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0001.html"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".codeartsdoer"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".codeartsdoer"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codeartsdoer"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "CodeArts Agent CLI documentation"; readonly url: "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0001.html"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .codeartsdoer/skills and home .codeartsdoer/skills; project names override user names"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent stores local and remote MCP servers under the mcp key in its shared JSON or JSONC configuration."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0017.html", "https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0028.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/codearts_cli.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/codearts_cli.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; readonly command: "array"; readonly envKey: "environment"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; readonly sse: "remote"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; readonly sse: "remote"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent discovers Markdown agent definitions with YAML frontmatter and supports primary and subagent modes."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-codeartssnap/codeartsagent_ug_0051.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codeartsdoer/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent hooks are JavaScript or TypeScript plugin callbacks rather than declarative command hooks that AXM can serialize."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0018.html"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not serialize CodeArts Agent JavaScript or TypeScript plugins."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent uses AGENTS.md for project instructions and can generate it with /init."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0014.html"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeArts Agent stores ordered allow, ask, and deny-style rules in a user-level JSON permission file."; readonly docs: readonly []; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0006.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeartsdoer/cli-data/storage/permission/global.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "{\"permission\":\"bash\",\"pattern\":\"axm *\",\"action\":\"allow\"}"; readonly notes: "Each array entry selects a permission name and wildcard pattern, then applies an allow, ask, or deny action."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a CodeArts Agent permission-list writer."; }; }; readonly profile: { readonly identity: { readonly product: "CodeArts Agent"; readonly surface: "CodeArts coding CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.huaweicloud.com/usermanual-cli/codeartsagent_cli_0019.html"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI SKILL.md discovery paths"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "codebuddy"; readonly name: "CodeBuddy"; readonly vendor: "Tencent Cloud"; readonly homepage: "https://www.codebuddy.ai/docs"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".codebuddy"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "CodeBuddy documentation"; readonly url: "https://www.codebuddy.ai/docs/ide/Introduction"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/ide/Introduction", "https://www.codebuddy.ai/docs/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/skills"]; readonly conditions: readonly ["Frontmatter hooks require fork context and the untrusted-hook opt-in unless built in."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Reader paths were not independently rechecked in this review."]; readonly claimScope: "Invocation controls and fork-only skill frontmatter hooks"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy MCP configs are JSONC and use first-existing-file precedence within each scope; AXM writes the recommended project/user files."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/.mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/sub-agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CLI v1.16+ documents Beta hooks with 27+ events. User, project and local settings are supported; the modeled mappings are a subset of the vendor event surface."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide", "https://www.codebuddy.ai/docs/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "literal-list"; readonly example: "startup|resume"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Edit|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Edit|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WebFetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks"]; readonly conditions: readonly ["Hooks are documented as Beta in CLI v1.16+."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The pre-existing event mappings and entry dialect cover a subset and were not exhaustively revalidated."]; readonly claimScope: "Beta hook availability, settings scopes and additional lifecycle events"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy loads CODEBUDDY.md plus nested .codebuddy/rules instruction files and supports @path imports."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "none"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "CODEBUDDY.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: "at-path"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "CodeBuddy permissions support allow/ask/deny rules in settings.json plus CLI permission flags. Bash rules are prefix-style and can include :* suffixes."; readonly docs: readonly []; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/settings", "https://www.codebuddy.ai/docs/cli/cli-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".codebuddy/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codebuddy/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: "Rules live in permissions.allow/ask/deny arrays; Bash patterns use prefix matching."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--dangerously-skip-permissions"; readonly note: "Bypasses CodeBuddy Code permission prompts."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(**)", "Write(**)", "Edit"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "CodeBuddy"; readonly surface: "CodeBuddy CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.codebuddy.ai/docs/cli/hooks", "https://www.codebuddy.ai/docs/cli/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, instructions, permissions."]; readonly claimScope: "CLI lifecycle hooks and skill invocation controls"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "codemaker"; readonly name: "Codemaker"; readonly vendor: "CodeMaker AI"; readonly homepage: "https://github.com/codemakerai/codemaker-cli"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "retired"; readonly since: null; readonly note: "CodeMaker AI's vendor domains no longer resolve, and its vendor-owned CLI repository has not shipped an agent-extension surface."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codemaker"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "CodeMaker CLI repository"; readonly url: "https://github.com/codemakerai/codemaker-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The vendor CLI source and documentation do not implement skills or read .codemaker/skills; the prior claim came only from a third-party installer path table. Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Codemaker"; readonly surface: "CodeMaker AI CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/codemakerai/codemaker-cli"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI product identity; extension availability remains unresolved"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "codestudio"; readonly name: "Code Studio"; readonly vendor: "Syncfusion"; readonly homepage: "https://www.syncfusion.com/code-studio/"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".codestudio"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".codestudio"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codestudio"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Code Studio documentation"; readonly url: "https://help.syncfusion.com/code-studio/welcome-to-code-studio"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codestudio/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio supports custom stdio and remote HTTP MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/", "https://help.syncfusion.com/code-studio/reference/configure-properties/mcp/customservers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio custom agents are stored under .codestudio/agents."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/", "https://github.com/syncfusion/code-studio-library"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codestudio/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Code Studio exposes command-based lifecycle hooks, but its public documentation does not enumerate a stable event and matcher grammar."; readonly docs: readonly []; readonly sources: readonly ["https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The current Global Agent guide specifies lowercase agents.md at the workspace root, enabled with Agent Enabled and Use Agent MD File."; readonly docs: readonly []; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent", "https://www.syncfusion.com/code-studio/features/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "agents.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Enable Agent Enabled and Use Agent MD File in Code Studio."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent"]; readonly conditions: readonly ["Agent Enabled and Use Agent MD File must both be enabled."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Other Code Studio instruction surfaces were not reviewed."]; readonly claimScope: "Exact lowercase filename and opt-in requirements"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Code Studio"; readonly surface: "Code Studio editor agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.syncfusion.com/code-studio/features/globalagent"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, permissions."]; readonly claimScope: "Opt-in project instruction file"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "codex"; readonly name: "Codex"; readonly vendor: "OpenAI"; readonly homepage: "https://learn.chatgpt.com/docs"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "openai"; readonly profile: { readonly identity: { readonly product: "Codex"; readonly surface: "CLI and IDE extension"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks", "https://developers.openai.com/codex/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Hook invocation and decisions reviewed; prompt/agent hook entries may parse without executing. Other existing paths retain their earlier evidence.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".codex"; readonly targeting: { readonly extends: null; readonly capabilities: { readonly "structured-input": { readonly grades: readonly ["native"]; readonly nouns: { readonly "tool:structured-input": "request_user_input"; }; readonly affordances: { readonly "do:ask-structured": "Use request_user_input to collect structured input, then STOP and wait for the response."; }; }; }; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "file"; readonly path: "AGENTS.md"; readonly signal: "ambiguous"; readonly note: "Shared instruction filename used by multiple agents."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.codex"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "codex"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Codex documentation"; readonly url: "https://learn.chatgpt.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads SKILL.md skills from repository (.agents/skills) and user (~/.agents/skills) locations with progressive disclosure, using the cross-tool Agent Skills convention rather than a .codex/ path.\n"; readonly docs: readonly []; readonly sources: readonly ["https://developers.openai.com/codex/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://developers.openai.com/codex/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; readonly configRootRelativePath: "config.toml"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; readonly envVarsKey: "env_vars"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "http_headers"; readonly bearerTokenEnvKey: "bearer_token_env_var"; readonly envHeadersKey: "env_http_headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agents are standalone TOML files under .codex/agents (project) or ~/.codex/agents (user); a custom agent overrides a built-in of the same name.\n"; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".codex/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/agents"; readonly configRootRelativePath: "agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command and mcp_tool hooks execute. Prompt and agent handlers are parsed but skipped. AXM projects command handlers only; native allow/deny and updatedInput semantics do not expand the AXM canonical decision subset."; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin", "mcp"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "hooks.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".codex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PermissionRequest"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|apply_patch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear|compact"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: "Matcher filters subagent type."; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "apply_patch"; readonly canonical: "file.edit"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://learn.chatgpt.com/docs/hooks"]; readonly claimScope: "Documented executable hook mechanisms and permission decision behavior"; readonly conditions: readonly []; readonly limitations: readonly ["AXM writes command handlers only."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/openai/codex/blob/main/docs/agents_md.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/AGENTS.md"; readonly configRootRelativePath: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/agents-md"]; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codex/AGENTS.override.md"; readonly configRootRelativePath: "AGENTS.override.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Overrides AGENTS.md when non-empty under the selected CODEX_HOME."; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://learn.chatgpt.com/docs/agent-configuration/agents-md"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://learn.chatgpt.com/docs/config-file/config-reference", "https://learn.chatgpt.com/docs/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; readonly configRootRelativePath: "config.toml"; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".codex/axm.config.toml"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; readonly configRootRelativePath: "axm.config.toml"; }]; readonly grammar: { readonly style: "glob"; readonly example: "[permissions.agentxm.filesystem.\":workspace_roots\"] \".\" = \"write\""; readonly notes: "Permission profiles combine filesystem, network, and workspace-root rules. Narrower deny rules remain in force over broader readable or writable paths.\n"; }; readonly prerequisites: readonly [{ readonly key: "default_permissions"; readonly value: "agentxm"; readonly scope: "user"; readonly note: "Selects the named permission profile."; }]; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Alias for danger-full-access; use only when broad local access is intentional."; }, { readonly flag: "--dangerously-bypass-approvals-and-sandbox"; readonly note: "Runs without local sandbox restrictions."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user-additional-1"; }; readonly patch: { readonly default_permissions: "agentxm"; readonly permissions: { readonly agentxm: { readonly extends: ":workspace"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user-additional-1"; }; readonly patch: { readonly default_permissions: "agentxm"; readonly permissions: { readonly agentxm: { readonly extends: ":workspace"; readonly workspace_roots: { readonly "${workspaceRoot}": true; }; readonly filesystem: { readonly ":workspace_roots": { readonly ".": "write"; }; }; readonly network: { readonly enabled: true; }; }; }; }; readonly template: null; }; }; }; }; }; } | { readonly id: "command-code"; readonly name: "Command Code"; readonly vendor: "Command Code"; readonly homepage: "https://commandcode.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".commandcode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Command Code documentation"; readonly url: "https://commandcode.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The shared/project-scoped MCP config is .mcp.json at the repo root; the user-scoped config is ~/.commandcode/mcp.json. A private local scope (~/.commandcode/projects//mcp.json) also exists but is not managed here."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "transport"; readonly value: "stdio"; }, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }, { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code Custom Agents / Sub-Agents are single Markdown files with frontmatter under .commandcode/agents (project) and ~/.commandcode/agents (user)."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/custom-agents", "https://commandcode.ai/docs/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://commandcode.ai/docs/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .commandcode/agents Markdown definitions"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code documents a lifecycle hook system configured in settings.json. AXM has not modeled its native event dialect."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Command Code hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code reads AGENTS.md memory/instruction files."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/memory"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command Code exposes permission allow/deny lists and an autoApprove system in settings.json. AXM does not yet write these grants."; readonly docs: readonly []; readonly sources: readonly ["https://commandcode.ai/docs/core-concepts/settings"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".commandcode/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".commandcode/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Command Code permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Command Code"; readonly surface: "Command Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://commandcode.ai/docs/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Custom agent definitions and scopes"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "continue"; readonly name: "Continue"; readonly vendor: "Continue"; readonly homepage: "https://www.continue.dev"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Continue"; readonly surface: "IDE and CLI"; readonly edition: null; readonly ownership: { readonly company: "Continue"; readonly parentCompany: "Cursor"; readonly sources: readonly ["https://continue.dev", "https://github.com/continuedev"]; }; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://continue.dev", "https://github.com/continuedev"]; readonly conditions: readonly []; readonly limitations: readonly ["Acquisition by Cursor reviewed. Acquisition alone does not establish a shutdown date or retirement of every surface.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".continue"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Continue documentation"; readonly url: "https://docs.continue.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".continue/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Continue agent-mode tools include MCP servers configured as tools in Continue config. AXM does not currently write Continue's YAML/config package format."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/guides/configuring-models-rules-tools", "https://docs.continue.dev/reference/config"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Continue MCP config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The Continue CLI ships a Claude Code-compatible hooks system keyed under settings.json hooks, merged across ~/.continue, .continue, and the matching .claude locations. Beyond the events mapped here it also fires PostToolUseFailure, PermissionRequest, SessionEnd, Notification, SubagentStart, ConfigChange, TeammateIdle, TaskCompleted, WorktreeCreate, and WorktreeRemove, which have no canonical AXM event. Command handlers sit beside http, prompt, and agent handler types, and the surface is not yet covered by the published Continue docs."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".continue/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".continue/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".continue/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit"; readonly notes: "Matchers select tools by name; an optional per-handler if condition narrows by argument, such as Edit(src/**)."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://github.com/continuedev/continue/issues/11678"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Continue's hook surface is only described in tracking issues, not published reference docs, so the settings key and handler shape are not stable enough to write."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/guides/configuring-models-rules-tools"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".continue/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The Continue CLI sorts tool patterns into allow, ask, and exclude lists in a user-scoped permissions.yaml that the TUI writes as approvals are granted; there is no project-scoped permission file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.continue.dev/cli/tool-permissions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".continue/permissions.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "Bash(axm *)"; readonly notes: "Tool(pattern) entries under allow, ask, or exclude; the argument pattern is a glob, as in Write(**/*.ts)."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto"; readonly note: "Allows every tool for the session; not tool-scoped."; }, { readonly flag: "--readonly"; readonly note: "Restricts the session to read-only tools."; }, { readonly flag: "--allow"; readonly note: "Adds a session allow rule for one tool pattern."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "permissions.yaml is owned by the Continue TUI and AXM has no writer for its YAML permission grammar."; }; }; } | { readonly id: "cortex"; readonly name: "Snowflake CoCo"; readonly vendor: "Snowflake"; readonly homepage: "https://www.snowflake.com/en/product/features/cortex-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".cortex"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".cortex"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.snowflake/cortex"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Cortex Code CLI extensibility"; readonly url: "https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility", "https://github.com/Snowflake-Labs/coco-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code configures MCP servers under the mcpServers key."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code subagents are Markdown definitions under .cortex/agents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code hooks execute commands with event data on standard input."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Write|Edit"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed existing CLI paths and serialization were not revalidated by this overview."]; readonly claimScope: "Capability availability and CLI/Desktop/Snowsight boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code loads AGENTS.md instruction files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cortex Code permission rules are stored in permissions.json and layered settings files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/permissions.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".snowflake/cortex/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cortex/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git status)"; readonly notes: "Permission allow and deny entries match tool calls and command prefixes."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Snowflake CoCo"; readonly surface: "Snowflake CoCo CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.snowflake.com/en/user-guide/cortex-code/extensibility"]; readonly conditions: readonly ["This profile models CLI paths. Desktop shares the user configuration root but has distinct workspace paths; Snowsight uses hosted Horizon Catalog skills."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: instructions, permissions."]; readonly claimScope: "Product naming and CLI/Desktop/Snowsight extensibility boundaries"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "cowork"; readonly name: "Claude Cowork"; readonly vendor: "Anthropic"; readonly homepage: "https://claude.ai"; readonly interfaces: readonly ["hosted-agent"]; readonly family: "claude"; readonly profile: { readonly identity: { readonly product: "Claude Cowork"; readonly surface: "Hosted task runtime across web, desktop and mobile"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.claude.com/en/articles/13345190-get-started-with-cowork"]; readonly conditions: readonly []; readonly limitations: readonly ["Product surface reviewed; no hosted interoperability exercise was performed.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload", "directory"]; readonly artifact: "zip"; readonly instructions: "Run axm lint to validate the skill, package its folder as a ZIP, then use Customize > Skills in Cowork to upload it or install a shared skill from the directory."; readonly docs: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Use skills in Claude"; readonly url: "https://support.claude.com/en/articles/12512180-use-skills-in-claude"; }, { readonly label: "Use plugins in Claude"; readonly url: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; }, { readonly label: "Remote MCP custom connectors"; readonly url: "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cowork uses the Claude account's custom and shared skills, which are uploaded as ZIP-packaged skill folders or installed from an organization directory."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/12512180-use-skills-in-claude"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cowork uses Claude account connectors backed by publicly reachable remote MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork connector setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Claude plugins"; readonly homepage: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; readonly author: "Anthropic"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Install or upload the plugin from Customize > Plugins in Cowork."; readonly packageRef: null; }; readonly detection: null; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude plugins can bundle subagents, which run only in Cowork."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly scopes: readonly ["user"]; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork plugin installation is hosted and UI-mediated."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "first-party"; readonly plugin: { readonly name: "Claude plugins"; readonly homepage: "https://support.claude.com/en/articles/13837440-use-plugins-in-claude"; readonly author: "Anthropic"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "Install or upload the plugin from Customize > Plugins in Cowork."; readonly packageRef: null; }; readonly detection: null; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Claude plugin hooks run only in Cowork; event mechanics are not cataloged yet."; readonly docs: readonly []; readonly sources: readonly ["https://support.claude.com/en/articles/13837440-use-plugins-in-claude"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Cowork plugin hooks have no AXM writer."; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; } | { readonly id: "crush"; readonly name: "Crush"; readonly vendor: "Charm"; readonly homepage: "https://charm.land/crush"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".crush"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Crush repository"; readonly url: "https://github.com/charmbracelet/crush"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".crush/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "crush/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Documented project, global and configurable skill roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush now prefers executable crushrc configuration. AXM targets the deprecated-but-still-supported JSON configuration because the generic writer cannot safely author shell configuration."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush", "https://github.com/charmbracelet/crush/blob/main/schema.json"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/crush/crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush currently supports PreToolUse hooks in crush.json/.crush.json with direct event arrays. The native shape is Claude Code-compatible conceptually but not AXM's grouped command-hook JSON writer shape."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush/tree/main/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Crush hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Crush can allow broad built-in tools through permissions.allowed_tools and can bypass prompts with --yolo. This does not provide a narrow shell-command grant for AXM."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/crush/crush.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "\"permissions\": { \"allowed_tools\": [\"view\", \"edit\", \"bash\"] }"; readonly notes: "allowed_tools grants whole tools such as bash; it cannot narrowly grant only the axm command."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Skips all permission prompts for the workspace."; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing grant grammar and writer behavior were not revalidated."]; readonly claimScope: "Permission allow/deny controls and yolo bypass"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a narrow Crush permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Crush"; readonly surface: "Crush terminal agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/charmbracelet/crush"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions."]; readonly claimScope: "Skill discovery and permission controls"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "cursor"; readonly name: "Cursor"; readonly vendor: "Anysphere"; readonly homepage: "https://cursor.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: "cursor"; readonly profile: { readonly identity: { readonly product: "Cursor"; readonly surface: "Desktop IDE and CLI"; readonly edition: null; readonly ownership: { readonly company: "Anysphere"; readonly parentCompany: "SpaceX"; readonly sources: readonly ["https://cursor.com/blog/joining-spacex"]; }; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://cursor.com/blog/joining-spacex"]; readonly conditions: readonly []; readonly limitations: readonly ["Parent-company acquisition reviewed; the product/operator identity is distinct from parent and model provider. Existing capability paths were not all re-exercised.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".cursor"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "file"; readonly path: "AGENTS.md"; readonly signal: "ambiguous"; readonly note: "Shared instruction filename used by multiple agents."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.cursor"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "cursor-agent"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Cursor documentation"; readonly url: "https://docs.cursor.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Cursor 2.4 added Agent Skills (SKILL.md) across the editor and the cursor-agent CLI."; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codex/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/mcp.md", "https://prod.cursor.com/docs/mcp#using-mcpjson"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "env-colon"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly implicitTransport: "http-or-sse"; readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom subagents are Markdown files with YAML frontmatter under .cursor/agents (project) or ~/.cursor/agents (user); added in Cursor 2.4.\n"; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command handlers use flat event arrays. User handlers run from the Cursor configuration directory; project handlers run from the project root. Runtime execution remains unverified."; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; readonly configRootRelativePath: "hooks.json"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "preToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "postToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["modify-output", "inject-context"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "beforeSubmitPrompt"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "sessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "subagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "preCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }]; readonly tools: readonly [{ readonly nativeName: "Shell"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly lastVerified: "2026-10-02"; }]; readonly entryDialect: { readonly serializer: "flat-command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; readonly review: { readonly reviewedAt: "2026-10-02"; readonly sources: readonly ["https://cursor.com/docs/hooks"]; readonly claimScope: "Documented native command event grammar, native decisions, and project/user locations"; readonly conditions: readonly []; readonly limitations: readonly ["AXM projects command handlers only. The preToolUse ask response is not enforced and is not advertised. Cloud profiles do not load user hooks or sessionStart. No native host execution was observed."]; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["project", "user"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/rules.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://cursor.com/docs/cli/reference/permissions.md", "https://cursor.com/docs/cli/reference/parameters.md", "https://cursor.com/docs/agent/tools/terminal"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/permissions.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/sandbox.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/sandbox.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-2"; readonly scope: "user"; readonly root: "home"; readonly path: ".cursor/cli-config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/cli.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "axm"; readonly notes: "IDE: case-sensitive command prefix in terminalAllowlist. CLI: Tool-call syntax Shell()/Read()/Write() with glob patterns. Deny always beats allow.\n"; }; readonly prerequisites: readonly [{ readonly key: "Settings > Cursor Settings > Agents > Auto-Run"; readonly value: "Run in Sandbox | Run Everything"; readonly scope: "user"; readonly note: "IDE Auto-Run must be enabled before terminalAllowlist takes effect."; }]; readonly cliFlags: readonly [{ readonly flag: "--force"; readonly note: "Force allow commands unless explicitly denied."; }, { readonly flag: "--yolo"; readonly note: "Alias for --force."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly terminalAllowlist: readonly ["${tool}"]; }; readonly template: null; }; readonly cliShell: { readonly destination: { readonly kind: "location"; readonly locationId: "project-additional-1"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Shell(${tool})", "Shell(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly type: "workspace_readwrite"; readonly additionalReadwritePaths: readonly []; }; readonly template: null; }; }; }; }; }; } | { readonly id: "deepagents"; readonly name: "Deep Agents Code"; readonly vendor: "LangChain"; readonly homepage: "https://docs.langchain.com/oss/python/deepagents/overview"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.deepagents"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Deep Agents skills documentation"; readonly url: "https://docs.langchain.com/oss/python/deepagents/skills"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skill sources are layered built-in, then plugin, then user ~/.deepagents//skills and ~/.agents/skills, then project .deepagents/skills and .agents/skills.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/python/deepagents/skills", "https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/project_utils.py", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active Deep Agents profile from native configuration before selecting this location."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["DEEPAGENTS_HOME relocates the entire user profile."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed definition/frontmatter grammar was not revalidated."]; readonly claimScope: "Current Deep Agents Code data directories and user/project precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The deepagents CLI natively supports MCP servers via 'mcp-servers add|list|tools|update|delete|connect' commands, project-level MCP config discovery/merge, per-server trust/approval, and MCP OAuth session management.\n"; readonly docs: readonly []; readonly sources: readonly ["https://reference.langchain.com/python/deepagents-cli", "https://pypi.org/project/deepagents-cli/", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents/.mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default DEEPAGENTS_HOME only; resolve the active profile directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "default-user"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing project discovery, transport and entry dialect claims were not fully revalidated."]; readonly claimScope: "Global MCP path and relocated profile boundary"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Deep Agents natively supports MCP servers, but the exact config file path, servers key, and serialization dialect are unverified; no AXM writer is defined to avoid fabricating an install path."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Each subagent is a folder holding an AGENTS.md with YAML frontmatter: .deepagents/agents//AGENTS.md for the project and ~/.deepagents//agents//AGENTS.md for the user. The name field is optional and defaults to the folder name."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/subagents.py", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active Deep Agents profile from native configuration before selecting this location."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["DEEPAGENTS_HOME relocates the entire user profile."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Detailed definition/frontmatter grammar was not revalidated."]; readonly claimScope: "Current Deep Agents Code data directories and user/project precedence"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native nested AGENTS.md profile writing is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Deep Agents Code accepts lifecycle command hooks in the profile hooks.json file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default DEEPAGENTS_HOME only; resolve the active profile directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "default-user"; readonly format: "json"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Deep Agents Code accepts lifecycle command hooks in the profile hooks.json file."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "User instructions live under ~/.deepagents//AGENTS.md. Project .deepagents/AGENTS.md and root AGENTS.md are both appended when present; DEEPAGENTS_HOME relocates the user profile."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/langchain-ai/deepagents/blob/main/libs/code/deepagents_code/project_utils.py", "https://docs.langchain.com/oss/python/deepagents/overview", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".deepagents/AGENTS.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".deepagents//AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active profile and DEEPAGENTS_HOME before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly ["The selected agent determines the user AGENTS.md location."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Agent-specific user instructions and project instruction sources"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Deep Agents Code provides human approval controls for sensitive tool operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Deep Agents Code provides human approval controls for sensitive tool operations."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Deep Agents Code"; readonly surface: "Deep Agents Code CLI; distinct from the library"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.langchain.com/oss/deepagents/code/overview", "https://docs.langchain.com/oss/deepagents/code/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "CLI product identity, separate from the Deep Agents framework"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "devin"; readonly name: "Devin CLI"; readonly vendor: "Cognition"; readonly homepage: "https://devin.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Devin"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.devin.ai/cli/subagents", "https://docs.devin.ai/cli/extensibility/mcp/configuration"]; readonly conditions: readonly []; readonly limitations: readonly ["Flat and directory subagent forms reviewed; MCP uses current CLI documentation rather than older desktop configuration descriptions.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".devin"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".devin"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "$XDG_CONFIG_HOME/devin"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Devin CLI documentation"; readonly url: "https://docs.devin.ai/cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin also reads universal .agents/skills locations; AXM targets the native .devin/skills project path and XDG user path.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/skills/overview"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".devin/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI stores MCP servers under mcpServers in layered config files. Remote URL servers default to Streamable HTTP and can fall back to SSE."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/mcp/configuration"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom Devin CLI subagents are AGENT.md files under .devin/agents, .agents/agents, or the global Devin agents directory. Claude Code .claude/agents/*.md files are also imported."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".devin/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI hooks are compatible with Claude Code hooks. AXM writes to the hooks key in .devin/config.json rather than the standalone hooks.v1.json file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/hooks.v1.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-2"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "exec|edit|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "exec|edit|write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/hooks/overview"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "exec"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["project-additional-1"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/extensibility/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin CLI permissions use allow/ask/deny arrays in layered config files. Rules cover scope matchers such as Read/Write/Exec/Fetch and tool names such as read/edit/grep/glob/exec."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/cli/reference/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".devin/config.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: true; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/devin/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Exec(axm)"; readonly notes: "Exec rules match shell command prefixes as complete words; Read/Write rules use glob-style path scopes."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--permission-mode"; readonly note: "Selects modes such as normal, accept edits, bypass, or autonomous with sandboxing."; }, { readonly flag: "--sandbox"; readonly note: "Enables OS-level sandboxing and autonomous permission behavior."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Exec(${tool})"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(**)", "Write(**)", "edit"]; }; }; readonly template: null; }; }; }; }; }; } | { readonly id: "dexto"; readonly name: "Dexto"; readonly vendor: "Truffle AI"; readonly homepage: "https://www.dexto.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.dexto"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Dexto documentation"; readonly url: "https://docs.dexto.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/truffle-ai/dexto/blob/main/packages/core/src/skills/workspace-skill-source.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Dexto declares MCP servers under mcpServers in a project agent.yml. The vendor schema adds connectionMode and type fields around the standard server definitions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.dexto.ai/mcp/"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Dexto permissions use manual or auto-approve mode plus alwaysAllow and alwaysDeny tool policies in agent.yml."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/truffle-ai/dexto/blob/main/docs/docs/guides/configuring-dexto/permissions.md"]; readonly scopes: readonly ["project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "agent.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "mcp--filesystem--write_file"; readonly notes: "toolPolicies.alwaysAllow and toolPolicies.alwaysDeny contain tool identifiers such as read_file, bash_exec, and mcp--server--tool."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto-approve"; readonly note: "Enables auto-approve mode for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Dexto"; readonly surface: "Dexto CLI profile; current documentation also describes Dexto Cloud"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.dexto.ai/docs/", "https://www.dexto.ai/docs/features/agents/", "https://www.dexto.ai/docs/features/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Current Cloud documentation does not reconfirm the historical CLI agent.yml or .agents/skills reader contracts.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Cloud product and reusable agent profiles; historical CLI details are not reconfirmed"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "droid"; readonly name: "Droid"; readonly vendor: "Factory"; readonly homepage: "https://www.factory.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".factory"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Factory documentation"; readonly url: "https://docs.factory.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".factory/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory MCP configuration supports local and remote servers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory custom droids are Markdown files under .factory/droids."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/custom-droids", "https://docs.factory.ai/harness/subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".factory/droids"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".factory/droids"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Subagents do not spawn further subagents or use AskUser."]; readonly claimScope: "Custom droids and builtin delegation boundaries"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory prefers .factory/hooks.json and ~/.factory/hooks.json with an unwrapped event map. The hooks key in settings files is a fallback; older .factory/hooks/hooks.json is a migration source."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide", "https://docs.factory.ai/harness/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".factory/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly keyPath: readonly []; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".factory/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; readonly keyPath: readonly []; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "user-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project-local-settings"; readonly format: "json"; readonly keyPath: readonly []; readonly attribution: "agent"; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Execute|Create|Edit|ApplyPatch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Execute|Create|Edit|ApplyPatch"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Execute"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Create"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "ApplyPatch"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/hooks-guide"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/hooks"]; readonly conditions: readonly ["Canonical hooks.json uses an unwrapped event map; settings.json wraps entries in hooks."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing event mappings are not an exhaustive review of every hook event."]; readonly claimScope: "Canonical hooks.json files and settings-file fallback"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/agents-md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Factory layers command allow, deny, and block lists; blocklist rules take precedence over denylist and allowlist rules."; readonly docs: readonly []; readonly sources: readonly ["https://docs.factory.ai/cli/configuration/settings", "https://docs.factory.ai/cli/droid-exec/overview"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".factory/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "commandAllowlist: [\"git status\", \"ls\"]"; readonly notes: "Command-prefix allow, deny, and block lists are matched after program resolution to prevent path-based bypasses."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--auto "; readonly note: "Selects the automation level."; }, { readonly flag: "--skip-permissions-unsafe"; readonly note: "Bypasses permission checks."; }, { readonly flag: "--enabled-tools "; readonly note: "Restricts the enabled tool set."; }, { readonly flag: "--disabled-tools "; readonly note: "Disables selected tools."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Droid"; readonly surface: "Factory Droid shared harness; CLI configuration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.factory.ai/harness/hooks", "https://docs.factory.ai/harness/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, instructions, permissions."]; readonly claimScope: "Hook configuration and custom droids"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "firebender"; readonly name: "Firebender"; readonly vendor: "Firebender"; readonly homepage: "https://firebender.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".firebender"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".firebender"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "file"; readonly path: "firebender.json"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.firebender"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Firebender documentation"; readonly url: "https://docs.firebender.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".codex/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".cursor/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender stores MCP servers under mcpServers in firebender.json and ~/.firebender/firebender.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/context/mcp/overview", "https://firebendercorp.mintlify.app/api-reference/syntax"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agent Markdown files must be listed in the agents array of firebender.json or ~/.firebender/firebender.json. A conventional directory alone does not register an agent."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Register each Markdown file in the agents array of firebender.json; the directory is not auto-discovered."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly conditions: readonly ["Paths are resolved relative to the applicable project or personal configuration."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Explicit custom agent path registration"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender hooks execute commands with JSON event payloads on standard input and can observe, block, or modify selected operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".firebender/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "sessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "preToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "Shell,Read,Write,MCP"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "postToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "Shell,Read,Write,MCP"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "subagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "preCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Shell"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "MCP"; readonly canonical: "mcp.call"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "afterFileEdit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.firebender.com/multi-agent/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Firebender reads .firebender/rules/*.mdc and also supports AGENTS.md; this entry models its primary vendor rule directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.firebender.com/multi-agent/global-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".firebender/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Firebender"; readonly surface: "Firebender IDE agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.firebender.com/api-reference/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Explicit registration of custom agent Markdown files"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "forgecode"; readonly name: "ForgeCode"; readonly vendor: "Tailcall"; readonly homepage: "https://forgecode.dev"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".forge"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".forge"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.forge"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/forge"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "ForgeCode skills documentation"; readonly url: "https://forgecode.dev/docs/skills/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode also reads shared ~/.agents/skills and documents ~/forge/skills as its global skills path."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".forge/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: "forge/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .forge/skills, shared ~/.agents/skills and global ~/forge/skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode supports local and remote MCP servers."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/mcp-integration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode custom agents are files under .forge/agents."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/creating-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".forge/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/custom-rules/"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ForgeCode permissions.yaml policies combine read, write, command, and URL glob rules with all, any, and not operators; decisions are allow, deny, or confirm."; readonly docs: readonly []; readonly sources: readonly ["https://forgecode.dev/docs/permissions/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".forge/permissions.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".forge.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "command: \"git *\""; readonly notes: "Rules support all, any, and not composition with allow, deny, and confirm decisions."; }; readonly prerequisites: readonly [{ readonly key: "restricted"; readonly value: "true"; readonly scope: "project"; readonly note: "Enables restricted permission policy enforcement from .forge.toml."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "ForgeCode"; readonly surface: "ForgeCode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://forgecode.dev/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and global skill discovery"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "gemini-cli"; readonly name: "Gemini CLI"; readonly vendor: "Google"; readonly homepage: "https://github.com/google-gemini/gemini-cli"; readonly interfaces: readonly ["cli"]; readonly family: "google"; readonly profile: { readonly identity: { readonly product: "Gemini CLI"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; readonly conditions: readonly ["Continued availability is for supported enterprise subscriptions or paid API-key usage."]; readonly limitations: readonly ["Consumer retirement is edition-specific. Standard/Enterprise and paid API-key users continue to receive support.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly [{ readonly scope: "edition"; readonly subject: "Consumer Gemini CLI"; readonly state: "retired"; readonly since: "2026-06-18"; readonly note: "Consumer access transitioned to Antigravity CLI; Standard, Enterprise and paid API access continue."; readonly sources: readonly ["https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; }]; }; readonly rootDir: ".gemini"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.gemini"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "gemini"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "Gemini CLI documentation"; readonly url: "https://github.com/google-gemini/gemini-cli/tree/main/docs"; }, { readonly label: "Transitioning Gemini CLI to Antigravity CLI"; readonly url: "https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "httpUrl"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Subagents are Markdown files with YAML frontmatter under .gemini/agents (project) or ~/.gemini/agents (user); shipped in Gemini CLI v0.38.1.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/core/subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Gemini CLI hooks run command hooks from settings files and use JSON on stdin/stdout. Native Gemini CLI exposes additional events such as SessionEnd, BeforeModel, AfterModel, BeforeToolSelection, and Notification; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/index.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear"; readonly notes: "Gemini CLI lifecycle matchers are exact strings; AXM serializes raw matcher text."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeAgent"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterAgent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeTool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "write_file|replace"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterTool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "write_file|replace"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/reference.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompress"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/hooks/index.md"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read_file"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "read_many_files"; readonly canonical: "file.read"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write_file"; readonly canonical: "file.write"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "replace"; readonly canonical: "file.edit"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "run_shell_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "web_fetch"; readonly canonical: "web.fetch"; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "manifest"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Consumer access (free, AI Pro, AI Ultra) ended 2026-06-18; Antigravity CLI succeeded Gemini CLI for those tiers. Enterprise customers on paid API keys retain access. The contextFileName setting can also point Gemini CLI at AGENTS.md.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md", "https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "GEMINI.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/GEMINI.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://geminicli.com/docs/cli/gemini-md/"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/configuration.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/policy-engine.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/tools/shell.md", "https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/trusted-folders.md"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".gemini/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "run_shell_command(axm)"; readonly notes: "The current configuration reference exposes tools.allowed / tools.core / tools.exclude (formerly coreTools/excludeTools) and the policy engine; command-specific run_shell_command rules are simple string matches and should not be treated as a strong security boundary.\n"; }; readonly prerequisites: readonly [{ readonly key: "security.folderTrust.enabled"; readonly value: "true"; readonly scope: "user"; readonly note: "Untrusted folders disable all auto-acceptance regardless of other settings."; }]; readonly cliFlags: readonly [{ readonly flag: "--approval-mode=yolo"; readonly note: "Broad bypass; not tool-scoped. Blocked when security.disableYoloMode=true."; }, { readonly flag: "--yolo"; readonly note: "Alias for --approval-mode=yolo."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly security: { readonly folderTrust: { readonly enabled: true; }; readonly enablePermanentToolApproval: true; }; readonly tools: { readonly allowed: readonly ["run_shell_command(${tool})"]; }; }; readonly template: null; }; }; }; }; }; } | { readonly id: "gemini-app"; readonly name: "Gemini app"; readonly vendor: "Google"; readonly homepage: "https://gemini.google.com"; readonly interfaces: readonly ["chat", "hosted-agent"]; readonly family: "gemini"; readonly profile: { readonly identity: { readonly product: "Gemini"; readonly surface: "Hosted chat"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?co=GENIE.Platform%3DDesktop&hl=en"]; readonly conditions: readonly []; readonly limitations: readonly ["Skills apply to ordinary chats and Spark; personal-account rollout is staged and excludes work/school accounts.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly installTarget: { readonly kind: "hosted"; readonly delivery: readonly ["upload"]; readonly artifact: "skill-file-or-zip"; readonly instructions: "Run axm lint to validate the skill, then open Gemini Settings > Skills and upload its SKILL.md or a ZIP with SKILL.md at the root."; readonly docs: "https://support.google.com/gemini/answer/17094296?hl=en"; }; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Create and manage skills for Gemini Apps"; readonly url: "https://support.google.com/gemini/answer/17094296?hl=en"; }, { readonly label: "Connected Apps in Gemini"; readonly url: "https://support.google.com/gemini/answer/13695044?co=GENIE.Platform%3DDesktop&hl=en"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills work in ordinary Gemini chats and Spark. Availability is rolling out to personal Google accounts; work and school accounts are not supported."; readonly docs: readonly []; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?hl=en"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.google.com/gemini/answer/17094296?co=GENIE.Platform%3DDesktop&hl=en"]; readonly claimScope: "Skills eligibility, upload shape, and chat/Spark availability"; readonly conditions: readonly ["Available personal-account rollout; not work or school accounts."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Gemini Spark accepts remote MCP server URLs as custom Connected Apps; Spark eligibility restrictions apply."; readonly docs: readonly []; readonly sources: readonly ["https://support.google.com/gemini/answer/13695044?co=GENIE.Platform%3DDesktop&hl=en"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "hosted"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Gemini Connected App setup is hosted and UI-mediated."; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; } | { readonly id: "github-copilot-cli"; readonly name: "GitHub Copilot CLI"; readonly vendor: "GitHub"; readonly homepage: "https://docs.github.com/en/copilot/concepts/agents/about-copilot-cli"; readonly interfaces: readonly ["cli"]; readonly family: "github"; readonly profile: { readonly identity: { readonly product: "GitHub Copilot"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/github/copilot-cli/blob/main/changelog.md", "https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly conditions: readonly []; readonly limitations: readonly ["CLI instructions/inheritance and hook mechanisms reviewed. CLI version and agent instruction opt-in affect behavior.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".copilot"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".github/copilot"; readonly signal: "supporting"; readonly note: "Repository and local Copilot CLI settings live under .github/copilot."; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.copilot"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "executable"; readonly name: "copilot"; readonly signal: "definitive"; readonly note: "CLI on PATH."; }]; }; }; readonly docs: readonly [{ readonly label: "GitHub Copilot CLI documentation"; readonly url: "https://docs.github.com/en/copilot/how-tos/copilot-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-skills", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".github/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-command-reference", "https://github.com/github/copilot-cli/issues/1232#issuecomment-4198097885"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/mcp-config.json"; readonly configRootRelativePath: "mcp-config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "project-github"; readonly scope: "project"; readonly root: "project"; readonly path: ".github/mcp.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, { readonly name: "type"; readonly value: "local"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; GitHub Copilot CLI custom agents are Markdown agent profiles under .github/agents or ~/.copilot/agents.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/concepts/agents/copilot-cli/about-custom-agents", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".github/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Copilot CLI documents command, HTTP and prompt hooks. AXM does not serialize its hook configuration."; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/overview", "https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.github.com/en/copilot/reference/hooks-reference"]; readonly claimScope: "Native hook invocation families"; readonly conditions: readonly []; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a GitHub Copilot CLI hook writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "GitHub Copilot CLI supports AGENTS.md plus Copilot-specific instruction files; AXM syncs the cross-agent AGENTS.md convention.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/github/copilot-cli/blob/main/changelog.md"]; readonly claimScope: "CLI 1.0.89 reads .claude/rules; custom-agent instruction inheritance is opt-in"; readonly conditions: readonly ["Custom agents must set include-custom-instructions: true to inherit repository instructions."]; readonly limitations: readonly []; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.github.com/en/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools", "https://docs.github.com/en/copilot/how-tos/copilot-cli/set-up-copilot-cli/configure-copilot-cli", "https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["cli-flag", "config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/permissions-config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/settings.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".github/copilot/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "prefix"; readonly example: "--allow-tool='shell(axm:*)'"; readonly notes: "Copilot CLI permission flags use tool-kind patterns such as shell(git:*), write(path), url(domain), or MCP_SERVER(tool). Deny rules take precedence over allow rules.\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--allow-tool='shell(${tool}:*)'"; readonly note: "Allow a command family without prompting."; }, { readonly flag: "--allow-all-tools"; readonly note: "Allow all available tools without prompting."; }, { readonly flag: "--allow-all"; readonly note: "Allow all tools, paths, and URLs."; }, { readonly flag: "--deny-tool"; readonly note: "Deny a tool pattern; deny rules take precedence over allow rules."; }, { readonly flag: "--available-tools"; readonly note: "Restrict the tools available to the session."; }, { readonly flag: "--excluded-tools"; readonly note: "Remove tools from the session."; }, { readonly flag: "--yolo"; readonly note: "Alias for allowing all tools, paths, and URLs."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "invocation"; }; readonly patch: null; readonly template: "--allow-tool='shell(${tool}:*)'"; }; readonly filesystem: { readonly destination: { readonly kind: "invocation"; }; readonly patch: null; readonly template: "--allow-tool='write(${workspaceRoot}/**)'"; }; }; }; }; }; } | { readonly id: "goose"; readonly name: "Goose"; readonly vendor: "Agentic AI Foundation (AAIF)"; readonly homepage: "https://goose-docs.ai"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly rootDir: ".goose"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Goose documentation"; readonly url: "https://goose-docs.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The built-in Skills platform extension loads project and global .agents/skills plus compatibility roots. Summon separately loads recipes and agents and delegates work."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/mcp/skills-mcp/", "https://goose-docs.ai/docs/guides/context-engineering/using-skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-skills/"]; readonly conditions: readonly ["The Skills platform extension must be enabled."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Built-in Skills platform extension, canonical and compatibility roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/getting-started/using-extensions/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Goose YAML extension config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose discovers reusable Markdown agents and delegates them through the built-in Summon extension."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/custom-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goose/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".goose/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/custom-agents/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Goose discovers reusable Markdown agents and delegates them through the built-in Summon extension."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native Open Plugins hooks run commands from hooks/hooks.json inside discovered user or project .agents/plugins packages. Plugin discovery and enablement are required."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/hooks/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Native Open Plugins hooks run commands from hooks/hooks.json inside discovered user or project .agents/plugins packages. Plugin discovery and enablement are required."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose loads AGENTS.md and .goosehints through directory hierarchies. CONTEXT_FILE_NAMES can override the filenames."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".goosehints"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "goose/.goosehints"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Goose loads AGENTS.md and .goosehints through directory hierarchies. CONTEXT_FILE_NAMES can override the filenames."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Goose exposes permission mode, tool permissions, and .gooseignore controls. AXM has not modeled a narrow permission grant writer for Goose."; readonly docs: readonly []; readonly sources: readonly ["https://goose-docs.ai/docs/guides/managing-tools/tool-permissions/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Goose permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Goose"; readonly surface: "Goose CLI and desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://goose-docs.ai/docs/guides/context-engineering/using-skills/", "https://goose-docs.ai/docs/guides/context-engineering/custom-agents/", "https://goose-docs.ai/docs/guides/context-engineering/hooks/", "https://goose-docs.ai/docs/guides/context-engineering/using-goosehints/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, permissions."]; readonly claimScope: "Skills, custom agents, hooks and instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "grok-cli"; readonly name: "Grok Build"; readonly vendor: "xAI"; readonly homepage: "https://x.ai/cli"; readonly interfaces: readonly ["cli"]; readonly family: "xai"; readonly profile: { readonly identity: { readonly product: "Grok Build"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces", "https://x.ai/news/grok-build-for-everyone"]; readonly conditions: readonly []; readonly limitations: readonly ["Official product and plugin capability reviewed; web/mobile access does not imply local-file support for hosted sessions.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".grok"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Grok CLI documentation"; readonly url: "https://docs.x.ai/build/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Reads SKILL.md Agent Skills from project (.grok/skills) and user (~/.grok/skills, ~/.agents/skills) locations, plus additional paths configured via [skills] in ~/.grok/config.toml.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".grok/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".grok/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MCP servers are managed with grok mcp commands or [mcp_servers] tables in ~/.grok/config.toml and project .grok/config.toml. Grok also reads ~/.claude.json, .cursor/mcp.json, and .mcp.json compatibility files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Grok CLI MCP config writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Agent definitions are Markdown files in .grok/agents or ~/.grok/agents and may add new subagent types or shadow the built-in general-purpose, explore, and plan types. Personas are a separate TOML overlay under .grok/personas and are not modeled as subagents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/subagents", "https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/16-subagents.md"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".grok/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".grok/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "xAI Grok CLI discovers hook scripts from .grok hooks paths and also advertises Claude Code hook compatibility. Exact in-app hook event details should be reverified before adding a writer."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/skills-plugins-marketplaces"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Grok CLI hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project rules are merged by directory depth from the repository root. Grok also reads documented AGENTS.md filename variants and Markdown files in .grok/rules, with compatibility for .claude/rules and .cursor/rules; AXM writes the universal AGENTS.md surface."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/features/project-rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Grok [permission] settings define allow, deny, and ask lists using Tool(pattern) rules. UI permission modes and CLI flags provide coarse approval behavior in addition to the per-tool grammar."; readonly docs: readonly []; readonly sources: readonly ["https://docs.x.ai/build/settings", "https://docs.x.ai/build/settings/reference"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".grok/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git *)"; readonly notes: "Patterns can target tools and their arguments, including Read(src/**) and MCPTool(server__*)."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--always-approve"; readonly note: "Skip permission prompts for tool calls."; }, { readonly flag: "--permission-mode "; readonly note: "Selects default, dontAsk, acceptEdits, bypassPermissions, or plan mode."; }, { readonly flag: "--deny "; readonly note: "Adds a deny rule for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Grok CLI permission grant writing."; }; }; } | { readonly id: "hermes"; readonly name: "Hermes Agent"; readonly vendor: "Nous Research"; readonly homepage: "https://hermes-agent.nousresearch.com"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".hermes"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Hermes Agent documentation"; readonly url: "https://hermes-agent.nousresearch.com/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes reads SKILL.md skills from ~/.hermes/skills as the source of truth. Additional external skill directories can be configured in ~/.hermes/config.yaml for shared team use.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Additional directory precedence and every frontmatter field were not revalidated."]; readonly claimScope: "User skill library and additional configured sources"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes declares MCP servers under mcp_servers in ~/.hermes/config.yaml. AXM writes declared named entries in that YAML file without ownership metadata, preserving other entries and coexisting with hermes mcp commands.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/config.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly keyPath: readonly ["mcp_servers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native delegate_task workers have isolated contexts, parallel execution and configurable delegation models."; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "Native delegate_task workers have isolated contexts, parallel execution and configurable delegation models."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes has profile config.yaml shell hooks, Python plugin hooks, outbound webhooks and Gateway-only HOOK.yaml plus handler.py directories. Gateway hooks do not run in the CLI or Desktop; modeled event mappings cover only part of this surface."; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks", "https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/"]; readonly scopes: readonly ["user"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/config.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".hermes/shell-hooks-allowlist.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The existing event mappings and allowlist mechanics were not exhaustively revalidated."]; readonly claimScope: "Hook system availability and surface boundaries"; }; readonly mechanism: readonly ["command-stdin"]; readonly events: readonly [{ readonly nativeName: "pre_tool_call"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_tool_call"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "terminal|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_llm_call"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_llm_call"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "on_session_start"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "subagent_stop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "transform_llm_output"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "modify"; readonly operations: readonly ["modify-output"]; }]; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Hermes reads AGENTS.md as a recursive project instruction source. .hermes.md and SOUL.md are higher-priority native alternatives at the git root, but AGENTS.md is the cross-tool standard AXM writes.\n"; readonly docs: readonly []; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/configuration"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Hermes Agent"; readonly surface: "Hermes CLI and Gateway; hook behavior varies by surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://hermes-agent.nousresearch.com/docs/user-guide/features/hooks/", "https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/", "https://hermes-agent.nousresearch.com/docs/user-guide/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, instructions, permissions."]; readonly claimScope: "Hook systems and native subagent delegation"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "iflow-cli"; readonly name: "iFlow CLI"; readonly vendor: "XinLiu AI"; readonly homepage: "https://platform.iflow.cn/cli"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".iflow"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".iflow"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "iflow"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/.iflow"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "iFlow CLI documentation"; readonly url: "https://platform.iflow.cn/en/cli/quickstart"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/skill"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".iflow/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow CLI supports CLI-managed and JSON-configured MCP servers at user and project scopes."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The vendor docs name both settings and legacy MCP files; AXM has not verified one lossless writer dialect across them."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".iflow/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow documents command hooks at user and project scopes, but AXM has not modeled the event and serialization contract."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/examples/hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the iFlow hook dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/configuration/iflow"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "IFLOW.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "iFlow exposes confirmation and YOLO execution modes, but vendor docs do not define stable granular permission files for AXM."; readonly docs: readonly []; readonly sources: readonly ["https://platform.iflow.cn/en/cli/quickstart"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["cli-flag", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Allow tool execution without per-operation confirmation."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not emit broad bypass flags as permission grants."; }; }; readonly profile: { readonly identity: { readonly product: "iFlow CLI"; readonly surface: "iFlow CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://platform.iflow.cn/en/cli/quickstart"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI product availability and advertised MCP/subagent support"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "ibm-bob"; readonly name: "IBM Bob"; readonly vendor: "IBM"; readonly homepage: "https://bob.ibm.com"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".bob"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "IBM Bob documentation"; readonly url: "https://bob.ibm.com/docs/ide"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".bob/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project servers live in .bob/mcp.json; user servers in ~/.bob/mcp.json. Both files key entries under mcpServers. Streamable HTTP entries use \"type\": \"streamable-http\"; legacy SSE entries remain URL-only.\n"; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/mcp/mcp-in-bob"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".bob/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".bob/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "streamable-http"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "streamable-http"; }; }, null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom modes use .bob/custom_modes.yaml or ~/.bob/settings/custom_modes.yaml. Modes configure tool groups, including subtask/subagent access and allowedSubagents; older JSON mode definitions are converted by the UI."; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".bob/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".bob/settings/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "IDE custom mode YAML and permitted subagents"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Bob automatically loads AGENTS.md from the workspace root.\n"; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/rules"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".bob/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "IBM Bob custom modes define tool access groups and file permissions, including read, edit, command, and mcp groups. AXM has not implemented a custom_modes permission writer."; readonly docs: readonly []; readonly sources: readonly ["https://bob.ibm.com/docs/ide/features/modes", "https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".bob/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".bob/settings/custom_modes.yaml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an IBM Bob custom-modes permission writer."; }; }; readonly profile: { readonly identity: { readonly product: "IBM Bob"; readonly surface: "IBM Bob IDE custom modes"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://bob.ibm.com/docs/ide/configuration/custom-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Custom modes, tool groups and instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "junie"; readonly name: "Junie"; readonly vendor: "JetBrains"; readonly homepage: "https://www.jetbrains.com/junie"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: "jetbrains"; readonly profile: { readonly identity: { readonly product: "Junie"; readonly surface: "IDE and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli.html", "https://junie.jetbrains.com/docs/agent-skills.html", "https://junie.jetbrains.com/docs/junie-cli-hooks.html"]; readonly conditions: readonly ["CLI hooks remain an Early Access surface."]; readonly limitations: readonly ["CLI and skill discovery reviewed; CLI hooks are Early Access and must not be inferred for every IDE.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".junie"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Junie documentation"; readonly url: "https://junie.jetbrains.com/docs/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/agent-skills.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-mcp-configuration.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".junie/mcp/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/mcp/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-subagents.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI hooks support seven command (type:command) event types: SessionStart, UserPromptSubmit, PreToolUse, Stop, StopFailure, PermissionRequest, and SessionEnd, configured from user config or explicit --config-location files. Default project hooks are still ignored for safety, so AXM does not write Junie hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-hooks.html", "https://junie.jetbrains.com/docs/junie-cli-configuration.html"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no trusted project hook writer target for Junie CLI hooks."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI reads persistent project guidance from .junie/AGENTS.md and suggests importing AGENTS.md-style files from other agents into that location."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/guidelines-and-memory.html", "https://junie.jetbrains.com/docs/junie-cli-usage.html"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".junie/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Junie CLI uses the Action Allowlist for terminal commands, MCP tools, and other sensitive actions; brave mode allows all sensitive actions for a session."; readonly docs: readonly []; readonly sources: readonly ["https://junie.jetbrains.com/docs/junie-cli-usage.html", "https://junie.jetbrains.com/docs/action-allowlist.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/allowlist.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user-additional-1"; readonly scope: "user"; readonly root: "home"; readonly path: ".junie/config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "regex"; readonly example: "^\\Qaxm \\E[^\\s;&|<>@$]+.*$"; readonly notes: "Terminal rules can be exact commands, Java regular expressions, or standard regular expressions."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Junie Action Allowlist writer."; }; }; } | { readonly id: "lingma"; readonly name: "Lingma"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://help.aliyun.com/zh/lingma"; readonly interfaces: readonly ["ide-extension"]; readonly family: "alibaba"; readonly rootDir: ".lingma"; readonly lifecycle: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "Alibaba renamed TONGYI Lingma to Qoder CN."; readonly supersededBy: "qoder-cn"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".lingma"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.lingma"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Qoder CN (formerly Lingma) documentation"; readonly url: "https://help.aliyun.com/en/lingma/introduction-of-lingma"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/qoder-cn/user-guide/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".lingma/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "The IDE reads MCP services from its settings file; AXM has no verified writer for the legacy Lingma surface."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/qoder-cn/user-guide/guide-for-using-mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the legacy Lingma IDE settings dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Lingma/Qoder CN IDE command hooks are documented in ~/.lingma/settings.json."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn/user-guide/hooks"]; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented the Lingma IDE hook dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "The Lingma product name was replaced by Qoder CN."; readonly supersededByType: null; }; readonly notes: "The IDE exposes Auto-Run controls in settings rather than a documented portable rule grammar."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn/user-guide/agent"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM cannot write UI-only Lingma Auto-Run settings."; }; }; readonly profile: { readonly identity: { readonly product: "Lingma"; readonly surface: "Legacy Lingma IDE identity, renamed to Qoder CN"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://help.aliyun.com/en/lingma/introduction-of-lingma"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Alibaba warns that the Lingma documentation may be outdated; current Qoder CN IDE reader mechanics were not revalidated.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "May 2026 product rename and current documentation authority"; }; readonly lifecycleQualifications: readonly [{ readonly scope: "product"; readonly subject: "TONGYI Lingma branding"; readonly state: "deprecated"; readonly since: "2026-05-20"; readonly note: "Alibaba renamed the product Qoder CN. This identity records the legacy IDE surface; the qoder-cn entry models the CLI, not every renamed product."; readonly sources: readonly ["https://help.aliyun.com/en/lingma/introduction-of-lingma"]; }]; }; } | { readonly id: "kilo"; readonly name: "Kilo Code"; readonly vendor: "Kilo"; readonly homepage: "https://kilo.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".kilo"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kilo Code documentation"; readonly url: "https://kilo.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/automate/mcp/using-in-cli", "https://kilo.ai/docs/automate/mcp/using-in-kilo-code"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "kilo.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/kilo.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; readonly command: "array"; readonly envKey: "environment"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "remote"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "CLI project .kilo/agents and user ~/.config/kilo/agents Markdown files"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kilo.ai/docs/code-with-ai/platforms/cli", "https://kilo.ai/docs/getting-started/settings/auto-approving-actions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".config/kilo/kilo.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "kilo.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".kilo/kilo.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "axm *"; readonly notes: "Permission values are \"allow\", \"ask\", or \"deny\". Object rules are wildcard matched, and the last matching rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly bash: { readonly "*": "ask"; readonly "${tool} *": "allow"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly external_directory: { readonly "${workspaceRoot}/**": "allow"; }; readonly read: { readonly "${workspaceRoot}/**": "allow"; }; readonly edit: { readonly "${workspaceRoot}/**": "allow"; }; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Kilo Code"; readonly surface: "Kilo CLI; editor extensions have separate configuration"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kilo.ai/docs/customize/custom-subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "CLI custom subagent paths and configuration precedence"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "kimi-cli"; readonly name: "Kimi Code CLI"; readonly vendor: "Moonshot AI"; readonly homepage: "https://www.kimi.com/code/docs/en/kimi-code-cli/"; readonly interfaces: readonly ["cli"]; readonly family: "moonshot"; readonly profile: { readonly identity: { readonly product: "Kimi Code"; readonly surface: "CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code/whats-new.html"]; readonly conditions: readonly []; readonly limitations: readonly ["Recent releases and remote/web features reviewed. Existing local definition paths retain their earlier evidence; remote session access is not a distinct writer.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".kimi-code"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.kimi-code"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Kimi Code CLI documentation"; readonly url: "https://www.kimi.com/code/docs/en/kimi-code-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code discovers skills from Kimi-specific and cross-tool directories; AXM writes the universal .agents/skills location."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/skills.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/mcp.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kimi-code/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [{ readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [null, { readonly name: "transport"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; readonly bearerTokenEnvKey: "bearerTokenEnvVar"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code recursively discovers Markdown custom agents with YAML frontmatter and can delegate to them as subagents."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/agents.html"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kimi-code/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code hooks are TOML array entries, execute commands with JSON on standard input, and can block selected events."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Read|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Read|Write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "regex"; readonly example: "deploy|release"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/hooks.html"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM's grouped hook serializer cannot emit Kimi Code's flat TOML hook arrays."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code loads AGENTS.md from project and Kimi-specific or cross-tool user locations."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/customization/agents.html"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kimi Code loads ordered allow, deny, and ask rules from its user configuration; invocation flags can still apply coarse session modes."; readonly docs: readonly []; readonly sources: readonly ["https://www.kimi.com/code/docs/en/kimi-code-cli/configuration/config-files"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kimi-code/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "decision = \"allow\"; pattern = \"Bash(axm *)\""; readonly notes: "Rules are ordered [[permission.rules]] tables whose first matching ToolName or ToolName(argument-pattern) rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--yolo"; readonly note: "Auto-approves all tool calls; aliased as --yes and --auto-approve."; }, { readonly flag: "--afk"; readonly note: "Auto-approves tool calls and auto-dismisses AskUserQuestion."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not serialize ordered TOML array-of-table permission rules."; }; }; } | { readonly id: "kiro-cli"; readonly name: "Kiro CLI"; readonly vendor: "AWS"; readonly homepage: "https://kiro.dev"; readonly interfaces: readonly ["cli"]; readonly family: "amazon"; readonly rootDir: ".kiro"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kiro CLI documentation"; readonly url: "https://kiro.dev/docs/cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/mcp/configuration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/settings/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/settings/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly ["Legacy CLI 2.x agent files remain visible and can be upgraded with /upgrade-agent."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Full V3 permission and MCP dialects were not revalidated."]; readonly claimScope: "V3 custom agent configuration and project/home discovery"; }; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro custom agent configuration V3 requires a hooks array. Legacy CLI 2.x hook objects are migrated by /upgrade-agent; AXM has no Kiro hook writer."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/hooks/", "https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly ["V3 requires hook arrays; /upgrade-agent migrates CLI 2.x hook objects."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "V3 hook array migration from legacy object form"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Kiro CLI hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro CLI steering files live under .kiro/steering and can be always-on, conditional, or manually referenced."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/steering/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/steering"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kiro CLI custom agent configuration supports allowedTools, toolsSettings, and the hooks/MCP tools settings surfaces. The public docs do not define a single default AXM-writable permission grant target."; readonly docs: readonly []; readonly sources: readonly ["https://kiro.dev/docs/cli/custom-agents/configuration-reference/", "https://kiro.dev/docs/cli/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".kiro/agents/*.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".kiro/agents/*.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "allowedTools: [\"Read\", \"Write\", \"Bash\"]"; readonly notes: "Permission rules are embedded in custom agent configuration files."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Kiro CLI custom-agent permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Kiro CLI"; readonly surface: "Kiro CLI custom agent configuration V3"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://kiro.dev/docs/custom-agents/configuration-reference/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, instructions, permissions."]; readonly claimScope: "Versioned custom-agent configuration and hook migration"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "kode"; readonly name: "Kode"; readonly vendor: "shareAI-lab"; readonly homepage: "https://github.com/shareAI-lab/Kode-CLI"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".kode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Kode CLI repository"; readonly url: "https://github.com/shareAI-lab/Kode-CLI"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kode connects to MCP servers via .mcp.json (mcpServers key) and .mcprc, managed with kode mcp add/list/get/remove; server tools are exposed as mcp____. Kode also supports a ws transport that is outside AXM's transport enum."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Native MCP config uses .mcp.json (mcpServers key), but the exact writer dialect is not documented; leaving the AXM MCP writer unbuilt pending an AXM product decision."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".kode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Kode walks repository-root to working-directory instruction files, preferring AGENTS.override.md to AGENTS.md at a level; legacy CLAUDE.md remains readable. The default combined project document cap is 32 KiB."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.override.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Repository-to-cwd AGENTS.md discovery and AGENTS.override.md precedence"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--safe"; readonly note: "Enables permission checks instead of Kode's default YOLO mode."; }, { readonly flag: "--dangerously-skip-permissions"; readonly note: "Explicitly bypasses permission checks."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Kode"; readonly surface: "Kode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/shareAI-lab/Kode-CLI"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, permissions."]; readonly claimScope: "CLI product and AGENTS.md instruction discovery"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "mcpjam"; readonly name: "MCPJam"; readonly vendor: "MCPJam"; readonly homepage: "https://www.mcpjam.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".mcpjam"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MCPJam Inspector documentation"; readonly url: "https://docs.mcpjam.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcpjam/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing local filesystem reader paths were not revalidated by the hosted workflow review."]; readonly claimScope: "Skill use in local Inspector and cloud projects"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MCPJam Inspector loads MCP servers from a config file (mcpServers object) passed via `npx @mcpjam/inspector --config `, supporting stdio and remote (streamable-HTTP/SSE) transports. The config path is arbitrary with no fixed writable location."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mcpjam.com/installation"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM does not manage MCPJam's inspector config file — the --config path is arbitrary with no stable writable project location."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "MCPJam"; readonly surface: "MCPJam local Inspector; cloud skill workflows are a separate surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mcpjam.com/inspector/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Local and hosted skill use"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "mistral-vibe"; readonly name: "Mistral Vibe"; readonly vendor: "Mistral AI"; readonly homepage: "https://docs.mistral.ai/vibe/code/overview"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "mistral"; readonly rootDir: ".vibe"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Mistral Vibe documentation"; readonly url: "https://docs.mistral.ai/vibe/code/overview"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Mistral Vibe stores MCP servers as repeated [[mcp_servers]] TOML array-of-table entries. AXM's generic MCP writer currently serializes keyed server maps and cannot represent that shape without corrupting the configuration."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom definitions are TOML files under project or home .vibe/agents. agent_type is required; subagent definitions are invoked by task delegation, not --agent."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .vibe/agents TOML with agent_type agent or subagent"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Vibe executes TOML-configured hook commands with event data on standard input; pre-tool hooks can deny or modify tool input and hook output can inject context."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/hooks.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/hooks.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "pre_tool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "bash|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input", "inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_tool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "bash|read_file|write_file"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_agent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Vibe supports per-tool always/ask policies and Bash allow/deny command rules in layered config files."; readonly docs: readonly []; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/safety-approvals-permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vibe/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".vibe/config.toml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "toml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "[tools.bash]\npermission = \"ask\""; readonly notes: "Per-tool policy is always or ask; Bash rules additionally allow or deny command patterns."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Mistral Vibe"; readonly surface: "Mistral Vibe Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.mistral.ai/vibe/code/cli/agents"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "TOML custom agents and subagent types"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "minimax-code"; readonly name: "MiniMax Code"; readonly vendor: "MiniMax"; readonly homepage: "https://agent.minimax.io/download"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly rootDir: ".minimax"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MiniMax Code"; readonly url: "https://github.com/MiniMax-AI/minimax-code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI discovers workspace SKILL.md directories, built-in skills and installed plugin skills."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".minimax/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Full Agent Skills conformance and every discovery priority were not assessed."]; readonly claimScope: "Workspace skill roots and directory symlink support"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The runtime reads .mcp.json only from the session main workspace. It supports stdio, HTTP and SSE; no ancestor or additional-directory search is performed."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly entryDialect: null; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "The user-profile configuration and writer dialect remain unmodeled."]; readonly claimScope: "Project MCP path and transports"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI runtime provides native subagent tools. A portable custom-subagent directory was not established."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "The CLI runtime provides native subagent tools. A portable custom-subagent directory was not established."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MiniMax-format plugins register hook documents through their manifest hooks array; synchronous command hooks can return TUI systemMessage notices."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "MiniMax-format plugins register hook documents through their manifest hooks array; synchronous command hooks can return TUI systemMessage notices."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "mcode init creates or updates AGENTS.md project guidance."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Nested instruction traversal and personal instruction locations were not established."]; readonly claimScope: "mcode init creates or updates AGENTS.md project guidance."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The CLI exposes execution permission modes, local rules and sandboxing."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only", "config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "The CLI exposes execution permission modes, local rules and sandboxing."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "MiniMax Code"; readonly surface: "MiniMax Code terminal TUI, headless CLI and ACP; desktop is separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: readonly ["MiniMax", "User-configured compatible providers"]; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/MiniMax-AI/minimax-code", "https://github.com/MiniMax-AI/minimax-code/blob/main/docs/tui-capabilities.md", "https://github.com/MiniMax-AI/minimax-code/blob/main/packages/local-runtime-v2/docs/project-mcp.md", "https://github.com/MiniMax-AI/minimax-code/blob/main/docs/hooks.md"]; readonly conditions: readonly ["Capabilities reviewed against public CLI source targeting TUI 0.4.12; matching npm versions do not prove identical source/build provenance.", "The desktop app source is outside the public CLI repository; ACP is a CLI protocol surface."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "Public CLI source capabilities and desktop boundary"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "mux"; readonly name: "Xum"; readonly vendor: "Coder"; readonly homepage: "https://xum.coder.com"; readonly interfaces: readonly ["cli", "desktop", "ide-extension"]; readonly family: null; readonly rootDir: ".xum"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Xum documentation"; readonly url: "https://xum.coder.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "New project skills use .xum/skills. Xum also reads shared .agents/skills and legacy .mux/skills; .xum wins when both canonical and legacy directories exist."; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents/agent-skills", "https://xum.coder.com/agents/agent-skills", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".xum/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".xum/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".mux/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Used when the canonical .xum skills directory is absent."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/agents/agent-skills", "https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical Xum skill roots and documented legacy readers"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Xum stores stdio command strings under the servers key in ~/.xum/mcp.jsonc, .xum/mcp.jsonc, and .xum/mcp.local.jsonc."; readonly docs: readonly []; readonly sources: readonly ["https://xum.coder.com/config/mcp-servers", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio"]; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing detailed protocol and hook behavior were not revalidated."]; readonly claimScope: "Canonical directory and environment naming after the rename"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".xum/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".xum/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".mux/agents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Used when the corresponding canonical .xum directory is absent."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Agent frontmatter and delegation semantics were not revalidated."]; readonly claimScope: "Canonical project agent directory after the rename"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Xum executes raw tool_pre, tool_post, tool_env, and init scripts from .xum or ~/.xum. Input is provided through XUM_* environment variables; tool_pre can block with a non-zero exit."; readonly docs: readonly []; readonly sources: readonly ["https://xum.coder.com/hooks/tools.md", "https://xum.coder.com/hooks/init.md", "https://xum.coder.com/reference/mux-compatibility"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Existing detailed protocol and hook behavior were not revalidated."]; readonly claimScope: "Canonical directory and environment naming after the rename"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://mux.coder.com/agents/instruction-files"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Xum"; readonly surface: "Xum CLI and desktop, formerly Mux"; readonly edition: null; readonly ownership: { readonly company: "Coder"; readonly parentCompany: null; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility"]; }; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://xum.coder.com/reference/mux-compatibility", "https://xum.coder.com/agents/agent-skills"]; readonly conditions: readonly ["The catalog identifier mux is retained; Xum is the current product name. Vendor compatibility locations are reader facts, not AXM compatibility shims."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: instructions, permissions."]; readonly claimScope: "Product rename and canonical configuration locations"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "neovate"; readonly name: "Neovate"; readonly vendor: "Ant Group"; readonly homepage: "https://github.com/neovateai/neovate-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".neovate"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Neovate Code documentation"; readonly url: "https://github.com/neovateai/neovate-code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Neovate loads directory-based skills (each subdirectory contains a SKILL.md with name+description frontmatter) from .neovate/skills (project) and ~/.neovate/skills (user)."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".neovate/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".neovate/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Native and Claude-compatible skill discovery"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/mcp.ts", "https://github.com/neovateai/neovate-code/blob/master/src/config.ts", "https://github.com/neovateai/neovate-code/blob/master/src/commands/mcp.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".neovate/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".neovate/config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disable"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disable"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }, null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native configuration defines approvalMode values default, autoEdit and yolo."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Native configuration defines approvalMode values default, autoEdit and yolo."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Neovate"; readonly surface: "Neovate Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/neovateai/neovate-code/blob/master/src/skill.ts", "https://github.com/neovateai/neovate-code/blob/master/src/config.ts"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions."]; readonly claimScope: "Skill discovery and native approval modes from vendor source"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "openclaw"; readonly name: "OpenClaw"; readonly vendor: "OpenClaw"; readonly homepage: "https://openclaw.ai"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenClaw documentation"; readonly url: "https://docs.openclaw.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills", "https://github.com/openclaw/openclaw/blob/main/docs/tools/skills.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the configured OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the configured OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".openclaw/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default OPENCLAW_STATE_DIR only; otherwise resolve the configured state directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Personal home skills are excluded when using a non-default state directory."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills"]; readonly conditions: readonly ["Project locations refer to the configured agent workspace, which need not be the current repository."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Workspace, state-owned and personal skill discovery"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenClaw connects MCP servers through mcp.servers in its Gateway configuration. UI and CLI administration support stdio, Streamable HTTP and SSE; configured servers remain subject to tool policy. The default file is ~/.openclaw/openclaw.json (JSON5); resolve the active state/configuration path. JSON5 reader mechanics are not yet modeled in this catalog."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/mcp"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Exact entry grammar, secret handling and vendor runtime connectivity were not verified."]; readonly claimScope: "Native MCP client, transports and configuration key"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native sessions_spawn starts isolated background subagent runs with per-agent configuration and lifecycle tracking."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "Native sessions_spawn starts isolated background subagent runs with per-agent configuration and lifecycle tracking."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Internal hooks use HOOK.md and a handler module; typed plugin hooks use api.on. Workspace hooks require explicit opt-in; HTTP ingress hooks are a separate feature."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/automation/hooks"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly entryDialect: null; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/automation/hooks"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Event serialization and AXM writing remain unmodeled."]; readonly claimScope: "Internal hooks use HOOK.md and a handler module; typed plugin hooks use api.on. Workspace hooks require explicit opt-in; HTTP ingress hooks are a separate feature."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The configured agent workspace AGENTS.md is loaded at session start. Workspace location is explicit agent configuration and is not necessarily the current repository."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/concepts/agent-workspace"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Resolve the active OpenClaw agent workspace before selecting this path."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/concepts/agent-workspace"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "The configured agent workspace AGENTS.md is loaded at session start. Workspace location is explicit agent configuration and is not necessarily the current repository."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native tools.exec.mode controls host execution policy. Host-local approvals, session posture and delegated harness settings can impose additional restrictions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openclaw.ai/tools/permission-modes"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/permission-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Native tools.exec.mode controls host execution policy. Host-local approvals, session posture and delegated harness settings can impose additional restrictions."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "OpenClaw"; readonly surface: "OpenClaw Gateway agent with CLI and Control UI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openclaw.ai/tools/skills", "https://docs.openclaw.ai/tools/subagents", "https://docs.openclaw.ai/automation/hooks", "https://docs.openclaw.ai/tools/mcp", "https://docs.openclaw.ai/concepts/agent-workspace", "https://docs.openclaw.ai/tools/permission-modes"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification."]; readonly claimScope: "Workspace skill scopes, hooks and subagent delegation"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "opencode"; readonly name: "OpenCode"; readonly vendor: "Anomaly"; readonly homepage: "https://opencode.ai"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: null; readonly rootDir: ".opencode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenCode documentation"; readonly url: "https://opencode.ai/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/skills/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://opencode.ai/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical and compatible project/home skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode V2 stores server definitions beneath mcp.servers and expands {env:NAME} references without shell defaults."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/v2/docs/mcp-servers", "https://opencode.ai/v2/docs/config", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/config.ts", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/config/mcp.ts", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "env-tag"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-jsonc"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-directory"; readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/opencode.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "project-directory-jsonc"; readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }, { readonly id: "user-jsonc"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.jsonc"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp", "servers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [null, { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }]; }; readonly stdio: { readonly command: "array"; readonly envKey: "environment"; readonly cwdKey: "cwd"; readonly typeField: { readonly required: { readonly name: "type"; readonly value: "local"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "local"; }]; }; }; readonly remote: { readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; readonly typeField: { readonly required: { readonly name: "type"; readonly value: "remote"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "remote"; }]; }; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/agents/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".opencode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode exposes lifecycle hooks through in-process JavaScript/TypeScript plugins. AXM models the surface but does not serialize plugin hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/plugins/"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "OpenCode hooks are in-process JavaScript plugin exports, not declarative config; AXM's command-stdin serializer has no way to emit them."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenCode reads AGENTS.md project rules, a global ~/.config/opencode/AGENTS.md, and Claude-compatible CLAUDE.md fallbacks. AXM can target the universal AGENTS.md project file."; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/rules/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://opencode.ai/docs/rules/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".claude/CLAUDE.md"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Fallback when the OpenCode global AGENTS.md is absent and Claude Code prompt compatibility is enabled."; }; readonly provenance: { readonly kind: "sources"; readonly sources: readonly ["https://opencode.ai/docs/rules/"]; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://opencode.ai/docs/permissions/", "https://opencode.ai/docs/config/", "https://github.com/anomalyco/opencode/blob/dev/packages/core/src/global.ts"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "xdg-config"; readonly path: "opencode/opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: "opencode.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "axm *"; readonly notes: "Permission values are \"allow\", \"ask\", or \"deny\". Object rules are pattern matched, and the last matching rule wins."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly bash: { readonly "*": "ask"; readonly "${tool} *": "allow"; }; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permission: { readonly external_directory: { readonly "${workspaceRoot}/**": "allow"; }; readonly read: { readonly "${workspaceRoot}/**": "allow"; }; readonly edit: { readonly "${workspaceRoot}/**": "allow"; }; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "OpenCode"; readonly surface: "OpenCode CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://opencode.ai/docs/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Local skill discovery and compatible skill directories"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "openhands"; readonly name: "OpenHands"; readonly vendor: "All Hands AI"; readonly homepage: "https://www.openhands.dev"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".openhands"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "OpenHands documentation"; readonly url: "https://docs.openhands.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/microagents"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical .agents/skills and legacy .openhands skill roots"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenHands stores MCP servers under mcpServers in ~/.openhands/mcp.json and manages them through the openhands mcp CLI."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/sdk/guides/mcp", "https://docs.openhands.dev/openhands/usage/cli/mcp-servers"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented an OpenHands MCP writer."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "OpenHands lifecycle hooks are shell commands receiving JSON event payloads on stdin. Blocking events can deny with exit code 2 or a JSON decision; several events can inject additional context."; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly scopes: readonly ["project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".openhands/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "terminal"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "terminal"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://docs.openhands.dev/openhands/usage/customization/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "OpenHands"; readonly surface: "OpenHands agent; reviewed skill contract"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.openhands.dev/overview/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Canonical and legacy skill paths"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "ona"; readonly name: "Ona"; readonly vendor: "Ona"; readonly homepage: "https://ona.com"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly rootDir: ".ona"; readonly lifecycle: { readonly state: "deprecated"; readonly since: null; readonly note: "The original Ona Agent is deprecated. Ona Cloud migrated to Codex; Enterprise customer-managed Anthropic remains temporarily available."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".ona"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Ona Agent documentation"; readonly url: "https://ona.com/docs/ona/agents"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".ona/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Ona reads repository MCP definitions from .ona/mcp-config.json and also offers organization-managed HTTP integrations."; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/mcp"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Ona's mcp-config.json dialect or hosted integration delivery."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Ona administrators configure command and executable deny lists as organization guardrails; the vendor does not document a repository permission file."; readonly docs: readonly []; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Ona guardrails are managed through the organization administration surface."; }; }; readonly profile: { readonly identity: { readonly product: "Ona"; readonly surface: "Original Ona Agent harness in isolated development environments; not the whole Ona platform"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; readonly conditions: readonly ["Continued use requires Enterprise with customer-managed Anthropic model access on a supported AWS or GCP runner."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Harness deprecation with cloud and Enterprise qualifications"; }; readonly lifecycleQualifications: readonly [{ readonly scope: "surface"; readonly subject: "Original Ona Agent on Ona Cloud"; readonly state: "retired"; readonly since: null; readonly note: "No longer available; affected projects move to Codex Agent."; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; }, { readonly scope: "edition"; readonly subject: "Enterprise customer-managed Anthropic Ona Agent"; readonly state: "deprecated"; readonly since: null; readonly note: "Remains available temporarily on supported AWS/GCP Enterprise deployments. This does not retire the Ona platform."; readonly sources: readonly ["https://ona.com/docs/ona/agents/overview"]; }]; }; } | { readonly id: "pi"; readonly name: "Pi"; readonly vendor: "Earendil Inc"; readonly homepage: "https://github.com/earendil-works/pi"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".pi"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Pi coding agent documentation"; readonly url: "https://pi.dev/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills follow the Agent Skills SKILL.md standard and are invoked via /skill:name. Pi discovers them from .pi/skills and .agents/skills (project, searched up through parent directories) and ~/.pi/agent/skills and ~/.agents/skills (user).\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".pi/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".pi/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Requires Pi 1.0 or later. Native runtime verification is pending. Hyphens and underscores collide in exposed server names. Reload the host after configuration changes."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/v1.0.0/packages/coding-agent/docs/mcp.md"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; readonly fields: readonly ["env", "headers"]; readonly executableValues: true; readonly homeExpansion: true; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".pi/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".pi/agent/mcp.json"; readonly configRootRelativePath: "mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }; readonly accepted: readonly [null, { readonly name: "enabled"; readonly enabled: true; readonly disabled: false; }]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "http"; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "http"; }, { readonly name: "type"; readonly value: "streamable-http"; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "plugin"; readonly provider: "third-party"; readonly plugin: { readonly name: "pi-subagents"; readonly homepage: "https://github.com/nicobailon/pi-subagents"; readonly author: "nicobailon"; readonly distribution: { readonly mechanism: "agent-native"; readonly installHint: "pi install npm:pi-subagents"; readonly packageRef: "npm:pi-subagents"; }; readonly detection: { readonly paths: readonly [{ readonly scope: "user"; readonly path: "~/.pi/agent/agents/"; readonly kind: "dir"; }, { readonly scope: "project"; readonly path: ".pi/agents/"; readonly kind: "dir"; }, { readonly scope: "user"; readonly path: "~/.pi/agent/extensions/subagent/agents/"; readonly kind: "dir"; }]; readonly configKeys: readonly [{ readonly scope: "user"; readonly file: "~/.pi/agent/settings.json"; readonly key: "subagents"; }, { readonly scope: "project"; readonly file: ".pi/settings.json"; readonly key: "subagents"; }]; }; }; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pi has no built-in subagent system by design, but the third-party pi-subagents plugin adds a subagent extension surface. AXM describes and may detect this plugin, but does not install, resolve, or manage it.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md", "https://github.com/nicobailon/pi-subagents"]; readonly scopes: readonly ["user", "project"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pi extension hooks are in-process TypeScript extension points; this is the core Pi project, not the oh-my-pi fork. AXM models the surface but does not serialize Pi extension hooks yet."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Pi extension hook writers."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "AGENTS.md and CLAUDE.md context load at startup from the global directory (~/.pi/agent), parent directories, and the current directory; all matching files are concatenated.\n"; readonly docs: readonly []; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project trust is documented separately from per-tool grants. The current per-tool permission boundary was not established by this review."; readonly docs: readonly []; readonly sources: readonly ["https://pi.dev/docs/latest/settings"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Pi"; readonly surface: "Pi terminal coding agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/earendil-works/pi/blob/main/packages/coding-agent/README.md", "https://github.com/earendil-works/pi/blob/main/packages/coding-agent/docs/configuration.md"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Pi 1.0 MCP configuration is implemented from its versioned documentation; native runtime acceptance remains pending.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current terminal product and configuration entry points"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "pochi"; readonly name: "Pochi"; readonly vendor: "TabbyML"; readonly homepage: "https://getpochi.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".pochi"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Pochi documentation"; readonly url: "https://docs.getpochi.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project Pochi and shared skill roots and invocation controls"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/mcp/", "https://docs.getpochi.com/tutorials/secure-db-access-in-pochi/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/config.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".pochi/config.jsonc"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["mcp"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: { readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }; readonly accepted: readonly [{ readonly name: "disabled"; readonly enabled: false; readonly disabled: true; }, null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Custom agents are Markdown files in project or home .pochi/agents with YAML frontmatter. Description is required; name defaults to the filename."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".pochi/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".pochi/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Custom agents are Markdown files in project or home .pochi/agents with YAML frontmatter. Description is required; name defaults to the filename."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Pochi reads custom-instruction files at the workspace root: README.pochi.md (primary) and AGENTS.md (alternative, treated identically), plus ~/.pochi/README.pochi.md at user scope. AXM manages the universal AGENTS.md."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/rules/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "UI Auto-Approve controls cover reading, writing, execution, MCP use and retry behavior."; readonly docs: readonly []; readonly sources: readonly ["https://docs.getpochi.com/permissions/"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/permissions/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "UI Auto-Approve controls cover reading, writing, execution, MCP use and retry behavior."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Pochi"; readonly surface: "Pochi editor agent and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.getpochi.com/custom-agent/", "https://docs.getpochi.com/permissions/", "https://docs.getpochi.com/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, hook, instructions."]; readonly claimScope: "Custom agent Markdown definitions and UI approvals"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "qoder"; readonly name: "Qoder"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://qoder.com"; readonly interfaces: readonly ["cli", "ide-extension"]; readonly family: "alibaba"; readonly rootDir: ".qoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Qoder documentation"; readonly url: "https://docs.qoder.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/Skills", "https://docs.qoder.com/cli/Skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.com/cli/Skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Other capability contracts were not revalidated."]; readonly claimScope: "CLI project/user skill discovery and /skills reload"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CLI 1.1.64 expands braced environment references and unset-variable defaults in MCP headers and stdio env values."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/user-guide/chat/model-context-protocol", "https://docs.qoder.com/cli/mcp-servers", "https://unpkg.com/@qoder-ai/qodercli@1.1.64/bundle/qodercli.js"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CLI hooks run command hooks from settings files and use JSON on stdin/stdout. Native Qoder exposes additional events such as SessionEnd, PostToolUseFailure, SubagentStart, Notification, and PermissionRequest; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project-additional-1"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.local.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: true; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|compact"; readonly notes: "Qoder matcher values can be exact strings, pipe-separated values, or regex."; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "Write|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: "task"; readonly notes: "Matcher targets the agent type name."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "Read"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Write"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.qoder.com/en/cli/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "seconds"; readonly commandNameSerialization: "omit"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/command"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder permissions use allow/ask/deny rules in settings. User settings live under ~/.qoder/settings.json; project rules can live in .qoder/settings.json or .qoder/settings.local.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.qoder.com/en/cli/permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm:*)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--permission-mode"; readonly note: "Chooses the session permission mode."; }, { readonly flag: "--allowed-tools"; readonly note: "Allows specific tools or tool rules for a run."; }, { readonly flag: "--dangerously-skip-permissions"; readonly note: "Alias for --permission-mode bypass_permissions."; }]; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool}:*)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "project"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)", "Write(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Qoder"; readonly surface: "Qoder CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.com/cli/Skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "CLI skill discovery and reload behavior"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "qoder-cn"; readonly name: "Qoder CN CLI"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://help.aliyun.com/zh/lingma/qoder-cn-cli"; readonly interfaces: readonly ["cli"]; readonly family: "alibaba"; readonly rootDir: ".qoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".qoder"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "qoderclicn"; readonly signal: "definitive"; readonly note: null; }, { readonly kind: "dir"; readonly path: "~/.qoder-cn"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Qoder CN CLI documentation"; readonly url: "https://help.aliyun.com/zh/lingma/qoder-cn-cli"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/skills-3033419", "https://help.aliyun.com/zh/lingma/qoder-cn-cli"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI stores user, local-project, and shared-project MCP definitions in distinct settings files."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/mcp-servers"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not verified the Qoder CN CLI dialect independently from global Qoder."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/en/lingma/subagent"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI exposes command hooks, but AXM has not independently verified its complete event and serialization contract."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/qoder-cn-cli"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The regional CLI hook dialect requires a separate vendor-doc verification before AXM writes it."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/using-the-cli"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qoder CN CLI supports allow, ask, and deny rules plus session flags."; readonly docs: readonly []; readonly sources: readonly ["https://help.aliyun.com/zh/lingma/tools-3044418"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qoder-cn/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qoder/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "Bash(git status)"; readonly notes: null; }; readonly prerequisites: readonly []; readonly cliFlags: readonly [{ readonly flag: "--allowed-tools"; readonly note: "Pre-allow named tools or tool patterns for the session."; }, { readonly flag: "--disallowed-tools"; readonly note: "Deny named tools or tool patterns for the session."; }]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented regional Qoder permission settings."; }; }; readonly profile: { readonly identity: { readonly product: "Qoder CN CLI"; readonly surface: "Qoder CN CLI; distinct from the legacy Lingma IDE surface"; readonly edition: "Mainland China CLI"; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.qoder.cn/en/cli/built-ins"]; readonly conditions: readonly ["The Lingma-to-Qoder CN rename does not make legacy IDE paths interchangeable with the Qoder CN CLI."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current CLI built-in capabilities and product identity"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "qwen-code"; readonly name: "Qwen Code"; readonly vendor: "Alibaba Cloud"; readonly homepage: "https://qwenlm.github.io/qwen-code-docs/"; readonly interfaces: readonly ["cli"]; readonly family: "alibaba"; readonly rootDir: ".qwen"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Qwen Code documentation"; readonly url: "https://qwenlm.github.io/qwen-code-docs/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly conditions: readonly ["Bare mode disables discovery watchers."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and user roots, /learn and AutoSkill scopes"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "httpUrl"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user", "project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/sub-agents/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code hooks run command hooks from settings files and use JSON on stdin/stdout. Native Qwen Code also exposes HTTP hooks and additional events such as SessionEnd, PostToolUseFailure, SubagentStart, PostCompact, Notification, and PermissionRequest; this catalog maps the subset covered by AXM's canonical hook event registry."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["hooks"]; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "regex"; readonly example: "startup|resume|clear"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "UserPromptSubmit"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreToolUse"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "WriteFile|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny", "ask"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PostToolUse"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "regex"; readonly example: "WriteFile|Edit|Bash"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Stop"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "SubagentStop"; readonly canonical: "subagent.stop"; readonly matcher: { readonly kind: "regex"; readonly example: "Bash|Explorer"; readonly notes: "Matcher targets the subagent type."; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompact"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "regex"; readonly example: "manual|auto"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "modify"; readonly operations: readonly ["inject-context"]; }]; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/hooks/"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "ReadFile"; readonly canonical: "file.read"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "WriteFile"; readonly canonical: "file.write"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Edit"; readonly canonical: "file.edit"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/file-system/"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "Bash"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/developers/tools/shell/"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: { readonly serializer: "command-stdin"; readonly matcherKind: "regex"; readonly matcherSerialization: "bare"; readonly timeoutSerialization: "milliseconds"; readonly commandNameSerialization: "manifest"; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly locationIds: readonly ["user", "project"]; readonly eventMap: "native.events"; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code loads QWEN.md from the project root and ~/.qwen/QWEN.md, and also reads AGENTS.md when present. AXM targets the universal AGENTS.md convention for project rules."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/memory/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Qwen Code grades tool access through a Claude Code-style permissions block with allow/ask/deny rule arrays. The legacy tools.allowed and tools.exclude keys are deprecated and migrate into permissions on first load; tools.approvalMode still sets the coarse default mode."; readonly docs: readonly []; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/configuration/settings/", "https://qwenlm.github.io/qwen-code-docs/en/users/features/approval-mode/", "https://qwenlm.github.io/qwen-code-docs/en/developers/tools/shell/", "https://qwenlm.github.io/qwen-code-docs/en/users/features/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".qwen/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(axm *)"; readonly notes: "Tool(pattern) rules sorted into permissions.allow, permissions.ask, and permissions.deny; deny wins over ask over allow. Approval modes are plan/default/auto-edit/auto/yolo set by tools.approvalMode (Default is surfaced as 'Ask Permissions'; the value stays 'default').\n"; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Bash(${tool} *)"]; }; }; readonly template: null; }; readonly filesystem: { readonly destination: { readonly kind: "location"; readonly locationId: "user"; }; readonly patch: { readonly permissions: { readonly allow: readonly ["Read(${workspaceRoot}/**)", "Edit(${workspaceRoot}/**)"]; }; }; readonly template: null; }; }; }; }; }; readonly profile: { readonly identity: { readonly product: "Qwen Code"; readonly surface: "Qwen Code CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and user skills, learning and reload behavior"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "replit"; readonly name: "Replit"; readonly vendor: "Replit"; readonly homepage: "https://replit.com"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Replit Agent documentation"; readonly url: "https://docs.replit.com/replitai/agent"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project skills are repository files. Team workspace skills are a separate centrally managed Workspace Settings surface, not a local user-home reader."; readonly docs: readonly []; readonly sources: readonly ["https://docs.replit.com/core-concepts/agent/skills", "https://docs.replit.com/features/agent/skills"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.replit.com/features/agent/skills"]; readonly conditions: readonly ["Workspace skills are configured centrally in Workspace Settings."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project .agents/skills and workspace-managed skills"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Replit Agent MCP is UI-driven via the Integrations pane and 'Add to Replit' install-links, connecting only to remote HTTP servers (baseUrl + headers/OAuth). There is no AXM-writable MCP config file, so no writer dialect is modeled."; readonly docs: readonly []; readonly sources: readonly ["https://docs.replit.com/replitai/mcp/overview"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly transports: readonly ["http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "Replit Agent MCP is UI-managed (Integrations pane / install-links) with no AXM-writable config file."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Replit"; readonly surface: "Replit Agent reading project files in its hosted workspace"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.replit.com/features/agent/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Project and workspace-managed skills"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "roo"; readonly name: "Roo Code"; readonly vendor: "Roo Code"; readonly homepage: "https://roocode.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".roo"; readonly lifecycle: { readonly state: "retired"; readonly since: "2026-05-15"; readonly note: "Roo Code shut down its VS Code extension, Cloud, and Router on 2026-05-15 (final release v3.54.0); the RooCodeInc/Roo-Code repo is archived and read-only. The former team pivoted to a separate cloud-agent product, Roomote."; readonly supersededBy: null; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Roo Code documentation"; readonly url: "https://docs.roocode.com"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Roo Code supports Roo-specific .roo/skills and cross-agent .agents/skills locations, including mode-specific skill directories."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".roo/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://roocodeinc.github.io/Roo-Code/features/mcp/using-mcp-in-roo"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "The current AXM Roo Code service returns MCP add/remove as unsupported."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/custom-modes"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".roomodes"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "unsupported"; readonly reason: "Native ownership is unverified."; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "This review did not establish whether Roo Code provided native hooks; its recorded product retirement does not establish feature absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella; Roo also loads AGENTS.md when agent rules are enabled."; readonly docs: readonly []; readonly sources: readonly ["https://roocodeinc.github.io/Roo-Code/features/custom-instructions"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".roo/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "removed"; readonly since: "2026-05-15"; readonly note: "Roo Code was archived on 2026-05-15; the surface is frozen and read-only."; readonly supersededByType: null; }; readonly notes: "Roo Code exposes auto-approval controls through the extension settings UI, including read, write, command, MCP, browser, and mode-switch approvals. The docs do not describe a stable AXM-writable permission config file for these controls."; readonly docs: readonly []; readonly sources: readonly ["https://docs.roocode.com/features/auto-approving-actions"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly [{ readonly key: "Auto-Approve Settings"; readonly value: "enabled per operation"; readonly scope: "user"; readonly note: "Configure in Roo Code's Auto-Approve Settings panel."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Roo Code permission grant writing."; }; }; readonly profile: { readonly identity: { readonly product: "Roo Code"; readonly surface: "Retired Roo Code product; Roomote is a separate product"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://roomote.dev/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "The existing Roo retirement date was not independently reverified. The former homepage redirects to Roomote, which says it is built by Roo Code creators and currently uses OpenCode; this is not evidence that Roo Code resumed.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Current former homepage destination and distinct successor-team product"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "rovodev"; readonly name: "Rovo Dev"; readonly vendor: "Atlassian"; readonly homepage: "https://www.atlassian.com/software/rovo-dev"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".rovodev"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".rovodev"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.rovodev"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Rovo Dev CLI skills"; readonly url: "https://support.atlassian.com/rovo/docs/extend-rovo-dev-cli-with-agent-skills/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev also reads universal .agents/skills in both project and user scopes.\n"; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/extend-rovo-dev-cli-with-agent-skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev supports local and remote MCP server configuration."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/connect-to-an-mcp-server-in-rovo-dev-cli/", "https://support.atlassian.com/bitbucket-cloud/docs/rovo-dev-advanced-agentic-configuration/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: true; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No industry spec for subagents yet; AXM bridges to the agent's native layout."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly scopes: readonly ["user", "project"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/subagents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".rovodev/subagents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Project and home .rovodev/subagents Markdown files"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev exposes event hooks including tool-permission, response-finished, and error events; the public surface is recorded without an AXM serializer model."; readonly docs: readonly []; readonly sources: readonly ["https://www.atlassian.com/blog/developer/streamline-rovo-dev-cli-with-event-hooks"]; readonly scopes: readonly ["user", "project"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev reads hierarchical AGENTS.md memory files."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-memory-in-rovo-dev-cli/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Rovo Dev toolPermissions rules select allow, ask, or deny behavior by tool call."; readonly docs: readonly []; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/manage-rovo-dev-cli-settings/"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".rovodev/config.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".rovodev/config.yml"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "yaml"; readonly gitignored: false; }]; readonly grammar: { readonly style: "tool-call"; readonly example: "Bash(git status)"; readonly notes: "Rules choose allow, ask, or deny, with a configurable default."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Rovo Dev"; readonly surface: "Rovo Dev CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://support.atlassian.com/rovo/docs/use-subagents-in-rovo-dev-cli/"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, hook, instructions, permissions."]; readonly claimScope: "Project and user subagent Markdown definitions"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "tabnine-cli"; readonly name: "Tabnine CLI"; readonly vendor: "Tabnine"; readonly homepage: "https://www.tabnine.com/platform-cli/"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly rootDir: ".tabnine"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".tabnine"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.tabnine"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Tabnine CLI"; readonly url: "https://www.tabnine.com/platform-cli/"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Native and universal roots in both scopes; workspace alias has highest priority"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine MCP servers are configured in .tabnine/mcp_servers.json and ~/.tabnine/mcp_servers.json."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-agent/mcp-intro-and-setup"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine hooks execute synchronously from layered agent settings and can observe, block, or modify selected lifecycle operations."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "SessionStart"; readonly canonical: "session.start"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeAgent"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterAgent"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "BeforeTool"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "literal-list"; readonly example: "shell,read,write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }, { readonly kind: "modify"; readonly operations: readonly ["modify-input"]; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "AfterTool"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "literal-list"; readonly example: "shell,read,write"; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "PreCompress"; readonly canonical: "compaction.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine reads guidelines.md files under .tabnine/guidelines and can override the context filename through settings."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-agent/guidelines"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "parity"; readonly convention: "vendor"; readonly kind: "own-file"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "guidelines.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/guidelines"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Tabnine settings define allowed and excluded tools plus persistent-approval and policy-path controls."; readonly docs: readonly []; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/settings/settings-reference"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".tabnine/agent/settings.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly grammar: { readonly style: "glob"; readonly example: "tools.allowed: [\"shell\"]"; readonly notes: "Allowed and excluded tool lists combine with security and policy-path settings."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Tabnine CLI"; readonly surface: "Tabnine CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.tabnine.com/main/getting-started/tabnine-cli/features/agent-skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Native and shared skill roots and management commands"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "trae-cn"; readonly name: "Trae CN"; readonly vendor: "ByteDance"; readonly homepage: "https://www.trae.cn"; readonly interfaces: readonly ["ide-extension"]; readonly family: "bytedance"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Trae CN documentation"; readonly url: "https://docs.trae.cn"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide/skills"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide_add-mcp-servers"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".trae/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.cn/ide/rules"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Trae CN"; readonly surface: "TRAE CN IDE; TraeWork is a separate reviewed surface"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.trae.cn/work_skills"]; readonly conditions: readonly ["TraeWork documentation describes .trae/skills locally and ~/.trae-cn/skills globally plus uploads; it does not establish the existing IDE reader contract."]; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "TraeWork skill discovery; IDE capability details remain unreviewed"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "trae"; readonly name: "Trae"; readonly vendor: "ByteDance"; readonly homepage: "https://www.trae.ai"; readonly interfaces: readonly ["ide-extension"]; readonly family: "bytedance"; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Trae documentation"; readonly url: "https://docs.trae.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://www.trae.ai/blog/trae_tutorial_0115"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.ai/ide/model-context-protocol"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".trae/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Trae combines global user rules with project and nested .trae/rules directories for module-specific instructions."; readonly docs: readonly []; readonly sources: readonly ["https://docs.trae.ai/ide/rules"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".trae/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Trae"; readonly surface: "TRAE IDE"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.trae.ai/ide/rules"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "The official rules page returned no usable content. Existing positive capabilities and paths have not been freshly verified.", "Capability mechanics not revalidated in this review: skill, mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Official documentation entry point; content could not establish current mechanics"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "warp"; readonly name: "Warp"; readonly vendor: "Warp"; readonly homepage: "https://www.warp.dev"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Warp"; readonly surface: "Desktop and CLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://www.warp.dev/blog/introducing-the-warp-agent-cli-coding-agent"]; readonly conditions: readonly []; readonly limitations: readonly ["Standalone CLI/product surface reviewed. Orchestration does not establish a file-based custom-subagent definition.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.warp"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Warp documentation"; readonly url: "https://docs.warp.dev"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/skills/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp stores project MCP servers in .warp/.mcp.json and user servers in ~/.warp/.mcp.json under mcpServers."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/mcp/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "sse", "http"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped primary-source evidence establishes absence of this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp discovers hierarchical AGENTS.md project rules and exposes user-level rules through Warp Drive."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/rules/"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Warp Agent Profiles configure autonomy per action and regular-expression command allowlists and denylists; deny rules take precedence."; readonly docs: readonly []; readonly sources: readonly ["https://docs.warp.dev/agent-platform/capabilities/agent-profiles-permissions/"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: { readonly style: "regex"; readonly example: "ls(\\s.*)?"; readonly notes: "Command allowlist and denylist entries are regular expressions configured in Settings."; }; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; } | { readonly id: "windsurf"; readonly name: "Devin Desktop (Windsurf)"; readonly vendor: "Cognition"; readonly homepage: "https://devin.ai/desktop"; readonly interfaces: readonly ["ide-extension"]; readonly family: "cognition"; readonly profile: { readonly identity: { readonly product: "Devin Desktop"; readonly surface: "Desktop"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly claimScope: "Product identity and the specific capability or lifecycle changes described in this review; other capability evidence is retained separately."; readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.devin.ai/desktop/changelog", "https://docs.devin.ai/desktop/devin-local"]; readonly conditions: readonly []; readonly limitations: readonly ["Cascade removal and Devin Local reviewed. Stable catalog ID is retained; legacy Cascade capability paths are not automatically Devin Local paths.", "This review does not renew historical AXM runtime verification."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".windsurf"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Devin Desktop documentation"; readonly url: "https://docs.devin.ai/desktop"; }, { readonly label: "Windsurf is now Devin Desktop"; readonly url: "https://devin.ai/blog/windsurf-is-now-devin-desktop"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin Desktop reads SKILL.md skills from .windsurf/skills (project) and ~/.codeium/windsurf/skills (user) with progressive disclosure. It also discovers universal .agents/skills paths. The built-in Cascade agent reached end-of-life 2026-07-01 and is being replaced by Devin Local; the .windsurf/* and ~/.codeium/windsurf/* config surfaces persist under Devin Local.\n"; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".windsurf/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/mcp"]; readonly scopes: readonly ["user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "braced"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/mcp_config.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "agent"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: null; readonly accepted: readonly [null]; }; readonly urlKey: { readonly "streamable-http": "serverUrl"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["user"]; }; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "The reviewed desktop instruction documentation does not establish a reusable custom-subagent target. This is not evidence that the current product lacks subagents."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/agents-md"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Devin Desktop/Cascade hooks are direct per-event command arrays in hooks.json. AXM's generic hook writer emits grouped command-stdin hooks and cannot serialize this shape yet."; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["command-stdin"]; readonly locations: readonly [{ readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: ".codeium/windsurf/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }, { readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".windsurf/hooks.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly gitignored: false; }]; readonly events: readonly [{ readonly nativeName: "pre_read_code"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_read_code"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_write_code"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_write_code"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_run_command"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_run_command"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_mcp_tool_use"; readonly canonical: "tool.pre"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_mcp_tool_use"; readonly canonical: "tool.post"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "pre_user_prompt"; readonly canonical: "prompt.submit"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }, { readonly kind: "block"; readonly outcomes: readonly ["allow", "deny"]; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_cascade_response"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "post_cascade_response_with_transcript"; readonly canonical: "turn.end"; readonly matcher: { readonly kind: "none-imperative"; readonly example: null; readonly notes: null; }; readonly decision: readonly [{ readonly kind: "observe"; }]; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly tools: readonly [{ readonly nativeName: "read_code"; readonly canonical: "file.read"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "write_code"; readonly canonical: "file.write"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "run_command"; readonly canonical: "shell.exec"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }, { readonly nativeName: "mcp_tool_use"; readonly canonical: "mcp.call"; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/hooks"]; readonly lastVerified: "2026-08-05"; }]; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Devin Desktop/Cascade hooks writer."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/cascade/agents-md"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".devin/rules"; readonly shape: "directory"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.devin.ai/desktop/terminal", "https://docs.devin.ai/desktop/cascade"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "ui-only"]; readonly locations: readonly []; readonly grammar: { readonly style: "prefix"; readonly example: "axm"; readonly notes: "windsurf.cascadeCommandsAllowList is prefix-matched. Workspace-scoped override for these keys is not documented; configure at user scope. Teams/Enterprise can merge in lists via the Admin Portal.\n"; }; readonly prerequisites: readonly [{ readonly key: "Cascade auto-execution level"; readonly value: "allowlist_only | turbo"; readonly scope: "user"; readonly note: "Disabled and Auto modes ignore allowlist entries; set via the Windsurf Settings panel."; }]; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly grants: { readonly shell: { readonly destination: { readonly kind: "settings-ui"; }; readonly patch: { readonly "windsurf.cascadeCommandsAllowList": readonly ["${tool}"]; }; readonly template: null; }; }; }; }; }; } | { readonly id: "zencoder"; readonly name: "Zencoder"; readonly vendor: "Zencoder"; readonly homepage: "https://zencoder.ai"; readonly interfaces: readonly ["ide-extension", "cli"]; readonly family: null; readonly rootDir: ".zencoder"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Zencoder documentation"; readonly url: "https://docs.zencoder.ai"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills are discovered from project and user .agents/skills and project .claude/skills. Legacy .zencoder/skills remains readable but is deprecated; the agent selects skills automatically."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt", "https://docs.zencoder.ai/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical shared skill roots and deprecated vendor directory"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM cannot yet model the dotted zencoder.mcpServers VS Code settings key, and the previous standalone .zencoder/mcp.json target was not vendor-documented."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zencoder documents named AI agents configured and shared through its UI. This alone does not establish autonomous subagent delegation or a portable subagent directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no delivery path for Zencoder's UI-managed custom agents."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Uses a vendor rule directory under the AGENTS.md-governed rule umbrella."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "partial"; readonly convention: "vendor"; readonly kind: "rules-dir"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/rules"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: false; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zencoder added MCP tool permission prompts in April 2026. The docs describe user-visible MCP permission control, not a stable AXM-writable permission file."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/llms-full.txt"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Zencoder permission grant writer."; }; }; readonly profile: { readonly identity: { readonly product: "Zencoder"; readonly surface: "Zencoder IDE Agents"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Skill discovery and UI-managed agent distinction"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "zed"; readonly name: "Zed"; readonly vendor: "Zed Industries"; readonly homepage: "https://zed.dev"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".zed"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".zed"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: "~/.config/zed"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Zed Agent documentation"; readonly url: "https://zed.dev/docs/ai/zed-agent"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Because Zed's project Skill directory is .agents/skills, --agent universal already wrote to the correct location; this entry adds Zed-specific detection and naming."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly conditions: readonly ["Project skills require a trusted worktree.", "Skills apply to Zed Agent, not automatically to external agents or terminal threads."]; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Only direct child skill folders are discovered."]; readonly claimScope: "Built-in Zed Agent skill roots and trust boundary"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zed configures context servers in settings; AXM has not modeled the Zed settings dialect."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/mcp"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http"]; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a Zed settings writer for context servers."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/instructions"]; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zed exposes tool permissions through agent settings and prompts; AXM does not model that settings surface."; readonly docs: readonly []; readonly sources: readonly ["https://zed.dev/docs/ai/tool-permissions"]; readonly scopes: readonly ["user", "project"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented Zed tool-permission settings."; }; }; readonly profile: { readonly identity: { readonly product: "Zed"; readonly surface: "Zed built-in Agent; external agents are separate"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://zed.dev/docs/ai/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: mcp-server, subagent, hook, instructions, permissions."]; readonly claimScope: "Skill scopes, trust conditions and invocation"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "zenflow"; readonly name: "Zenflow"; readonly vendor: "Zencoder"; readonly homepage: "https://zencoder.ai/zenflow"; readonly interfaces: readonly ["desktop"]; readonly family: null; readonly rootDir: ".zenflow"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".zenflow"; readonly signal: "definitive"; readonly note: null; }]; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Zenflow documentation"; readonly url: "https://docs.zencoder.ai/zenflow/task-types"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Skills are discovered from project and user .agents/skills and project .claude/skills. Legacy .zencoder/skills remains readable but is deprecated; the agent selects skills automatically."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly scopes: readonly ["user", "project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".claude/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "compat"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "project"; readonly root: "project"; readonly path: ".zencoder/skills"; readonly shape: "directory"; readonly role: "additional"; readonly status: "deprecated"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/features/skills"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed."]; readonly claimScope: "Canonical shared skill roots and deprecated vendor directory"; }; }; readonly axm: { readonly status: "supported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zenflow supports custom MCP integrations. The reviewed overview does not establish transport or filesystem configuration mechanics."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/integrations"]; readonly scopes: readonly []; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/integrations"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "Transport, scope and client configuration details remain unmodeled."]; readonly claimScope: "Native MCP availability"; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "ZenCLI can invoke subprocess subagents with distinct contexts, models, tools and runtimes. Presets and pipelines configure orchestration without a portable agent directory."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents"]; readonly scopes: readonly []; readonly locations: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No automatically discoverable custom-subagent directory or configuration scope was established."]; readonly claimScope: "ZenCLI can invoke subprocess subagents with distinct contexts, models, tools and runtimes. Presets and pipelines configure orchestration without a portable agent directory."; }; readonly modeling: "native-unmodeled"; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has not implemented a managed installation target for the documented native surface."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Zenflow runs supported underlying agents in worktrees; instruction-file behavior belongs to the selected agent rather than a Zenflow-specific rule format. Native availability is not established by this review; absence of a modeled AXM installation target does not establish vendor absence."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/clis/overview"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Saved agent presets select the coding runtime, model and permission mode, including execution and tool access."; readonly docs: readonly []; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["ui-only"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime or AXM writer execution was performed.", "No AXM permission writer was verified."]; readonly claimScope: "Saved agent presets select the coding runtime, model and permission mode, including execution and tool access."; }; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly profile: { readonly identity: { readonly product: "Zenflow"; readonly surface: "Zenflow orchestration and ZenCLI"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://docs.zencoder.ai/zenflow/subagents", "https://docs.zencoder.ai/features/skills", "https://docs.zencoder.ai/zenflow/integrations", "https://docs.zencoder.ai/zenflow/orchestration/agent-presets"]; readonly conditions: readonly []; readonly limitations: readonly ["Documentation and public source review only; no vendor runtime execution or AXM configuration verification.", "Capability mechanics not revalidated in this review: hook, instructions."]; readonly claimScope: "Native subprocess delegation, MCP integrations and shared skills"; }; readonly lifecycleQualifications: readonly []; }; } | { readonly id: "fx"; readonly name: "FX"; readonly vendor: "Vercel Labs"; readonly homepage: "https://fx.sh"; readonly interfaces: readonly ["cli", "embedded"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "FX"; readonly surface: "cli, embedded"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/vercel-labs/fx", "https://fx.sh/docs"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["Filesystem projections target the CLI; embedded and ACP hosts have separate configuration lifetimes."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".fx"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".fx"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "fx"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://github.com/vercel-labs/fx"; }, { readonly label: "Extension reference"; readonly url: "https://fx.sh/docs"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/capabilities/skills"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/capabilities/skills"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".fx/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".fx/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Project .mcp.json uses mcpServers and requires workspace approval; user ~/.fx/mcp.json uses mcp. Profile strings are literal and Authorization headers require environment-backed fields. AXM has not verified these distinct dialects."; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/capabilities/mcp", "https://fx.sh/docs/capabilities/mcp/protocol"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/capabilities/mcp", "https://fx.sh/docs/capabilities/mcp/protocol"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "FX supports session subagents. The reviewed documentation does not establish a reusable custom-agent file target."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/configure-fx/project-instructions"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/configure-fx/project-instructions"]; readonly claimScope: "Instruction discovery and precedence"; readonly conditions: readonly ["Instruction context must be enabled in FX settings."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "home"; readonly path: ".fx/AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/instructions/respects-native-authority-and-observation"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Persistent permission rules live only in ~/.fx/settings.json, with global and workspace profiles; project .fx.json cannot define them. CLI permission-mode flags govern a run. AXM does not modify these policies."; readonly docs: readonly []; readonly sources: readonly ["https://fx.sh/docs/configure-fx/permissions"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://fx.sh/docs/configure-fx/permissions"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; } | { readonly id: "muse-code"; readonly name: "Muse Code"; readonly vendor: "Meta"; readonly homepage: "https://dev.meta.ai/docs/muse-code"; readonly interfaces: readonly ["cli"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Muse Code"; readonly surface: "cli"; readonly edition: null; readonly ownership: null; readonly modelProviders: readonly ["Meta"]; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code", "https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly []; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "muse"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://dev.meta.ai/docs/muse-code"; }, { readonly label: "Extension reference"; readonly url: "https://dev.meta.ai/docs/muse-code/extending"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly ["Project skills require a trusted workspace."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "muse/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "User settings.json contains mcp_servers with stdio and streamable_http transports; required/optional modes affect startup. AXM does not write this settings dialect."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Command hooks use project .muse/hooks.json, user settings and managed policy; trust and managed precedence apply."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/extending"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly claimScope: "Instruction discovery and precedence"; readonly conditions: readonly ["Project instructions require a trusted workspace; at each level the first supported instruction filename wins."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly kind: "agents-md"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: "AGENTS.md"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; readonly nestedDiscovery: true; readonly importSyntax: null; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/instructions/respects-native-authority-and-observation"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Muse configures permission profiles, sandbox and approval modes through settings and launch flags. Managed policy and workspace trust still apply; AXM does not grant access."; readonly docs: readonly []; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://dev.meta.ai/docs/muse-code/configuration"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["user"]; readonly mechanism: readonly ["config-file", "cli-flag"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; } | { readonly id: "mimo-code"; readonly name: "MiMo Code"; readonly vendor: "Xiaomi"; readonly homepage: "https://mimo.xiaomi.com"; readonly interfaces: readonly ["cli", "desktop"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "MiMo Code"; readonly surface: "CLI; desktop beta embeds the engine"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["CLI projections do not establish desktop beta behavior."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: ".mimocode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly [{ readonly kind: "dir"; readonly path: ".mimocode"; readonly signal: "supporting"; readonly note: null; }]; }; readonly user: { readonly markers: readonly [{ readonly kind: "executable"; readonly name: "mimo"; readonly signal: "definitive"; readonly note: null; }]; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://github.com/XiaomiMiMo/MiMo-Code"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mimocode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "mimocode/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default XDG configuration only; MIMOCODE_HOME and Windows path overrides are not resolved by AXM."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute the vendor agent or establish user-scope runtime discovery."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "JSON/JSONC mcp entries use local command arrays or remote URL entries. MIMOCODE_HOME and platform roots change discovery; AXM has not verified the complete writer contract."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/mcp.ts", "https://github.com/XiaomiMiMo/MiMo-Code"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/mcp.ts", "https://github.com/XiaomiMiMo/MiMo-Code"]; readonly claimScope: "Documented native capability; AXM grammar remains unverified"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly modeling: "native-unmodeled"; readonly locations: readonly []; readonly entryDialect: null; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified writer for this native configuration dialect."; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Native metadata is passed through. MiMo expects native model, mode, permission and tool fields; AXM does not translate another vendor's tool grammar."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly claimScope: "Markdown custom-agent discovery and native frontmatter"; readonly conditions: readonly []; readonly limitations: readonly []; }; readonly scopes: readonly ["project", "user"]; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mimocode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }, { readonly scope: "user"; readonly root: "xdg-config"; readonly path: "mimocode/agents"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "Default XDG configuration only; MIMOCODE_HOME and Windows path overrides are not resolved by AXM."; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/subagents/native-locations-respect-shape-and-proof"]; readonly limitations: readonly ["Project-scope filesystem behavior was exercised without executing the vendor runtime. User-scope behavior is not established by this check."]; }; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "MiMo has native permission configuration including per-agent policy; outside-workspace access requires approval by default. AXM does not translate permission grammars."; readonly docs: readonly []; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code", "https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://github.com/XiaomiMiMo/MiMo-Code", "https://github.com/XiaomiMiMo/MiMo-Code/blob/main/packages/cli/src/config/agent.ts"]; readonly claimScope: "Presence of native permission controls; grammar and unattended behavior not verified"; readonly conditions: readonly []; readonly limitations: readonly ["No permission changes or vendor execution were performed."]; }; readonly scopes: readonly ["project", "user"]; readonly mechanism: readonly ["config-file"]; readonly locations: readonly []; readonly grammar: null; readonly prerequisites: readonly []; readonly cliFlags: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "AXM has no verified permission-grant adapter for this target."; }; }; } | { readonly id: "coder-agents"; readonly name: "Coder Agents"; readonly vendor: "Coder"; readonly homepage: "https://coder.com/docs/ai-coder/agents"; readonly interfaces: readonly ["workspace-agent"]; readonly family: null; readonly profile: { readonly identity: { readonly product: "Coder Agents"; readonly surface: "workspace-agent"; readonly edition: null; readonly ownership: null; readonly modelProviders: null; }; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents", "https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Product identity, delivery surface and cited extension documentation"; readonly conditions: readonly ["AXM must run within the connected Coder workspace; template and administrator policy govern availability."]; readonly limitations: readonly ["No vendor runtime session was executed."]; }; readonly lifecycleQualifications: readonly []; }; readonly rootDir: null; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "Official documentation"; readonly url: "https://coder.com/docs/ai-coder/agents"; }, { readonly label: "Extension reference"; readonly url: "https://coder.com/docs/ai-coder/agents/extending-agents"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Workspace skills can include supporting files. Personal skills are UI-managed single-file entries and are outside this filesystem projection."; readonly docs: readonly []; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Skill discovery roots and standard SKILL.md format"; readonly conditions: readonly ["Skill names must match their directories; SKILL.md is limited to 64 KB and supporting files to 512 KB."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".agents/skills"; readonly shape: "directory"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; }]; }; readonly axm: { readonly status: "supported"; readonly writer: null; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:cli/skills/new/scaffolds-for-every-configured-agent", "packages/core/workspace-kernel/src/agent-adapters/agents/scoped-native-readers.spec.ts"]; readonly limitations: readonly ["Project-scope skill scaffolding and native reader resolution were exercised in isolated filesystems. This does not execute Coder Agents or establish personal skill uploads."]; }; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: null; readonly docs: readonly []; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly review: { readonly reviewedAt: "2026-10-01"; readonly sources: readonly ["https://coder.com/docs/ai-coder/agents/extending-agents"]; readonly claimScope: "Workspace MCP file, container and stdio/HTTP entry grammar"; readonly conditions: readonly ["Workspace template must expose MCP and the current agent mode must permit tool use."]; readonly limitations: readonly []; }; readonly scopes: readonly ["project"]; readonly standardsCompliance: "full"; readonly convention: "universal"; readonly transports: readonly ["stdio", "http"]; readonly mcpEnvExpansion: { readonly variables: "none"; readonly defaults: false; }; readonly locations: readonly [{ readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly id: "project"; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: null; readonly accepted: readonly [null, { readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; }; }; readonly accepted: readonly [null, { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project"]; }; }; readonly verification: { readonly verifiedAt: "2026-10-01"; readonly boundary: "configuration"; readonly evidence: readonly ["specification:workspace/mcps/shared-native-writes-require-compatible-authority"]; readonly limitations: readonly ["Project .mcp.json install, update, repetition, disable and removal preserve sibling entries. Stdio and HTTP dialects are checked without executing Coder Agents or changing template policy."]; }; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "No scoped evidence establishes a reusable extension target for this capability."; readonly docs: readonly []; readonly sources: readonly []; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; readonly reason: "No verified native extension target or AXM projection is recorded."; }; }; } | { readonly id: "vscode"; readonly name: "Visual Studio Code"; readonly vendor: "Microsoft"; readonly homepage: "https://code.visualstudio.com"; readonly interfaces: readonly ["ide-extension"]; readonly family: null; readonly rootDir: ".vscode"; readonly lifecycle: { readonly state: "active"; }; readonly detection: { readonly project: { readonly markers: readonly []; }; readonly user: { readonly markers: readonly []; }; }; readonly docs: readonly [{ readonly label: "MCP configuration"; readonly url: "https://code.visualstudio.com/docs/agents/reference/mcp-configuration"; }]; readonly capabilities: { readonly skill: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly subagent: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly hook: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly "mcp-server": { readonly native: { readonly availability: { readonly via: "native"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "Local extension host only. Select the absolute user-profile mcp.json path with AXM_VSCODE_USER_MCP_CONFIG. Trust, input prompts, OAuth, policies and remote windows remain host-owned. Native runtime acceptance is pending."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; readonly scopes: readonly ["project", "user"]; readonly standardsCompliance: "full"; readonly convention: "vendor"; readonly transports: readonly ["stdio", "http", "sse"]; readonly mcpEnvExpansion: { readonly variables: "env-colon"; readonly defaults: false; }; readonly locations: readonly [{ readonly id: "project"; readonly scope: "project"; readonly root: "project"; readonly path: ".vscode/mcp.json"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["servers"]; readonly attribution: "agent"; }, { readonly id: "user"; readonly scope: "user"; readonly root: "home"; readonly path: "mcp.json"; readonly selectedFile: "vscode-user-mcp"; readonly shape: "file"; readonly role: "primary"; readonly status: "canonical"; readonly applicability: { readonly kind: "always"; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "jsonc"; readonly keyPath: readonly ["servers"]; readonly attribution: "agent"; }, { readonly id: "agent-host-project"; readonly scope: "project"; readonly root: "project"; readonly path: ".mcp.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "VS Code Agent Host is selected; local extension-host configuration alone does not establish this reader."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }, { readonly id: "agent-host-user"; readonly scope: "user"; readonly root: "home"; readonly path: ".copilot/mcp-config.json"; readonly shape: "file"; readonly role: "additional"; readonly status: "canonical"; readonly applicability: { readonly kind: "conditional"; readonly condition: "VS Code Agent Host is selected with the default Copilot home."; }; readonly provenance: { readonly kind: "capability-sources"; }; readonly format: "json"; readonly keyPath: readonly ["mcpServers"]; readonly attribution: "shared"; }]; readonly entryDialect: { readonly activationField: { readonly required: null; readonly accepted: readonly [null]; }; readonly stdio: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: "stdio"; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: "stdio"; }]; }; readonly command: "split"; readonly envKey: "env"; readonly cwdKey: "cwd"; }; readonly remote: { readonly typeField: { readonly required: { readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }; readonly accepted: readonly [{ readonly name: "type"; readonly value: { readonly "streamable-http": "http"; readonly sse: "sse"; }; }]; }; readonly urlKey: { readonly "streamable-http": "url"; readonly sse: "url"; }; readonly headersKey: "headers"; }; }; }; readonly axm: { readonly status: "supported"; readonly writer: { readonly config: { readonly locationIds: readonly ["project", "user"]; }; }; }; }; }; readonly instructions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; readonly permissions: { readonly native: { readonly availability: { readonly via: "unknown"; }; readonly vendorStatus: { readonly state: "active"; }; readonly notes: "This adapter models the local MCP extension-host surface only."; readonly docs: readonly []; readonly sources: readonly ["https://code.visualstudio.com/docs/agents/reference/mcp-configuration"]; }; readonly axm: { readonly status: "unsupported"; readonly writer: null; }; }; })[]; //# sourceMappingURL=catalog.d.ts.map