@open-agent-toolkit/cli 0.0.10
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/README.md +50 -0
- package/assets/agents/oat-codebase-mapper.md +275 -0
- package/assets/agents/oat-reviewer.md +350 -0
- package/assets/agents/skeptical-evaluator.md +126 -0
- package/assets/docs/contributing/code.md +95 -0
- package/assets/docs/contributing/commit-conventions.md +41 -0
- package/assets/docs/contributing/design-principles.md +124 -0
- package/assets/docs/contributing/documentation.md +69 -0
- package/assets/docs/contributing/hooks-and-safety.md +31 -0
- package/assets/docs/contributing/index.md +18 -0
- package/assets/docs/contributing/markdown-features.md +117 -0
- package/assets/docs/contributing/skills.md +68 -0
- package/assets/docs/guide/cli-reference.md +211 -0
- package/assets/docs/guide/concepts.md +88 -0
- package/assets/docs/guide/configuration.md +130 -0
- package/assets/docs/guide/documentation/commands.md +157 -0
- package/assets/docs/guide/documentation/index.md +27 -0
- package/assets/docs/guide/documentation/quickstart.md +164 -0
- package/assets/docs/guide/documentation/workflows.md +67 -0
- package/assets/docs/guide/getting-started.md +63 -0
- package/assets/docs/guide/ideas/index.md +34 -0
- package/assets/docs/guide/ideas/lifecycle.md +106 -0
- package/assets/docs/guide/index.md +20 -0
- package/assets/docs/guide/provider-sync/commands.md +100 -0
- package/assets/docs/guide/provider-sync/config.md +77 -0
- package/assets/docs/guide/provider-sync/index.md +65 -0
- package/assets/docs/guide/provider-sync/manifest-and-drift.md +55 -0
- package/assets/docs/guide/provider-sync/providers.md +67 -0
- package/assets/docs/guide/provider-sync/scope-and-surface.md +64 -0
- package/assets/docs/guide/skills/index.md +115 -0
- package/assets/docs/guide/tool-packs.md +167 -0
- package/assets/docs/guide/workflow/artifacts.md +44 -0
- package/assets/docs/guide/workflow/hill-checkpoints.md +53 -0
- package/assets/docs/guide/workflow/index.md +34 -0
- package/assets/docs/guide/workflow/lifecycle.md +207 -0
- package/assets/docs/guide/workflow/pr-flow.md +55 -0
- package/assets/docs/guide/workflow/repo-analysis.md +96 -0
- package/assets/docs/guide/workflow/reviews.md +98 -0
- package/assets/docs/guide/workflow/state-machine.md +74 -0
- package/assets/docs/index.md +45 -0
- package/assets/docs/quickstart.md +162 -0
- package/assets/docs/reference/docs-index-contract.md +53 -0
- package/assets/docs/reference/file-locations.md +109 -0
- package/assets/docs/reference/index.md +29 -0
- package/assets/docs/reference/oat-directory-structure.md +236 -0
- package/assets/docs/reference/troubleshooting.md +63 -0
- package/assets/public-package-versions.json +6 -0
- package/assets/scripts/resolve-tracking.sh +233 -0
- package/assets/skills/analyze/SKILL.md +358 -0
- package/assets/skills/compare/SKILL.md +276 -0
- package/assets/skills/create-agnostic-skill/SKILL.md +410 -0
- package/assets/skills/create-agnostic-skill/references/skill-template.md +195 -0
- package/assets/skills/deep-research/SKILL.md +350 -0
- package/assets/skills/deep-research/references/schema-analysis.md +93 -0
- package/assets/skills/deep-research/references/schema-architectural.md +75 -0
- package/assets/skills/deep-research/references/schema-base.md +70 -0
- package/assets/skills/deep-research/references/schema-comparative.md +72 -0
- package/assets/skills/deep-research/references/schema-conceptual.md +68 -0
- package/assets/skills/deep-research/references/schema-technical.md +64 -0
- package/assets/skills/oat-agent-instructions-analyze/SKILL.md +500 -0
- package/assets/skills/oat-agent-instructions-analyze/references/analysis-artifact-template.md +248 -0
- package/assets/skills/oat-agent-instructions-analyze/references/bundle-summary-template.md +31 -0
- package/assets/skills/oat-agent-instructions-analyze/references/directory-assessment-criteria.md +93 -0
- package/assets/skills/oat-agent-instructions-analyze/references/docs/agent-instruction.md +575 -0
- package/assets/skills/oat-agent-instructions-analyze/references/docs/cursor-rules-files.md +510 -0
- package/assets/skills/oat-agent-instructions-analyze/references/docs/provider-reference.md +429 -0
- package/assets/skills/oat-agent-instructions-analyze/references/docs/rules-files.md +594 -0
- package/assets/skills/oat-agent-instructions-analyze/references/file-type-discovery-checklist.md +273 -0
- package/assets/skills/oat-agent-instructions-analyze/references/quality-checklist.md +125 -0
- package/assets/skills/oat-agent-instructions-analyze/references/recommendation-pack-template.md +45 -0
- package/assets/skills/oat-agent-instructions-analyze/references/recommendations-manifest-template.yaml +27 -0
- package/assets/skills/oat-agent-instructions-analyze/scripts/resolve-instruction-files.sh +120 -0
- package/assets/skills/oat-agent-instructions-analyze/scripts/resolve-providers.sh +135 -0
- package/assets/skills/oat-agent-instructions-apply/SKILL.md +507 -0
- package/assets/skills/oat-agent-instructions-apply/references/apply-plan-template.md +80 -0
- package/assets/skills/oat-agent-instructions-apply/references/docs/agent-instruction.md +575 -0
- package/assets/skills/oat-agent-instructions-apply/references/docs/cursor-rules-files.md +510 -0
- package/assets/skills/oat-agent-instructions-apply/references/docs/provider-reference.md +429 -0
- package/assets/skills/oat-agent-instructions-apply/references/docs/rules-files.md +594 -0
- package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/agents-md-root.md +85 -0
- package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/agents-md-scoped.md +62 -0
- package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/claude-rule.md +67 -0
- package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/copilot-instruction.md +70 -0
- package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/copilot-shim.md +35 -0
- package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/cursor-rule.md +84 -0
- package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/glob-scoped-rule.md +59 -0
- package/assets/skills/oat-docs/SKILL.md +214 -0
- package/assets/skills/oat-docs-analyze/SKILL.md +355 -0
- package/assets/skills/oat-docs-analyze/references/analysis-artifact-template.md +192 -0
- package/assets/skills/oat-docs-analyze/references/directory-assessment-criteria.md +46 -0
- package/assets/skills/oat-docs-analyze/references/quality-checklist.md +48 -0
- package/assets/skills/oat-docs-apply/SKILL.md +339 -0
- package/assets/skills/oat-docs-apply/references/apply-plan-template.md +69 -0
- package/assets/skills/oat-doctor/SKILL.md +293 -0
- package/assets/skills/oat-idea-ideate/SKILL.md +187 -0
- package/assets/skills/oat-idea-new/SKILL.md +152 -0
- package/assets/skills/oat-idea-scratchpad/SKILL.md +115 -0
- package/assets/skills/oat-idea-summarize/SKILL.md +172 -0
- package/assets/skills/oat-pjm-add-backlog-item/SKILL.md +155 -0
- package/assets/skills/oat-pjm-review-backlog/SKILL.md +171 -0
- package/assets/skills/oat-pjm-review-backlog/references/backlog-review-template.md +172 -0
- package/assets/skills/oat-pjm-update-repo-reference/SKILL.md +128 -0
- package/assets/skills/oat-project-capture/SKILL.md +306 -0
- package/assets/skills/oat-project-clear-active/SKILL.md +50 -0
- package/assets/skills/oat-project-complete/SKILL.md +461 -0
- package/assets/skills/oat-project-design/SKILL.md +461 -0
- package/assets/skills/oat-project-discover/SKILL.md +395 -0
- package/assets/skills/oat-project-document/SKILL.md +468 -0
- package/assets/skills/oat-project-implement/SKILL.md +736 -0
- package/assets/skills/oat-project-import-plan/SKILL.md +228 -0
- package/assets/skills/oat-project-import-plan/scripts/find-recent-provider-plans.sh +149 -0
- package/assets/skills/oat-project-new/SKILL.md +74 -0
- package/assets/skills/oat-project-next/SKILL.md +345 -0
- package/assets/skills/oat-project-open/SKILL.md +47 -0
- package/assets/skills/oat-project-plan/SKILL.md +415 -0
- package/assets/skills/oat-project-plan-writing/SKILL.md +116 -0
- package/assets/skills/oat-project-pr-final/SKILL.md +391 -0
- package/assets/skills/oat-project-pr-progress/SKILL.md +354 -0
- package/assets/skills/oat-project-progress/SKILL.md +342 -0
- package/assets/skills/oat-project-promote-spec-driven/SKILL.md +155 -0
- package/assets/skills/oat-project-quick-start/SKILL.md +363 -0
- package/assets/skills/oat-project-reconcile/SKILL.md +738 -0
- package/assets/skills/oat-project-review-provide/SKILL.md +728 -0
- package/assets/skills/oat-project-review-receive/SKILL.md +641 -0
- package/assets/skills/oat-project-review-receive-remote/SKILL.md +235 -0
- package/assets/skills/oat-project-revise/SKILL.md +316 -0
- package/assets/skills/oat-project-spec/SKILL.md +471 -0
- package/assets/skills/oat-project-subagent-implement/SKILL.md +549 -0
- package/assets/skills/oat-project-subagent-implement/examples/pattern-hill-checkpoint.md +110 -0
- package/assets/skills/oat-project-subagent-implement/examples/pattern-parallel-phases.md +118 -0
- package/assets/skills/oat-project-subagent-implement/scripts/dispatch.sh +133 -0
- package/assets/skills/oat-project-subagent-implement/scripts/reconcile.sh +182 -0
- package/assets/skills/oat-project-subagent-implement/scripts/review-gate.sh +187 -0
- package/assets/skills/oat-project-subagent-implement/tests/fixtures/sample-plan.md +234 -0
- package/assets/skills/oat-project-subagent-implement/tests/test-dry-run.sh +126 -0
- package/assets/skills/oat-project-subagent-implement/tests/test-hill-checkpoint.sh +127 -0
- package/assets/skills/oat-project-subagent-implement/tests/test-reconcile.sh +254 -0
- package/assets/skills/oat-project-subagent-implement/tests/test-review-gate.sh +220 -0
- package/assets/skills/oat-project-summary/SKILL.md +227 -0
- package/assets/skills/oat-repo-knowledge-index/SKILL.md +724 -0
- package/assets/skills/oat-repo-knowledge-index/references/templates/architecture.md +83 -0
- package/assets/skills/oat-repo-knowledge-index/references/templates/concerns.md +97 -0
- package/assets/skills/oat-repo-knowledge-index/references/templates/conventions.md +100 -0
- package/assets/skills/oat-repo-knowledge-index/references/templates/integrations.md +91 -0
- package/assets/skills/oat-repo-knowledge-index/references/templates/stack.md +86 -0
- package/assets/skills/oat-repo-knowledge-index/references/templates/structure.md +88 -0
- package/assets/skills/oat-repo-knowledge-index/references/templates/testing.md +137 -0
- package/assets/skills/oat-repo-maintainability-review/SKILL.md +198 -0
- package/assets/skills/oat-repo-maintainability-review/references/dx-checklist.md +33 -0
- package/assets/skills/oat-repo-maintainability-review/references/repo-review-artifact-template.md +72 -0
- package/assets/skills/oat-repo-maintainability-review/references/repo-review-rubric.md +66 -0
- package/assets/skills/oat-repo-maintainability-review/scripts/resolve-analysis-output.sh +162 -0
- package/assets/skills/oat-review-provide/SKILL.md +231 -0
- package/assets/skills/oat-review-provide/references/review-artifact-template.md +55 -0
- package/assets/skills/oat-review-provide/scripts/resolve-review-output.sh +124 -0
- package/assets/skills/oat-review-receive/SKILL.md +238 -0
- package/assets/skills/oat-review-receive-remote/SKILL.md +250 -0
- package/assets/skills/oat-worktree-bootstrap/SKILL.md +208 -0
- package/assets/skills/oat-worktree-bootstrap/references/worktree-conventions.md +58 -0
- package/assets/skills/oat-worktree-bootstrap-auto/SKILL.md +245 -0
- package/assets/skills/oat-worktree-bootstrap-auto/scripts/bootstrap.sh +194 -0
- package/assets/skills/skeptic/SKILL.md +261 -0
- package/assets/skills/synthesize/SKILL.md +361 -0
- package/assets/templates/backlog-item.md +24 -0
- package/assets/templates/design.md +315 -0
- package/assets/templates/discovery.md +135 -0
- package/assets/templates/docs-app-fuma/app/[[...slug]]/page.tsx +30 -0
- package/assets/templates/docs-app-fuma/app/api/search/route.ts +8 -0
- package/assets/templates/docs-app-fuma/app/globals.css +69 -0
- package/assets/templates/docs-app-fuma/app/layout.tsx +26 -0
- package/assets/templates/docs-app-fuma/docs/contributing.md +71 -0
- package/assets/templates/docs-app-fuma/docs/getting-started.md +40 -0
- package/assets/templates/docs-app-fuma/docs/index.md +13 -0
- package/assets/templates/docs-app-fuma/lib/source.ts +8 -0
- package/assets/templates/docs-app-fuma/next.config.js +6 -0
- package/assets/templates/docs-app-fuma/package.json.template +38 -0
- package/assets/templates/docs-app-fuma/postcss.config.mjs +7 -0
- package/assets/templates/docs-app-fuma/source.config.ts +14 -0
- package/assets/templates/docs-app-fuma/tsconfig.json +25 -0
- package/assets/templates/docs-app-mkdocs/docs/contributing.md +122 -0
- package/assets/templates/docs-app-mkdocs/docs/getting-started.md +28 -0
- package/assets/templates/docs-app-mkdocs/docs/index.md +8 -0
- package/assets/templates/docs-app-mkdocs/mkdocs.yml +47 -0
- package/assets/templates/docs-app-mkdocs/package.json.template +19 -0
- package/assets/templates/docs-app-mkdocs/requirements.txt +6 -0
- package/assets/templates/docs-app-mkdocs/setup-docs.sh +18 -0
- package/assets/templates/ideas/idea-discovery.md +39 -0
- package/assets/templates/ideas/idea-summary.md +42 -0
- package/assets/templates/ideas/ideas-backlog.md +21 -0
- package/assets/templates/ideas/ideas-scratchpad.md +10 -0
- package/assets/templates/implementation.md +207 -0
- package/assets/templates/plan.md +171 -0
- package/assets/templates/roadmap.md +24 -0
- package/assets/templates/spec.md +138 -0
- package/assets/templates/state.md +49 -0
- package/assets/templates/summary.md +82 -0
- package/dist/agents/canonical/index.d.ts +4 -0
- package/dist/agents/canonical/index.d.ts.map +1 -0
- package/dist/agents/canonical/index.js +2 -0
- package/dist/agents/canonical/parse.d.ts +4 -0
- package/dist/agents/canonical/parse.d.ts.map +1 -0
- package/dist/agents/canonical/parse.js +97 -0
- package/dist/agents/canonical/render.d.ts +3 -0
- package/dist/agents/canonical/render.d.ts.map +1 -0
- package/dist/agents/canonical/render.js +17 -0
- package/dist/agents/canonical/types.d.ts +22 -0
- package/dist/agents/canonical/types.d.ts.map +1 -0
- package/dist/agents/canonical/types.js +1 -0
- package/dist/app/command-context.d.ts +21 -0
- package/dist/app/command-context.d.ts.map +1 -0
- package/dist/app/command-context.js +18 -0
- package/dist/app/create-program.d.ts +3 -0
- package/dist/app/create-program.d.ts.map +1 -0
- package/dist/app/create-program.js +17 -0
- package/dist/commands/__tests__/helpers.d.ts +12 -0
- package/dist/commands/__tests__/helpers.d.ts.map +1 -0
- package/dist/commands/__tests__/helpers.js +36 -0
- package/dist/commands/backlog/index.d.ts +14 -0
- package/dist/commands/backlog/index.d.ts.map +1 -0
- package/dist/commands/backlog/index.js +80 -0
- package/dist/commands/backlog/init.d.ts +2 -0
- package/dist/commands/backlog/init.d.ts.map +1 -0
- package/dist/commands/backlog/init.js +66 -0
- package/dist/commands/backlog/regenerate-index.d.ts +2 -0
- package/dist/commands/backlog/regenerate-index.d.ts.map +1 -0
- package/dist/commands/backlog/regenerate-index.js +78 -0
- package/dist/commands/backlog/shared/generate-id.d.ts +4 -0
- package/dist/commands/backlog/shared/generate-id.d.ts.map +1 -0
- package/dist/commands/backlog/shared/generate-id.js +65 -0
- package/dist/commands/cleanup/artifacts/artifacts.d.ts +44 -0
- package/dist/commands/cleanup/artifacts/artifacts.d.ts.map +1 -0
- package/dist/commands/cleanup/artifacts/artifacts.js +381 -0
- package/dist/commands/cleanup/artifacts/artifacts.types.d.ts +13 -0
- package/dist/commands/cleanup/artifacts/artifacts.types.d.ts.map +1 -0
- package/dist/commands/cleanup/artifacts/artifacts.types.js +1 -0
- package/dist/commands/cleanup/artifacts/artifacts.utils.d.ts +14 -0
- package/dist/commands/cleanup/artifacts/artifacts.utils.d.ts.map +1 -0
- package/dist/commands/cleanup/artifacts/artifacts.utils.js +74 -0
- package/dist/commands/cleanup/cleanup.types.d.ts +26 -0
- package/dist/commands/cleanup/cleanup.types.d.ts.map +1 -0
- package/dist/commands/cleanup/cleanup.types.js +1 -0
- package/dist/commands/cleanup/cleanup.utils.d.ts +17 -0
- package/dist/commands/cleanup/cleanup.utils.d.ts.map +1 -0
- package/dist/commands/cleanup/cleanup.utils.js +44 -0
- package/dist/commands/cleanup/index.d.ts +3 -0
- package/dist/commands/cleanup/index.d.ts.map +1 -0
- package/dist/commands/cleanup/index.js +9 -0
- package/dist/commands/cleanup/project/project.d.ts +20 -0
- package/dist/commands/cleanup/project/project.d.ts.map +1 -0
- package/dist/commands/cleanup/project/project.js +263 -0
- package/dist/commands/cleanup/project/project.utils.d.ts +8 -0
- package/dist/commands/cleanup/project/project.utils.d.ts.map +1 -0
- package/dist/commands/cleanup/project/project.utils.js +48 -0
- package/dist/commands/config/index.d.ts +16 -0
- package/dist/commands/config/index.d.ts.map +1 -0
- package/dist/commands/config/index.js +700 -0
- package/dist/commands/docs/analyze.d.ts +8 -0
- package/dist/commands/docs/analyze.d.ts.map +1 -0
- package/dist/commands/docs/analyze.js +45 -0
- package/dist/commands/docs/apply.d.ts +8 -0
- package/dist/commands/docs/apply.d.ts.map +1 -0
- package/dist/commands/docs/apply.js +45 -0
- package/dist/commands/docs/index-generate/generator.d.ts +9 -0
- package/dist/commands/docs/index-generate/generator.d.ts.map +1 -0
- package/dist/commands/docs/index-generate/generator.js +114 -0
- package/dist/commands/docs/index-generate/index.d.ts +16 -0
- package/dist/commands/docs/index-generate/index.d.ts.map +1 -0
- package/dist/commands/docs/index-generate/index.js +72 -0
- package/dist/commands/docs/index.d.ts +3 -0
- package/dist/commands/docs/index.d.ts.map +1 -0
- package/dist/commands/docs/index.js +17 -0
- package/dist/commands/docs/init/index.d.ts +18 -0
- package/dist/commands/docs/init/index.d.ts.map +1 -0
- package/dist/commands/docs/init/index.js +129 -0
- package/dist/commands/docs/init/resolve-options.d.ts +41 -0
- package/dist/commands/docs/init/resolve-options.d.ts.map +1 -0
- package/dist/commands/docs/init/resolve-options.js +120 -0
- package/dist/commands/docs/init/scaffold.d.ts +18 -0
- package/dist/commands/docs/init/scaffold.d.ts.map +1 -0
- package/dist/commands/docs/init/scaffold.js +233 -0
- package/dist/commands/docs/migrate/codemod.d.ts +6 -0
- package/dist/commands/docs/migrate/codemod.d.ts.map +1 -0
- package/dist/commands/docs/migrate/codemod.js +62 -0
- package/dist/commands/docs/migrate/frontmatter.d.ts +12 -0
- package/dist/commands/docs/migrate/frontmatter.d.ts.map +1 -0
- package/dist/commands/docs/migrate/frontmatter.js +55 -0
- package/dist/commands/docs/migrate/index.d.ts +18 -0
- package/dist/commands/docs/migrate/index.d.ts.map +1 -0
- package/dist/commands/docs/migrate/index.js +138 -0
- package/dist/commands/docs/nav/contents.d.ts +14 -0
- package/dist/commands/docs/nav/contents.d.ts.map +1 -0
- package/dist/commands/docs/nav/contents.js +106 -0
- package/dist/commands/docs/nav/index.d.ts +3 -0
- package/dist/commands/docs/nav/index.d.ts.map +1 -0
- package/dist/commands/docs/nav/index.js +7 -0
- package/dist/commands/docs/nav/sync.d.ts +20 -0
- package/dist/commands/docs/nav/sync.d.ts.map +1 -0
- package/dist/commands/docs/nav/sync.js +92 -0
- package/dist/commands/doctor/index.d.ts +32 -0
- package/dist/commands/doctor/index.d.ts.map +1 -0
- package/dist/commands/doctor/index.js +373 -0
- package/dist/commands/index-cmd/index.d.ts +11 -0
- package/dist/commands/index-cmd/index.d.ts.map +1 -0
- package/dist/commands/index-cmd/index.js +62 -0
- package/dist/commands/index-cmd/thin-index.d.ts +19 -0
- package/dist/commands/index-cmd/thin-index.d.ts.map +1 -0
- package/dist/commands/index-cmd/thin-index.js +330 -0
- package/dist/commands/index.d.ts +3 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +38 -0
- package/dist/commands/init/detect-docs.d.ts +11 -0
- package/dist/commands/init/detect-docs.d.ts.map +1 -0
- package/dist/commands/init/detect-docs.js +51 -0
- package/dist/commands/init/gitignore.d.ts +6 -0
- package/dist/commands/init/gitignore.d.ts.map +1 -0
- package/dist/commands/init/gitignore.js +41 -0
- package/dist/commands/init/index.d.ts +70 -0
- package/dist/commands/init/index.d.ts.map +1 -0
- package/dist/commands/init/index.js +570 -0
- package/dist/commands/init/tools/core/index.d.ts +12 -0
- package/dist/commands/init/tools/core/index.d.ts.map +1 -0
- package/dist/commands/init/tools/core/index.js +67 -0
- package/dist/commands/init/tools/core/install-core.d.ts +30 -0
- package/dist/commands/init/tools/core/install-core.d.ts.map +1 -0
- package/dist/commands/init/tools/core/install-core.js +50 -0
- package/dist/commands/init/tools/docs/index.d.ts +17 -0
- package/dist/commands/init/tools/docs/index.d.ts.map +1 -0
- package/dist/commands/init/tools/docs/index.js +110 -0
- package/dist/commands/init/tools/docs/install-docs.d.ts +23 -0
- package/dist/commands/init/tools/docs/install-docs.d.ts.map +1 -0
- package/dist/commands/init/tools/docs/install-docs.js +58 -0
- package/dist/commands/init/tools/ideas/index.d.ts +16 -0
- package/dist/commands/init/tools/ideas/index.d.ts.map +1 -0
- package/dist/commands/init/tools/ideas/index.js +94 -0
- package/dist/commands/init/tools/ideas/install-ideas.d.ts +25 -0
- package/dist/commands/init/tools/ideas/install-ideas.d.ts.map +1 -0
- package/dist/commands/init/tools/ideas/install-ideas.js +78 -0
- package/dist/commands/init/tools/index.d.ts +51 -0
- package/dist/commands/init/tools/index.d.ts.map +1 -0
- package/dist/commands/init/tools/index.js +387 -0
- package/dist/commands/init/tools/project-management/index.d.ts +12 -0
- package/dist/commands/init/tools/project-management/index.d.ts.map +1 -0
- package/dist/commands/init/tools/project-management/index.js +61 -0
- package/dist/commands/init/tools/project-management/install-project-management.d.ts +22 -0
- package/dist/commands/init/tools/project-management/install-project-management.d.ts.map +1 -0
- package/dist/commands/init/tools/project-management/install-project-management.js +52 -0
- package/dist/commands/init/tools/research/index.d.ts +17 -0
- package/dist/commands/init/tools/research/index.d.ts.map +1 -0
- package/dist/commands/init/tools/research/index.js +110 -0
- package/dist/commands/init/tools/research/install-research.d.ts +23 -0
- package/dist/commands/init/tools/research/install-research.d.ts.map +1 -0
- package/dist/commands/init/tools/research/install-research.js +52 -0
- package/dist/commands/init/tools/shared/copy-helpers.d.ts +12 -0
- package/dist/commands/init/tools/shared/copy-helpers.d.ts.map +1 -0
- package/dist/commands/init/tools/shared/copy-helpers.js +52 -0
- package/dist/commands/init/tools/shared/skill-manifest.d.ts +22 -0
- package/dist/commands/init/tools/shared/skill-manifest.d.ts.map +1 -0
- package/dist/commands/init/tools/shared/skill-manifest.js +102 -0
- package/dist/commands/init/tools/shared/version.d.ts +3 -0
- package/dist/commands/init/tools/shared/version.d.ts.map +1 -0
- package/dist/commands/init/tools/shared/version.js +27 -0
- package/dist/commands/init/tools/utility/index.d.ts +17 -0
- package/dist/commands/init/tools/utility/index.d.ts.map +1 -0
- package/dist/commands/init/tools/utility/index.js +109 -0
- package/dist/commands/init/tools/utility/install-utility.d.ts +20 -0
- package/dist/commands/init/tools/utility/install-utility.d.ts.map +1 -0
- package/dist/commands/init/tools/utility/install-utility.js +35 -0
- package/dist/commands/init/tools/workflows/index.d.ts +14 -0
- package/dist/commands/init/tools/workflows/index.d.ts.map +1 -0
- package/dist/commands/init/tools/workflows/index.js +84 -0
- package/dist/commands/init/tools/workflows/install-workflows.d.ts +32 -0
- package/dist/commands/init/tools/workflows/install-workflows.d.ts.map +1 -0
- package/dist/commands/init/tools/workflows/install-workflows.js +135 -0
- package/dist/commands/instructions/index.d.ts +3 -0
- package/dist/commands/instructions/index.d.ts.map +1 -0
- package/dist/commands/instructions/index.js +9 -0
- package/dist/commands/instructions/instructions.types.d.ts +52 -0
- package/dist/commands/instructions/instructions.types.d.ts.map +1 -0
- package/dist/commands/instructions/instructions.types.js +1 -0
- package/dist/commands/instructions/instructions.utils.d.ts +13 -0
- package/dist/commands/instructions/instructions.utils.d.ts.map +1 -0
- package/dist/commands/instructions/instructions.utils.js +211 -0
- package/dist/commands/instructions/sync/sync.d.ts +4 -0
- package/dist/commands/instructions/sync/sync.d.ts.map +1 -0
- package/dist/commands/instructions/sync/sync.js +142 -0
- package/dist/commands/instructions/validate/validate.d.ts +4 -0
- package/dist/commands/instructions/validate/validate.d.ts.map +1 -0
- package/dist/commands/instructions/validate/validate.js +53 -0
- package/dist/commands/internal/index.d.ts +3 -0
- package/dist/commands/internal/index.d.ts.map +1 -0
- package/dist/commands/internal/index.js +7 -0
- package/dist/commands/internal/validate-oat-skills.d.ts +10 -0
- package/dist/commands/internal/validate-oat-skills.d.ts.map +1 -0
- package/dist/commands/internal/validate-oat-skills.js +66 -0
- package/dist/commands/local/apply.d.ts +6 -0
- package/dist/commands/local/apply.d.ts.map +1 -0
- package/dist/commands/local/apply.js +56 -0
- package/dist/commands/local/expand.d.ts +8 -0
- package/dist/commands/local/expand.d.ts.map +1 -0
- package/dist/commands/local/expand.js +83 -0
- package/dist/commands/local/index.d.ts +3 -0
- package/dist/commands/local/index.d.ts.map +1 -0
- package/dist/commands/local/index.js +248 -0
- package/dist/commands/local/manage.d.ts +18 -0
- package/dist/commands/local/manage.d.ts.map +1 -0
- package/dist/commands/local/manage.js +66 -0
- package/dist/commands/local/status.d.ts +7 -0
- package/dist/commands/local/status.d.ts.map +1 -0
- package/dist/commands/local/status.js +46 -0
- package/dist/commands/local/sync.d.ts +20 -0
- package/dist/commands/local/sync.d.ts.map +1 -0
- package/dist/commands/local/sync.js +40 -0
- package/dist/commands/project/archive/archive-utils.d.ts +70 -0
- package/dist/commands/project/archive/archive-utils.d.ts.map +1 -0
- package/dist/commands/project/archive/archive-utils.js +236 -0
- package/dist/commands/project/archive/index.d.ts +20 -0
- package/dist/commands/project/archive/index.d.ts.map +1 -0
- package/dist/commands/project/archive/index.js +217 -0
- package/dist/commands/project/index.d.ts +3 -0
- package/dist/commands/project/index.d.ts.map +1 -0
- package/dist/commands/project/index.js +15 -0
- package/dist/commands/project/new/index.d.ts +17 -0
- package/dist/commands/project/new/index.d.ts.map +1 -0
- package/dist/commands/project/new/index.js +76 -0
- package/dist/commands/project/new/scaffold.d.ts +24 -0
- package/dist/commands/project/new/scaffold.d.ts.map +1 -0
- package/dist/commands/project/new/scaffold.js +177 -0
- package/dist/commands/project/open/index.d.ts +26 -0
- package/dist/commands/project/open/index.d.ts.map +1 -0
- package/dist/commands/project/open/index.js +139 -0
- package/dist/commands/project/pause/index.d.ts +27 -0
- package/dist/commands/project/pause/index.d.ts.map +1 -0
- package/dist/commands/project/pause/index.js +120 -0
- package/dist/commands/project/set-mode/index.d.ts +14 -0
- package/dist/commands/project/set-mode/index.d.ts.map +1 -0
- package/dist/commands/project/set-mode/index.js +115 -0
- package/dist/commands/providers/index.d.ts +4 -0
- package/dist/commands/providers/index.d.ts.map +1 -0
- package/dist/commands/providers/index.js +11 -0
- package/dist/commands/providers/inspect/inspect.d.ts +4 -0
- package/dist/commands/providers/inspect/inspect.d.ts.map +1 -0
- package/dist/commands/providers/inspect/inspect.js +156 -0
- package/dist/commands/providers/list/list.d.ts +4 -0
- package/dist/commands/providers/list/list.d.ts.map +1 -0
- package/dist/commands/providers/list/list.js +163 -0
- package/dist/commands/providers/providers.types.d.ts +63 -0
- package/dist/commands/providers/providers.types.d.ts.map +1 -0
- package/dist/commands/providers/providers.types.js +1 -0
- package/dist/commands/providers/set/index.d.ts +4 -0
- package/dist/commands/providers/set/index.d.ts.map +1 -0
- package/dist/commands/providers/set/index.js +138 -0
- package/dist/commands/remove/index.d.ts +3 -0
- package/dist/commands/remove/index.d.ts.map +1 -0
- package/dist/commands/remove/index.js +9 -0
- package/dist/commands/remove/skill/index.d.ts +2 -0
- package/dist/commands/remove/skill/index.d.ts.map +1 -0
- package/dist/commands/remove/skill/index.js +1 -0
- package/dist/commands/remove/skill/remove-skill.d.ts +23 -0
- package/dist/commands/remove/skill/remove-skill.d.ts.map +1 -0
- package/dist/commands/remove/skill/remove-skill.js +231 -0
- package/dist/commands/remove/skills/index.d.ts +2 -0
- package/dist/commands/remove/skills/index.d.ts.map +1 -0
- package/dist/commands/remove/skills/index.js +1 -0
- package/dist/commands/remove/skills/remove-skills.d.ts +14 -0
- package/dist/commands/remove/skills/remove-skills.d.ts.map +1 -0
- package/dist/commands/remove/skills/remove-skills.js +98 -0
- package/dist/commands/repo/index.d.ts +3 -0
- package/dist/commands/repo/index.d.ts.map +1 -0
- package/dist/commands/repo/index.js +7 -0
- package/dist/commands/repo/pr-comments/collect/collect-comments.d.ts +9 -0
- package/dist/commands/repo/pr-comments/collect/collect-comments.d.ts.map +1 -0
- package/dist/commands/repo/pr-comments/collect/collect-comments.js +284 -0
- package/dist/commands/repo/pr-comments/collect/graphql-queries.d.ts +3 -0
- package/dist/commands/repo/pr-comments/collect/graphql-queries.d.ts.map +1 -0
- package/dist/commands/repo/pr-comments/collect/graphql-queries.js +56 -0
- package/dist/commands/repo/pr-comments/collect/index.d.ts +4 -0
- package/dist/commands/repo/pr-comments/collect/index.d.ts.map +1 -0
- package/dist/commands/repo/pr-comments/collect/index.js +25 -0
- package/dist/commands/repo/pr-comments/collect/pr-comments.types.d.ts +62 -0
- package/dist/commands/repo/pr-comments/collect/pr-comments.types.d.ts.map +1 -0
- package/dist/commands/repo/pr-comments/collect/pr-comments.types.js +1 -0
- package/dist/commands/repo/pr-comments/index.d.ts +3 -0
- package/dist/commands/repo/pr-comments/index.d.ts.map +1 -0
- package/dist/commands/repo/pr-comments/index.js +9 -0
- package/dist/commands/repo/pr-comments/triage-collection/index.d.ts +4 -0
- package/dist/commands/repo/pr-comments/triage-collection/index.d.ts.map +1 -0
- package/dist/commands/repo/pr-comments/triage-collection/index.js +21 -0
- package/dist/commands/repo/pr-comments/triage-collection/triage-comments.d.ts +13 -0
- package/dist/commands/repo/pr-comments/triage-collection/triage-comments.d.ts.map +1 -0
- package/dist/commands/repo/pr-comments/triage-collection/triage-comments.js +81 -0
- package/dist/commands/shared/adopt-stray.d.ts +22 -0
- package/dist/commands/shared/adopt-stray.d.ts.map +1 -0
- package/dist/commands/shared/adopt-stray.js +135 -0
- package/dist/commands/shared/agents-md.d.ts +18 -0
- package/dist/commands/shared/agents-md.d.ts.map +1 -0
- package/dist/commands/shared/agents-md.js +81 -0
- package/dist/commands/shared/codex-strays.d.ts +16 -0
- package/dist/commands/shared/codex-strays.d.ts.map +1 -0
- package/dist/commands/shared/codex-strays.js +116 -0
- package/dist/commands/shared/frontmatter-write.d.ts +8 -0
- package/dist/commands/shared/frontmatter-write.d.ts.map +1 -0
- package/dist/commands/shared/frontmatter-write.js +27 -0
- package/dist/commands/shared/frontmatter.d.ts +6 -0
- package/dist/commands/shared/frontmatter.d.ts.map +1 -0
- package/dist/commands/shared/frontmatter.js +35 -0
- package/dist/commands/shared/messages.d.ts +2 -0
- package/dist/commands/shared/messages.d.ts.map +1 -0
- package/dist/commands/shared/messages.js +1 -0
- package/dist/commands/shared/oat-paths.d.ts +2 -0
- package/dist/commands/shared/oat-paths.d.ts.map +1 -0
- package/dist/commands/shared/oat-paths.js +13 -0
- package/dist/commands/shared/shared.prompts.d.ts +21 -0
- package/dist/commands/shared/shared.prompts.d.ts.map +1 -0
- package/dist/commands/shared/shared.prompts.js +107 -0
- package/dist/commands/shared/shared.utils.d.ts +6 -0
- package/dist/commands/shared/shared.utils.d.ts.map +1 -0
- package/dist/commands/shared/shared.utils.js +9 -0
- package/dist/commands/state/generate.d.ts +21 -0
- package/dist/commands/state/generate.d.ts.map +1 -0
- package/dist/commands/state/generate.js +440 -0
- package/dist/commands/state/index.d.ts +11 -0
- package/dist/commands/state/index.d.ts.map +1 -0
- package/dist/commands/state/index.js +58 -0
- package/dist/commands/status/index.d.ts +44 -0
- package/dist/commands/status/index.d.ts.map +1 -0
- package/dist/commands/status/index.js +340 -0
- package/dist/commands/sync/apply.d.ts +4 -0
- package/dist/commands/sync/apply.d.ts.map +1 -0
- package/dist/commands/sync/apply.js +100 -0
- package/dist/commands/sync/dry-run.d.ts +4 -0
- package/dist/commands/sync/dry-run.d.ts.map +1 -0
- package/dist/commands/sync/dry-run.js +74 -0
- package/dist/commands/sync/index.d.ts +4 -0
- package/dist/commands/sync/index.d.ts.map +1 -0
- package/dist/commands/sync/index.js +225 -0
- package/dist/commands/sync/sync.types.d.ts +80 -0
- package/dist/commands/sync/sync.types.d.ts.map +1 -0
- package/dist/commands/sync/sync.types.js +1 -0
- package/dist/commands/sync/sync.utils.d.ts +3 -0
- package/dist/commands/sync/sync.utils.d.ts.map +1 -0
- package/dist/commands/sync/sync.utils.js +8 -0
- package/dist/commands/tools/index.d.ts +3 -0
- package/dist/commands/tools/index.d.ts.map +1 -0
- package/dist/commands/tools/index.js +17 -0
- package/dist/commands/tools/info/index.d.ts +4 -0
- package/dist/commands/tools/info/index.d.ts.map +1 -0
- package/dist/commands/tools/info/index.js +74 -0
- package/dist/commands/tools/info/info-tool.d.ts +21 -0
- package/dist/commands/tools/info/info-tool.d.ts.map +1 -0
- package/dist/commands/tools/info/info-tool.js +52 -0
- package/dist/commands/tools/install/index.d.ts +4 -0
- package/dist/commands/tools/install/index.d.ts.map +1 -0
- package/dist/commands/tools/install/index.js +34 -0
- package/dist/commands/tools/list/index.d.ts +4 -0
- package/dist/commands/tools/list/index.d.ts.map +1 -0
- package/dist/commands/tools/list/index.js +25 -0
- package/dist/commands/tools/list/list-tools.d.ts +13 -0
- package/dist/commands/tools/list/list-tools.d.ts.map +1 -0
- package/dist/commands/tools/list/list-tools.js +43 -0
- package/dist/commands/tools/outdated/index.d.ts +4 -0
- package/dist/commands/tools/outdated/index.d.ts.map +1 -0
- package/dist/commands/tools/outdated/index.js +25 -0
- package/dist/commands/tools/outdated/outdated-tools.d.ts +13 -0
- package/dist/commands/tools/outdated/outdated-tools.d.ts.map +1 -0
- package/dist/commands/tools/outdated/outdated-tools.js +43 -0
- package/dist/commands/tools/remove/index.d.ts +5 -0
- package/dist/commands/tools/remove/index.d.ts.map +1 -0
- package/dist/commands/tools/remove/index.js +122 -0
- package/dist/commands/tools/remove/remove-tools.d.ts +31 -0
- package/dist/commands/tools/remove/remove-tools.d.ts.map +1 -0
- package/dist/commands/tools/remove/remove-tools.js +41 -0
- package/dist/commands/tools/shared/auto-sync.d.ts +16 -0
- package/dist/commands/tools/shared/auto-sync.d.ts.map +1 -0
- package/dist/commands/tools/shared/auto-sync.js +17 -0
- package/dist/commands/tools/shared/scan-tools.d.ts +18 -0
- package/dist/commands/tools/shared/scan-tools.d.ts.map +1 -0
- package/dist/commands/tools/shared/scan-tools.js +128 -0
- package/dist/commands/tools/shared/types.d.ts +12 -0
- package/dist/commands/tools/shared/types.d.ts.map +1 -0
- package/dist/commands/tools/shared/types.js +1 -0
- package/dist/commands/tools/update/index.d.ts +8 -0
- package/dist/commands/tools/update/index.d.ts.map +1 -0
- package/dist/commands/tools/update/index.js +149 -0
- package/dist/commands/tools/update/update-tools.d.ts +29 -0
- package/dist/commands/tools/update/update-tools.d.ts.map +1 -0
- package/dist/commands/tools/update/update-tools.js +148 -0
- package/dist/config/index.d.ts +4 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +2 -0
- package/dist/config/oat-config.d.ts +61 -0
- package/dist/config/oat-config.d.ts.map +1 -0
- package/dist/config/oat-config.js +319 -0
- package/dist/config/runtime.d.ts +2 -0
- package/dist/config/runtime.d.ts.map +1 -0
- package/dist/config/runtime.js +3 -0
- package/dist/config/sync-config.d.ts +49 -0
- package/dist/config/sync-config.d.ts.map +1 -0
- package/dist/config/sync-config.js +94 -0
- package/dist/drift/detector.d.ts +4 -0
- package/dist/drift/detector.d.ts.map +1 -0
- package/dist/drift/detector.js +69 -0
- package/dist/drift/drift.types.d.ts +17 -0
- package/dist/drift/drift.types.d.ts.map +1 -0
- package/dist/drift/drift.types.js +1 -0
- package/dist/drift/index.d.ts +4 -0
- package/dist/drift/index.d.ts.map +1 -0
- package/dist/drift/index.js +2 -0
- package/dist/drift/strays.d.ts +7 -0
- package/dist/drift/strays.d.ts.map +1 -0
- package/dist/drift/strays.js +153 -0
- package/dist/engine/compute-plan.d.ts +16 -0
- package/dist/engine/compute-plan.d.ts.map +1 -0
- package/dist/engine/compute-plan.js +234 -0
- package/dist/engine/engine.types.d.ts +28 -0
- package/dist/engine/engine.types.d.ts.map +1 -0
- package/dist/engine/engine.types.js +8 -0
- package/dist/engine/execute-plan.d.ts +5 -0
- package/dist/engine/execute-plan.d.ts.map +1 -0
- package/dist/engine/execute-plan.js +141 -0
- package/dist/engine/hook.d.ts +23 -0
- package/dist/engine/hook.d.ts.map +1 -0
- package/dist/engine/hook.js +254 -0
- package/dist/engine/index.d.ts +9 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/engine/index.js +6 -0
- package/dist/engine/markers.d.ts +6 -0
- package/dist/engine/markers.d.ts.map +1 -0
- package/dist/engine/markers.js +24 -0
- package/dist/engine/scanner.d.ts +11 -0
- package/dist/engine/scanner.d.ts.map +1 -0
- package/dist/engine/scanner.js +65 -0
- package/dist/engine/test-helpers.d.ts +3 -0
- package/dist/engine/test-helpers.d.ts.map +1 -0
- package/dist/engine/test-helpers.js +31 -0
- package/dist/errors/cli-error.d.ts +5 -0
- package/dist/errors/cli-error.d.ts.map +1 -0
- package/dist/errors/cli-error.js +8 -0
- package/dist/errors/index.d.ts +2 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +1 -0
- package/dist/fs/assets.d.ts +2 -0
- package/dist/fs/assets.d.ts.map +1 -0
- package/dist/fs/assets.js +22 -0
- package/dist/fs/index.d.ts +4 -0
- package/dist/fs/index.d.ts.map +1 -0
- package/dist/fs/index.js +3 -0
- package/dist/fs/io.d.ts +9 -0
- package/dist/fs/io.d.ts.map +1 -0
- package/dist/fs/io.js +74 -0
- package/dist/fs/paths.d.ts +9 -0
- package/dist/fs/paths.d.ts.map +1 -0
- package/dist/fs/paths.js +42 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +48 -0
- package/dist/manifest/hash.d.ts +5 -0
- package/dist/manifest/hash.d.ts.map +1 -0
- package/dist/manifest/hash.js +75 -0
- package/dist/manifest/index.d.ts +5 -0
- package/dist/manifest/index.d.ts.map +1 -0
- package/dist/manifest/index.js +3 -0
- package/dist/manifest/manager.d.ts +8 -0
- package/dist/manifest/manager.d.ts.map +1 -0
- package/dist/manifest/manager.js +86 -0
- package/dist/manifest/manifest.types.d.ts +157 -0
- package/dist/manifest/manifest.types.d.ts.map +1 -0
- package/dist/manifest/manifest.types.js +56 -0
- package/dist/providers/claude/adapter.d.ts +3 -0
- package/dist/providers/claude/adapter.d.ts.map +1 -0
- package/dist/providers/claude/adapter.js +20 -0
- package/dist/providers/claude/index.d.ts +3 -0
- package/dist/providers/claude/index.d.ts.map +1 -0
- package/dist/providers/claude/index.js +2 -0
- package/dist/providers/claude/paths.d.ts +4 -0
- package/dist/providers/claude/paths.d.ts.map +1 -0
- package/dist/providers/claude/paths.js +38 -0
- package/dist/providers/claude/rule-transform.d.ts +3 -0
- package/dist/providers/claude/rule-transform.d.ts.map +1 -0
- package/dist/providers/claude/rule-transform.js +22 -0
- package/dist/providers/codex/adapter.d.ts +3 -0
- package/dist/providers/codex/adapter.d.ts.map +1 -0
- package/dist/providers/codex/adapter.js +20 -0
- package/dist/providers/codex/codec/config-merge.d.ts +17 -0
- package/dist/providers/codex/codec/config-merge.d.ts.map +1 -0
- package/dist/providers/codex/codec/config-merge.js +61 -0
- package/dist/providers/codex/codec/export-to-codex.d.ts +9 -0
- package/dist/providers/codex/codec/export-to-codex.d.ts.map +1 -0
- package/dist/providers/codex/codec/export-to-codex.js +45 -0
- package/dist/providers/codex/codec/import-from-codex.d.ts +9 -0
- package/dist/providers/codex/codec/import-from-codex.d.ts.map +1 -0
- package/dist/providers/codex/codec/import-from-codex.js +52 -0
- package/dist/providers/codex/codec/shared.d.ts +7 -0
- package/dist/providers/codex/codec/shared.d.ts.map +1 -0
- package/dist/providers/codex/codec/shared.js +21 -0
- package/dist/providers/codex/codec/sync-extension.d.ts +32 -0
- package/dist/providers/codex/codec/sync-extension.d.ts.map +1 -0
- package/dist/providers/codex/codec/sync-extension.js +227 -0
- package/dist/providers/codex/index.d.ts +6 -0
- package/dist/providers/codex/index.d.ts.map +1 -0
- package/dist/providers/codex/index.js +5 -0
- package/dist/providers/codex/paths.d.ts +4 -0
- package/dist/providers/codex/paths.d.ts.map +1 -0
- package/dist/providers/codex/paths.js +28 -0
- package/dist/providers/copilot/adapter.d.ts +3 -0
- package/dist/providers/copilot/adapter.d.ts.map +1 -0
- package/dist/providers/copilot/adapter.js +30 -0
- package/dist/providers/copilot/index.d.ts +3 -0
- package/dist/providers/copilot/index.d.ts.map +1 -0
- package/dist/providers/copilot/index.js +2 -0
- package/dist/providers/copilot/paths.d.ts +4 -0
- package/dist/providers/copilot/paths.d.ts.map +1 -0
- package/dist/providers/copilot/paths.js +38 -0
- package/dist/providers/copilot/rule-transform.d.ts +3 -0
- package/dist/providers/copilot/rule-transform.d.ts.map +1 -0
- package/dist/providers/copilot/rule-transform.js +58 -0
- package/dist/providers/cursor/adapter.d.ts +3 -0
- package/dist/providers/cursor/adapter.d.ts.map +1 -0
- package/dist/providers/cursor/adapter.js +20 -0
- package/dist/providers/cursor/index.d.ts +3 -0
- package/dist/providers/cursor/index.d.ts.map +1 -0
- package/dist/providers/cursor/index.js +2 -0
- package/dist/providers/cursor/paths.d.ts +4 -0
- package/dist/providers/cursor/paths.d.ts.map +1 -0
- package/dist/providers/cursor/paths.js +38 -0
- package/dist/providers/cursor/rule-transform.d.ts +3 -0
- package/dist/providers/cursor/rule-transform.d.ts.map +1 -0
- package/dist/providers/cursor/rule-transform.js +48 -0
- package/dist/providers/gemini/adapter.d.ts +3 -0
- package/dist/providers/gemini/adapter.d.ts.map +1 -0
- package/dist/providers/gemini/adapter.js +20 -0
- package/dist/providers/gemini/index.d.ts +3 -0
- package/dist/providers/gemini/index.d.ts.map +1 -0
- package/dist/providers/gemini/index.js +2 -0
- package/dist/providers/gemini/paths.d.ts +4 -0
- package/dist/providers/gemini/paths.d.ts.map +1 -0
- package/dist/providers/gemini/paths.js +28 -0
- package/dist/providers/shared/adapter.types.d.ts +21 -0
- package/dist/providers/shared/adapter.types.d.ts.map +1 -0
- package/dist/providers/shared/adapter.types.js +1 -0
- package/dist/providers/shared/adapter.utils.d.ts +12 -0
- package/dist/providers/shared/adapter.utils.d.ts.map +1 -0
- package/dist/providers/shared/adapter.utils.js +57 -0
- package/dist/providers/shared/agent-codec.types.d.ts +13 -0
- package/dist/providers/shared/agent-codec.types.d.ts.map +1 -0
- package/dist/providers/shared/agent-codec.types.js +1 -0
- package/dist/providers/shared/index.d.ts +6 -0
- package/dist/providers/shared/index.d.ts.map +1 -0
- package/dist/providers/shared/index.js +2 -0
- package/dist/providers/shared/markdown-agent-codec.d.ts +5 -0
- package/dist/providers/shared/markdown-agent-codec.d.ts.map +1 -0
- package/dist/providers/shared/markdown-agent-codec.js +12 -0
- package/dist/release/public-package-contract.d.ts +14 -0
- package/dist/release/public-package-contract.d.ts.map +1 -0
- package/dist/release/public-package-contract.js +97 -0
- package/dist/rules/canonical/index.d.ts +6 -0
- package/dist/rules/canonical/index.d.ts.map +1 -0
- package/dist/rules/canonical/index.js +4 -0
- package/dist/rules/canonical/parse.d.ts +9 -0
- package/dist/rules/canonical/parse.d.ts.map +1 -0
- package/dist/rules/canonical/parse.js +103 -0
- package/dist/rules/canonical/provider-filenames.d.ts +3 -0
- package/dist/rules/canonical/provider-filenames.d.ts.map +1 -0
- package/dist/rules/canonical/provider-filenames.js +13 -0
- package/dist/rules/canonical/render.d.ts +5 -0
- package/dist/rules/canonical/render.d.ts.map +1 -0
- package/dist/rules/canonical/render.js +32 -0
- package/dist/rules/canonical/types.d.ts +16 -0
- package/dist/rules/canonical/types.d.ts.map +1 -0
- package/dist/rules/canonical/types.js +6 -0
- package/dist/shared/index.d.ts +3 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +1 -0
- package/dist/shared/types.d.ts +10 -0
- package/dist/shared/types.d.ts.map +1 -0
- package/dist/shared/types.js +14 -0
- package/dist/ui/ansi.d.ts +2 -0
- package/dist/ui/ansi.d.ts.map +1 -0
- package/dist/ui/ansi.js +19 -0
- package/dist/ui/index.d.ts +7 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +3 -0
- package/dist/ui/logger.d.ts +15 -0
- package/dist/ui/logger.d.ts.map +1 -0
- package/dist/ui/logger.js +52 -0
- package/dist/ui/output.d.ts +16 -0
- package/dist/ui/output.d.ts.map +1 -0
- package/dist/ui/output.js +135 -0
- package/dist/ui/spinner.d.ts +16 -0
- package/dist/ui/spinner.d.ts.map +1 -0
- package/dist/ui/spinner.js +46 -0
- package/dist/validation/index.d.ts +3 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +1 -0
- package/dist/validation/skills.d.ts +10 -0
- package/dist/validation/skills.d.ts.map +1 -0
- package/dist/validation/skills.js +166 -0
- package/package.json +62 -0
package/assets/skills/oat-agent-instructions-analyze/references/file-type-discovery-checklist.md
ADDED
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
# File-Type Pattern Discovery Checklist
|
|
2
|
+
|
|
3
|
+
Systematic methodology for identifying glob-scoped rule opportunities. These are structural file-type patterns that
|
|
4
|
+
agents need when creating or editing files. They often span multiple directories, but they can still justify a
|
|
5
|
+
glob-scoped rule even when concentrated in a single architectural area.
|
|
6
|
+
|
|
7
|
+
File-type patterns are often the **highest-value** glob-scoped rules because they directly prevent agents from
|
|
8
|
+
producing broken code across many files.
|
|
9
|
+
|
|
10
|
+
A file-type pattern is a rule candidate even if all matching files live in one directory. The question is whether
|
|
11
|
+
agents need a repeatable template for that file type, not whether the files are distributed widely.
|
|
12
|
+
|
|
13
|
+
The goal of this checklist is to **find ambiguity and hidden conventions**, not just to confirm that filenames look
|
|
14
|
+
consistent. File counts are only the starting point. The actual signal comes from reading files and identifying
|
|
15
|
+
semantic patterns, split conventions, and failure modes.
|
|
16
|
+
|
|
17
|
+
## Discovery Process
|
|
18
|
+
|
|
19
|
+
### 1. Build a Baseline Inventory
|
|
20
|
+
|
|
21
|
+
Start with a two-phase inventory so discovery is not limited to today's known naming conventions.
|
|
22
|
+
|
|
23
|
+
**1a. Inventory primary file extensions**
|
|
24
|
+
|
|
25
|
+
Use a repo-wide count to identify common authored file types such as `.tsx`, `.css`, `.graphql`, or `.sql`.
|
|
26
|
+
Exclude generated and external directories so the inventory reflects source patterns rather than build output.
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
find . -type f \
|
|
30
|
+
-not -path '*/node_modules/*' \
|
|
31
|
+
-not -path '*/.git/*' \
|
|
32
|
+
-not -path '*/dist/*' \
|
|
33
|
+
-not -path '*/__generated__/*' \
|
|
34
|
+
| sed -E 's|^.*/||' \
|
|
35
|
+
| awk -F. 'NF >= 2 { print "." $NF }' \
|
|
36
|
+
| sort | uniq -c | sort -rn | head -20
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
**1b. Inventory repeated compound suffixes**
|
|
40
|
+
|
|
41
|
+
Use a repo-wide count to identify common multi-part suffixes such as `.stories.tsx`, `.test.ts`, `.resolver.ts`,
|
|
42
|
+
or `.repository.ts`. Do not limit analysis to the pre-listed patterns below.
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
find . -type f \
|
|
46
|
+
-not -path '*/node_modules/*' \
|
|
47
|
+
-not -path '*/.git/*' \
|
|
48
|
+
-not -path '*/dist/*' \
|
|
49
|
+
-not -path '*/__generated__/*' \
|
|
50
|
+
| sed -E 's|^.*/||' \
|
|
51
|
+
| awk -F. 'NF >= 3 { print "." $(NF-1) "." $NF }' \
|
|
52
|
+
| sort | uniq -c | sort -rn | head -20
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**1c. Select candidates for sampling**
|
|
56
|
+
|
|
57
|
+
Proceed to sampling for:
|
|
58
|
+
|
|
59
|
+
- any primary extension with **5+** non-generated source files
|
|
60
|
+
- any compound suffix with **5+** files
|
|
61
|
+
- any smaller pattern that clearly overrides a project-wide rule or has high correctness impact
|
|
62
|
+
- any repeated compound suffix discovered from the inventory, even if it is not listed in the known patterns below
|
|
63
|
+
|
|
64
|
+
**Primary extensions to pay attention to when counts are significant:**
|
|
65
|
+
|
|
66
|
+
- Component/client files: `*.tsx`, `*.jsx`
|
|
67
|
+
- Style files: `*.css`, `*.scss`, `*.less`
|
|
68
|
+
- Schema/query files: `*.graphql`, `*.gql`, `*.sql`
|
|
69
|
+
- Source/config/content files: `*.ts`, `*.js`, `*.json`, `*.yaml`, `*.yml`, `*.mdx`
|
|
70
|
+
|
|
71
|
+
**Known compound naming patterns to check:**
|
|
72
|
+
|
|
73
|
+
- Test files: `*.test.ts`, `*.test.tsx`, `*.spec.ts`, `*.spec.tsx`, `*.test.js`, `*.test.jsx`
|
|
74
|
+
- Story files: `*.stories.tsx`, `*.stories.ts`, `*.stories.jsx`, `*.stories.js`
|
|
75
|
+
- Style files: `styles.ts`, `*.styles.ts`, `*.module.css`, `*.module.scss`, `*.styled.ts`
|
|
76
|
+
- Schema/type files: `*.schema.ts`, `*.types.ts`, `*.d.ts`
|
|
77
|
+
- Hook files: `*.hooks.ts`, `use*.ts` (in hooks directories)
|
|
78
|
+
- Utility files: `*.utils.ts`, `*.helpers.ts`, `*.constants.ts`
|
|
79
|
+
- Mock/fixture files: `*.mock.ts`, `*.fixture.ts`, `*.fixtures.ts`
|
|
80
|
+
- Config files: `*.config.ts`, `*.config.js`, `*.config.mjs`
|
|
81
|
+
- E2E/integration files: `*.e2e.ts`, `*.integration.ts`, `*.e2e-spec.ts`
|
|
82
|
+
- Generated files: `*.generated.ts`, `*.gen.ts`, `*.graphql.ts`
|
|
83
|
+
|
|
84
|
+
**Also check for co-located naming conventions:**
|
|
85
|
+
|
|
86
|
+
- Component directories: `Component.tsx` + `styles.ts` + `Component.stories.tsx` + `Component.test.tsx`
|
|
87
|
+
- Feature modules: `index.ts` + `types.ts` + `utils.ts` + `*.test.ts`
|
|
88
|
+
- Domain bundles: repeated directory structures containing metadata + implementation + template/rendering files
|
|
89
|
+
Example: `feature.json` + `handler.ts` + `template.tsx`
|
|
90
|
+
- Schema bundles: repeated directories where one file implies required siblings (schema + loader + tests + fixtures)
|
|
91
|
+
Example: `schema.graphql` + `loader.ts` + `schema.test.ts` + `fixtures/`
|
|
92
|
+
|
|
93
|
+
Treat directory-level co-location as a first-class investigation target. Some of the highest-value rules are not "all `*.x` files look the same" but "every directory matching this pattern must contain these files and use one of two competing structures."
|
|
94
|
+
|
|
95
|
+
### 2. Calibrate Sample Size to Detect Inconsistency
|
|
96
|
+
|
|
97
|
+
For every selected pattern with **5+ files**, reading the sampled files is mandatory. Do not stop at naming
|
|
98
|
+
consistency.
|
|
99
|
+
|
|
100
|
+
Use these minimum sample sizes:
|
|
101
|
+
|
|
102
|
+
- **5–10 matching files:** Read **all** files
|
|
103
|
+
- **11–30 files:** Sample **8–12** files across different directories and different git ages
|
|
104
|
+
- **30+ files:** Sample **12–15** files across directories; if any inconsistency appears, expand the sample until you
|
|
105
|
+
can describe the split ratio with confidence
|
|
106
|
+
|
|
107
|
+
The goal is not to confirm a pattern with the smallest possible sample. The goal is to discover whether the repo
|
|
108
|
+
contains a meaningful split that would cause an agent to guess wrong.
|
|
109
|
+
|
|
110
|
+
When sampling:
|
|
111
|
+
|
|
112
|
+
- Mix directories; do not sample from a single subtree
|
|
113
|
+
- If the pattern appears under multiple top-level subdirectories or architectural buckets, sample each bucket rather
|
|
114
|
+
than letting one subtree dominate the sample
|
|
115
|
+
- Mix older and newer files when possible; convention changes often correlate with time
|
|
116
|
+
- If the first sample looks perfectly consistent, still pressure-test it with files from other directories before
|
|
117
|
+
concluding
|
|
118
|
+
|
|
119
|
+
If many patterns qualify, prioritize sampling in this order before spending context on lower-value patterns:
|
|
120
|
+
|
|
121
|
+
1. security-sensitive patterns or exception-to-project-rule patterns
|
|
122
|
+
2. competing sub-patterns or known migration-era splits
|
|
123
|
+
3. patterns with high suspected correctness impact
|
|
124
|
+
4. lower-risk consistency-only patterns
|
|
125
|
+
|
|
126
|
+
### 3. Deep-Read Investigation
|
|
127
|
+
|
|
128
|
+
Inspect the sample for:
|
|
129
|
+
|
|
130
|
+
- **Structural consistency:** Do they share the same import pattern, export pattern, or boilerplate?
|
|
131
|
+
- **Required wrapping/setup:** Do they require specific providers, decorators, helper classes, test harnesses, or framework extensions that aren't obvious from the file suffix?
|
|
132
|
+
- **Behavioral consistency:** Do they use the same registration flow, setup/teardown style, instantiation pattern, schema version, or rendering mechanism?
|
|
133
|
+
- **Directory assumptions:** Do files assume the presence of sibling files or a repeated directory structure?
|
|
134
|
+
- **Security-sensitive behavior:** Do they contain escaping/sanitization, raw HTML insertion, raw SQL, shell execution, `phpcs:ignore`, or other exception-worthy safety patterns?
|
|
135
|
+
|
|
136
|
+
For each pattern, explicitly answer:
|
|
137
|
+
|
|
138
|
+
1. What non-obvious setup is required?
|
|
139
|
+
2. What would break if an agent copied the wrong example?
|
|
140
|
+
3. Are there competing sub-patterns inside the same suffix or directory structure?
|
|
141
|
+
4. Are there version splits or old/new style splits that matter for new files?
|
|
142
|
+
|
|
143
|
+
### 4. Keep Glob Rules Separate from Directory Coverage
|
|
144
|
+
|
|
145
|
+
Do **not** dismiss a file-type pattern because it may also be covered by a directory-level `AGENTS.md`.
|
|
146
|
+
|
|
147
|
+
- Directory `AGENTS.md` files cover commands, architecture, workflows, and local context.
|
|
148
|
+
- Glob-scoped rules cover the structural template that should fire when an agent creates or edits a specific file type.
|
|
149
|
+
|
|
150
|
+
A directory note like "resolvers use GraphContext" is weaker than a glob-scoped rule that fires for resolver files
|
|
151
|
+
and shows the expected imports, signature, and delegation pattern.
|
|
152
|
+
|
|
153
|
+
### 5. Quantify the Real Pattern, Including Splits
|
|
154
|
+
|
|
155
|
+
Sampling discovers candidate patterns. It does **not** justify numeric claims on its own.
|
|
156
|
+
|
|
157
|
+
Before writing any numeric claim into the artifact or a generated rule, verify it with an exhaustive repo-wide count.
|
|
158
|
+
This applies to:
|
|
159
|
+
|
|
160
|
+
- file counts and split ratios
|
|
161
|
+
- "only N files use X" statements
|
|
162
|
+
- claims that a pattern is unused or obsolete
|
|
163
|
+
- any recommendation that removes or contradicts an existing rule
|
|
164
|
+
|
|
165
|
+
If a sample suggests "Pattern A is gone" or "only 3 files still use Pattern B", stop and verify across the whole repo
|
|
166
|
+
before writing the claim.
|
|
167
|
+
|
|
168
|
+
Quantify the behavior you found, not just the filename suffix:
|
|
169
|
+
|
|
170
|
+
- `12/14 files use Pages utility wrapper`
|
|
171
|
+
- `9/18 directories use static registration, 9/18 use instance registration`
|
|
172
|
+
- `7/10 block manifests use apiVersion 3, older files use apiVersion 2`
|
|
173
|
+
|
|
174
|
+
Interpret the result this way:
|
|
175
|
+
|
|
176
|
+
- `>80%` consistency = useful rule candidate
|
|
177
|
+
- `60–80%` consistency = pattern with notable exceptions; capture both dominant pattern and exceptions
|
|
178
|
+
- `40–60%` consistency = **highest-priority ambiguity**; agents are likely to choose wrong without guidance
|
|
179
|
+
- `<40%` consistency = may still matter if the split tracks security, framework version, or generation age; do not automatically discard without checking impact
|
|
180
|
+
|
|
181
|
+
### 5a. Decide Whether to Split into Separate Rules
|
|
182
|
+
|
|
183
|
+
Do not assume one discovered pattern should become one umbrella rule.
|
|
184
|
+
|
|
185
|
+
Prefer **separate** rules when:
|
|
186
|
+
|
|
187
|
+
- activation targets differ materially (for example `*.spec.ts` vs `*.page.ts`)
|
|
188
|
+
- the required setup, helper imports, or wrappers differ
|
|
189
|
+
- the failure mode differs enough that irrelevant guidance would distract or mislead
|
|
190
|
+
- the split tracks distinct directory buckets that agents enter independently
|
|
191
|
+
|
|
192
|
+
Prefer a **single** rule only when the same concise guidance is genuinely helpful across all matching targets.
|
|
193
|
+
|
|
194
|
+
### 6. Check for Exception Patterns
|
|
195
|
+
|
|
196
|
+
**This is the highest-value check.** Look for file-type or directory-level patterns that require an **exception** to a project-wide rule:
|
|
197
|
+
|
|
198
|
+
- Storybook files needing `export default` when the project bans default exports
|
|
199
|
+
- Test files needing specific imports/setup that bypass normal module rules
|
|
200
|
+
- Config files that use CommonJS (`module.exports`) in an ESM project
|
|
201
|
+
- Generated files that should never be hand-edited despite appearing in source
|
|
202
|
+
- Template/render files that require escaping/sanitization patterns different from the general codebase
|
|
203
|
+
- File types that use different instantiation, registration, or API-version rules than the surrounding project
|
|
204
|
+
- File types that intentionally carry lint suppressions (`phpcs:ignore`, `eslint-disable`, etc.) for narrow, documented reasons
|
|
205
|
+
|
|
206
|
+
Exception-to-rule patterns are the most important to capture because agents will follow the general project rule and produce incorrect code.
|
|
207
|
+
|
|
208
|
+
Do not reduce this check to "default export exception." Investigate any deviation from general project norms that is scoped to a particular file or directory pattern.
|
|
209
|
+
|
|
210
|
+
### 7. Assess Correctness and Security Impact
|
|
211
|
+
|
|
212
|
+
For each pattern, determine what happens when an agent writes a new file of this type **without** the rule:
|
|
213
|
+
|
|
214
|
+
| Impact Level | Description | Examples |
|
|
215
|
+
| -------------------------- | ------------------------------------------------ | ----------------------------------------------------------------------- |
|
|
216
|
+
| **Crashes/breaks** | Code won't compile, tests won't run, app crashes | Missing test providers, wrong export type, missing required boilerplate |
|
|
217
|
+
| **Visual/behavioral bugs** | Code runs but produces wrong results | Hardcoded colors breaking dark mode, missing accessibility wrappers |
|
|
218
|
+
| **Security vulnerability** | Code introduces unsafe output or dangerous flows | Missing escaping, unsafe HTML injection, raw SQL without safeguards |
|
|
219
|
+
| **Lint/CI failures** | Code works but fails automated checks | Wrong export style, missing eslint-disable for known exceptions |
|
|
220
|
+
| **Style inconsistency** | Code works but doesn't match conventions | Different file structure, inconsistent naming |
|
|
221
|
+
|
|
222
|
+
Security-sensitive file types deserve explicit scrutiny. In PHP/WordPress repos, inspect template/rendering files for escaping, sanitization, and `phpcs:ignore` directives. In React/JS repos, inspect `dangerouslySetInnerHTML`, raw HTML rendering helpers, and any documented exception zones.
|
|
223
|
+
|
|
224
|
+
## Assessment Output
|
|
225
|
+
|
|
226
|
+
For each discovered pattern, record:
|
|
227
|
+
|
|
228
|
+
| Field | Description |
|
|
229
|
+
| ------------------------------ | ---------------------------------------------------------------------- |
|
|
230
|
+
| **Pattern** | Extension or glob pattern (e.g., `**/*.stories.tsx`, `**/*.css`) |
|
|
231
|
+
| **File count** | Total files matching |
|
|
232
|
+
| **Consistency** | `N/M files follow pattern` (e.g., `72/72`) |
|
|
233
|
+
| **Competing sub-patterns** | Split details when multiple valid patterns exist |
|
|
234
|
+
| **Convention summary** | Specific shared import/export/template requirements from sampled files |
|
|
235
|
+
| **Correctness impact** | What breaks without the rule |
|
|
236
|
+
| **Exception to project rule?** | Yes/No — if yes, which rule is overridden |
|
|
237
|
+
| **Evidence** | 3–5 sampled file paths |
|
|
238
|
+
| **Severity** | See calibration below |
|
|
239
|
+
|
|
240
|
+
## Severity Calibration
|
|
241
|
+
|
|
242
|
+
Glob-scoped rule severity should account for:
|
|
243
|
+
|
|
244
|
+
1. **File count** — More files = more likely an agent encounters this pattern
|
|
245
|
+
2. **Correctness impact** — Will code crash, produce wrong output, or fail lint?
|
|
246
|
+
3. **Exception patterns** — Does this contradict a project-wide rule?
|
|
247
|
+
4. **Split ratio** — Will an agent effectively guess between competing patterns?
|
|
248
|
+
5. **Security sensitivity** — Could the wrong pattern create a vulnerability?
|
|
249
|
+
|
|
250
|
+
| Criteria | Severity |
|
|
251
|
+
| --------------------------------------------------------- | ---------- |
|
|
252
|
+
| `40–60%` split with correctness or security impact | **High** |
|
|
253
|
+
| Security-sensitive exception pattern | **High** |
|
|
254
|
+
| Exception to project-wide rule AND code breaks/fails lint | **High** |
|
|
255
|
+
| >20 files AND correctness impact (crashes, visual bugs) | **High** |
|
|
256
|
+
| >20 files AND lint/CI failures | **Medium** |
|
|
257
|
+
| `40–60%` split with lint/behavioral differences only | **Medium** |
|
|
258
|
+
| 5–20 files with any correctness impact | **Medium** |
|
|
259
|
+
| Style consistency only, no correctness impact | **Low** |
|
|
260
|
+
|
|
261
|
+
## Co-Location Conventions
|
|
262
|
+
|
|
263
|
+
Beyond individual file types, check for **co-location patterns** — conventions about which files must exist together in a directory:
|
|
264
|
+
|
|
265
|
+
- Does every component directory require a `styles.ts`?
|
|
266
|
+
- Does every feature module require an `index.ts` barrel export?
|
|
267
|
+
- Are test files always co-located with source files, or in a separate `__tests__/` directory?
|
|
268
|
+
- Do component directories follow a category system with different rules per category?
|
|
269
|
+
- Do repeated directories split between two structural approaches, and if so which one should new directories follow?
|
|
270
|
+
- Do metadata files imply required implementation siblings, templates, or registration code?
|
|
271
|
+
- Do older directories and newer directories use different schema/API versions?
|
|
272
|
+
|
|
273
|
+
Co-location patterns often indicate the need for a glob-scoped rule at the directory pattern level (e.g., `src/components/**/*.tsx`).
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# Instruction File Quality Checklist
|
|
2
|
+
|
|
3
|
+
Per-file evaluation criteria for agent instruction files. Use this checklist to score each instruction file during analysis. The full quality guidance lives in `docs/agent-instruction.md` — this is a distilled, actionable checklist.
|
|
4
|
+
|
|
5
|
+
## Evaluation Criteria
|
|
6
|
+
|
|
7
|
+
### 1. Commands Correct and Runnable
|
|
8
|
+
|
|
9
|
+
- [ ] All referenced commands exist in package.json scripts or are valid shell commands
|
|
10
|
+
- [ ] Command sequences match the documented build/test/lint workflow
|
|
11
|
+
- [ ] No placeholder commands (`{command}`, `TODO`, etc.) in non-template files
|
|
12
|
+
- **Severity if failing:** Medium (stale commands) or Critical (commands that would break builds)
|
|
13
|
+
|
|
14
|
+
### 2. Non-Negotiables Near Top
|
|
15
|
+
|
|
16
|
+
- [ ] Security rules, access controls, and data handling requirements appear in the first screenful (~30 lines)
|
|
17
|
+
- [ ] Canonical commands (install, dev, build, test, lint) appear before detailed conventions
|
|
18
|
+
- [ ] "Definition of Done" or acceptance criteria are present early
|
|
19
|
+
- **Severity if failing:** High (security non-negotiables missing) or Medium (ordering issue)
|
|
20
|
+
|
|
21
|
+
### 3. No Duplication Across Files
|
|
22
|
+
|
|
23
|
+
- [ ] Root file does not repeat content that scoped files cover
|
|
24
|
+
- [ ] Scoped files do not copy-paste root-level sections
|
|
25
|
+
- [ ] Cross-file `@import` or reference directives are used where appropriate
|
|
26
|
+
- **Severity if failing:** Medium
|
|
27
|
+
|
|
28
|
+
### 4. Size Within Budget
|
|
29
|
+
|
|
30
|
+
- [ ] Root files (AGENTS.md, CLAUDE.md): <300 lines (hard max 500)
|
|
31
|
+
- [ ] Scoped/package files: 40–150 lines
|
|
32
|
+
- [ ] Individual rules files: <80 lines
|
|
33
|
+
- [ ] Always-on baseline load is estimated and kept comfortably below the task budget
|
|
34
|
+
- [ ] Typical task load (root + one realistic scoped file + matching rules) is estimated and fits within the 32 KiB task budget
|
|
35
|
+
- [ ] Worst-case task load is estimated and explicitly called out if it is likely to strain the budget
|
|
36
|
+
- [ ] Aggregate repo total is reported separately for awareness, not treated as the operative task budget by itself
|
|
37
|
+
- **Severity if failing:** Medium (over budget) or Low (close to limit)
|
|
38
|
+
|
|
39
|
+
### 5. Scoped Only for Real Divergence
|
|
40
|
+
|
|
41
|
+
- [ ] Scoped files exist only where the directory has genuinely different stack, workflow, or domain requirements
|
|
42
|
+
- [ ] No scoped files that merely repeat root-level guidance
|
|
43
|
+
- **Severity if failing:** Low
|
|
44
|
+
|
|
45
|
+
### 6. Precedence Clear
|
|
46
|
+
|
|
47
|
+
- [ ] Override semantics are explicit (nearest-wins for AGENTS.md, import directives for CLAUDE.md)
|
|
48
|
+
- [ ] No ambiguous or conflicting instructions across scope levels
|
|
49
|
+
- **Severity if failing:** Medium
|
|
50
|
+
|
|
51
|
+
### 7. No Circular Imports
|
|
52
|
+
|
|
53
|
+
- [ ] File A does not import File B which imports File A
|
|
54
|
+
- [ ] Import chains are acyclic
|
|
55
|
+
- **Severity if failing:** High
|
|
56
|
+
|
|
57
|
+
### 8. Definition of Done Present
|
|
58
|
+
|
|
59
|
+
- [ ] Objective, verifiable criteria for when work is "done"
|
|
60
|
+
- [ ] Not vague ("write good code") — concrete checks (tests pass, lint clean, types valid)
|
|
61
|
+
- **Severity if failing:** Medium
|
|
62
|
+
|
|
63
|
+
### 9. Staleness
|
|
64
|
+
|
|
65
|
+
- [ ] Referenced file paths still exist in the repo
|
|
66
|
+
- [ ] Referenced commands still work
|
|
67
|
+
- [ ] Technology/framework references match current stack
|
|
68
|
+
- [ ] No references to removed features or deprecated patterns
|
|
69
|
+
- **Severity if failing:** Medium (stale references) or High (actively misleading)
|
|
70
|
+
|
|
71
|
+
### 10. Cross-Format Body Consistency
|
|
72
|
+
|
|
73
|
+
- [ ] Glob-scoped rules targeting the same paths have identical body content across providers
|
|
74
|
+
- [ ] Only frontmatter differs between Claude rules, Cursor rules, and Copilot instructions
|
|
75
|
+
- [ ] Body divergence is flagged as drift
|
|
76
|
+
- **Severity if failing:** Medium
|
|
77
|
+
|
|
78
|
+
### 11. Claims Are Evidence-Backed
|
|
79
|
+
|
|
80
|
+
- [ ] Every non-obvious convention is backed by a concrete repo source (config, docs, existing instructions, or representative code samples)
|
|
81
|
+
- [ ] Numeric claims (`N files`, split ratios, "only X uses Y") are backed by exhaustive repo-wide counts, not samples
|
|
82
|
+
- [ ] Recommendations that remove or contradict an existing rule cite the verification evidence that justifies the correction
|
|
83
|
+
- [ ] Formatting/style claims are omitted unless supported by repo evidence
|
|
84
|
+
- [ ] If a formatter or linter enforces the rule, the file prefers commands/links over prose restatement
|
|
85
|
+
- **Severity if failing:** High (actively misleading) or Medium (unsupported claim)
|
|
86
|
+
|
|
87
|
+
### 12. Progressive Disclosure Is Used
|
|
88
|
+
|
|
89
|
+
- [ ] Always-on instructions keep only the minimal essential guidance inline
|
|
90
|
+
- [ ] Deeper detail links to canonical docs/config/examples instead of copying them into the instruction file
|
|
91
|
+
- [ ] The file clearly distinguishes inline essentials from optional deeper reading
|
|
92
|
+
- **Severity if failing:** Medium
|
|
93
|
+
|
|
94
|
+
### 13. File-Type Conventions Covered
|
|
95
|
+
|
|
96
|
+
This criterion applies to the **overall instruction set**, not to individual files. Evaluate once per analysis.
|
|
97
|
+
|
|
98
|
+
- [ ] Common file-type patterns (tests, stories, styles, configs) with 5+ files have been evaluated for rule opportunities
|
|
99
|
+
- [ ] Patterns with >80% consistency and correctness impact are flagged as glob-scoped rule opportunities
|
|
100
|
+
- [ ] Patterns with competing sub-patterns (especially `40–60%` splits) are explicitly evaluated and flagged when agents are likely to guess wrong
|
|
101
|
+
- [ ] Materially different activation targets are split into separate rule recommendations when that improves precision
|
|
102
|
+
- [ ] Security-sensitive file-type patterns are explicitly evaluated for rule opportunities and severity
|
|
103
|
+
- [ ] Patterns that are exceptions to project-wide rules are explicitly called out (these are highest-value)
|
|
104
|
+
- [ ] Existing glob-scoped rules cover the identified patterns, or coverage gaps are recorded
|
|
105
|
+
- **Severity if failing:** Medium (missed pattern) or High (missed exception-to-rule pattern)
|
|
106
|
+
|
|
107
|
+
### 14. Available Documentation Is Referenced
|
|
108
|
+
|
|
109
|
+
This criterion uses the documentation inventory from Step 2 (Discover Documentation Surfaces).
|
|
110
|
+
|
|
111
|
+
- [ ] Instruction files reference relevant available documentation (READMEs, docs pages, architecture docs) in their References section
|
|
112
|
+
- [ ] Scoped instruction files reference docs topically relevant to their directory scope (e.g., a package AGENTS.md references the package's README or docs subtree)
|
|
113
|
+
- [ ] References point to existing, current documentation (not stale or removed)
|
|
114
|
+
- [ ] Content duplicated from available docs is flagged for `link_only` disclosure instead of inline repetition
|
|
115
|
+
- **Severity if failing:** Low (missing references) or Medium (duplicates content that exists in available docs)
|
|
116
|
+
|
|
117
|
+
## Scoring
|
|
118
|
+
|
|
119
|
+
For each file, count passing criteria out of the applicable set (some criteria only apply to certain file types).
|
|
120
|
+
A "miss" means one numbered criterion does not pass for that file after ignoring non-applicable checks within the criterion:
|
|
121
|
+
|
|
122
|
+
- **All applicable passing** → Quality: pass
|
|
123
|
+
- **1-2 misses** → Quality: minor issues
|
|
124
|
+
- **3-5 misses** → Quality: significant issues
|
|
125
|
+
- **6+ misses** → Quality: major issues
|
package/assets/skills/oat-agent-instructions-analyze/references/recommendation-pack-template.md
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Recommendation Pack: `rec-001`
|
|
2
|
+
|
|
3
|
+
## Target
|
|
4
|
+
|
|
5
|
+
- Action: {create / update}
|
|
6
|
+
- Path: `{path}`
|
|
7
|
+
- Provider / Format: {provider / format}
|
|
8
|
+
- Disclosure: {inline / link_only / omit / ask_user}
|
|
9
|
+
|
|
10
|
+
## Evidence
|
|
11
|
+
|
|
12
|
+
- `{path}:{line}` - {why this evidence matters}
|
|
13
|
+
- `{path}:{line}` - {supporting configuration, docs, or code pattern}
|
|
14
|
+
|
|
15
|
+
## Structural Conventions
|
|
16
|
+
|
|
17
|
+
- {imports, exports, file layout, frontmatter, or structural template rules}
|
|
18
|
+
|
|
19
|
+
## Behavioral Conventions
|
|
20
|
+
|
|
21
|
+
- {delegation, sequencing, runtime behavior, workflow rules, or architecture expectations}
|
|
22
|
+
|
|
23
|
+
## Counter-Examples
|
|
24
|
+
|
|
25
|
+
- {common mistake or anti-pattern}
|
|
26
|
+
- {structurally valid but architecturally wrong output}
|
|
27
|
+
|
|
28
|
+
## New-File Workflow
|
|
29
|
+
|
|
30
|
+
1. {creation or wiring step}
|
|
31
|
+
2. {registration, sync, or follow-up step}
|
|
32
|
+
|
|
33
|
+
## Preferred Default for New Files
|
|
34
|
+
|
|
35
|
+
{pattern A / pattern B / N/A}
|
|
36
|
+
|
|
37
|
+
## Claim Corrections
|
|
38
|
+
|
|
39
|
+
- `{old claim -> verified replacement}`
|
|
40
|
+
|
|
41
|
+
## Generation Constraints
|
|
42
|
+
|
|
43
|
+
- Must Include: {required claims, commands, references, examples, or behavior}
|
|
44
|
+
- Must Not Include: {unsupported or stale guidance}
|
|
45
|
+
- Link Targets: {path / URL or `N/A`}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
bundleVersion: 1
|
|
2
|
+
analysisArtifact: { artifact-path }
|
|
3
|
+
summary: summary.md
|
|
4
|
+
recommendations:
|
|
5
|
+
- id: rec-001
|
|
6
|
+
action: create
|
|
7
|
+
target: path/to/file
|
|
8
|
+
provider: agents_md
|
|
9
|
+
format: AGENTS.md
|
|
10
|
+
severity: high
|
|
11
|
+
confidence: high
|
|
12
|
+
disclosure: inline
|
|
13
|
+
pack: packs/rec-001.md
|
|
14
|
+
- id: rec-002
|
|
15
|
+
action: update
|
|
16
|
+
target: path/to/existing-file
|
|
17
|
+
provider: cursor
|
|
18
|
+
format: glob-rule
|
|
19
|
+
severity: medium
|
|
20
|
+
confidence: medium
|
|
21
|
+
disclosure: link_only
|
|
22
|
+
pack: packs/rec-002.md
|
|
23
|
+
|
|
24
|
+
# Rules:
|
|
25
|
+
# - Every recommendation referenced here must also exist in the markdown analysis artifact.
|
|
26
|
+
# - `pack` must be a relative path under this bundle directory.
|
|
27
|
+
# - The manifest is the primary index used by oat-agent-instructions-apply when the bundle exists.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# resolve-instruction-files.sh — Discover instruction files by provider
|
|
3
|
+
#
|
|
4
|
+
# Usage:
|
|
5
|
+
# resolve-providers.sh --non-interactive | resolve-instruction-files.sh
|
|
6
|
+
# resolve-instruction-files.sh --providers agents_md,claude,cursor
|
|
7
|
+
#
|
|
8
|
+
# Input: newline-separated provider names (stdin or --providers arg)
|
|
9
|
+
# Output: tab-separated "provider\tpath" per line, sorted
|
|
10
|
+
#
|
|
11
|
+
# File patterns per provider:
|
|
12
|
+
# agents_md → **/AGENTS.md
|
|
13
|
+
# claude → **/CLAUDE.md, .claude/rules/*.md
|
|
14
|
+
# cursor → .cursor/rules/*.mdc, .cursor/rules/*.md
|
|
15
|
+
# copilot → .github/copilot-instructions.md, .github/instructions/*.instructions.md
|
|
16
|
+
# cline → .cline/rules/*
|
|
17
|
+
|
|
18
|
+
set -euo pipefail
|
|
19
|
+
|
|
20
|
+
REPO_ROOT="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
|
|
21
|
+
|
|
22
|
+
# Exclusion: prune repo-root node_modules, .worktrees, .git, and .oat directories,
|
|
23
|
+
# plus nested node_modules anywhere below REPO_ROOT. Using -prune avoids traversing
|
|
24
|
+
# excluded trees while preserving worktrees whose absolute path contains ".worktrees".
|
|
25
|
+
find_exclude() {
|
|
26
|
+
find "$REPO_ROOT" \
|
|
27
|
+
\( -path "${REPO_ROOT}/node_modules" \
|
|
28
|
+
-o -path "${REPO_ROOT}/.worktrees" \
|
|
29
|
+
-o -path "${REPO_ROOT}/.git" \
|
|
30
|
+
-o -path "${REPO_ROOT}/.oat" \
|
|
31
|
+
-o -path '*/node_modules' \) -prune -o \
|
|
32
|
+
\( "$@" \) -print \
|
|
33
|
+
2>/dev/null || true
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
# Parse providers from --providers arg or stdin
|
|
37
|
+
PROVIDERS=()
|
|
38
|
+
if [[ "${1:-}" == "--providers" ]]; then
|
|
39
|
+
IFS=',' read -ra PROVIDERS <<< "${2:-}"
|
|
40
|
+
else
|
|
41
|
+
# Read from stdin
|
|
42
|
+
while IFS= read -r line; do
|
|
43
|
+
line="$(echo "$line" | tr -d '[:space:]')"
|
|
44
|
+
[[ -n "$line" ]] && PROVIDERS+=("$line")
|
|
45
|
+
done
|
|
46
|
+
fi
|
|
47
|
+
|
|
48
|
+
if [[ ${#PROVIDERS[@]} -eq 0 ]]; then
|
|
49
|
+
echo "Error: no providers specified. Pipe from resolve-providers.sh or use --providers." >&2
|
|
50
|
+
exit 1
|
|
51
|
+
fi
|
|
52
|
+
|
|
53
|
+
discover_agents_md() {
|
|
54
|
+
find_exclude -name 'AGENTS.md' | while read -r f; do
|
|
55
|
+
local rel="${f#"$REPO_ROOT"/}"
|
|
56
|
+
printf 'agents_md\t%s\n' "$rel"
|
|
57
|
+
done
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
discover_claude() {
|
|
61
|
+
# CLAUDE.md files
|
|
62
|
+
find_exclude -name 'CLAUDE.md' | while read -r f; do
|
|
63
|
+
local rel="${f#"$REPO_ROOT"/}"
|
|
64
|
+
printf 'claude\t%s\n' "$rel"
|
|
65
|
+
done
|
|
66
|
+
|
|
67
|
+
# Claude rules
|
|
68
|
+
if [[ -d "${REPO_ROOT}/.claude/rules" ]]; then
|
|
69
|
+
find "${REPO_ROOT}/.claude/rules" -name '*.md' -type f 2>/dev/null | while read -r f; do
|
|
70
|
+
local rel="${f#"$REPO_ROOT"/}"
|
|
71
|
+
printf 'claude\t%s\n' "$rel"
|
|
72
|
+
done
|
|
73
|
+
fi
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
discover_cursor() {
|
|
77
|
+
if [[ -d "${REPO_ROOT}/.cursor/rules" ]]; then
|
|
78
|
+
find "${REPO_ROOT}/.cursor/rules" \( -name '*.mdc' -o -name '*.md' \) -type f 2>/dev/null | while read -r f; do
|
|
79
|
+
local rel="${f#"$REPO_ROOT"/}"
|
|
80
|
+
printf 'cursor\t%s\n' "$rel"
|
|
81
|
+
done
|
|
82
|
+
fi
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
discover_copilot() {
|
|
86
|
+
# Root copilot instructions
|
|
87
|
+
if [[ -f "${REPO_ROOT}/.github/copilot-instructions.md" ]]; then
|
|
88
|
+
printf 'copilot\t%s\n' ".github/copilot-instructions.md"
|
|
89
|
+
fi
|
|
90
|
+
|
|
91
|
+
# Scoped instructions
|
|
92
|
+
if [[ -d "${REPO_ROOT}/.github/instructions" ]]; then
|
|
93
|
+
find "${REPO_ROOT}/.github/instructions" -name '*.instructions.md' -type f 2>/dev/null | while read -r f; do
|
|
94
|
+
local rel="${f#"$REPO_ROOT"/}"
|
|
95
|
+
printf 'copilot\t%s\n' "$rel"
|
|
96
|
+
done
|
|
97
|
+
fi
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
discover_cline() {
|
|
101
|
+
if [[ -d "${REPO_ROOT}/.cline/rules" ]]; then
|
|
102
|
+
find "${REPO_ROOT}/.cline/rules" -type f 2>/dev/null | while read -r f; do
|
|
103
|
+
local rel="${f#"$REPO_ROOT"/}"
|
|
104
|
+
printf 'cline\t%s\n' "$rel"
|
|
105
|
+
done
|
|
106
|
+
fi
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
# Run discovery for each provider
|
|
110
|
+
for provider in "${PROVIDERS[@]}"; do
|
|
111
|
+
case "$provider" in
|
|
112
|
+
agents_md) discover_agents_md ;;
|
|
113
|
+
claude) discover_claude ;;
|
|
114
|
+
cursor) discover_cursor ;;
|
|
115
|
+
copilot) discover_copilot ;;
|
|
116
|
+
cline) discover_cline ;;
|
|
117
|
+
codex) ;; # codex reads AGENTS.md natively, no additional files
|
|
118
|
+
*) echo "Warning: unknown provider '$provider', skipping" >&2 ;;
|
|
119
|
+
esac
|
|
120
|
+
done | sort -t$'\t' -k1,1 -k2,2
|