@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
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# resolve-providers.sh — Resolve active providers for instruction file analysis
|
|
3
|
+
#
|
|
4
|
+
# Usage:
|
|
5
|
+
# resolve-providers.sh [--providers claude,cursor,...] [--non-interactive]
|
|
6
|
+
#
|
|
7
|
+
# Resolution hierarchy:
|
|
8
|
+
# 1. Explicit --providers argument (comma-separated)
|
|
9
|
+
# 2. .oat/sync/config.json → providers.{name}.enabled
|
|
10
|
+
# 3. Auto-detection fallback (scan for provider directories)
|
|
11
|
+
# 4. Interactive confirmation (if TTY and not --non-interactive)
|
|
12
|
+
#
|
|
13
|
+
# Output: newline-separated list of provider names (always includes agents_md)
|
|
14
|
+
#
|
|
15
|
+
# Provider mapping:
|
|
16
|
+
# agents_md → always included (AGENTS.md is canonical)
|
|
17
|
+
# claude → CLAUDE.md + .claude/rules/*.md
|
|
18
|
+
# cursor → .cursor/rules/*.mdc, .cursor/rules/*.md
|
|
19
|
+
# copilot → .github/copilot-instructions.md, .github/instructions/*.instructions.md
|
|
20
|
+
# cline → .cline/rules/*
|
|
21
|
+
# codex → reads AGENTS.md natively (no additional files)
|
|
22
|
+
|
|
23
|
+
set -euo pipefail
|
|
24
|
+
|
|
25
|
+
REPO_ROOT="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
|
|
26
|
+
SYNC_CONFIG="${REPO_ROOT}/.oat/sync/config.json"
|
|
27
|
+
|
|
28
|
+
EXPLICIT_PROVIDERS=""
|
|
29
|
+
NON_INTERACTIVE=false
|
|
30
|
+
|
|
31
|
+
# Parse arguments
|
|
32
|
+
while [[ $# -gt 0 ]]; do
|
|
33
|
+
case "$1" in
|
|
34
|
+
--providers)
|
|
35
|
+
EXPLICIT_PROVIDERS="$2"
|
|
36
|
+
shift 2
|
|
37
|
+
;;
|
|
38
|
+
--non-interactive)
|
|
39
|
+
NON_INTERACTIVE=true
|
|
40
|
+
shift
|
|
41
|
+
;;
|
|
42
|
+
*)
|
|
43
|
+
echo "Unknown argument: $1" >&2
|
|
44
|
+
exit 1
|
|
45
|
+
;;
|
|
46
|
+
esac
|
|
47
|
+
done
|
|
48
|
+
|
|
49
|
+
# Always start with agents_md
|
|
50
|
+
providers=("agents_md")
|
|
51
|
+
|
|
52
|
+
resolve_from_explicit() {
|
|
53
|
+
IFS=',' read -ra items <<< "$EXPLICIT_PROVIDERS"
|
|
54
|
+
for item in "${items[@]}"; do
|
|
55
|
+
item="$(echo "$item" | tr -d '[:space:]')"
|
|
56
|
+
if [[ -n "$item" && "$item" != "agents_md" ]]; then
|
|
57
|
+
providers+=("$item")
|
|
58
|
+
fi
|
|
59
|
+
done
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
resolve_from_sync_config() {
|
|
63
|
+
if [[ ! -f "$SYNC_CONFIG" ]] || ! jq empty "$SYNC_CONFIG" 2>/dev/null; then
|
|
64
|
+
return 1
|
|
65
|
+
fi
|
|
66
|
+
|
|
67
|
+
local found=false
|
|
68
|
+
for provider in claude cursor copilot cline codex; do
|
|
69
|
+
local enabled
|
|
70
|
+
enabled=$(jq -r --arg p "$provider" '.providers[$p].enabled // false' "$SYNC_CONFIG" 2>/dev/null)
|
|
71
|
+
if [[ "$enabled" == "true" ]]; then
|
|
72
|
+
providers+=("$provider")
|
|
73
|
+
found=true
|
|
74
|
+
fi
|
|
75
|
+
done
|
|
76
|
+
|
|
77
|
+
$found
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
resolve_from_auto_detect() {
|
|
81
|
+
# Scan for provider directories
|
|
82
|
+
[[ -d "${REPO_ROOT}/.claude" || -f "${REPO_ROOT}/CLAUDE.md" ]] && providers+=("claude")
|
|
83
|
+
[[ -d "${REPO_ROOT}/.cursor" ]] && providers+=("cursor")
|
|
84
|
+
[[ -d "${REPO_ROOT}/.github/instructions" || -f "${REPO_ROOT}/.github/copilot-instructions.md" ]] && providers+=("copilot")
|
|
85
|
+
[[ -d "${REPO_ROOT}/.cline" ]] && providers+=("cline")
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
interactive_confirm() {
|
|
89
|
+
if $NON_INTERACTIVE || [[ ! -t 0 ]]; then
|
|
90
|
+
return
|
|
91
|
+
fi
|
|
92
|
+
|
|
93
|
+
# Show detected providers and ask about additional ones
|
|
94
|
+
local detected
|
|
95
|
+
detected=$(printf '%s\n' "${providers[@]}" | sort -u | grep -v '^agents_md$' || true)
|
|
96
|
+
|
|
97
|
+
if [[ -n "$detected" ]]; then
|
|
98
|
+
echo "Detected providers: agents_md $(echo "$detected" | tr '\n' ' ')" >&2
|
|
99
|
+
else
|
|
100
|
+
echo "Detected providers: agents_md (no provider-specific formats found)" >&2
|
|
101
|
+
fi
|
|
102
|
+
|
|
103
|
+
echo "" >&2
|
|
104
|
+
echo "Available providers: claude, cursor, copilot, cline, codex" >&2
|
|
105
|
+
echo -n "Add any additional providers? (comma-separated, or Enter to skip): " >&2
|
|
106
|
+
read -r additional
|
|
107
|
+
|
|
108
|
+
if [[ -n "$additional" ]]; then
|
|
109
|
+
IFS=',' read -ra items <<< "$additional"
|
|
110
|
+
for item in "${items[@]}"; do
|
|
111
|
+
item="$(echo "$item" | tr -d '[:space:]')"
|
|
112
|
+
if [[ -n "$item" && "$item" != "agents_md" ]]; then
|
|
113
|
+
providers+=("$item")
|
|
114
|
+
fi
|
|
115
|
+
done
|
|
116
|
+
fi
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
# Resolution hierarchy
|
|
120
|
+
if [[ -n "$EXPLICIT_PROVIDERS" ]]; then
|
|
121
|
+
# 1. Explicit argument overrides everything
|
|
122
|
+
resolve_from_explicit
|
|
123
|
+
elif resolve_from_sync_config; then
|
|
124
|
+
# 2. Sync config found and had providers
|
|
125
|
+
:
|
|
126
|
+
else
|
|
127
|
+
# 3. Auto-detection fallback
|
|
128
|
+
resolve_from_auto_detect
|
|
129
|
+
fi
|
|
130
|
+
|
|
131
|
+
# 4. Interactive confirmation (unless --non-interactive)
|
|
132
|
+
interactive_confirm
|
|
133
|
+
|
|
134
|
+
# Deduplicate and output
|
|
135
|
+
printf '%s\n' "${providers[@]}" | sort -u
|
|
@@ -0,0 +1,507 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: oat-agent-instructions-apply
|
|
3
|
+
version: 1.6.1
|
|
4
|
+
description: Run when you have an agent instructions analysis artifact and want to generate or update instruction files. Creates a branch, generates files from templates, and optionally opens a PR.
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
user-invocable: true
|
|
7
|
+
allowed-tools: Read, Write, Edit, Bash(git:*), Bash(gh:*), Glob, Grep, AskUserQuestion
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Agent Instructions Apply
|
|
11
|
+
|
|
12
|
+
Generate or update agent instruction files based on an analysis artifact, with user review and PR-based workflow.
|
|
13
|
+
|
|
14
|
+
## Prerequisites
|
|
15
|
+
|
|
16
|
+
- Git repository with a recent analysis artifact in `.oat/repo/analysis/`.
|
|
17
|
+
- If no analysis exists, run `oat-agent-instructions-analyze` first.
|
|
18
|
+
- `jq` available in PATH (used by helper scripts).
|
|
19
|
+
- `gh` CLI available for PR creation (optional — manual fallback provided).
|
|
20
|
+
|
|
21
|
+
## Mode Assertion
|
|
22
|
+
|
|
23
|
+
**OAT MODE: Agent Instructions Apply**
|
|
24
|
+
|
|
25
|
+
**Purpose:** Generate and update instruction files based on analysis findings, with user approval at each step.
|
|
26
|
+
|
|
27
|
+
**BLOCKED Activities:**
|
|
28
|
+
|
|
29
|
+
- No generating files the user hasn't approved.
|
|
30
|
+
- No pushing to remote without user confirmation.
|
|
31
|
+
- No modifying files outside the instruction file scope.
|
|
32
|
+
|
|
33
|
+
**ALLOWED Activities:**
|
|
34
|
+
|
|
35
|
+
- Reading analysis artifacts, instruction files, and project configuration.
|
|
36
|
+
- Running helper scripts for provider resolution and tracking.
|
|
37
|
+
- Creating/updating instruction files per approved plan.
|
|
38
|
+
- Creating branches, committing, and pushing (with user confirmation).
|
|
39
|
+
- Writing tracking updates to `.oat/tracking.json`.
|
|
40
|
+
|
|
41
|
+
## Question Handling Across Hosts
|
|
42
|
+
|
|
43
|
+
When this skill needs a user decision:
|
|
44
|
+
|
|
45
|
+
1. Use `AskUserQuestion` when running in Claude Code with tool availability.
|
|
46
|
+
2. Use Codex structured user-input tooling when available in the current Codex host/runtime.
|
|
47
|
+
3. Otherwise ask the same question in plain conversational text.
|
|
48
|
+
|
|
49
|
+
Keep the question content consistent across hosts so the workflow remains portable even when the UI differs.
|
|
50
|
+
|
|
51
|
+
## Analyze vs Apply Boundary
|
|
52
|
+
|
|
53
|
+
Treat the analysis output as the source of truth for what should be generated and why.
|
|
54
|
+
|
|
55
|
+
When a companion bundle exists beside the markdown artifact, the bundle is the primary generation contract:
|
|
56
|
+
|
|
57
|
+
- `agent-instructions-<timestamp>.bundle/recommendations.yaml`
|
|
58
|
+
- `agent-instructions-<timestamp>.bundle/packs/*.md`
|
|
59
|
+
|
|
60
|
+
The markdown artifact remains the human-readable review summary.
|
|
61
|
+
|
|
62
|
+
Apply may:
|
|
63
|
+
|
|
64
|
+
- read the exact evidence sources cited by the artifact
|
|
65
|
+
- verify that cited files still exist
|
|
66
|
+
- translate approved recommendations into concrete instruction text
|
|
67
|
+
|
|
68
|
+
Apply must **not**:
|
|
69
|
+
|
|
70
|
+
- invent unsupported conventions
|
|
71
|
+
- infer formatting/style rules from defaults or a small sample
|
|
72
|
+
- create new recommendations that are not present in the artifact
|
|
73
|
+
- silently fill in missing evidence gaps
|
|
74
|
+
|
|
75
|
+
## Progress Indicators (User-Facing)
|
|
76
|
+
|
|
77
|
+
- Print a phase banner once at start:
|
|
78
|
+
|
|
79
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
80
|
+
OAT ▸ AGENT INSTRUCTIONS APPLY
|
|
81
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
82
|
+
|
|
83
|
+
- Step indicators:
|
|
84
|
+
- `[1/7] Loading analysis artifact…`
|
|
85
|
+
- `[2/7] Building recommendation plan…`
|
|
86
|
+
- `[3/7] Reviewing plan with user…`
|
|
87
|
+
- `[4/7] Creating branch…`
|
|
88
|
+
- `[5/7] Generating instruction files…`
|
|
89
|
+
- `[6/7] Committing + PR…`
|
|
90
|
+
- `[7/7] Updating tracking + summary…`
|
|
91
|
+
|
|
92
|
+
## Process
|
|
93
|
+
|
|
94
|
+
### Step 0: Intake — Find Analysis Artifact
|
|
95
|
+
|
|
96
|
+
Search for the most recent analysis artifact:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
ls -t .oat/repo/analysis/agent-instructions-*.md 2>/dev/null | head -1
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
If found, derive the companion bundle path:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
BUNDLE_DIR="${ARTIFACT_PATH%.md}.bundle"
|
|
106
|
+
MANIFEST_PATH="${BUNDLE_DIR}/recommendations.yaml"
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**If found:** Read the artifact, then check for the companion bundle.
|
|
110
|
+
|
|
111
|
+
**Bundle-first behavior:**
|
|
112
|
+
|
|
113
|
+
- If `"$BUNDLE_DIR"` exists, validate `summary.md`, `recommendations.yaml`, and every referenced pack file.
|
|
114
|
+
- Treat the bundle as the primary generation contract and the markdown artifact as review context.
|
|
115
|
+
- If the bundle exists but is incomplete, stop and require a refreshed analysis rather than falling back silently to the
|
|
116
|
+
markdown artifact.
|
|
117
|
+
|
|
118
|
+
**Legacy fallback:**
|
|
119
|
+
|
|
120
|
+
- If no companion bundle exists, continue using the markdown artifact alone.
|
|
121
|
+
- This keeps apply backward compatible with older analysis artifacts until the bundle contract is fully adopted.
|
|
122
|
+
|
|
123
|
+
Validate that the artifact includes evidence, confidence, and progressive disclosure decisions for each recommendation.
|
|
124
|
+
Also validate that every `link_only` recommendation includes at least one concrete link target to a canonical doc, config, or example.
|
|
125
|
+
If a recommendation updates or contradicts an existing rule, validate that it also includes `Content Guidance`,
|
|
126
|
+
`Must Include`, `Must Not Include`, `Preferred Default for New Files`, and `Claim Corrections`.
|
|
127
|
+
If the artifact records a High/Medium glob-scoped opportunity with a recommended action to create, update, or split a
|
|
128
|
+
rule, validate that a matching explicit recommendation exists. Apply should not infer missing rule work from the
|
|
129
|
+
opportunities table.
|
|
130
|
+
If the companion bundle exists, validate that:
|
|
131
|
+
|
|
132
|
+
- every recommendation has a stable ID
|
|
133
|
+
- every manifest entry points to an existing pack file
|
|
134
|
+
- each pack preserves the executable fields apply relies on (`Evidence`, `Content Guidance`, `Must Include`,
|
|
135
|
+
`Must Not Include`, `Counter-Examples`, `New-File Workflow`, `Preferred Default for New Files`, `Claim Corrections`)
|
|
136
|
+
|
|
137
|
+
If the artifact is missing that detail, treat it as incomplete:
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
Analysis artifact is missing evidence-backed recommendation detail.
|
|
141
|
+
Re-run oat-agent-instructions-analyze before applying changes.
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Then stop.
|
|
145
|
+
|
|
146
|
+
**If not found:** Tell the user:
|
|
147
|
+
|
|
148
|
+
```
|
|
149
|
+
No analysis artifact found in .oat/repo/analysis/.
|
|
150
|
+
Run oat-agent-instructions-analyze first to scan the codebase.
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Then stop.
|
|
154
|
+
|
|
155
|
+
### Step 1: Resolve Providers
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
SCRIPT_DIR=".agents/skills/oat-agent-instructions-analyze/scripts"
|
|
159
|
+
TRACKING_SCRIPT=".oat/scripts/resolve-tracking.sh"
|
|
160
|
+
PROVIDERS=$(bash "$SCRIPT_DIR/resolve-providers.sh" --non-interactive)
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
The provider list determines which file formats to generate. If running interactively, omit `--non-interactive` to allow the user to confirm or add providers.
|
|
164
|
+
|
|
165
|
+
### Step 2: Build Recommendation Plan
|
|
166
|
+
|
|
167
|
+
For each recommendation in the analysis artifact, determine the action.
|
|
168
|
+
Recommendations may originate from findings, provider baseline gaps, directory coverage gaps, or promoted glob-rule opportunities.
|
|
169
|
+
The artifact should already specify the rationale, evidence, confidence, and disclosure decision.
|
|
170
|
+
Do not rediscover conventions from scratch during this step.
|
|
171
|
+
When the companion bundle exists, build the plan from the bundle manifest and recommendation packs first, then use the
|
|
172
|
+
markdown artifact only to confirm reviewer-facing rationale and summary wording.
|
|
173
|
+
Carry forward the artifact's structured handoff fields (`Content Guidance`, `Must Include`, `Must Not Include`,
|
|
174
|
+
`Counter-Examples`, `New-File Workflow`, `Preferred Default for New Files`, `Claim Corrections`) into the plan wherever
|
|
175
|
+
they are present.
|
|
176
|
+
When the companion bundle exists, also carry forward the stable `Recommendation ID` and `Bundle Pack` path for each
|
|
177
|
+
recommendation so plan review and generation stay aligned to the same pack file.
|
|
178
|
+
|
|
179
|
+
**For provider baseline gaps (always-on provider files):**
|
|
180
|
+
|
|
181
|
+
- Treat them as first-class recommendations from the artifact, not as implied apply-time behavior
|
|
182
|
+
- Examples include missing Claude `CLAUDE.md` import shims and missing `.github/copilot-instructions.md` shims
|
|
183
|
+
- Carry forward the artifact's evidence refs, confidence, and disclosure mode into the plan
|
|
184
|
+
- If the artifact marks a provider-baseline recommendation `omit`, do not include it in the apply plan
|
|
185
|
+
- If the artifact marks a provider-baseline recommendation `ask_user`, include it with the evidence and require explicit user approval
|
|
186
|
+
|
|
187
|
+
**For coverage gaps (new files):**
|
|
188
|
+
|
|
189
|
+
- Determine the target file path based on the directory and provider
|
|
190
|
+
- Select the appropriate template from `references/instruction-file-templates/`
|
|
191
|
+
- For AGENTS.md files: use `agents-md-root.md` or `agents-md-scoped.md`
|
|
192
|
+
- For glob-scoped rules: use `glob-scoped-rule.md` as the canonical body and write a canonical rule file to `.agents/rules/{name}.md`
|
|
193
|
+
- Carry forward the artifact's evidence refs, confidence, and disclosure mode into the plan
|
|
194
|
+
- If the artifact marks a coverage-gap recommendation `omit`, do not include it in the apply plan
|
|
195
|
+
- If the artifact marks a coverage-gap recommendation `ask_user`, include it with the evidence and require explicit user approval
|
|
196
|
+
- If a `link_only` coverage-gap recommendation has no link target, stop and ask for a fresh analysis instead of guessing
|
|
197
|
+
|
|
198
|
+
**For quality findings (updates to existing files):**
|
|
199
|
+
|
|
200
|
+
- Identify the specific issue and the fix
|
|
201
|
+
- Preserve existing manual customizations — only modify the problematic section
|
|
202
|
+
- If the artifact marks a recommendation `omit`, do not include it in the apply plan
|
|
203
|
+
- If the artifact marks a recommendation `ask_user`, include it with the evidence and require explicit user approval
|
|
204
|
+
- If the change corrects an existing rule claim, treat the artifact's `Claim Corrections` and `Must Not Include`
|
|
205
|
+
fields as mandatory constraints rather than optional hints
|
|
206
|
+
- If evidence is missing or stale, stop and ask for a fresh analysis instead of guessing
|
|
207
|
+
|
|
208
|
+
**For competing sub-patterns in glob-scoped rules:**
|
|
209
|
+
|
|
210
|
+
- Treat the artifact's recommendation as authoritative about which pattern new files should follow
|
|
211
|
+
- If both patterns remain valid, document both and explicitly call out the recommended default for new files
|
|
212
|
+
- If the artifact reports a split but does not identify the preferred direction for new files, stop and ask for a
|
|
213
|
+
refreshed analysis instead of guessing
|
|
214
|
+
|
|
215
|
+
**Multi-format composition order:**
|
|
216
|
+
|
|
217
|
+
1. **AGENTS.md first** — the canonical, provider-agnostic file
|
|
218
|
+
2. **CLAUDE.md** — if claude provider is active, ensure `@AGENTS.md` import exists
|
|
219
|
+
3. **Glob-scoped rules** — author once in canonical format at `.agents/rules/{name}.md` with YAML frontmatter (`description`, `globs`, `activation`)
|
|
220
|
+
- Provider-specific rule files are generated by `oat sync --scope project`
|
|
221
|
+
- Do not hand-author `.claude/rules/*.md`, `.cursor/rules/*.mdc`, or `.github/instructions/*.instructions.md`
|
|
222
|
+
4. **Copilot shim** — if copilot provider is active, generate `.github/copilot-instructions.md` from `frontmatter/copilot-shim.md` template
|
|
223
|
+
|
|
224
|
+
Fill the apply plan template at `references/apply-plan-template.md` with each recommendation.
|
|
225
|
+
|
|
226
|
+
Persist the exact markdown plan shown to the user as `APPLY_PLAN_MARKDOWN` (including recommendation tables and the summary table). This is the source that must be embedded in the PR description.
|
|
227
|
+
|
|
228
|
+
### Step 3: User Reviews Plan
|
|
229
|
+
|
|
230
|
+
Present the full recommendation plan to the user first, then ask which review mode they want:
|
|
231
|
+
|
|
232
|
+
- **apply all** — approve the full set as presented
|
|
233
|
+
- **apply interactively** — switch to recommendation-by-recommendation review
|
|
234
|
+
- **discuss** — pause for questions, adjustments, or scope changes before approval
|
|
235
|
+
- **cancel** — stop without applying anything
|
|
236
|
+
|
|
237
|
+
For the review-mode choice:
|
|
238
|
+
|
|
239
|
+
- Claude Code: use `AskUserQuestion`
|
|
240
|
+
- Codex: use structured user-input tooling when available in the current host/runtime
|
|
241
|
+
- Fallback: ask in plain text
|
|
242
|
+
|
|
243
|
+
The prompt should ask for exactly one of: `apply all`, `apply interactively`, `discuss`, `cancel`.
|
|
244
|
+
|
|
245
|
+
If the user chooses **cancel**, output "No actions approved. Exiting." and stop.
|
|
246
|
+
|
|
247
|
+
If the user chooses **apply all**:
|
|
248
|
+
|
|
249
|
+
- confirm that the full plan is approved
|
|
250
|
+
- capture any global notes that apply across the whole plan
|
|
251
|
+
- treat all non-blocked recommendations as approved unless the user names exceptions
|
|
252
|
+
|
|
253
|
+
If the user chooses **apply interactively**:
|
|
254
|
+
|
|
255
|
+
- for each recommendation, ask:
|
|
256
|
+
- **approve** — proceed with generation
|
|
257
|
+
- **modify** — approve with user-specified changes
|
|
258
|
+
- **skip** — do not act on this recommendation
|
|
259
|
+
- use the same host-specific question handling (`AskUserQuestion` / Codex structured input when available / plain text fallback)
|
|
260
|
+
- wait for user decisions on all recommendations before proceeding
|
|
261
|
+
|
|
262
|
+
If the user chooses **discuss**:
|
|
263
|
+
|
|
264
|
+
- answer questions and revise the plan if needed
|
|
265
|
+
- re-present the updated plan and ask again: `apply all`, `apply interactively`, `discuss`, or `cancel`
|
|
266
|
+
|
|
267
|
+
If all recommendations are skipped, output "No actions approved. Exiting." and stop.
|
|
268
|
+
|
|
269
|
+
Build an `APPLIED_PLAN_DETAILS` block from approved/modified recommendations with:
|
|
270
|
+
|
|
271
|
+
- Recommendation ID
|
|
272
|
+
- Action (create/update)
|
|
273
|
+
- Target path
|
|
274
|
+
- Provider
|
|
275
|
+
- Disclosure
|
|
276
|
+
- Evidence refs
|
|
277
|
+
- Decision (`approved_via_apply_all` / `approved` / `modified`)
|
|
278
|
+
- User notes (if any)
|
|
279
|
+
|
|
280
|
+
Also build `APPLIED_PLAN_MARKDOWN`: a markdown block containing only the approved/modified recommendation sections from the presented plan, preserving table formatting.
|
|
281
|
+
|
|
282
|
+
### Step 4: Create Branch
|
|
283
|
+
|
|
284
|
+
```bash
|
|
285
|
+
TIMESTAMP=$(date -u +"%Y-%m-%d-%H%M")
|
|
286
|
+
BRANCH="oat/agent-instructions-${TIMESTAMP}"
|
|
287
|
+
git checkout -b "$BRANCH"
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
If branch creation fails (e.g., uncommitted changes), ask the user to resolve and retry.
|
|
291
|
+
|
|
292
|
+
### Step 5: Generate/Update Instruction Files
|
|
293
|
+
|
|
294
|
+
For each approved recommendation, in the order from Step 2:
|
|
295
|
+
|
|
296
|
+
- When the companion bundle exists, load the approved recommendation's manifest entry and matching pack before
|
|
297
|
+
reading repo evidence or generating content.
|
|
298
|
+
- Treat that pack as the executable contract for the recommendation. Do not generate from the markdown summary alone.
|
|
299
|
+
|
|
300
|
+
**Creating new files:**
|
|
301
|
+
|
|
302
|
+
1. Read the appropriate template from `references/instruction-file-templates/`.
|
|
303
|
+
2. Read only the project context needed to fill the approved recommendation:
|
|
304
|
+
- the matching recommendation pack when the companion bundle exists
|
|
305
|
+
- the evidence files cited in the artifact
|
|
306
|
+
- `package.json` for commands and dependencies
|
|
307
|
+
- directory structure for architecture section
|
|
308
|
+
- existing instruction files for consistency
|
|
309
|
+
3. Generate the file content by filling the template with project-specific details from the cited evidence.
|
|
310
|
+
4. Preserve progressive disclosure decisions from the artifact:
|
|
311
|
+
- `inline` → keep the essential rule in the instruction file
|
|
312
|
+
- `link_only` → add a concise pointer to the canonical doc/config/example
|
|
313
|
+
- `omit` → do not encode the item in the instruction file
|
|
314
|
+
- `ask_user` → require explicit user confirmation before writing
|
|
315
|
+
5. Follow the recommendation's structured handoff fields during generation:
|
|
316
|
+
- `Content Guidance` shapes emphasis and phrasing
|
|
317
|
+
- `Must Include` is mandatory content
|
|
318
|
+
- `Must Not Include` is prohibited content
|
|
319
|
+
- `Preferred Default for New Files` determines which sub-pattern new files should follow
|
|
320
|
+
- `Claim Corrections` replaces stale claims in updated files
|
|
321
|
+
6. For glob-scoped rules:
|
|
322
|
+
- Write the canonical markdown once to `.agents/rules/{name}.md`
|
|
323
|
+
- Include canonical rule frontmatter (`description`, `globs`, `activation`) instead of provider-specific wrappers
|
|
324
|
+
- After writing canonical rules, run `oat sync --scope project` to generate provider-specific rule files
|
|
325
|
+
- Verify the generated provider files exist for each active provider instead of maintaining them by hand
|
|
326
|
+
- Verify each generated provider file is trackable with `git check-ignore`; if any generated file is ignored,
|
|
327
|
+
stop and surface the exact paths before committing
|
|
328
|
+
|
|
329
|
+
**Updating existing files:**
|
|
330
|
+
|
|
331
|
+
1. Read the existing file and the matching recommendation pack when the companion bundle exists.
|
|
332
|
+
2. Identify the section(s) that need updating based on the finding.
|
|
333
|
+
3. Make targeted edits using only the approved recommendation and its cited evidence.
|
|
334
|
+
4. Do not rewrite the entire file unless the user explicitly approves.
|
|
335
|
+
|
|
336
|
+
**Negative rules:**
|
|
337
|
+
|
|
338
|
+
- Do not add tabs-vs-spaces, quote style, import sorting, naming, or similar formatting rules unless the artifact cites repo evidence for them.
|
|
339
|
+
- Do not upgrade a repeated code pattern into a hard instruction unless the artifact already approved it.
|
|
340
|
+
- If formatter/linter config exists, prefer `run formatter/lint` or a link to the config/doc over prose restatement of the same rule.
|
|
341
|
+
- Do not soften specific runtime versions, infrastructure notes, commit conventions, or rule corrections into vague prose
|
|
342
|
+
when the artifact or cited evidence is explicit.
|
|
343
|
+
- If a cited source no longer exists, stop that recommendation and ask for a fresh analysis or user guidance.
|
|
344
|
+
|
|
345
|
+
**Required context — read these bundled skill docs before generating:**
|
|
346
|
+
|
|
347
|
+
These docs are bundled with this skill under `references/docs/` and should be read from that location,
|
|
348
|
+
not from repo-root `.agents/docs/`.
|
|
349
|
+
|
|
350
|
+
- `references/docs/agent-instruction.md` — quality criteria and best practices
|
|
351
|
+
- `references/docs/rules-files.md` — cross-provider format reference
|
|
352
|
+
- `references/docs/cursor-rules-files.md` — Cursor-specific `.mdc` format (if cursor provider is active)
|
|
353
|
+
|
|
354
|
+
### Step 6: Commit and PR
|
|
355
|
+
|
|
356
|
+
**Stage and commit:**
|
|
357
|
+
|
|
358
|
+
```bash
|
|
359
|
+
git add {list of generated/updated files}
|
|
360
|
+
git commit -m "chore: update agent instruction files
|
|
361
|
+
|
|
362
|
+
Generated by oat-agent-instructions-apply from analysis artifact.
|
|
363
|
+
Files: {count} created, {count} updated."
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
**Offer to open a PR:**
|
|
367
|
+
|
|
368
|
+
After committing, proactively ask the user if they'd like to open a pull request. Frame this as the recommended next step:
|
|
369
|
+
|
|
370
|
+
```
|
|
371
|
+
Changes committed. Would you like me to push and open a pull request?
|
|
372
|
+
The PR will include the applied plan summary and the full analysis artifact for reference.
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
Use host-specific question handling:
|
|
376
|
+
|
|
377
|
+
- Claude Code: use `AskUserQuestion`
|
|
378
|
+
- Codex: use structured user-input tooling when available in the current host/runtime
|
|
379
|
+
- Fallback: ask in plain text
|
|
380
|
+
|
|
381
|
+
**If creating PR:**
|
|
382
|
+
|
|
383
|
+
The PR body must include:
|
|
384
|
+
|
|
385
|
+
1. **Overview** — why this PR exists, source analysis artifact, and provider scope.
|
|
386
|
+
2. **Applied Plan Details** — the exact plan markdown presented in terminal (tables included), filtered to approved/modified recommendations.
|
|
387
|
+
3. **Full Analysis Artifact** — the complete analysis in a collapsible `<details>` section at the bottom so reviewers can see the evidence behind every change.
|
|
388
|
+
|
|
389
|
+
```bash
|
|
390
|
+
git push -u origin "$(git rev-parse --abbrev-ref HEAD)"
|
|
391
|
+
gh pr create --base main \
|
|
392
|
+
--title "chore: update agent instruction files" \
|
|
393
|
+
--body "$(cat <<'PRBODY'
|
|
394
|
+
## Overview
|
|
395
|
+
|
|
396
|
+
- Generated/updated agent instruction files based on analysis
|
|
397
|
+
- Source: {analysis-artifact-path}
|
|
398
|
+
- Providers: {provider-list}
|
|
399
|
+
- Result: {N} created, {N} updated, {N} skipped
|
|
400
|
+
|
|
401
|
+
## Applied Plan Details
|
|
402
|
+
|
|
403
|
+
The following section is copied from the presented apply plan (`APPLY_PLAN_MARKDOWN`), preserving its tables:
|
|
404
|
+
|
|
405
|
+
{APPLY_PLAN_MARKDOWN}
|
|
406
|
+
|
|
407
|
+
## Applied Plan Summary
|
|
408
|
+
|
|
409
|
+
| Rec # | Action | Target | Provider | Decision | Notes |
|
|
410
|
+
|------:|--------|--------|----------|----------|-------|
|
|
411
|
+
| {1} | {create/update} | `{path}` | {provider} | {approved/modified} | {note or "-"} |
|
|
412
|
+
| ... | ... | ... | ... | ... | ... |
|
|
413
|
+
|
|
414
|
+
## Changes
|
|
415
|
+
|
|
416
|
+
{list of files created/updated with brief rationale}
|
|
417
|
+
|
|
418
|
+
## Verification
|
|
419
|
+
|
|
420
|
+
- [ ] Instruction files follow quality checklist
|
|
421
|
+
- [ ] No content duplication across formats
|
|
422
|
+
- [ ] Glob-scoped rules have identical body content across providers
|
|
423
|
+
- [ ] Commands referenced in instruction files are valid
|
|
424
|
+
- [ ] Every non-obvious convention in generated text is backed by cited analysis evidence
|
|
425
|
+
|
|
426
|
+
---
|
|
427
|
+
|
|
428
|
+
## Full Analysis Artifact
|
|
429
|
+
|
|
430
|
+
The complete analysis that produced these recommendations is included below for reviewer reference.
|
|
431
|
+
|
|
432
|
+
<details>
|
|
433
|
+
<summary>Click to expand full analysis</summary>
|
|
434
|
+
|
|
435
|
+
{full contents of the analysis artifact markdown file}
|
|
436
|
+
|
|
437
|
+
</details>
|
|
438
|
+
PRBODY
|
|
439
|
+
)"
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
**If the user declines PR creation:**
|
|
443
|
+
|
|
444
|
+
```
|
|
445
|
+
Options:
|
|
446
|
+
1. Push only (create PR manually)
|
|
447
|
+
2. Keep local (no push)
|
|
448
|
+
```
|
|
449
|
+
|
|
450
|
+
**If `gh` is not available or fails:**
|
|
451
|
+
|
|
452
|
+
```
|
|
453
|
+
PR creation failed. To create manually:
|
|
454
|
+
1. Push: git push -u origin {branch}
|
|
455
|
+
2. Open PR at your repository's web interface
|
|
456
|
+
3. Use the structure above in the PR body, including the full analysis in a collapsible section at the bottom
|
|
457
|
+
```
|
|
458
|
+
|
|
459
|
+
### Step 7: Update Tracking and Output Summary
|
|
460
|
+
|
|
461
|
+
**Update tracking:**
|
|
462
|
+
|
|
463
|
+
```bash
|
|
464
|
+
TRACKING_SCRIPT=".oat/scripts/resolve-tracking.sh"
|
|
465
|
+
ROOT_TARGET=$(bash "$TRACKING_SCRIPT" root)
|
|
466
|
+
ROOT_HASH=$(echo "$ROOT_TARGET" | jq -r '.commitHash')
|
|
467
|
+
ROOT_BRANCH=$(echo "$ROOT_TARGET" | jq -r '.baseBranch')
|
|
468
|
+
|
|
469
|
+
bash "$TRACKING_SCRIPT" write \
|
|
470
|
+
agentInstructionsApply \
|
|
471
|
+
"$ROOT_HASH" \
|
|
472
|
+
"$ROOT_BRANCH" \
|
|
473
|
+
"apply" \
|
|
474
|
+
{providers...}
|
|
475
|
+
```
|
|
476
|
+
|
|
477
|
+
**Output summary:**
|
|
478
|
+
|
|
479
|
+
```
|
|
480
|
+
Apply complete.
|
|
481
|
+
|
|
482
|
+
Files created: {N}
|
|
483
|
+
Files updated: {N}
|
|
484
|
+
Files skipped: {N}
|
|
485
|
+
Providers: {list}
|
|
486
|
+
Branch: {branch-name}
|
|
487
|
+
PR: {URL or "not created"}
|
|
488
|
+
|
|
489
|
+
Source analysis: {artifact-path}
|
|
490
|
+
Tracking updated: .oat/tracking.json
|
|
491
|
+
```
|
|
492
|
+
|
|
493
|
+
## Deferred from v1
|
|
494
|
+
|
|
495
|
+
- `AGENTS.override.md` generation and management
|
|
496
|
+
- Auto-apply mode (skip user review for low-severity recommendations)
|
|
497
|
+
- Batch update across multiple repos
|
|
498
|
+
|
|
499
|
+
## References
|
|
500
|
+
|
|
501
|
+
- Bundled quality criteria: `references/docs/agent-instruction.md`
|
|
502
|
+
- Bundled cross-provider rules reference: `references/docs/rules-files.md`
|
|
503
|
+
- Bundled Cursor-specific format reference: `references/docs/cursor-rules-files.md`
|
|
504
|
+
- Analysis artifact: `.oat/repo/analysis/agent-instructions-*.md`
|
|
505
|
+
- Templates: `references/instruction-file-templates/`
|
|
506
|
+
- Apply plan template: `references/apply-plan-template.md`
|
|
507
|
+
- Tracking script: `.oat/scripts/resolve-tracking.sh`
|