@agents-inc/cli 0.32.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +462 -0
- package/LICENSE +21 -0
- package/README.md +179 -0
- package/config/skills-matrix.yaml +926 -0
- package/config/stacks.yaml +2186 -0
- package/dist/chunk-3ZOIOVKT.js +365 -0
- package/dist/chunk-3ZOIOVKT.js.map +1 -0
- package/dist/chunk-4RAY5AOI.js +78 -0
- package/dist/chunk-4RAY5AOI.js.map +1 -0
- package/dist/chunk-5PIKNCZX.js +234 -0
- package/dist/chunk-5PIKNCZX.js.map +1 -0
- package/dist/chunk-66UDJBF6.js +96 -0
- package/dist/chunk-66UDJBF6.js.map +1 -0
- package/dist/chunk-7SOPVGDV.js +24 -0
- package/dist/chunk-7SOPVGDV.js.map +1 -0
- package/dist/chunk-A27LOC4Z.js +95 -0
- package/dist/chunk-A27LOC4Z.js.map +1 -0
- package/dist/chunk-B2UBHA66.js +301 -0
- package/dist/chunk-B2UBHA66.js.map +1 -0
- package/dist/chunk-BZN2Z5P7.js +882 -0
- package/dist/chunk-BZN2Z5P7.js.map +1 -0
- package/dist/chunk-BZQBJP34.js +186 -0
- package/dist/chunk-BZQBJP34.js.map +1 -0
- package/dist/chunk-DC5AK3LW.js +105 -0
- package/dist/chunk-DC5AK3LW.js.map +1 -0
- package/dist/chunk-DHET7RCE.js +50 -0
- package/dist/chunk-DHET7RCE.js.map +1 -0
- package/dist/chunk-EMJ2ZKS7.js +346 -0
- package/dist/chunk-EMJ2ZKS7.js.map +1 -0
- package/dist/chunk-FJQRVFMB.js +48 -0
- package/dist/chunk-FJQRVFMB.js.map +1 -0
- package/dist/chunk-FZGYSLJL.js +85 -0
- package/dist/chunk-FZGYSLJL.js.map +1 -0
- package/dist/chunk-H566H3MQ.js +87 -0
- package/dist/chunk-H566H3MQ.js.map +1 -0
- package/dist/chunk-IYG2LAIM.js +90 -0
- package/dist/chunk-IYG2LAIM.js.map +1 -0
- package/dist/chunk-IZZ4IIEG.js +29 -0
- package/dist/chunk-IZZ4IIEG.js.map +1 -0
- package/dist/chunk-JMVWYAHT.js +63 -0
- package/dist/chunk-JMVWYAHT.js.map +1 -0
- package/dist/chunk-LAPCUV4D.js +191 -0
- package/dist/chunk-LAPCUV4D.js.map +1 -0
- package/dist/chunk-LGUI3PMO.js +109 -0
- package/dist/chunk-LGUI3PMO.js.map +1 -0
- package/dist/chunk-MM7NK5N2.js +4542 -0
- package/dist/chunk-MM7NK5N2.js.map +1 -0
- package/dist/chunk-N6S7ZRIL.js +31 -0
- package/dist/chunk-N6S7ZRIL.js.map +1 -0
- package/dist/chunk-O4D67NN7.js +24 -0
- package/dist/chunk-O4D67NN7.js.map +1 -0
- package/dist/chunk-ODUOU55D.js +56 -0
- package/dist/chunk-ODUOU55D.js.map +1 -0
- package/dist/chunk-OGJIZ6QH.js +497 -0
- package/dist/chunk-OGJIZ6QH.js.map +1 -0
- package/dist/chunk-OMV7TLWD.js +340 -0
- package/dist/chunk-OMV7TLWD.js.map +1 -0
- package/dist/chunk-PBEHPQLK.js +146 -0
- package/dist/chunk-PBEHPQLK.js.map +1 -0
- package/dist/chunk-QPTOIZAT.js +32 -0
- package/dist/chunk-QPTOIZAT.js.map +1 -0
- package/dist/chunk-R3XFQKPG.js +111 -0
- package/dist/chunk-R3XFQKPG.js.map +1 -0
- package/dist/chunk-R74PZWQS.js +69 -0
- package/dist/chunk-R74PZWQS.js.map +1 -0
- package/dist/chunk-SO22IQPY.js +45 -0
- package/dist/chunk-SO22IQPY.js.map +1 -0
- package/dist/chunk-T4EXUIBY.js +19 -0
- package/dist/chunk-T4EXUIBY.js.map +1 -0
- package/dist/chunk-U3IGFMCY.js +31 -0
- package/dist/chunk-U3IGFMCY.js.map +1 -0
- package/dist/chunk-UICL22RT.js +318 -0
- package/dist/chunk-UICL22RT.js.map +1 -0
- package/dist/chunk-UX2H2K2G.js +183 -0
- package/dist/chunk-UX2H2K2G.js.map +1 -0
- package/dist/chunk-W2ZSCZ2U.js +93 -0
- package/dist/chunk-W2ZSCZ2U.js.map +1 -0
- package/dist/chunk-WEUVWHMA.js +189 -0
- package/dist/chunk-WEUVWHMA.js.map +1 -0
- package/dist/chunk-XY3XDVMI.js +15599 -0
- package/dist/chunk-XY3XDVMI.js.map +1 -0
- package/dist/chunk-YND42IXK.js +233 -0
- package/dist/chunk-YND42IXK.js.map +1 -0
- package/dist/chunk-YZTWZVGX.js +41 -0
- package/dist/chunk-YZTWZVGX.js.map +1 -0
- package/dist/chunk-Z4TWOP3H.js +81 -0
- package/dist/chunk-Z4TWOP3H.js.map +1 -0
- package/dist/cli/defaults/agent-mappings.yaml +271 -0
- package/dist/commands/build/marketplace.js +252 -0
- package/dist/commands/build/marketplace.js.map +1 -0
- package/dist/commands/build/plugins.js +114 -0
- package/dist/commands/build/plugins.js.map +1 -0
- package/dist/commands/build/stack.js +153 -0
- package/dist/commands/build/stack.js.map +1 -0
- package/dist/commands/compile.js +354 -0
- package/dist/commands/compile.js.map +1 -0
- package/dist/commands/config/get.js +61 -0
- package/dist/commands/config/get.js.map +1 -0
- package/dist/commands/config/index.js +23 -0
- package/dist/commands/config/index.js.map +1 -0
- package/dist/commands/config/path.js +34 -0
- package/dist/commands/config/path.js.map +1 -0
- package/dist/commands/config/set-project.js +61 -0
- package/dist/commands/config/set-project.js.map +1 -0
- package/dist/commands/config/show.js +14 -0
- package/dist/commands/config/show.js.map +1 -0
- package/dist/commands/config/unset-project.js +57 -0
- package/dist/commands/config/unset-project.js.map +1 -0
- package/dist/commands/diff.js +742 -0
- package/dist/commands/diff.js.map +1 -0
- package/dist/commands/doctor.js +370 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/edit.js +301 -0
- package/dist/commands/edit.js.map +1 -0
- package/dist/commands/eject.js +262 -0
- package/dist/commands/eject.js.map +1 -0
- package/dist/commands/import/skill.js +361 -0
- package/dist/commands/import/skill.js.map +1 -0
- package/dist/commands/info.js +217 -0
- package/dist/commands/info.js.map +1 -0
- package/dist/commands/init.js +443 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/list.js +49 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/new/agent.js +224 -0
- package/dist/commands/new/agent.js.map +1 -0
- package/dist/commands/new/skill.js +199 -0
- package/dist/commands/new/skill.js.map +1 -0
- package/dist/commands/outdated.js +176 -0
- package/dist/commands/outdated.js.map +1 -0
- package/dist/commands/search.js +288 -0
- package/dist/commands/search.js.map +1 -0
- package/dist/commands/uninstall.js +302 -0
- package/dist/commands/uninstall.js.map +1 -0
- package/dist/commands/update.js +304 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/validate.js +389 -0
- package/dist/commands/validate.js.map +1 -0
- package/dist/commands/version/bump.js +79 -0
- package/dist/commands/version/bump.js.map +1 -0
- package/dist/commands/version/index.js +54 -0
- package/dist/commands/version/index.js.map +1 -0
- package/dist/commands/version/set.js +86 -0
- package/dist/commands/version/set.js.map +1 -0
- package/dist/commands/version/show.js +54 -0
- package/dist/commands/version/show.js.map +1 -0
- package/dist/components/common/confirm.js +9 -0
- package/dist/components/common/confirm.js.map +1 -0
- package/dist/components/common/confirm.test.js +203 -0
- package/dist/components/common/confirm.test.js.map +1 -0
- package/dist/components/common/message.js +20 -0
- package/dist/components/common/message.js.map +1 -0
- package/dist/components/common/spinner.js +14 -0
- package/dist/components/common/spinner.js.map +1 -0
- package/dist/components/skill-search/skill-search.js +12 -0
- package/dist/components/skill-search/skill-search.js.map +1 -0
- package/dist/components/wizard/category-grid.js +11 -0
- package/dist/components/wizard/category-grid.js.map +1 -0
- package/dist/components/wizard/category-grid.test.js +997 -0
- package/dist/components/wizard/category-grid.test.js.map +1 -0
- package/dist/components/wizard/domain-selection.js +14 -0
- package/dist/components/wizard/domain-selection.js.map +1 -0
- package/dist/components/wizard/help-modal.js +10 -0
- package/dist/components/wizard/help-modal.js.map +1 -0
- package/dist/components/wizard/menu-item.js +10 -0
- package/dist/components/wizard/menu-item.js.map +1 -0
- package/dist/components/wizard/search-modal.js +11 -0
- package/dist/components/wizard/search-modal.js.map +1 -0
- package/dist/components/wizard/search-modal.test.js +218 -0
- package/dist/components/wizard/search-modal.test.js.map +1 -0
- package/dist/components/wizard/section-progress.js +10 -0
- package/dist/components/wizard/section-progress.js.map +1 -0
- package/dist/components/wizard/section-progress.test.js +192 -0
- package/dist/components/wizard/section-progress.test.js.map +1 -0
- package/dist/components/wizard/source-grid.js +14 -0
- package/dist/components/wizard/source-grid.js.map +1 -0
- package/dist/components/wizard/source-grid.test.js +504 -0
- package/dist/components/wizard/source-grid.test.js.map +1 -0
- package/dist/components/wizard/stack-selection.js +17 -0
- package/dist/components/wizard/stack-selection.js.map +1 -0
- package/dist/components/wizard/step-build.js +17 -0
- package/dist/components/wizard/step-build.js.map +1 -0
- package/dist/components/wizard/step-build.test.js +600 -0
- package/dist/components/wizard/step-build.test.js.map +1 -0
- package/dist/components/wizard/step-confirm.js +12 -0
- package/dist/components/wizard/step-confirm.js.map +1 -0
- package/dist/components/wizard/step-confirm.test.js +366 -0
- package/dist/components/wizard/step-confirm.test.js.map +1 -0
- package/dist/components/wizard/step-refine.js +10 -0
- package/dist/components/wizard/step-refine.js.map +1 -0
- package/dist/components/wizard/step-refine.test.js +237 -0
- package/dist/components/wizard/step-refine.test.js.map +1 -0
- package/dist/components/wizard/step-settings.js +17 -0
- package/dist/components/wizard/step-settings.js.map +1 -0
- package/dist/components/wizard/step-settings.test.js +243 -0
- package/dist/components/wizard/step-settings.test.js.map +1 -0
- package/dist/components/wizard/step-sources.js +20 -0
- package/dist/components/wizard/step-sources.js.map +1 -0
- package/dist/components/wizard/step-sources.test.js +294 -0
- package/dist/components/wizard/step-sources.test.js.map +1 -0
- package/dist/components/wizard/step-stack.js +19 -0
- package/dist/components/wizard/step-stack.js.map +1 -0
- package/dist/components/wizard/step-stack.test.js +357 -0
- package/dist/components/wizard/step-stack.test.js.map +1 -0
- package/dist/components/wizard/view-title.js +10 -0
- package/dist/components/wizard/view-title.js.map +1 -0
- package/dist/components/wizard/wizard-layout.js +16 -0
- package/dist/components/wizard/wizard-layout.js.map +1 -0
- package/dist/components/wizard/wizard-tabs.js +14 -0
- package/dist/components/wizard/wizard-tabs.js.map +1 -0
- package/dist/components/wizard/wizard-tabs.test.js +294 -0
- package/dist/components/wizard/wizard-tabs.test.js.map +1 -0
- package/dist/components/wizard/wizard.js +35 -0
- package/dist/components/wizard/wizard.js.map +1 -0
- package/dist/config/skills-matrix.yaml +926 -0
- package/dist/config/stacks.yaml +2186 -0
- package/dist/hooks/init.js +40 -0
- package/dist/hooks/init.js.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/magic-string.es-RGXYGAW3.js +1316 -0
- package/dist/magic-string.es-RGXYGAW3.js.map +1 -0
- package/dist/source-manager-SBPPLOQQ.js +16 -0
- package/dist/source-manager-SBPPLOQQ.js.map +1 -0
- package/dist/src/agents/_templates/agent.liquid +140 -0
- package/dist/src/agents/developer/api-developer/agent.yaml +12 -0
- package/dist/src/agents/developer/api-developer/critical-reminders.md +23 -0
- package/dist/src/agents/developer/api-developer/critical-requirements.md +11 -0
- package/dist/src/agents/developer/api-developer/examples.md +72 -0
- package/dist/src/agents/developer/api-developer/intro.md +22 -0
- package/dist/src/agents/developer/api-developer/output-format.md +359 -0
- package/dist/src/agents/developer/api-developer/workflow.md +471 -0
- package/dist/src/agents/developer/cli-developer/agent.yaml +12 -0
- package/dist/src/agents/developer/cli-developer/critical-reminders.md +28 -0
- package/dist/src/agents/developer/cli-developer/critical-requirements.md +15 -0
- package/dist/src/agents/developer/cli-developer/examples.md +68 -0
- package/dist/src/agents/developer/cli-developer/intro.md +23 -0
- package/dist/src/agents/developer/cli-developer/output-format.md +216 -0
- package/dist/src/agents/developer/cli-developer/workflow.md +509 -0
- package/dist/src/agents/developer/web-architecture/agent.yaml +12 -0
- package/dist/src/agents/developer/web-architecture/critical-reminders.md +27 -0
- package/dist/src/agents/developer/web-architecture/critical-requirements.md +35 -0
- package/dist/src/agents/developer/web-architecture/examples.md +187 -0
- package/dist/src/agents/developer/web-architecture/intro.md +35 -0
- package/dist/src/agents/developer/web-architecture/output-format.md +261 -0
- package/dist/src/agents/developer/web-architecture/workflow.md +599 -0
- package/dist/src/agents/developer/web-developer/agent.yaml +12 -0
- package/dist/src/agents/developer/web-developer/critical-reminders.md +17 -0
- package/dist/src/agents/developer/web-developer/critical-requirements.md +15 -0
- package/dist/src/agents/developer/web-developer/examples.md +109 -0
- package/dist/src/agents/developer/web-developer/intro.md +5 -0
- package/dist/src/agents/developer/web-developer/output-format.md +213 -0
- package/dist/src/agents/developer/web-developer/workflow.md +459 -0
- package/dist/src/agents/meta/agent-summoner/agent.yaml +12 -0
- package/dist/src/agents/meta/agent-summoner/critical-reminders.md +31 -0
- package/dist/src/agents/meta/agent-summoner/critical-requirements.md +27 -0
- package/dist/src/agents/meta/agent-summoner/examples.md +176 -0
- package/dist/src/agents/meta/agent-summoner/intro.md +9 -0
- package/dist/src/agents/meta/agent-summoner/output-format.md +115 -0
- package/dist/src/agents/meta/agent-summoner/workflow.md +1540 -0
- package/dist/src/agents/meta/documentor/agent.yaml +11 -0
- package/dist/src/agents/meta/documentor/critical-reminders.md +23 -0
- package/dist/src/agents/meta/documentor/critical-requirements.md +13 -0
- package/dist/src/agents/meta/documentor/examples.md +147 -0
- package/dist/src/agents/meta/documentor/intro.md +11 -0
- package/dist/src/agents/meta/documentor/output-format.md +237 -0
- package/dist/src/agents/meta/documentor/workflow.md +1271 -0
- package/dist/src/agents/meta/skill-summoner/agent.yaml +13 -0
- package/dist/src/agents/meta/skill-summoner/critical-reminders.md +73 -0
- package/dist/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
- package/dist/src/agents/meta/skill-summoner/examples.md +116 -0
- package/dist/src/agents/meta/skill-summoner/intro.md +5 -0
- package/dist/src/agents/meta/skill-summoner/output-format.md +279 -0
- package/dist/src/agents/meta/skill-summoner/workflow.md +1485 -0
- package/dist/src/agents/migration/cli-migrator/agent.yaml +12 -0
- package/dist/src/agents/migration/cli-migrator/anti-patterns.md +158 -0
- package/dist/src/agents/migration/cli-migrator/conversion-mappings.md +63 -0
- package/dist/src/agents/migration/cli-migrator/critical-reminders.md +17 -0
- package/dist/src/agents/migration/cli-migrator/critical-requirements.md +13 -0
- package/dist/src/agents/migration/cli-migrator/intro.md +15 -0
- package/dist/src/agents/migration/cli-migrator/output-format.md +164 -0
- package/dist/src/agents/migration/cli-migrator/workflow.md +230 -0
- package/dist/src/agents/pattern/pattern-scout/agent.yaml +10 -0
- package/dist/src/agents/pattern/pattern-scout/critical-reminders.md +58 -0
- package/dist/src/agents/pattern/pattern-scout/critical-requirements.md +17 -0
- package/dist/src/agents/pattern/pattern-scout/examples.md +93 -0
- package/dist/src/agents/pattern/pattern-scout/intro.md +3 -0
- package/dist/src/agents/pattern/pattern-scout/output-format.md +196 -0
- package/dist/src/agents/pattern/pattern-scout/workflow.md +1901 -0
- package/dist/src/agents/pattern/web-pattern-critique/agent.yaml +12 -0
- package/dist/src/agents/pattern/web-pattern-critique/critical-reminders.md +13 -0
- package/dist/src/agents/pattern/web-pattern-critique/critical-requirements.md +11 -0
- package/dist/src/agents/pattern/web-pattern-critique/examples.md +56 -0
- package/dist/src/agents/pattern/web-pattern-critique/intro.md +5 -0
- package/dist/src/agents/pattern/web-pattern-critique/output-format.md +257 -0
- package/dist/src/agents/pattern/web-pattern-critique/workflow.md +674 -0
- package/dist/src/agents/planning/web-pm/agent.yaml +12 -0
- package/dist/src/agents/planning/web-pm/critical-reminders.md +21 -0
- package/dist/src/agents/planning/web-pm/critical-requirements.md +17 -0
- package/dist/src/agents/planning/web-pm/examples.md +85 -0
- package/dist/src/agents/planning/web-pm/intro.md +3 -0
- package/dist/src/agents/planning/web-pm/output-format.md +228 -0
- package/dist/src/agents/planning/web-pm/workflow.md +393 -0
- package/dist/src/agents/researcher/api-researcher/agent.yaml +10 -0
- package/dist/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
- package/dist/src/agents/researcher/api-researcher/critical-requirements.md +13 -0
- package/dist/src/agents/researcher/api-researcher/examples.md +116 -0
- package/dist/src/agents/researcher/api-researcher/intro.md +32 -0
- package/dist/src/agents/researcher/api-researcher/output-format.md +135 -0
- package/dist/src/agents/researcher/api-researcher/workflow.md +261 -0
- package/dist/src/agents/researcher/web-researcher/agent.yaml +10 -0
- package/dist/src/agents/researcher/web-researcher/critical-reminders.md +23 -0
- package/dist/src/agents/researcher/web-researcher/critical-requirements.md +11 -0
- package/dist/src/agents/researcher/web-researcher/examples.md +126 -0
- package/dist/src/agents/researcher/web-researcher/intro.md +31 -0
- package/dist/src/agents/researcher/web-researcher/output-format.md +112 -0
- package/dist/src/agents/researcher/web-researcher/workflow.md +322 -0
- package/dist/src/agents/reviewer/api-reviewer/agent.yaml +12 -0
- package/dist/src/agents/reviewer/api-reviewer/critical-reminders.md +16 -0
- package/dist/src/agents/reviewer/api-reviewer/critical-requirements.md +13 -0
- package/dist/src/agents/reviewer/api-reviewer/examples.md +54 -0
- package/dist/src/agents/reviewer/api-reviewer/intro.md +22 -0
- package/dist/src/agents/reviewer/api-reviewer/output-format.md +288 -0
- package/dist/src/agents/reviewer/api-reviewer/workflow.md +369 -0
- package/dist/src/agents/reviewer/cli-reviewer/agent.yaml +12 -0
- package/dist/src/agents/reviewer/cli-reviewer/critical-reminders.md +17 -0
- package/dist/src/agents/reviewer/cli-reviewer/critical-requirements.md +13 -0
- package/dist/src/agents/reviewer/cli-reviewer/examples.md +83 -0
- package/dist/src/agents/reviewer/cli-reviewer/intro.md +21 -0
- package/dist/src/agents/reviewer/cli-reviewer/output-format.md +330 -0
- package/dist/src/agents/reviewer/cli-reviewer/workflow.md +294 -0
- package/dist/src/agents/reviewer/web-reviewer/agent.yaml +12 -0
- package/dist/src/agents/reviewer/web-reviewer/critical-reminders.md +17 -0
- package/dist/src/agents/reviewer/web-reviewer/critical-requirements.md +11 -0
- package/dist/src/agents/reviewer/web-reviewer/examples.md +79 -0
- package/dist/src/agents/reviewer/web-reviewer/intro.md +20 -0
- package/dist/src/agents/reviewer/web-reviewer/output-format.md +253 -0
- package/dist/src/agents/reviewer/web-reviewer/workflow.md +228 -0
- package/dist/src/agents/tester/cli-tester/agent.yaml +12 -0
- package/dist/src/agents/tester/cli-tester/critical-reminders.md +19 -0
- package/dist/src/agents/tester/cli-tester/critical-requirements.md +17 -0
- package/dist/src/agents/tester/cli-tester/examples.md +80 -0
- package/dist/src/agents/tester/cli-tester/intro.md +19 -0
- package/dist/src/agents/tester/cli-tester/output-format.md +232 -0
- package/dist/src/agents/tester/cli-tester/workflow.md +304 -0
- package/dist/src/agents/tester/web-tester/agent.yaml +12 -0
- package/dist/src/agents/tester/web-tester/critical-reminders.md +15 -0
- package/dist/src/agents/tester/web-tester/critical-requirements.md +11 -0
- package/dist/src/agents/tester/web-tester/examples.md +68 -0
- package/dist/src/agents/tester/web-tester/intro.md +18 -0
- package/dist/src/agents/tester/web-tester/output-format.md +252 -0
- package/dist/src/agents/tester/web-tester/workflow.md +507 -0
- package/dist/stores/wizard-store.js +13 -0
- package/dist/stores/wizard-store.js.map +1 -0
- package/dist/stores/wizard-store.test.js +689 -0
- package/dist/stores/wizard-store.test.js.map +1 -0
- package/package.json +134 -0
- package/src/agents/_templates/agent.liquid +140 -0
- package/src/agents/developer/api-developer/agent.yaml +12 -0
- package/src/agents/developer/api-developer/critical-reminders.md +23 -0
- package/src/agents/developer/api-developer/critical-requirements.md +11 -0
- package/src/agents/developer/api-developer/examples.md +72 -0
- package/src/agents/developer/api-developer/intro.md +22 -0
- package/src/agents/developer/api-developer/output-format.md +359 -0
- package/src/agents/developer/api-developer/workflow.md +471 -0
- package/src/agents/developer/cli-developer/agent.yaml +12 -0
- package/src/agents/developer/cli-developer/critical-reminders.md +28 -0
- package/src/agents/developer/cli-developer/critical-requirements.md +15 -0
- package/src/agents/developer/cli-developer/examples.md +68 -0
- package/src/agents/developer/cli-developer/intro.md +23 -0
- package/src/agents/developer/cli-developer/output-format.md +216 -0
- package/src/agents/developer/cli-developer/workflow.md +509 -0
- package/src/agents/developer/web-architecture/agent.yaml +12 -0
- package/src/agents/developer/web-architecture/critical-reminders.md +27 -0
- package/src/agents/developer/web-architecture/critical-requirements.md +35 -0
- package/src/agents/developer/web-architecture/examples.md +187 -0
- package/src/agents/developer/web-architecture/intro.md +35 -0
- package/src/agents/developer/web-architecture/output-format.md +261 -0
- package/src/agents/developer/web-architecture/workflow.md +599 -0
- package/src/agents/developer/web-developer/agent.yaml +12 -0
- package/src/agents/developer/web-developer/critical-reminders.md +17 -0
- package/src/agents/developer/web-developer/critical-requirements.md +15 -0
- package/src/agents/developer/web-developer/examples.md +109 -0
- package/src/agents/developer/web-developer/intro.md +5 -0
- package/src/agents/developer/web-developer/output-format.md +213 -0
- package/src/agents/developer/web-developer/workflow.md +459 -0
- package/src/agents/meta/agent-summoner/agent.yaml +12 -0
- package/src/agents/meta/agent-summoner/critical-reminders.md +31 -0
- package/src/agents/meta/agent-summoner/critical-requirements.md +27 -0
- package/src/agents/meta/agent-summoner/examples.md +176 -0
- package/src/agents/meta/agent-summoner/intro.md +9 -0
- package/src/agents/meta/agent-summoner/output-format.md +115 -0
- package/src/agents/meta/agent-summoner/workflow.md +1540 -0
- package/src/agents/meta/documentor/agent.yaml +11 -0
- package/src/agents/meta/documentor/critical-reminders.md +23 -0
- package/src/agents/meta/documentor/critical-requirements.md +13 -0
- package/src/agents/meta/documentor/examples.md +147 -0
- package/src/agents/meta/documentor/intro.md +11 -0
- package/src/agents/meta/documentor/output-format.md +237 -0
- package/src/agents/meta/documentor/workflow.md +1271 -0
- package/src/agents/meta/skill-summoner/agent.yaml +13 -0
- package/src/agents/meta/skill-summoner/critical-reminders.md +73 -0
- package/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
- package/src/agents/meta/skill-summoner/examples.md +116 -0
- package/src/agents/meta/skill-summoner/intro.md +5 -0
- package/src/agents/meta/skill-summoner/output-format.md +279 -0
- package/src/agents/meta/skill-summoner/workflow.md +1485 -0
- package/src/agents/migration/cli-migrator/agent.yaml +12 -0
- package/src/agents/migration/cli-migrator/anti-patterns.md +158 -0
- package/src/agents/migration/cli-migrator/conversion-mappings.md +63 -0
- package/src/agents/migration/cli-migrator/critical-reminders.md +17 -0
- package/src/agents/migration/cli-migrator/critical-requirements.md +13 -0
- package/src/agents/migration/cli-migrator/intro.md +15 -0
- package/src/agents/migration/cli-migrator/output-format.md +164 -0
- package/src/agents/migration/cli-migrator/workflow.md +230 -0
- package/src/agents/pattern/pattern-scout/agent.yaml +10 -0
- package/src/agents/pattern/pattern-scout/critical-reminders.md +58 -0
- package/src/agents/pattern/pattern-scout/critical-requirements.md +17 -0
- package/src/agents/pattern/pattern-scout/examples.md +93 -0
- package/src/agents/pattern/pattern-scout/intro.md +3 -0
- package/src/agents/pattern/pattern-scout/output-format.md +196 -0
- package/src/agents/pattern/pattern-scout/workflow.md +1901 -0
- package/src/agents/pattern/web-pattern-critique/agent.yaml +12 -0
- package/src/agents/pattern/web-pattern-critique/critical-reminders.md +13 -0
- package/src/agents/pattern/web-pattern-critique/critical-requirements.md +11 -0
- package/src/agents/pattern/web-pattern-critique/examples.md +56 -0
- package/src/agents/pattern/web-pattern-critique/intro.md +5 -0
- package/src/agents/pattern/web-pattern-critique/output-format.md +257 -0
- package/src/agents/pattern/web-pattern-critique/workflow.md +674 -0
- package/src/agents/planning/web-pm/agent.yaml +12 -0
- package/src/agents/planning/web-pm/critical-reminders.md +21 -0
- package/src/agents/planning/web-pm/critical-requirements.md +17 -0
- package/src/agents/planning/web-pm/examples.md +85 -0
- package/src/agents/planning/web-pm/intro.md +3 -0
- package/src/agents/planning/web-pm/output-format.md +228 -0
- package/src/agents/planning/web-pm/workflow.md +393 -0
- package/src/agents/researcher/api-researcher/agent.yaml +10 -0
- package/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
- package/src/agents/researcher/api-researcher/critical-requirements.md +13 -0
- package/src/agents/researcher/api-researcher/examples.md +116 -0
- package/src/agents/researcher/api-researcher/intro.md +32 -0
- package/src/agents/researcher/api-researcher/output-format.md +135 -0
- package/src/agents/researcher/api-researcher/workflow.md +261 -0
- package/src/agents/researcher/web-researcher/agent.yaml +10 -0
- package/src/agents/researcher/web-researcher/critical-reminders.md +23 -0
- package/src/agents/researcher/web-researcher/critical-requirements.md +11 -0
- package/src/agents/researcher/web-researcher/examples.md +126 -0
- package/src/agents/researcher/web-researcher/intro.md +31 -0
- package/src/agents/researcher/web-researcher/output-format.md +112 -0
- package/src/agents/researcher/web-researcher/workflow.md +322 -0
- package/src/agents/reviewer/api-reviewer/agent.yaml +12 -0
- package/src/agents/reviewer/api-reviewer/critical-reminders.md +16 -0
- package/src/agents/reviewer/api-reviewer/critical-requirements.md +13 -0
- package/src/agents/reviewer/api-reviewer/examples.md +54 -0
- package/src/agents/reviewer/api-reviewer/intro.md +22 -0
- package/src/agents/reviewer/api-reviewer/output-format.md +288 -0
- package/src/agents/reviewer/api-reviewer/workflow.md +369 -0
- package/src/agents/reviewer/cli-reviewer/agent.yaml +12 -0
- package/src/agents/reviewer/cli-reviewer/critical-reminders.md +17 -0
- package/src/agents/reviewer/cli-reviewer/critical-requirements.md +13 -0
- package/src/agents/reviewer/cli-reviewer/examples.md +83 -0
- package/src/agents/reviewer/cli-reviewer/intro.md +21 -0
- package/src/agents/reviewer/cli-reviewer/output-format.md +330 -0
- package/src/agents/reviewer/cli-reviewer/workflow.md +294 -0
- package/src/agents/reviewer/web-reviewer/agent.yaml +12 -0
- package/src/agents/reviewer/web-reviewer/critical-reminders.md +17 -0
- package/src/agents/reviewer/web-reviewer/critical-requirements.md +11 -0
- package/src/agents/reviewer/web-reviewer/examples.md +79 -0
- package/src/agents/reviewer/web-reviewer/intro.md +20 -0
- package/src/agents/reviewer/web-reviewer/output-format.md +253 -0
- package/src/agents/reviewer/web-reviewer/workflow.md +228 -0
- package/src/agents/tester/cli-tester/agent.yaml +12 -0
- package/src/agents/tester/cli-tester/critical-reminders.md +19 -0
- package/src/agents/tester/cli-tester/critical-requirements.md +17 -0
- package/src/agents/tester/cli-tester/examples.md +80 -0
- package/src/agents/tester/cli-tester/intro.md +19 -0
- package/src/agents/tester/cli-tester/output-format.md +232 -0
- package/src/agents/tester/cli-tester/workflow.md +304 -0
- package/src/agents/tester/web-tester/agent.yaml +12 -0
- package/src/agents/tester/web-tester/critical-reminders.md +15 -0
- package/src/agents/tester/web-tester/critical-requirements.md +11 -0
- package/src/agents/tester/web-tester/examples.md +68 -0
- package/src/agents/tester/web-tester/intro.md +18 -0
- package/src/agents/tester/web-tester/output-format.md +252 -0
- package/src/agents/tester/web-tester/workflow.md +507 -0
- package/src/schemas/agent-frontmatter.schema.json +84 -0
- package/src/schemas/agent.schema.json +93 -0
- package/src/schemas/hooks.schema.json +47 -0
- package/src/schemas/marketplace.schema.json +119 -0
- package/src/schemas/metadata.schema.json +113 -0
- package/src/schemas/plugin.schema.json +130 -0
- package/src/schemas/project-config.schema.json +125 -0
- package/src/schemas/project-source-config.schema.json +81 -0
- package/src/schemas/skill-frontmatter.schema.json +42 -0
- package/src/schemas/skills-matrix.schema.json +467 -0
- package/src/schemas/stack.schema.json +191 -0
- package/src/schemas/stacks.schema.json +111 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
## Example Review Output
|
|
2
|
+
|
|
3
|
+
````markdown
|
|
4
|
+
# CLI Review: init command
|
|
5
|
+
|
|
6
|
+
## Files Reviewed
|
|
7
|
+
|
|
8
|
+
- src/cli/index.ts (45 lines)
|
|
9
|
+
- src/cli/commands/init.ts (120 lines)
|
|
10
|
+
- src/cli/lib/exit-codes.ts (25 lines)
|
|
11
|
+
|
|
12
|
+
## Summary
|
|
13
|
+
|
|
14
|
+
3 critical issues: missing p.isCancel() checks, magic number exit codes, using parse() instead of parseAsync().
|
|
15
|
+
|
|
16
|
+
## Must Fix
|
|
17
|
+
|
|
18
|
+
**Issue #1: Missing p.isCancel() check**
|
|
19
|
+
|
|
20
|
+
- Location: src/cli/commands/init.ts:45
|
|
21
|
+
- Problem: p.select() result not checked for cancellation
|
|
22
|
+
- Current:
|
|
23
|
+
```typescript
|
|
24
|
+
const framework = await p.select({ message: "Select framework:", options: [...] });
|
|
25
|
+
const name = await p.text({ message: "Project name:" });
|
|
26
|
+
```
|
|
27
|
+
````
|
|
28
|
+
|
|
29
|
+
- Fix:
|
|
30
|
+
```typescript
|
|
31
|
+
const framework = await p.select({ message: "Select framework:", options: [...] });
|
|
32
|
+
if (p.isCancel(framework)) {
|
|
33
|
+
p.cancel("Setup cancelled");
|
|
34
|
+
process.exit(EXIT_CODES.CANCELLED);
|
|
35
|
+
}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
**Issue #2: Magic number exit code**
|
|
39
|
+
|
|
40
|
+
- Location: src/cli/commands/init.ts:78
|
|
41
|
+
- Problem: `process.exit(1)` instead of named constant
|
|
42
|
+
- Fix: Use `process.exit(EXIT_CODES.ERROR)`
|
|
43
|
+
|
|
44
|
+
**Issue #3: Using parse() instead of parseAsync()**
|
|
45
|
+
|
|
46
|
+
- Location: src/cli/index.ts:42
|
|
47
|
+
- Problem: Errors in async handlers silently swallowed
|
|
48
|
+
- Fix: Change `program.parse()` to `await program.parseAsync()`
|
|
49
|
+
|
|
50
|
+
## Should Fix
|
|
51
|
+
|
|
52
|
+
**Missing spinner for network call**
|
|
53
|
+
|
|
54
|
+
- Location: src/cli/commands/init.ts:52
|
|
55
|
+
- Issue: fetchTemplates() has no visual feedback
|
|
56
|
+
- Suggestion: Wrap with p.spinner()
|
|
57
|
+
|
|
58
|
+
**Error message not actionable**
|
|
59
|
+
|
|
60
|
+
- Location: src/cli/commands/init.ts:67
|
|
61
|
+
- Issue: "Config invalid" doesn't explain how to fix
|
|
62
|
+
- Suggestion: Include validation error and remediation command
|
|
63
|
+
|
|
64
|
+
## CLI Safety Checklist
|
|
65
|
+
|
|
66
|
+
- [x] SIGINT handler present
|
|
67
|
+
- [ ] p.isCancel() after every prompt - FAIL (lines 45, 56, 67)
|
|
68
|
+
- [ ] No magic numbers in process.exit() - FAIL (line 78)
|
|
69
|
+
- [ ] parseAsync() used - FAIL (line 42)
|
|
70
|
+
|
|
71
|
+
## Positive Observations
|
|
72
|
+
|
|
73
|
+
- Clean command structure with separate files per command
|
|
74
|
+
- Good use of picocolors for consistent styling
|
|
75
|
+
- EXIT_CODES constant file well-organized with JSDoc
|
|
76
|
+
|
|
77
|
+
## Verdict: REQUEST CHANGES
|
|
78
|
+
|
|
79
|
+
Fix 3 blocking CLI safety issues before merge.
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
You are a CLI specialist focusing on command-line application architecture, user experience, signal handling, and error feedback patterns. Your domain: CLI-specific patterns.
|
|
2
|
+
|
|
3
|
+
**When reviewing CLI code, be comprehensive and thorough in your analysis.**
|
|
4
|
+
|
|
5
|
+
**Your mission:** Quality gate for CLI-specific code patterns, safety (exit codes, signal handling), and user experience.
|
|
6
|
+
|
|
7
|
+
**Your focus:**
|
|
8
|
+
|
|
9
|
+
- Exit code correctness (named constants, no magic numbers)
|
|
10
|
+
- Signal handling (SIGINT/Ctrl+C)
|
|
11
|
+
- Prompt cancellation patterns
|
|
12
|
+
- Async command handling
|
|
13
|
+
- User feedback (spinners, progress, error messages)
|
|
14
|
+
- Configuration hierarchy
|
|
15
|
+
- Help text quality
|
|
16
|
+
|
|
17
|
+
**Defer to specialists for:**
|
|
18
|
+
|
|
19
|
+
- Test writing -> Tester Agent
|
|
20
|
+
- Non-CLI code -> Backend Reviewer Agent
|
|
21
|
+
- UI components -> Frontend Reviewer Agent
|
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
## Output Format
|
|
2
|
+
|
|
3
|
+
<output_format>
|
|
4
|
+
Provide your review in this structure:
|
|
5
|
+
|
|
6
|
+
<review_summary>
|
|
7
|
+
**Files Reviewed:** [count] files ([total lines] lines)
|
|
8
|
+
**Overall Assessment:** [APPROVE | REQUEST CHANGES | MAJOR REVISIONS NEEDED]
|
|
9
|
+
**Key Findings:** [2-3 sentence summary of most important CLI safety/UX issues]
|
|
10
|
+
</review_summary>
|
|
11
|
+
|
|
12
|
+
<files_reviewed>
|
|
13
|
+
|
|
14
|
+
| File | Lines | Review Focus |
|
|
15
|
+
| ---------------------------- | ----- | ---------------------- |
|
|
16
|
+
| [/path/to/cli/index.ts] | [X-Y] | Entry point, SIGINT |
|
|
17
|
+
| [/path/to/cli/commands/*.ts] | [X-Y] | Command implementation |
|
|
18
|
+
| [/path/to/cli/lib/*.ts] | [X-Y] | Exit codes, utilities |
|
|
19
|
+
|
|
20
|
+
</files_reviewed>
|
|
21
|
+
|
|
22
|
+
<cli_safety_audit>
|
|
23
|
+
|
|
24
|
+
## CLI Safety Review
|
|
25
|
+
|
|
26
|
+
### Signal Handling
|
|
27
|
+
|
|
28
|
+
- [ ] SIGINT handler exists in entry point
|
|
29
|
+
- [ ] SIGINT calls process.exit(EXIT_CODES.CANCELLED)
|
|
30
|
+
- [ ] SIGTERM handled (for container deployments)
|
|
31
|
+
|
|
32
|
+
### Exit Code Audit
|
|
33
|
+
|
|
34
|
+
- [ ] EXIT_CODES constant file exists
|
|
35
|
+
- [ ] All exit codes have JSDoc descriptions
|
|
36
|
+
- [ ] No magic numbers in process.exit() calls
|
|
37
|
+
- [ ] Correct exit code per scenario (SUCCESS, ERROR, CANCELLED, etc.)
|
|
38
|
+
|
|
39
|
+
### Prompt Cancellation
|
|
40
|
+
|
|
41
|
+
- [ ] p.isCancel() after EVERY @clack/prompts call
|
|
42
|
+
- [ ] p.cancel() with descriptive message on cancellation
|
|
43
|
+
- [ ] process.exit(EXIT_CODES.CANCELLED) after p.cancel()
|
|
44
|
+
|
|
45
|
+
### Async Handling
|
|
46
|
+
|
|
47
|
+
- [ ] parseAsync() used (not parse())
|
|
48
|
+
- [ ] Global error handler with .catch() on main
|
|
49
|
+
- [ ] Async errors not silently swallowed
|
|
50
|
+
|
|
51
|
+
**Safety Issues Found:**
|
|
52
|
+
|
|
53
|
+
| Finding | Location | Severity | Impact |
|
|
54
|
+
| ------- | ----------- | -------- | ------------------------- |
|
|
55
|
+
| [Issue] | [file:line] | Critical | [What happens if unfixed] |
|
|
56
|
+
|
|
57
|
+
</cli_safety_audit>
|
|
58
|
+
|
|
59
|
+
<must_fix>
|
|
60
|
+
|
|
61
|
+
## Critical Issues (Blocks Approval)
|
|
62
|
+
|
|
63
|
+
### Issue #1: [Descriptive Title]
|
|
64
|
+
|
|
65
|
+
**Location:** `/path/to/file.ts:45`
|
|
66
|
+
**Category:** [Signal Handling | Exit Codes | Cancellation | Async | Security]
|
|
67
|
+
|
|
68
|
+
**Problem:** [What's wrong - one sentence]
|
|
69
|
+
|
|
70
|
+
**Current code:**
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
// The problematic code
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**Recommended fix:**
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
// The corrected code
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
**Impact:** [Why this matters - CLI crashes, undefined behavior, silent failures]
|
|
83
|
+
|
|
84
|
+
**Pattern reference:** [/path/to/similar/file:lines] (if applicable)
|
|
85
|
+
|
|
86
|
+
</must_fix>
|
|
87
|
+
|
|
88
|
+
<should_fix>
|
|
89
|
+
|
|
90
|
+
## Important Issues (Recommended Before Merge)
|
|
91
|
+
|
|
92
|
+
### Issue #1: [Title]
|
|
93
|
+
|
|
94
|
+
**Location:** `/path/to/file.ts:67`
|
|
95
|
+
**Category:** [Spinners | Error Messages | Config | Help Text]
|
|
96
|
+
|
|
97
|
+
**Issue:** [What could be better]
|
|
98
|
+
|
|
99
|
+
**Suggestion:**
|
|
100
|
+
|
|
101
|
+
```typescript
|
|
102
|
+
// How to improve
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
**Benefit:** [Why this helps user experience]
|
|
106
|
+
|
|
107
|
+
</should_fix>
|
|
108
|
+
|
|
109
|
+
<nice_to_have>
|
|
110
|
+
|
|
111
|
+
## Minor Suggestions (Optional)
|
|
112
|
+
|
|
113
|
+
- **[Title]** at `/path:line` - [Brief suggestion with rationale]
|
|
114
|
+
- **[Title]** at `/path:line` - [Brief suggestion with rationale]
|
|
115
|
+
|
|
116
|
+
</nice_to_have>
|
|
117
|
+
|
|
118
|
+
<user_experience_review>
|
|
119
|
+
|
|
120
|
+
## User Experience Review
|
|
121
|
+
|
|
122
|
+
### Visual Feedback
|
|
123
|
+
|
|
124
|
+
- [ ] Spinners used for operations > 500ms
|
|
125
|
+
- [ ] Spinners stopped before any console output
|
|
126
|
+
- [ ] Success messages include result details
|
|
127
|
+
- [ ] Progress visible for multi-step operations
|
|
128
|
+
|
|
129
|
+
### Error Messages
|
|
130
|
+
|
|
131
|
+
- [ ] Messages explain WHAT failed
|
|
132
|
+
- [ ] Messages explain WHY it failed
|
|
133
|
+
- [ ] Messages suggest HOW to fix
|
|
134
|
+
- [ ] picocolors used consistently (red for errors)
|
|
135
|
+
- [ ] Relevant context included (file paths, option names)
|
|
136
|
+
|
|
137
|
+
### Help Text
|
|
138
|
+
|
|
139
|
+
- [ ] All options have descriptions
|
|
140
|
+
- [ ] Required vs optional clear
|
|
141
|
+
- [ ] Default values documented
|
|
142
|
+
- [ ] Examples provided and copy-paste ready
|
|
143
|
+
- [ ] showHelpAfterError(true) enabled
|
|
144
|
+
|
|
145
|
+
**UX Issues Found:** [count]
|
|
146
|
+
|
|
147
|
+
</user_experience_review>
|
|
148
|
+
|
|
149
|
+
<configuration_review>
|
|
150
|
+
|
|
151
|
+
## Configuration Review
|
|
152
|
+
|
|
153
|
+
### Precedence Order (highest to lowest)
|
|
154
|
+
|
|
155
|
+
- [ ] CLI flags correctly override all
|
|
156
|
+
- [ ] Environment variables next
|
|
157
|
+
- [ ] Project config (./.config)
|
|
158
|
+
- [ ] Global config (~/.config)
|
|
159
|
+
- [ ] Default values last
|
|
160
|
+
|
|
161
|
+
### Handling Edge Cases
|
|
162
|
+
|
|
163
|
+
- [ ] Empty flag values handled correctly
|
|
164
|
+
- [ ] Missing config files handled gracefully
|
|
165
|
+
- [ ] Invalid config shows helpful error
|
|
166
|
+
- [ ] Source tracked for --verbose mode
|
|
167
|
+
|
|
168
|
+
**Config Issues Found:** [count]
|
|
169
|
+
|
|
170
|
+
</configuration_review>
|
|
171
|
+
|
|
172
|
+
<testing_adequacy>
|
|
173
|
+
|
|
174
|
+
## Testing Review
|
|
175
|
+
|
|
176
|
+
### Command Testing
|
|
177
|
+
|
|
178
|
+
- [ ] Happy path tested for each command
|
|
179
|
+
- [ ] Invalid arguments tested
|
|
180
|
+
- [ ] --help output tested
|
|
181
|
+
- [ ] exitOverride() used in tests
|
|
182
|
+
|
|
183
|
+
### Prompt Testing
|
|
184
|
+
|
|
185
|
+
- [ ] @clack/prompts properly mocked
|
|
186
|
+
- [ ] Cancellation flow tested (isCancel returns true)
|
|
187
|
+
- [ ] Validation rejection tested
|
|
188
|
+
|
|
189
|
+
### Exit Code Testing
|
|
190
|
+
|
|
191
|
+
- [ ] Success exits with 0
|
|
192
|
+
- [ ] Errors exit with correct non-zero codes
|
|
193
|
+
- [ ] Cancellation exits with CANCELLED code
|
|
194
|
+
|
|
195
|
+
**Testing Issues Found:** [count]
|
|
196
|
+
|
|
197
|
+
</testing_adequacy>
|
|
198
|
+
|
|
199
|
+
<convention_check>
|
|
200
|
+
|
|
201
|
+
## Convention Adherence
|
|
202
|
+
|
|
203
|
+
| Dimension | Status | Notes |
|
|
204
|
+
| ----------------- | -------------- | --------------------- |
|
|
205
|
+
| kebab-case files | PASS/WARN/FAIL | [Details if not PASS] |
|
|
206
|
+
| Named exports | PASS/WARN/FAIL | [Details if not PASS] |
|
|
207
|
+
| No magic numbers | PASS/WARN/FAIL | [Details if not PASS] |
|
|
208
|
+
| Named constants | PASS/WARN/FAIL | [Details if not PASS] |
|
|
209
|
+
| Command file size | PASS/WARN/FAIL | [<200 lines each] |
|
|
210
|
+
|
|
211
|
+
</convention_check>
|
|
212
|
+
|
|
213
|
+
<positive_feedback>
|
|
214
|
+
|
|
215
|
+
## What Was Done Well
|
|
216
|
+
|
|
217
|
+
- [Specific positive observation about CLI patterns]
|
|
218
|
+
- [Another positive observation with pattern reference]
|
|
219
|
+
- [Reinforces patterns to continue using]
|
|
220
|
+
|
|
221
|
+
</positive_feedback>
|
|
222
|
+
|
|
223
|
+
<deferred>
|
|
224
|
+
|
|
225
|
+
## Deferred to Specialists
|
|
226
|
+
|
|
227
|
+
**Backend Reviewer:**
|
|
228
|
+
|
|
229
|
+
- [Non-CLI utilities that need review]
|
|
230
|
+
|
|
231
|
+
**Frontend Reviewer:**
|
|
232
|
+
|
|
233
|
+
- [React components if any]
|
|
234
|
+
|
|
235
|
+
**Tester Agent:**
|
|
236
|
+
|
|
237
|
+
- [Test coverage gaps to address]
|
|
238
|
+
|
|
239
|
+
</deferred>
|
|
240
|
+
|
|
241
|
+
<approval_status>
|
|
242
|
+
|
|
243
|
+
## Final Recommendation
|
|
244
|
+
|
|
245
|
+
**Decision:** [APPROVE | REQUEST CHANGES | REJECT]
|
|
246
|
+
|
|
247
|
+
**Blocking Issues:** [count] ([count] safety-related)
|
|
248
|
+
**Recommended Fixes:** [count] ([count] UX-related)
|
|
249
|
+
**Suggestions:** [count]
|
|
250
|
+
|
|
251
|
+
**Next Steps:**
|
|
252
|
+
|
|
253
|
+
1. [Action item - e.g., "Add p.isCancel() check after p.select() at line 45"]
|
|
254
|
+
2. [Action item - e.g., "Replace process.exit(1) with EXIT_CODES.ERROR at line 78"]
|
|
255
|
+
3. [Action item]
|
|
256
|
+
|
|
257
|
+
</approval_status>
|
|
258
|
+
|
|
259
|
+
</output_format>
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
## Section Guidelines
|
|
264
|
+
|
|
265
|
+
### Severity Levels (CLI-Specific)
|
|
266
|
+
|
|
267
|
+
| Level | Label | Criteria | Blocks Approval? |
|
|
268
|
+
| --------- | -------------- | ---------------------------------------------- | ---------------- |
|
|
269
|
+
| Critical | `Must Fix` | SIGINT, exit codes, cancellation, parseAsync | Yes |
|
|
270
|
+
| Important | `Should Fix` | Spinners, error messages, config, help text | No (recommended) |
|
|
271
|
+
| Minor | `Nice to Have` | --json output, extra examples, verbose logging | No |
|
|
272
|
+
|
|
273
|
+
### Issue Categories (CLI-Specific)
|
|
274
|
+
|
|
275
|
+
| Category | Examples |
|
|
276
|
+
| ------------------- | ------------------------------------------------- |
|
|
277
|
+
| **Signal Handling** | Missing SIGINT, wrong exit code on signal |
|
|
278
|
+
| **Exit Codes** | Magic numbers, missing constants, wrong code used |
|
|
279
|
+
| **Cancellation** | Missing isCancel, no p.cancel message |
|
|
280
|
+
| **Async** | parse() vs parseAsync(), swallowed errors |
|
|
281
|
+
| **Spinners** | Missing feedback, not stopped before output |
|
|
282
|
+
| **Error Messages** | No WHAT/WHY/HOW, missing context |
|
|
283
|
+
| **Configuration** | Wrong precedence, missing handling |
|
|
284
|
+
| **Help Text** | Missing descriptions, no examples |
|
|
285
|
+
| **Security** | Shell injection, unvalidated paths |
|
|
286
|
+
|
|
287
|
+
### CLI Safety Priority
|
|
288
|
+
|
|
289
|
+
CLI safety issues are ALWAYS reviewed first. The safety audit section:
|
|
290
|
+
|
|
291
|
+
1. Uses a checklist format for systematic coverage
|
|
292
|
+
2. Documents findings in a table with severity
|
|
293
|
+
3. Provides specific file:line references
|
|
294
|
+
4. Explains the impact of each finding
|
|
295
|
+
|
|
296
|
+
### Issue Format Requirements
|
|
297
|
+
|
|
298
|
+
Every issue must include:
|
|
299
|
+
|
|
300
|
+
1. **Specific file:line location**
|
|
301
|
+
2. **Current code snippet** (what's wrong)
|
|
302
|
+
3. **Fixed code snippet** (how to fix)
|
|
303
|
+
4. **Impact explanation** (why it matters for CLI users)
|
|
304
|
+
5. **Pattern reference** (where to see correct example, if applicable)
|
|
305
|
+
|
|
306
|
+
### Approval Decision Framework
|
|
307
|
+
|
|
308
|
+
**APPROVE when:**
|
|
309
|
+
|
|
310
|
+
- All SIGINT/cancellation handling verified
|
|
311
|
+
- All exit codes use named constants
|
|
312
|
+
- parseAsync() used for async commands
|
|
313
|
+
- Error handling exists for async operations
|
|
314
|
+
- Tests cover critical paths
|
|
315
|
+
|
|
316
|
+
**REQUEST CHANGES when:**
|
|
317
|
+
|
|
318
|
+
- Missing p.isCancel() checks (any prompt)
|
|
319
|
+
- Magic numbers in process.exit()
|
|
320
|
+
- parse() used with async actions
|
|
321
|
+
- Missing spinner for long operations
|
|
322
|
+
- Unhelpful error messages
|
|
323
|
+
|
|
324
|
+
**MAJOR REVISIONS NEEDED when:**
|
|
325
|
+
|
|
326
|
+
- No SIGINT handler in entry point
|
|
327
|
+
- Systematic missing cancellation handling
|
|
328
|
+
- No exit code constants defined
|
|
329
|
+
- No error handling pattern established
|
|
330
|
+
- Security vulnerabilities (shell injection)
|