| vscode | AGENTS.md, .github/prompts/, .github/agents/, .github/skills/ | GitHub Copilot, Cursor, Codex, Gemini |
| claude | CLAUDE.md, .claude/commands/, SKILL.md | Claude Code, Claude Desktop |
| all | All of the above | Universal compatibility |
```
CLI Consistency Report
Date: 2026-03-18
APM Version: 0.8.1 (d09b377)
Commands Inspected: 30 (12 core, 6
deps, 4mcp, 3config, 5runtime)Summary
High Severity
README incorrectly claims
apm compilegenerates.cursor/rules/apm compileapm compileproduces.cursor/rules/(Cursor), butapm compilehas no Cursor output at all. Cursor rule generation is performed byapm install(viaCursorClientAdapter), notcompile. The compile command only supportsvscode|agents|claude|opencode|alltargets — there is nocursortarget.apm compile produces AGENTS.md (GitHub Copilot, OpenCode), CLAUDE.md (Claude Code), and .cursor/rules/ (Cursor)apm compile --helpoutput:-t, --target [vscode|agents|claude|opencode|all]— nocursoroptionsrc/apm_cli/compilation/directory: zero references tocursor,.mdc, orcursor/rulesapm compileproduces. Remove the.cursor/rules/claim. For example:apm compile --targetoption docs missingopencodetargetapm compile[vscode|agents|claude|all]as the valid--targetvalues forapm compile, but the actual CLI also acceptsopencode. Users trying to compile for an OpenCode project explicitly cannot find this option in the docs.docs/src/content/docs/reference/cli-commands.mdline 857:-t, --target [vscode|agents|claude|all]— missingopencodeapm compile --helpactual output:-t, --target [vscode|agents|claude|opencode|all]—opencodeis supportedcli-commands.mdto:-t, --target [vscode|agents|claude|opencode|all]— Target platform: vscode/agents (AGENTS.md), claude (CLAUDE.md), opencode (AGENTS.md), or all. Auto-detects if not specified.Medium Severity
apm compileTarget Formats table missingopencodeandagentsrowsapm compilevscode,claude, andall. It is missingopencode(which generates AGENTS.md for OpenCode projects) andagents(an alias forvscode). The table also does not mention Cursor integration output at all — since cursor is handled byinstall, a brief note would prevent user confusion.cli-commands.mdlines 889–893 table:vscode,agents,claude,opencode,allsrc/apm_cli/core/target_detection.py:143:opencodetarget generatesAGENTS.mdopencodeandagentsto the table:apm compileTarget Auto-Detection table missing.opencode/caseapm compile.github/,.claude/, both/neither), but the actual detection logic also handles the case where only.opencode/exists, returningopencodeas the detected target.cli-commands.mdlines 873–878 (no.opencode/row shown):src/apm_cli/core/target_detection.pylines 73, 88–89:| .opencode/ exists only | opencode | AGENTS.md (opencode integration) |apm install --verbosehelp text too vagueapm install--verboseflag help text in the CLI is unhelpfully brief compared to what it actually does.apm install --helpoutput:--verbose Show detailed installation informationcli-commands.mdline 88 (more accurate):--verbose - Show individual file paths and full error details in the diagnostic summary--verbosehelp text insrc/apm_cli/commands/install.pyto match the documentation:"Show individual file paths and full error details in the diagnostic summary"Low Severity
apm compile --targetoption description: "agent format" vs "platform"apm compile--targetas "Target agent format" while the CLI says "Target platform". Minor but inconsistent terminology.Target agent format. 'agents' is an alias for 'vscode'.Target platform: vscode/agents (AGENTS.md), claude (CLAUDE.md), opencode (AGENTS.md), or all.Clean Areas
The following commands passed all checks with no issues found:
apm init— options documented correctly, behavior consistentapm uninstall— correct, dry-run documentedapm update— correct,--checkdocumentedapm run/apm preview— consistent-p/--paramflag, correctapm list— minimal, correctapm pack— target options (copilot|vscode|claude|cursor|opencode|all) match docs exactlyapm unpack— all flags match docsapm prune— correctapm audit— all flags (--file,--strip,-v,--dry-run,-f,-o) match docsapm deps list/tree/info/clean/update— all documented and working correctlyapm mcp list/search/show— options match docs (noinstallsubcommand exists or is documented)apm config get/set— correct (nolistsubcommand exists or is documented;apm configwithout args correctly shows current config as documented)apm runtime setup/list/remove/status— all documented and consistent