@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.
Files changed (797) hide show
  1. package/README.md +50 -0
  2. package/assets/agents/oat-codebase-mapper.md +275 -0
  3. package/assets/agents/oat-reviewer.md +350 -0
  4. package/assets/agents/skeptical-evaluator.md +126 -0
  5. package/assets/docs/contributing/code.md +95 -0
  6. package/assets/docs/contributing/commit-conventions.md +41 -0
  7. package/assets/docs/contributing/design-principles.md +124 -0
  8. package/assets/docs/contributing/documentation.md +69 -0
  9. package/assets/docs/contributing/hooks-and-safety.md +31 -0
  10. package/assets/docs/contributing/index.md +18 -0
  11. package/assets/docs/contributing/markdown-features.md +117 -0
  12. package/assets/docs/contributing/skills.md +68 -0
  13. package/assets/docs/guide/cli-reference.md +211 -0
  14. package/assets/docs/guide/concepts.md +88 -0
  15. package/assets/docs/guide/configuration.md +130 -0
  16. package/assets/docs/guide/documentation/commands.md +157 -0
  17. package/assets/docs/guide/documentation/index.md +27 -0
  18. package/assets/docs/guide/documentation/quickstart.md +164 -0
  19. package/assets/docs/guide/documentation/workflows.md +67 -0
  20. package/assets/docs/guide/getting-started.md +63 -0
  21. package/assets/docs/guide/ideas/index.md +34 -0
  22. package/assets/docs/guide/ideas/lifecycle.md +106 -0
  23. package/assets/docs/guide/index.md +20 -0
  24. package/assets/docs/guide/provider-sync/commands.md +100 -0
  25. package/assets/docs/guide/provider-sync/config.md +77 -0
  26. package/assets/docs/guide/provider-sync/index.md +65 -0
  27. package/assets/docs/guide/provider-sync/manifest-and-drift.md +55 -0
  28. package/assets/docs/guide/provider-sync/providers.md +67 -0
  29. package/assets/docs/guide/provider-sync/scope-and-surface.md +64 -0
  30. package/assets/docs/guide/skills/index.md +115 -0
  31. package/assets/docs/guide/tool-packs.md +167 -0
  32. package/assets/docs/guide/workflow/artifacts.md +44 -0
  33. package/assets/docs/guide/workflow/hill-checkpoints.md +53 -0
  34. package/assets/docs/guide/workflow/index.md +34 -0
  35. package/assets/docs/guide/workflow/lifecycle.md +207 -0
  36. package/assets/docs/guide/workflow/pr-flow.md +55 -0
  37. package/assets/docs/guide/workflow/repo-analysis.md +96 -0
  38. package/assets/docs/guide/workflow/reviews.md +98 -0
  39. package/assets/docs/guide/workflow/state-machine.md +74 -0
  40. package/assets/docs/index.md +45 -0
  41. package/assets/docs/quickstart.md +162 -0
  42. package/assets/docs/reference/docs-index-contract.md +53 -0
  43. package/assets/docs/reference/file-locations.md +109 -0
  44. package/assets/docs/reference/index.md +29 -0
  45. package/assets/docs/reference/oat-directory-structure.md +236 -0
  46. package/assets/docs/reference/troubleshooting.md +63 -0
  47. package/assets/public-package-versions.json +6 -0
  48. package/assets/scripts/resolve-tracking.sh +233 -0
  49. package/assets/skills/analyze/SKILL.md +358 -0
  50. package/assets/skills/compare/SKILL.md +276 -0
  51. package/assets/skills/create-agnostic-skill/SKILL.md +410 -0
  52. package/assets/skills/create-agnostic-skill/references/skill-template.md +195 -0
  53. package/assets/skills/deep-research/SKILL.md +350 -0
  54. package/assets/skills/deep-research/references/schema-analysis.md +93 -0
  55. package/assets/skills/deep-research/references/schema-architectural.md +75 -0
  56. package/assets/skills/deep-research/references/schema-base.md +70 -0
  57. package/assets/skills/deep-research/references/schema-comparative.md +72 -0
  58. package/assets/skills/deep-research/references/schema-conceptual.md +68 -0
  59. package/assets/skills/deep-research/references/schema-technical.md +64 -0
  60. package/assets/skills/oat-agent-instructions-analyze/SKILL.md +500 -0
  61. package/assets/skills/oat-agent-instructions-analyze/references/analysis-artifact-template.md +248 -0
  62. package/assets/skills/oat-agent-instructions-analyze/references/bundle-summary-template.md +31 -0
  63. package/assets/skills/oat-agent-instructions-analyze/references/directory-assessment-criteria.md +93 -0
  64. package/assets/skills/oat-agent-instructions-analyze/references/docs/agent-instruction.md +575 -0
  65. package/assets/skills/oat-agent-instructions-analyze/references/docs/cursor-rules-files.md +510 -0
  66. package/assets/skills/oat-agent-instructions-analyze/references/docs/provider-reference.md +429 -0
  67. package/assets/skills/oat-agent-instructions-analyze/references/docs/rules-files.md +594 -0
  68. package/assets/skills/oat-agent-instructions-analyze/references/file-type-discovery-checklist.md +273 -0
  69. package/assets/skills/oat-agent-instructions-analyze/references/quality-checklist.md +125 -0
  70. package/assets/skills/oat-agent-instructions-analyze/references/recommendation-pack-template.md +45 -0
  71. package/assets/skills/oat-agent-instructions-analyze/references/recommendations-manifest-template.yaml +27 -0
  72. package/assets/skills/oat-agent-instructions-analyze/scripts/resolve-instruction-files.sh +120 -0
  73. package/assets/skills/oat-agent-instructions-analyze/scripts/resolve-providers.sh +135 -0
  74. package/assets/skills/oat-agent-instructions-apply/SKILL.md +507 -0
  75. package/assets/skills/oat-agent-instructions-apply/references/apply-plan-template.md +80 -0
  76. package/assets/skills/oat-agent-instructions-apply/references/docs/agent-instruction.md +575 -0
  77. package/assets/skills/oat-agent-instructions-apply/references/docs/cursor-rules-files.md +510 -0
  78. package/assets/skills/oat-agent-instructions-apply/references/docs/provider-reference.md +429 -0
  79. package/assets/skills/oat-agent-instructions-apply/references/docs/rules-files.md +594 -0
  80. package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/agents-md-root.md +85 -0
  81. package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/agents-md-scoped.md +62 -0
  82. package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/claude-rule.md +67 -0
  83. package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/copilot-instruction.md +70 -0
  84. package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/copilot-shim.md +35 -0
  85. package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/frontmatter/cursor-rule.md +84 -0
  86. package/assets/skills/oat-agent-instructions-apply/references/instruction-file-templates/glob-scoped-rule.md +59 -0
  87. package/assets/skills/oat-docs/SKILL.md +214 -0
  88. package/assets/skills/oat-docs-analyze/SKILL.md +355 -0
  89. package/assets/skills/oat-docs-analyze/references/analysis-artifact-template.md +192 -0
  90. package/assets/skills/oat-docs-analyze/references/directory-assessment-criteria.md +46 -0
  91. package/assets/skills/oat-docs-analyze/references/quality-checklist.md +48 -0
  92. package/assets/skills/oat-docs-apply/SKILL.md +339 -0
  93. package/assets/skills/oat-docs-apply/references/apply-plan-template.md +69 -0
  94. package/assets/skills/oat-doctor/SKILL.md +293 -0
  95. package/assets/skills/oat-idea-ideate/SKILL.md +187 -0
  96. package/assets/skills/oat-idea-new/SKILL.md +152 -0
  97. package/assets/skills/oat-idea-scratchpad/SKILL.md +115 -0
  98. package/assets/skills/oat-idea-summarize/SKILL.md +172 -0
  99. package/assets/skills/oat-pjm-add-backlog-item/SKILL.md +155 -0
  100. package/assets/skills/oat-pjm-review-backlog/SKILL.md +171 -0
  101. package/assets/skills/oat-pjm-review-backlog/references/backlog-review-template.md +172 -0
  102. package/assets/skills/oat-pjm-update-repo-reference/SKILL.md +128 -0
  103. package/assets/skills/oat-project-capture/SKILL.md +306 -0
  104. package/assets/skills/oat-project-clear-active/SKILL.md +50 -0
  105. package/assets/skills/oat-project-complete/SKILL.md +461 -0
  106. package/assets/skills/oat-project-design/SKILL.md +461 -0
  107. package/assets/skills/oat-project-discover/SKILL.md +395 -0
  108. package/assets/skills/oat-project-document/SKILL.md +468 -0
  109. package/assets/skills/oat-project-implement/SKILL.md +736 -0
  110. package/assets/skills/oat-project-import-plan/SKILL.md +228 -0
  111. package/assets/skills/oat-project-import-plan/scripts/find-recent-provider-plans.sh +149 -0
  112. package/assets/skills/oat-project-new/SKILL.md +74 -0
  113. package/assets/skills/oat-project-next/SKILL.md +345 -0
  114. package/assets/skills/oat-project-open/SKILL.md +47 -0
  115. package/assets/skills/oat-project-plan/SKILL.md +415 -0
  116. package/assets/skills/oat-project-plan-writing/SKILL.md +116 -0
  117. package/assets/skills/oat-project-pr-final/SKILL.md +391 -0
  118. package/assets/skills/oat-project-pr-progress/SKILL.md +354 -0
  119. package/assets/skills/oat-project-progress/SKILL.md +342 -0
  120. package/assets/skills/oat-project-promote-spec-driven/SKILL.md +155 -0
  121. package/assets/skills/oat-project-quick-start/SKILL.md +363 -0
  122. package/assets/skills/oat-project-reconcile/SKILL.md +738 -0
  123. package/assets/skills/oat-project-review-provide/SKILL.md +728 -0
  124. package/assets/skills/oat-project-review-receive/SKILL.md +641 -0
  125. package/assets/skills/oat-project-review-receive-remote/SKILL.md +235 -0
  126. package/assets/skills/oat-project-revise/SKILL.md +316 -0
  127. package/assets/skills/oat-project-spec/SKILL.md +471 -0
  128. package/assets/skills/oat-project-subagent-implement/SKILL.md +549 -0
  129. package/assets/skills/oat-project-subagent-implement/examples/pattern-hill-checkpoint.md +110 -0
  130. package/assets/skills/oat-project-subagent-implement/examples/pattern-parallel-phases.md +118 -0
  131. package/assets/skills/oat-project-subagent-implement/scripts/dispatch.sh +133 -0
  132. package/assets/skills/oat-project-subagent-implement/scripts/reconcile.sh +182 -0
  133. package/assets/skills/oat-project-subagent-implement/scripts/review-gate.sh +187 -0
  134. package/assets/skills/oat-project-subagent-implement/tests/fixtures/sample-plan.md +234 -0
  135. package/assets/skills/oat-project-subagent-implement/tests/test-dry-run.sh +126 -0
  136. package/assets/skills/oat-project-subagent-implement/tests/test-hill-checkpoint.sh +127 -0
  137. package/assets/skills/oat-project-subagent-implement/tests/test-reconcile.sh +254 -0
  138. package/assets/skills/oat-project-subagent-implement/tests/test-review-gate.sh +220 -0
  139. package/assets/skills/oat-project-summary/SKILL.md +227 -0
  140. package/assets/skills/oat-repo-knowledge-index/SKILL.md +724 -0
  141. package/assets/skills/oat-repo-knowledge-index/references/templates/architecture.md +83 -0
  142. package/assets/skills/oat-repo-knowledge-index/references/templates/concerns.md +97 -0
  143. package/assets/skills/oat-repo-knowledge-index/references/templates/conventions.md +100 -0
  144. package/assets/skills/oat-repo-knowledge-index/references/templates/integrations.md +91 -0
  145. package/assets/skills/oat-repo-knowledge-index/references/templates/stack.md +86 -0
  146. package/assets/skills/oat-repo-knowledge-index/references/templates/structure.md +88 -0
  147. package/assets/skills/oat-repo-knowledge-index/references/templates/testing.md +137 -0
  148. package/assets/skills/oat-repo-maintainability-review/SKILL.md +198 -0
  149. package/assets/skills/oat-repo-maintainability-review/references/dx-checklist.md +33 -0
  150. package/assets/skills/oat-repo-maintainability-review/references/repo-review-artifact-template.md +72 -0
  151. package/assets/skills/oat-repo-maintainability-review/references/repo-review-rubric.md +66 -0
  152. package/assets/skills/oat-repo-maintainability-review/scripts/resolve-analysis-output.sh +162 -0
  153. package/assets/skills/oat-review-provide/SKILL.md +231 -0
  154. package/assets/skills/oat-review-provide/references/review-artifact-template.md +55 -0
  155. package/assets/skills/oat-review-provide/scripts/resolve-review-output.sh +124 -0
  156. package/assets/skills/oat-review-receive/SKILL.md +238 -0
  157. package/assets/skills/oat-review-receive-remote/SKILL.md +250 -0
  158. package/assets/skills/oat-worktree-bootstrap/SKILL.md +208 -0
  159. package/assets/skills/oat-worktree-bootstrap/references/worktree-conventions.md +58 -0
  160. package/assets/skills/oat-worktree-bootstrap-auto/SKILL.md +245 -0
  161. package/assets/skills/oat-worktree-bootstrap-auto/scripts/bootstrap.sh +194 -0
  162. package/assets/skills/skeptic/SKILL.md +261 -0
  163. package/assets/skills/synthesize/SKILL.md +361 -0
  164. package/assets/templates/backlog-item.md +24 -0
  165. package/assets/templates/design.md +315 -0
  166. package/assets/templates/discovery.md +135 -0
  167. package/assets/templates/docs-app-fuma/app/[[...slug]]/page.tsx +30 -0
  168. package/assets/templates/docs-app-fuma/app/api/search/route.ts +8 -0
  169. package/assets/templates/docs-app-fuma/app/globals.css +69 -0
  170. package/assets/templates/docs-app-fuma/app/layout.tsx +26 -0
  171. package/assets/templates/docs-app-fuma/docs/contributing.md +71 -0
  172. package/assets/templates/docs-app-fuma/docs/getting-started.md +40 -0
  173. package/assets/templates/docs-app-fuma/docs/index.md +13 -0
  174. package/assets/templates/docs-app-fuma/lib/source.ts +8 -0
  175. package/assets/templates/docs-app-fuma/next.config.js +6 -0
  176. package/assets/templates/docs-app-fuma/package.json.template +38 -0
  177. package/assets/templates/docs-app-fuma/postcss.config.mjs +7 -0
  178. package/assets/templates/docs-app-fuma/source.config.ts +14 -0
  179. package/assets/templates/docs-app-fuma/tsconfig.json +25 -0
  180. package/assets/templates/docs-app-mkdocs/docs/contributing.md +122 -0
  181. package/assets/templates/docs-app-mkdocs/docs/getting-started.md +28 -0
  182. package/assets/templates/docs-app-mkdocs/docs/index.md +8 -0
  183. package/assets/templates/docs-app-mkdocs/mkdocs.yml +47 -0
  184. package/assets/templates/docs-app-mkdocs/package.json.template +19 -0
  185. package/assets/templates/docs-app-mkdocs/requirements.txt +6 -0
  186. package/assets/templates/docs-app-mkdocs/setup-docs.sh +18 -0
  187. package/assets/templates/ideas/idea-discovery.md +39 -0
  188. package/assets/templates/ideas/idea-summary.md +42 -0
  189. package/assets/templates/ideas/ideas-backlog.md +21 -0
  190. package/assets/templates/ideas/ideas-scratchpad.md +10 -0
  191. package/assets/templates/implementation.md +207 -0
  192. package/assets/templates/plan.md +171 -0
  193. package/assets/templates/roadmap.md +24 -0
  194. package/assets/templates/spec.md +138 -0
  195. package/assets/templates/state.md +49 -0
  196. package/assets/templates/summary.md +82 -0
  197. package/dist/agents/canonical/index.d.ts +4 -0
  198. package/dist/agents/canonical/index.d.ts.map +1 -0
  199. package/dist/agents/canonical/index.js +2 -0
  200. package/dist/agents/canonical/parse.d.ts +4 -0
  201. package/dist/agents/canonical/parse.d.ts.map +1 -0
  202. package/dist/agents/canonical/parse.js +97 -0
  203. package/dist/agents/canonical/render.d.ts +3 -0
  204. package/dist/agents/canonical/render.d.ts.map +1 -0
  205. package/dist/agents/canonical/render.js +17 -0
  206. package/dist/agents/canonical/types.d.ts +22 -0
  207. package/dist/agents/canonical/types.d.ts.map +1 -0
  208. package/dist/agents/canonical/types.js +1 -0
  209. package/dist/app/command-context.d.ts +21 -0
  210. package/dist/app/command-context.d.ts.map +1 -0
  211. package/dist/app/command-context.js +18 -0
  212. package/dist/app/create-program.d.ts +3 -0
  213. package/dist/app/create-program.d.ts.map +1 -0
  214. package/dist/app/create-program.js +17 -0
  215. package/dist/commands/__tests__/helpers.d.ts +12 -0
  216. package/dist/commands/__tests__/helpers.d.ts.map +1 -0
  217. package/dist/commands/__tests__/helpers.js +36 -0
  218. package/dist/commands/backlog/index.d.ts +14 -0
  219. package/dist/commands/backlog/index.d.ts.map +1 -0
  220. package/dist/commands/backlog/index.js +80 -0
  221. package/dist/commands/backlog/init.d.ts +2 -0
  222. package/dist/commands/backlog/init.d.ts.map +1 -0
  223. package/dist/commands/backlog/init.js +66 -0
  224. package/dist/commands/backlog/regenerate-index.d.ts +2 -0
  225. package/dist/commands/backlog/regenerate-index.d.ts.map +1 -0
  226. package/dist/commands/backlog/regenerate-index.js +78 -0
  227. package/dist/commands/backlog/shared/generate-id.d.ts +4 -0
  228. package/dist/commands/backlog/shared/generate-id.d.ts.map +1 -0
  229. package/dist/commands/backlog/shared/generate-id.js +65 -0
  230. package/dist/commands/cleanup/artifacts/artifacts.d.ts +44 -0
  231. package/dist/commands/cleanup/artifacts/artifacts.d.ts.map +1 -0
  232. package/dist/commands/cleanup/artifacts/artifacts.js +381 -0
  233. package/dist/commands/cleanup/artifacts/artifacts.types.d.ts +13 -0
  234. package/dist/commands/cleanup/artifacts/artifacts.types.d.ts.map +1 -0
  235. package/dist/commands/cleanup/artifacts/artifacts.types.js +1 -0
  236. package/dist/commands/cleanup/artifacts/artifacts.utils.d.ts +14 -0
  237. package/dist/commands/cleanup/artifacts/artifacts.utils.d.ts.map +1 -0
  238. package/dist/commands/cleanup/artifacts/artifacts.utils.js +74 -0
  239. package/dist/commands/cleanup/cleanup.types.d.ts +26 -0
  240. package/dist/commands/cleanup/cleanup.types.d.ts.map +1 -0
  241. package/dist/commands/cleanup/cleanup.types.js +1 -0
  242. package/dist/commands/cleanup/cleanup.utils.d.ts +17 -0
  243. package/dist/commands/cleanup/cleanup.utils.d.ts.map +1 -0
  244. package/dist/commands/cleanup/cleanup.utils.js +44 -0
  245. package/dist/commands/cleanup/index.d.ts +3 -0
  246. package/dist/commands/cleanup/index.d.ts.map +1 -0
  247. package/dist/commands/cleanup/index.js +9 -0
  248. package/dist/commands/cleanup/project/project.d.ts +20 -0
  249. package/dist/commands/cleanup/project/project.d.ts.map +1 -0
  250. package/dist/commands/cleanup/project/project.js +263 -0
  251. package/dist/commands/cleanup/project/project.utils.d.ts +8 -0
  252. package/dist/commands/cleanup/project/project.utils.d.ts.map +1 -0
  253. package/dist/commands/cleanup/project/project.utils.js +48 -0
  254. package/dist/commands/config/index.d.ts +16 -0
  255. package/dist/commands/config/index.d.ts.map +1 -0
  256. package/dist/commands/config/index.js +700 -0
  257. package/dist/commands/docs/analyze.d.ts +8 -0
  258. package/dist/commands/docs/analyze.d.ts.map +1 -0
  259. package/dist/commands/docs/analyze.js +45 -0
  260. package/dist/commands/docs/apply.d.ts +8 -0
  261. package/dist/commands/docs/apply.d.ts.map +1 -0
  262. package/dist/commands/docs/apply.js +45 -0
  263. package/dist/commands/docs/index-generate/generator.d.ts +9 -0
  264. package/dist/commands/docs/index-generate/generator.d.ts.map +1 -0
  265. package/dist/commands/docs/index-generate/generator.js +114 -0
  266. package/dist/commands/docs/index-generate/index.d.ts +16 -0
  267. package/dist/commands/docs/index-generate/index.d.ts.map +1 -0
  268. package/dist/commands/docs/index-generate/index.js +72 -0
  269. package/dist/commands/docs/index.d.ts +3 -0
  270. package/dist/commands/docs/index.d.ts.map +1 -0
  271. package/dist/commands/docs/index.js +17 -0
  272. package/dist/commands/docs/init/index.d.ts +18 -0
  273. package/dist/commands/docs/init/index.d.ts.map +1 -0
  274. package/dist/commands/docs/init/index.js +129 -0
  275. package/dist/commands/docs/init/resolve-options.d.ts +41 -0
  276. package/dist/commands/docs/init/resolve-options.d.ts.map +1 -0
  277. package/dist/commands/docs/init/resolve-options.js +120 -0
  278. package/dist/commands/docs/init/scaffold.d.ts +18 -0
  279. package/dist/commands/docs/init/scaffold.d.ts.map +1 -0
  280. package/dist/commands/docs/init/scaffold.js +233 -0
  281. package/dist/commands/docs/migrate/codemod.d.ts +6 -0
  282. package/dist/commands/docs/migrate/codemod.d.ts.map +1 -0
  283. package/dist/commands/docs/migrate/codemod.js +62 -0
  284. package/dist/commands/docs/migrate/frontmatter.d.ts +12 -0
  285. package/dist/commands/docs/migrate/frontmatter.d.ts.map +1 -0
  286. package/dist/commands/docs/migrate/frontmatter.js +55 -0
  287. package/dist/commands/docs/migrate/index.d.ts +18 -0
  288. package/dist/commands/docs/migrate/index.d.ts.map +1 -0
  289. package/dist/commands/docs/migrate/index.js +138 -0
  290. package/dist/commands/docs/nav/contents.d.ts +14 -0
  291. package/dist/commands/docs/nav/contents.d.ts.map +1 -0
  292. package/dist/commands/docs/nav/contents.js +106 -0
  293. package/dist/commands/docs/nav/index.d.ts +3 -0
  294. package/dist/commands/docs/nav/index.d.ts.map +1 -0
  295. package/dist/commands/docs/nav/index.js +7 -0
  296. package/dist/commands/docs/nav/sync.d.ts +20 -0
  297. package/dist/commands/docs/nav/sync.d.ts.map +1 -0
  298. package/dist/commands/docs/nav/sync.js +92 -0
  299. package/dist/commands/doctor/index.d.ts +32 -0
  300. package/dist/commands/doctor/index.d.ts.map +1 -0
  301. package/dist/commands/doctor/index.js +373 -0
  302. package/dist/commands/index-cmd/index.d.ts +11 -0
  303. package/dist/commands/index-cmd/index.d.ts.map +1 -0
  304. package/dist/commands/index-cmd/index.js +62 -0
  305. package/dist/commands/index-cmd/thin-index.d.ts +19 -0
  306. package/dist/commands/index-cmd/thin-index.d.ts.map +1 -0
  307. package/dist/commands/index-cmd/thin-index.js +330 -0
  308. package/dist/commands/index.d.ts +3 -0
  309. package/dist/commands/index.d.ts.map +1 -0
  310. package/dist/commands/index.js +38 -0
  311. package/dist/commands/init/detect-docs.d.ts +11 -0
  312. package/dist/commands/init/detect-docs.d.ts.map +1 -0
  313. package/dist/commands/init/detect-docs.js +51 -0
  314. package/dist/commands/init/gitignore.d.ts +6 -0
  315. package/dist/commands/init/gitignore.d.ts.map +1 -0
  316. package/dist/commands/init/gitignore.js +41 -0
  317. package/dist/commands/init/index.d.ts +70 -0
  318. package/dist/commands/init/index.d.ts.map +1 -0
  319. package/dist/commands/init/index.js +570 -0
  320. package/dist/commands/init/tools/core/index.d.ts +12 -0
  321. package/dist/commands/init/tools/core/index.d.ts.map +1 -0
  322. package/dist/commands/init/tools/core/index.js +67 -0
  323. package/dist/commands/init/tools/core/install-core.d.ts +30 -0
  324. package/dist/commands/init/tools/core/install-core.d.ts.map +1 -0
  325. package/dist/commands/init/tools/core/install-core.js +50 -0
  326. package/dist/commands/init/tools/docs/index.d.ts +17 -0
  327. package/dist/commands/init/tools/docs/index.d.ts.map +1 -0
  328. package/dist/commands/init/tools/docs/index.js +110 -0
  329. package/dist/commands/init/tools/docs/install-docs.d.ts +23 -0
  330. package/dist/commands/init/tools/docs/install-docs.d.ts.map +1 -0
  331. package/dist/commands/init/tools/docs/install-docs.js +58 -0
  332. package/dist/commands/init/tools/ideas/index.d.ts +16 -0
  333. package/dist/commands/init/tools/ideas/index.d.ts.map +1 -0
  334. package/dist/commands/init/tools/ideas/index.js +94 -0
  335. package/dist/commands/init/tools/ideas/install-ideas.d.ts +25 -0
  336. package/dist/commands/init/tools/ideas/install-ideas.d.ts.map +1 -0
  337. package/dist/commands/init/tools/ideas/install-ideas.js +78 -0
  338. package/dist/commands/init/tools/index.d.ts +51 -0
  339. package/dist/commands/init/tools/index.d.ts.map +1 -0
  340. package/dist/commands/init/tools/index.js +387 -0
  341. package/dist/commands/init/tools/project-management/index.d.ts +12 -0
  342. package/dist/commands/init/tools/project-management/index.d.ts.map +1 -0
  343. package/dist/commands/init/tools/project-management/index.js +61 -0
  344. package/dist/commands/init/tools/project-management/install-project-management.d.ts +22 -0
  345. package/dist/commands/init/tools/project-management/install-project-management.d.ts.map +1 -0
  346. package/dist/commands/init/tools/project-management/install-project-management.js +52 -0
  347. package/dist/commands/init/tools/research/index.d.ts +17 -0
  348. package/dist/commands/init/tools/research/index.d.ts.map +1 -0
  349. package/dist/commands/init/tools/research/index.js +110 -0
  350. package/dist/commands/init/tools/research/install-research.d.ts +23 -0
  351. package/dist/commands/init/tools/research/install-research.d.ts.map +1 -0
  352. package/dist/commands/init/tools/research/install-research.js +52 -0
  353. package/dist/commands/init/tools/shared/copy-helpers.d.ts +12 -0
  354. package/dist/commands/init/tools/shared/copy-helpers.d.ts.map +1 -0
  355. package/dist/commands/init/tools/shared/copy-helpers.js +52 -0
  356. package/dist/commands/init/tools/shared/skill-manifest.d.ts +22 -0
  357. package/dist/commands/init/tools/shared/skill-manifest.d.ts.map +1 -0
  358. package/dist/commands/init/tools/shared/skill-manifest.js +102 -0
  359. package/dist/commands/init/tools/shared/version.d.ts +3 -0
  360. package/dist/commands/init/tools/shared/version.d.ts.map +1 -0
  361. package/dist/commands/init/tools/shared/version.js +27 -0
  362. package/dist/commands/init/tools/utility/index.d.ts +17 -0
  363. package/dist/commands/init/tools/utility/index.d.ts.map +1 -0
  364. package/dist/commands/init/tools/utility/index.js +109 -0
  365. package/dist/commands/init/tools/utility/install-utility.d.ts +20 -0
  366. package/dist/commands/init/tools/utility/install-utility.d.ts.map +1 -0
  367. package/dist/commands/init/tools/utility/install-utility.js +35 -0
  368. package/dist/commands/init/tools/workflows/index.d.ts +14 -0
  369. package/dist/commands/init/tools/workflows/index.d.ts.map +1 -0
  370. package/dist/commands/init/tools/workflows/index.js +84 -0
  371. package/dist/commands/init/tools/workflows/install-workflows.d.ts +32 -0
  372. package/dist/commands/init/tools/workflows/install-workflows.d.ts.map +1 -0
  373. package/dist/commands/init/tools/workflows/install-workflows.js +135 -0
  374. package/dist/commands/instructions/index.d.ts +3 -0
  375. package/dist/commands/instructions/index.d.ts.map +1 -0
  376. package/dist/commands/instructions/index.js +9 -0
  377. package/dist/commands/instructions/instructions.types.d.ts +52 -0
  378. package/dist/commands/instructions/instructions.types.d.ts.map +1 -0
  379. package/dist/commands/instructions/instructions.types.js +1 -0
  380. package/dist/commands/instructions/instructions.utils.d.ts +13 -0
  381. package/dist/commands/instructions/instructions.utils.d.ts.map +1 -0
  382. package/dist/commands/instructions/instructions.utils.js +211 -0
  383. package/dist/commands/instructions/sync/sync.d.ts +4 -0
  384. package/dist/commands/instructions/sync/sync.d.ts.map +1 -0
  385. package/dist/commands/instructions/sync/sync.js +142 -0
  386. package/dist/commands/instructions/validate/validate.d.ts +4 -0
  387. package/dist/commands/instructions/validate/validate.d.ts.map +1 -0
  388. package/dist/commands/instructions/validate/validate.js +53 -0
  389. package/dist/commands/internal/index.d.ts +3 -0
  390. package/dist/commands/internal/index.d.ts.map +1 -0
  391. package/dist/commands/internal/index.js +7 -0
  392. package/dist/commands/internal/validate-oat-skills.d.ts +10 -0
  393. package/dist/commands/internal/validate-oat-skills.d.ts.map +1 -0
  394. package/dist/commands/internal/validate-oat-skills.js +66 -0
  395. package/dist/commands/local/apply.d.ts +6 -0
  396. package/dist/commands/local/apply.d.ts.map +1 -0
  397. package/dist/commands/local/apply.js +56 -0
  398. package/dist/commands/local/expand.d.ts +8 -0
  399. package/dist/commands/local/expand.d.ts.map +1 -0
  400. package/dist/commands/local/expand.js +83 -0
  401. package/dist/commands/local/index.d.ts +3 -0
  402. package/dist/commands/local/index.d.ts.map +1 -0
  403. package/dist/commands/local/index.js +248 -0
  404. package/dist/commands/local/manage.d.ts +18 -0
  405. package/dist/commands/local/manage.d.ts.map +1 -0
  406. package/dist/commands/local/manage.js +66 -0
  407. package/dist/commands/local/status.d.ts +7 -0
  408. package/dist/commands/local/status.d.ts.map +1 -0
  409. package/dist/commands/local/status.js +46 -0
  410. package/dist/commands/local/sync.d.ts +20 -0
  411. package/dist/commands/local/sync.d.ts.map +1 -0
  412. package/dist/commands/local/sync.js +40 -0
  413. package/dist/commands/project/archive/archive-utils.d.ts +70 -0
  414. package/dist/commands/project/archive/archive-utils.d.ts.map +1 -0
  415. package/dist/commands/project/archive/archive-utils.js +236 -0
  416. package/dist/commands/project/archive/index.d.ts +20 -0
  417. package/dist/commands/project/archive/index.d.ts.map +1 -0
  418. package/dist/commands/project/archive/index.js +217 -0
  419. package/dist/commands/project/index.d.ts +3 -0
  420. package/dist/commands/project/index.d.ts.map +1 -0
  421. package/dist/commands/project/index.js +15 -0
  422. package/dist/commands/project/new/index.d.ts +17 -0
  423. package/dist/commands/project/new/index.d.ts.map +1 -0
  424. package/dist/commands/project/new/index.js +76 -0
  425. package/dist/commands/project/new/scaffold.d.ts +24 -0
  426. package/dist/commands/project/new/scaffold.d.ts.map +1 -0
  427. package/dist/commands/project/new/scaffold.js +177 -0
  428. package/dist/commands/project/open/index.d.ts +26 -0
  429. package/dist/commands/project/open/index.d.ts.map +1 -0
  430. package/dist/commands/project/open/index.js +139 -0
  431. package/dist/commands/project/pause/index.d.ts +27 -0
  432. package/dist/commands/project/pause/index.d.ts.map +1 -0
  433. package/dist/commands/project/pause/index.js +120 -0
  434. package/dist/commands/project/set-mode/index.d.ts +14 -0
  435. package/dist/commands/project/set-mode/index.d.ts.map +1 -0
  436. package/dist/commands/project/set-mode/index.js +115 -0
  437. package/dist/commands/providers/index.d.ts +4 -0
  438. package/dist/commands/providers/index.d.ts.map +1 -0
  439. package/dist/commands/providers/index.js +11 -0
  440. package/dist/commands/providers/inspect/inspect.d.ts +4 -0
  441. package/dist/commands/providers/inspect/inspect.d.ts.map +1 -0
  442. package/dist/commands/providers/inspect/inspect.js +156 -0
  443. package/dist/commands/providers/list/list.d.ts +4 -0
  444. package/dist/commands/providers/list/list.d.ts.map +1 -0
  445. package/dist/commands/providers/list/list.js +163 -0
  446. package/dist/commands/providers/providers.types.d.ts +63 -0
  447. package/dist/commands/providers/providers.types.d.ts.map +1 -0
  448. package/dist/commands/providers/providers.types.js +1 -0
  449. package/dist/commands/providers/set/index.d.ts +4 -0
  450. package/dist/commands/providers/set/index.d.ts.map +1 -0
  451. package/dist/commands/providers/set/index.js +138 -0
  452. package/dist/commands/remove/index.d.ts +3 -0
  453. package/dist/commands/remove/index.d.ts.map +1 -0
  454. package/dist/commands/remove/index.js +9 -0
  455. package/dist/commands/remove/skill/index.d.ts +2 -0
  456. package/dist/commands/remove/skill/index.d.ts.map +1 -0
  457. package/dist/commands/remove/skill/index.js +1 -0
  458. package/dist/commands/remove/skill/remove-skill.d.ts +23 -0
  459. package/dist/commands/remove/skill/remove-skill.d.ts.map +1 -0
  460. package/dist/commands/remove/skill/remove-skill.js +231 -0
  461. package/dist/commands/remove/skills/index.d.ts +2 -0
  462. package/dist/commands/remove/skills/index.d.ts.map +1 -0
  463. package/dist/commands/remove/skills/index.js +1 -0
  464. package/dist/commands/remove/skills/remove-skills.d.ts +14 -0
  465. package/dist/commands/remove/skills/remove-skills.d.ts.map +1 -0
  466. package/dist/commands/remove/skills/remove-skills.js +98 -0
  467. package/dist/commands/repo/index.d.ts +3 -0
  468. package/dist/commands/repo/index.d.ts.map +1 -0
  469. package/dist/commands/repo/index.js +7 -0
  470. package/dist/commands/repo/pr-comments/collect/collect-comments.d.ts +9 -0
  471. package/dist/commands/repo/pr-comments/collect/collect-comments.d.ts.map +1 -0
  472. package/dist/commands/repo/pr-comments/collect/collect-comments.js +284 -0
  473. package/dist/commands/repo/pr-comments/collect/graphql-queries.d.ts +3 -0
  474. package/dist/commands/repo/pr-comments/collect/graphql-queries.d.ts.map +1 -0
  475. package/dist/commands/repo/pr-comments/collect/graphql-queries.js +56 -0
  476. package/dist/commands/repo/pr-comments/collect/index.d.ts +4 -0
  477. package/dist/commands/repo/pr-comments/collect/index.d.ts.map +1 -0
  478. package/dist/commands/repo/pr-comments/collect/index.js +25 -0
  479. package/dist/commands/repo/pr-comments/collect/pr-comments.types.d.ts +62 -0
  480. package/dist/commands/repo/pr-comments/collect/pr-comments.types.d.ts.map +1 -0
  481. package/dist/commands/repo/pr-comments/collect/pr-comments.types.js +1 -0
  482. package/dist/commands/repo/pr-comments/index.d.ts +3 -0
  483. package/dist/commands/repo/pr-comments/index.d.ts.map +1 -0
  484. package/dist/commands/repo/pr-comments/index.js +9 -0
  485. package/dist/commands/repo/pr-comments/triage-collection/index.d.ts +4 -0
  486. package/dist/commands/repo/pr-comments/triage-collection/index.d.ts.map +1 -0
  487. package/dist/commands/repo/pr-comments/triage-collection/index.js +21 -0
  488. package/dist/commands/repo/pr-comments/triage-collection/triage-comments.d.ts +13 -0
  489. package/dist/commands/repo/pr-comments/triage-collection/triage-comments.d.ts.map +1 -0
  490. package/dist/commands/repo/pr-comments/triage-collection/triage-comments.js +81 -0
  491. package/dist/commands/shared/adopt-stray.d.ts +22 -0
  492. package/dist/commands/shared/adopt-stray.d.ts.map +1 -0
  493. package/dist/commands/shared/adopt-stray.js +135 -0
  494. package/dist/commands/shared/agents-md.d.ts +18 -0
  495. package/dist/commands/shared/agents-md.d.ts.map +1 -0
  496. package/dist/commands/shared/agents-md.js +81 -0
  497. package/dist/commands/shared/codex-strays.d.ts +16 -0
  498. package/dist/commands/shared/codex-strays.d.ts.map +1 -0
  499. package/dist/commands/shared/codex-strays.js +116 -0
  500. package/dist/commands/shared/frontmatter-write.d.ts +8 -0
  501. package/dist/commands/shared/frontmatter-write.d.ts.map +1 -0
  502. package/dist/commands/shared/frontmatter-write.js +27 -0
  503. package/dist/commands/shared/frontmatter.d.ts +6 -0
  504. package/dist/commands/shared/frontmatter.d.ts.map +1 -0
  505. package/dist/commands/shared/frontmatter.js +35 -0
  506. package/dist/commands/shared/messages.d.ts +2 -0
  507. package/dist/commands/shared/messages.d.ts.map +1 -0
  508. package/dist/commands/shared/messages.js +1 -0
  509. package/dist/commands/shared/oat-paths.d.ts +2 -0
  510. package/dist/commands/shared/oat-paths.d.ts.map +1 -0
  511. package/dist/commands/shared/oat-paths.js +13 -0
  512. package/dist/commands/shared/shared.prompts.d.ts +21 -0
  513. package/dist/commands/shared/shared.prompts.d.ts.map +1 -0
  514. package/dist/commands/shared/shared.prompts.js +107 -0
  515. package/dist/commands/shared/shared.utils.d.ts +6 -0
  516. package/dist/commands/shared/shared.utils.d.ts.map +1 -0
  517. package/dist/commands/shared/shared.utils.js +9 -0
  518. package/dist/commands/state/generate.d.ts +21 -0
  519. package/dist/commands/state/generate.d.ts.map +1 -0
  520. package/dist/commands/state/generate.js +440 -0
  521. package/dist/commands/state/index.d.ts +11 -0
  522. package/dist/commands/state/index.d.ts.map +1 -0
  523. package/dist/commands/state/index.js +58 -0
  524. package/dist/commands/status/index.d.ts +44 -0
  525. package/dist/commands/status/index.d.ts.map +1 -0
  526. package/dist/commands/status/index.js +340 -0
  527. package/dist/commands/sync/apply.d.ts +4 -0
  528. package/dist/commands/sync/apply.d.ts.map +1 -0
  529. package/dist/commands/sync/apply.js +100 -0
  530. package/dist/commands/sync/dry-run.d.ts +4 -0
  531. package/dist/commands/sync/dry-run.d.ts.map +1 -0
  532. package/dist/commands/sync/dry-run.js +74 -0
  533. package/dist/commands/sync/index.d.ts +4 -0
  534. package/dist/commands/sync/index.d.ts.map +1 -0
  535. package/dist/commands/sync/index.js +225 -0
  536. package/dist/commands/sync/sync.types.d.ts +80 -0
  537. package/dist/commands/sync/sync.types.d.ts.map +1 -0
  538. package/dist/commands/sync/sync.types.js +1 -0
  539. package/dist/commands/sync/sync.utils.d.ts +3 -0
  540. package/dist/commands/sync/sync.utils.d.ts.map +1 -0
  541. package/dist/commands/sync/sync.utils.js +8 -0
  542. package/dist/commands/tools/index.d.ts +3 -0
  543. package/dist/commands/tools/index.d.ts.map +1 -0
  544. package/dist/commands/tools/index.js +17 -0
  545. package/dist/commands/tools/info/index.d.ts +4 -0
  546. package/dist/commands/tools/info/index.d.ts.map +1 -0
  547. package/dist/commands/tools/info/index.js +74 -0
  548. package/dist/commands/tools/info/info-tool.d.ts +21 -0
  549. package/dist/commands/tools/info/info-tool.d.ts.map +1 -0
  550. package/dist/commands/tools/info/info-tool.js +52 -0
  551. package/dist/commands/tools/install/index.d.ts +4 -0
  552. package/dist/commands/tools/install/index.d.ts.map +1 -0
  553. package/dist/commands/tools/install/index.js +34 -0
  554. package/dist/commands/tools/list/index.d.ts +4 -0
  555. package/dist/commands/tools/list/index.d.ts.map +1 -0
  556. package/dist/commands/tools/list/index.js +25 -0
  557. package/dist/commands/tools/list/list-tools.d.ts +13 -0
  558. package/dist/commands/tools/list/list-tools.d.ts.map +1 -0
  559. package/dist/commands/tools/list/list-tools.js +43 -0
  560. package/dist/commands/tools/outdated/index.d.ts +4 -0
  561. package/dist/commands/tools/outdated/index.d.ts.map +1 -0
  562. package/dist/commands/tools/outdated/index.js +25 -0
  563. package/dist/commands/tools/outdated/outdated-tools.d.ts +13 -0
  564. package/dist/commands/tools/outdated/outdated-tools.d.ts.map +1 -0
  565. package/dist/commands/tools/outdated/outdated-tools.js +43 -0
  566. package/dist/commands/tools/remove/index.d.ts +5 -0
  567. package/dist/commands/tools/remove/index.d.ts.map +1 -0
  568. package/dist/commands/tools/remove/index.js +122 -0
  569. package/dist/commands/tools/remove/remove-tools.d.ts +31 -0
  570. package/dist/commands/tools/remove/remove-tools.d.ts.map +1 -0
  571. package/dist/commands/tools/remove/remove-tools.js +41 -0
  572. package/dist/commands/tools/shared/auto-sync.d.ts +16 -0
  573. package/dist/commands/tools/shared/auto-sync.d.ts.map +1 -0
  574. package/dist/commands/tools/shared/auto-sync.js +17 -0
  575. package/dist/commands/tools/shared/scan-tools.d.ts +18 -0
  576. package/dist/commands/tools/shared/scan-tools.d.ts.map +1 -0
  577. package/dist/commands/tools/shared/scan-tools.js +128 -0
  578. package/dist/commands/tools/shared/types.d.ts +12 -0
  579. package/dist/commands/tools/shared/types.d.ts.map +1 -0
  580. package/dist/commands/tools/shared/types.js +1 -0
  581. package/dist/commands/tools/update/index.d.ts +8 -0
  582. package/dist/commands/tools/update/index.d.ts.map +1 -0
  583. package/dist/commands/tools/update/index.js +149 -0
  584. package/dist/commands/tools/update/update-tools.d.ts +29 -0
  585. package/dist/commands/tools/update/update-tools.d.ts.map +1 -0
  586. package/dist/commands/tools/update/update-tools.js +148 -0
  587. package/dist/config/index.d.ts +4 -0
  588. package/dist/config/index.d.ts.map +1 -0
  589. package/dist/config/index.js +2 -0
  590. package/dist/config/oat-config.d.ts +61 -0
  591. package/dist/config/oat-config.d.ts.map +1 -0
  592. package/dist/config/oat-config.js +319 -0
  593. package/dist/config/runtime.d.ts +2 -0
  594. package/dist/config/runtime.d.ts.map +1 -0
  595. package/dist/config/runtime.js +3 -0
  596. package/dist/config/sync-config.d.ts +49 -0
  597. package/dist/config/sync-config.d.ts.map +1 -0
  598. package/dist/config/sync-config.js +94 -0
  599. package/dist/drift/detector.d.ts +4 -0
  600. package/dist/drift/detector.d.ts.map +1 -0
  601. package/dist/drift/detector.js +69 -0
  602. package/dist/drift/drift.types.d.ts +17 -0
  603. package/dist/drift/drift.types.d.ts.map +1 -0
  604. package/dist/drift/drift.types.js +1 -0
  605. package/dist/drift/index.d.ts +4 -0
  606. package/dist/drift/index.d.ts.map +1 -0
  607. package/dist/drift/index.js +2 -0
  608. package/dist/drift/strays.d.ts +7 -0
  609. package/dist/drift/strays.d.ts.map +1 -0
  610. package/dist/drift/strays.js +153 -0
  611. package/dist/engine/compute-plan.d.ts +16 -0
  612. package/dist/engine/compute-plan.d.ts.map +1 -0
  613. package/dist/engine/compute-plan.js +234 -0
  614. package/dist/engine/engine.types.d.ts +28 -0
  615. package/dist/engine/engine.types.d.ts.map +1 -0
  616. package/dist/engine/engine.types.js +8 -0
  617. package/dist/engine/execute-plan.d.ts +5 -0
  618. package/dist/engine/execute-plan.d.ts.map +1 -0
  619. package/dist/engine/execute-plan.js +141 -0
  620. package/dist/engine/hook.d.ts +23 -0
  621. package/dist/engine/hook.d.ts.map +1 -0
  622. package/dist/engine/hook.js +254 -0
  623. package/dist/engine/index.d.ts +9 -0
  624. package/dist/engine/index.d.ts.map +1 -0
  625. package/dist/engine/index.js +6 -0
  626. package/dist/engine/markers.d.ts +6 -0
  627. package/dist/engine/markers.d.ts.map +1 -0
  628. package/dist/engine/markers.js +24 -0
  629. package/dist/engine/scanner.d.ts +11 -0
  630. package/dist/engine/scanner.d.ts.map +1 -0
  631. package/dist/engine/scanner.js +65 -0
  632. package/dist/engine/test-helpers.d.ts +3 -0
  633. package/dist/engine/test-helpers.d.ts.map +1 -0
  634. package/dist/engine/test-helpers.js +31 -0
  635. package/dist/errors/cli-error.d.ts +5 -0
  636. package/dist/errors/cli-error.d.ts.map +1 -0
  637. package/dist/errors/cli-error.js +8 -0
  638. package/dist/errors/index.d.ts +2 -0
  639. package/dist/errors/index.d.ts.map +1 -0
  640. package/dist/errors/index.js +1 -0
  641. package/dist/fs/assets.d.ts +2 -0
  642. package/dist/fs/assets.d.ts.map +1 -0
  643. package/dist/fs/assets.js +22 -0
  644. package/dist/fs/index.d.ts +4 -0
  645. package/dist/fs/index.d.ts.map +1 -0
  646. package/dist/fs/index.js +3 -0
  647. package/dist/fs/io.d.ts +9 -0
  648. package/dist/fs/io.d.ts.map +1 -0
  649. package/dist/fs/io.js +74 -0
  650. package/dist/fs/paths.d.ts +9 -0
  651. package/dist/fs/paths.d.ts.map +1 -0
  652. package/dist/fs/paths.js +42 -0
  653. package/dist/index.d.ts +4 -0
  654. package/dist/index.d.ts.map +1 -0
  655. package/dist/index.js +48 -0
  656. package/dist/manifest/hash.d.ts +5 -0
  657. package/dist/manifest/hash.d.ts.map +1 -0
  658. package/dist/manifest/hash.js +75 -0
  659. package/dist/manifest/index.d.ts +5 -0
  660. package/dist/manifest/index.d.ts.map +1 -0
  661. package/dist/manifest/index.js +3 -0
  662. package/dist/manifest/manager.d.ts +8 -0
  663. package/dist/manifest/manager.d.ts.map +1 -0
  664. package/dist/manifest/manager.js +86 -0
  665. package/dist/manifest/manifest.types.d.ts +157 -0
  666. package/dist/manifest/manifest.types.d.ts.map +1 -0
  667. package/dist/manifest/manifest.types.js +56 -0
  668. package/dist/providers/claude/adapter.d.ts +3 -0
  669. package/dist/providers/claude/adapter.d.ts.map +1 -0
  670. package/dist/providers/claude/adapter.js +20 -0
  671. package/dist/providers/claude/index.d.ts +3 -0
  672. package/dist/providers/claude/index.d.ts.map +1 -0
  673. package/dist/providers/claude/index.js +2 -0
  674. package/dist/providers/claude/paths.d.ts +4 -0
  675. package/dist/providers/claude/paths.d.ts.map +1 -0
  676. package/dist/providers/claude/paths.js +38 -0
  677. package/dist/providers/claude/rule-transform.d.ts +3 -0
  678. package/dist/providers/claude/rule-transform.d.ts.map +1 -0
  679. package/dist/providers/claude/rule-transform.js +22 -0
  680. package/dist/providers/codex/adapter.d.ts +3 -0
  681. package/dist/providers/codex/adapter.d.ts.map +1 -0
  682. package/dist/providers/codex/adapter.js +20 -0
  683. package/dist/providers/codex/codec/config-merge.d.ts +17 -0
  684. package/dist/providers/codex/codec/config-merge.d.ts.map +1 -0
  685. package/dist/providers/codex/codec/config-merge.js +61 -0
  686. package/dist/providers/codex/codec/export-to-codex.d.ts +9 -0
  687. package/dist/providers/codex/codec/export-to-codex.d.ts.map +1 -0
  688. package/dist/providers/codex/codec/export-to-codex.js +45 -0
  689. package/dist/providers/codex/codec/import-from-codex.d.ts +9 -0
  690. package/dist/providers/codex/codec/import-from-codex.d.ts.map +1 -0
  691. package/dist/providers/codex/codec/import-from-codex.js +52 -0
  692. package/dist/providers/codex/codec/shared.d.ts +7 -0
  693. package/dist/providers/codex/codec/shared.d.ts.map +1 -0
  694. package/dist/providers/codex/codec/shared.js +21 -0
  695. package/dist/providers/codex/codec/sync-extension.d.ts +32 -0
  696. package/dist/providers/codex/codec/sync-extension.d.ts.map +1 -0
  697. package/dist/providers/codex/codec/sync-extension.js +227 -0
  698. package/dist/providers/codex/index.d.ts +6 -0
  699. package/dist/providers/codex/index.d.ts.map +1 -0
  700. package/dist/providers/codex/index.js +5 -0
  701. package/dist/providers/codex/paths.d.ts +4 -0
  702. package/dist/providers/codex/paths.d.ts.map +1 -0
  703. package/dist/providers/codex/paths.js +28 -0
  704. package/dist/providers/copilot/adapter.d.ts +3 -0
  705. package/dist/providers/copilot/adapter.d.ts.map +1 -0
  706. package/dist/providers/copilot/adapter.js +30 -0
  707. package/dist/providers/copilot/index.d.ts +3 -0
  708. package/dist/providers/copilot/index.d.ts.map +1 -0
  709. package/dist/providers/copilot/index.js +2 -0
  710. package/dist/providers/copilot/paths.d.ts +4 -0
  711. package/dist/providers/copilot/paths.d.ts.map +1 -0
  712. package/dist/providers/copilot/paths.js +38 -0
  713. package/dist/providers/copilot/rule-transform.d.ts +3 -0
  714. package/dist/providers/copilot/rule-transform.d.ts.map +1 -0
  715. package/dist/providers/copilot/rule-transform.js +58 -0
  716. package/dist/providers/cursor/adapter.d.ts +3 -0
  717. package/dist/providers/cursor/adapter.d.ts.map +1 -0
  718. package/dist/providers/cursor/adapter.js +20 -0
  719. package/dist/providers/cursor/index.d.ts +3 -0
  720. package/dist/providers/cursor/index.d.ts.map +1 -0
  721. package/dist/providers/cursor/index.js +2 -0
  722. package/dist/providers/cursor/paths.d.ts +4 -0
  723. package/dist/providers/cursor/paths.d.ts.map +1 -0
  724. package/dist/providers/cursor/paths.js +38 -0
  725. package/dist/providers/cursor/rule-transform.d.ts +3 -0
  726. package/dist/providers/cursor/rule-transform.d.ts.map +1 -0
  727. package/dist/providers/cursor/rule-transform.js +48 -0
  728. package/dist/providers/gemini/adapter.d.ts +3 -0
  729. package/dist/providers/gemini/adapter.d.ts.map +1 -0
  730. package/dist/providers/gemini/adapter.js +20 -0
  731. package/dist/providers/gemini/index.d.ts +3 -0
  732. package/dist/providers/gemini/index.d.ts.map +1 -0
  733. package/dist/providers/gemini/index.js +2 -0
  734. package/dist/providers/gemini/paths.d.ts +4 -0
  735. package/dist/providers/gemini/paths.d.ts.map +1 -0
  736. package/dist/providers/gemini/paths.js +28 -0
  737. package/dist/providers/shared/adapter.types.d.ts +21 -0
  738. package/dist/providers/shared/adapter.types.d.ts.map +1 -0
  739. package/dist/providers/shared/adapter.types.js +1 -0
  740. package/dist/providers/shared/adapter.utils.d.ts +12 -0
  741. package/dist/providers/shared/adapter.utils.d.ts.map +1 -0
  742. package/dist/providers/shared/adapter.utils.js +57 -0
  743. package/dist/providers/shared/agent-codec.types.d.ts +13 -0
  744. package/dist/providers/shared/agent-codec.types.d.ts.map +1 -0
  745. package/dist/providers/shared/agent-codec.types.js +1 -0
  746. package/dist/providers/shared/index.d.ts +6 -0
  747. package/dist/providers/shared/index.d.ts.map +1 -0
  748. package/dist/providers/shared/index.js +2 -0
  749. package/dist/providers/shared/markdown-agent-codec.d.ts +5 -0
  750. package/dist/providers/shared/markdown-agent-codec.d.ts.map +1 -0
  751. package/dist/providers/shared/markdown-agent-codec.js +12 -0
  752. package/dist/release/public-package-contract.d.ts +14 -0
  753. package/dist/release/public-package-contract.d.ts.map +1 -0
  754. package/dist/release/public-package-contract.js +97 -0
  755. package/dist/rules/canonical/index.d.ts +6 -0
  756. package/dist/rules/canonical/index.d.ts.map +1 -0
  757. package/dist/rules/canonical/index.js +4 -0
  758. package/dist/rules/canonical/parse.d.ts +9 -0
  759. package/dist/rules/canonical/parse.d.ts.map +1 -0
  760. package/dist/rules/canonical/parse.js +103 -0
  761. package/dist/rules/canonical/provider-filenames.d.ts +3 -0
  762. package/dist/rules/canonical/provider-filenames.d.ts.map +1 -0
  763. package/dist/rules/canonical/provider-filenames.js +13 -0
  764. package/dist/rules/canonical/render.d.ts +5 -0
  765. package/dist/rules/canonical/render.d.ts.map +1 -0
  766. package/dist/rules/canonical/render.js +32 -0
  767. package/dist/rules/canonical/types.d.ts +16 -0
  768. package/dist/rules/canonical/types.d.ts.map +1 -0
  769. package/dist/rules/canonical/types.js +6 -0
  770. package/dist/shared/index.d.ts +3 -0
  771. package/dist/shared/index.d.ts.map +1 -0
  772. package/dist/shared/index.js +1 -0
  773. package/dist/shared/types.d.ts +10 -0
  774. package/dist/shared/types.d.ts.map +1 -0
  775. package/dist/shared/types.js +14 -0
  776. package/dist/ui/ansi.d.ts +2 -0
  777. package/dist/ui/ansi.d.ts.map +1 -0
  778. package/dist/ui/ansi.js +19 -0
  779. package/dist/ui/index.d.ts +7 -0
  780. package/dist/ui/index.d.ts.map +1 -0
  781. package/dist/ui/index.js +3 -0
  782. package/dist/ui/logger.d.ts +15 -0
  783. package/dist/ui/logger.d.ts.map +1 -0
  784. package/dist/ui/logger.js +52 -0
  785. package/dist/ui/output.d.ts +16 -0
  786. package/dist/ui/output.d.ts.map +1 -0
  787. package/dist/ui/output.js +135 -0
  788. package/dist/ui/spinner.d.ts +16 -0
  789. package/dist/ui/spinner.d.ts.map +1 -0
  790. package/dist/ui/spinner.js +46 -0
  791. package/dist/validation/index.d.ts +3 -0
  792. package/dist/validation/index.d.ts.map +1 -0
  793. package/dist/validation/index.js +1 -0
  794. package/dist/validation/skills.d.ts +10 -0
  795. package/dist/validation/skills.d.ts.map +1 -0
  796. package/dist/validation/skills.js +166 -0
  797. package/package.json +62 -0
@@ -0,0 +1,354 @@
1
+ ---
2
+ name: oat-project-pr-progress
3
+ version: 1.2.0
4
+ description: Use when an active OAT project needs a mid-project PR for a completed phase (pNN). Generates a phase-scoped progress PR description from OAT artifacts and commit history, with optional PR creation.
5
+ disable-model-invocation: true
6
+ user-invocable: true
7
+ allowed-tools: Read, Write, Bash(git:*), Glob, Grep, AskUserQuestion
8
+ ---
9
+
10
+ # Progress PR
11
+
12
+ Create a progress PR description (typically at a plan phase boundary) and write it to disk.
13
+
14
+ ## Purpose
15
+
16
+ Generate a PR-ready summary that is:
17
+
18
+ - grounded in OAT artifacts (mode-aware: spec-driven uses spec/design; quick/import may use discovery/import reference)
19
+ - scoped to a specific phase (pNN) or an explicit git range
20
+ - easy to paste into GitHub (or used with `gh pr create` if desired)
21
+
22
+ ## Prerequisites
23
+
24
+ **Required:**
25
+
26
+ - `activeProject` in `.oat/config.local.json` points at an active project directory (or you can provide project name when prompted)
27
+ - `{PROJECT_PATH}/plan.md` exists
28
+
29
+ **Recommended:**
30
+
31
+ - Phase code review is `passed` in `plan.md` `## Reviews` before opening a progress PR.
32
+
33
+ ## Mode Assertion
34
+
35
+ **OAT MODE: PR (Progress)**
36
+
37
+ **Purpose:** Create PR description and (optionally) open a PR.
38
+
39
+ ## Progress Indicators (User-Facing)
40
+
41
+ When executing this skill, provide lightweight progress feedback so the user can tell what’s happening after they confirm.
42
+
43
+ - Print a phase banner once at start using horizontal separators, e.g.:
44
+
45
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
46
+ OAT ▸ PR PROGRESS
47
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
48
+
49
+ - Before multi-step work (scoping, reading artifacts, writing output), print 2–5 short step indicators, e.g.:
50
+ - `[1/5] Preflighting review artifacts…`
51
+ - `[2/5] Resolving scope…`
52
+ - `[3/5] Reading OAT artifacts…`
53
+ - `[4/5] Collecting git context…`
54
+ - `[5/5] Writing PR description…`
55
+ - For long-running operations (git logs/diffs on large ranges), print a start line and a completion line (duration optional).
56
+ - Keep it concise; don’t print a line for every shell command.
57
+
58
+ **BLOCKED Activities:**
59
+
60
+ - No implementation work
61
+ - No changing requirements/design/plan
62
+
63
+ **ALLOWED Activities:**
64
+
65
+ - Reading artifacts and git history
66
+ - Writing PR description file
67
+ - Running `gh pr create` (optional, user-confirmed)
68
+
69
+ ## Usage
70
+
71
+ ### With arguments (if supported)
72
+
73
+ ```
74
+ oat-project-pr-progress p02 # progress PR for phase p02
75
+ oat-project-pr-progress range=abc..def # progress PR for explicit range
76
+ oat-project-pr-progress base_sha=abc123 # progress PR for abc123..HEAD
77
+ ```
78
+
79
+ ### Without arguments
80
+
81
+ Run the `oat-project-pr-progress` skill and it will ask:
82
+
83
+ - which phase (pNN) or range to scope to
84
+ - PR title + base branch (resolved from: explicit `base=` arg → `git.defaultBranch` in `.oat/config.json` → `git rev-parse --abbrev-ref origin/HEAD` → fallback `main`)
85
+
86
+ ## Process
87
+
88
+ ### Step 0: Resolve Active Project
89
+
90
+ OAT stores active project context in `.oat/config.local.json` (`activeProject`, local-only).
91
+
92
+ ```bash
93
+ PROJECT_PATH=$(oat config get activeProject 2>/dev/null || true)
94
+ PROJECTS_ROOT="${OAT_PROJECTS_ROOT:-$(oat config get projects.root 2>/dev/null || echo ".oat/projects/shared")}"
95
+ PROJECTS_ROOT="${PROJECTS_ROOT%/}"
96
+ ```
97
+
98
+ If missing/invalid:
99
+
100
+ - Ask the user for `{project-name}`
101
+ - Set `PROJECT_PATH` to `${PROJECTS_ROOT}/{project-name}`
102
+ - Write it:
103
+ ```bash
104
+ mkdir -p .oat
105
+ oat config set activeProject "$PROJECT_PATH"
106
+ ```
107
+
108
+ ### Step 0.5: Archive Residual Active Review Artifacts
109
+
110
+ Before generating the PR, detect any leftover active review artifacts in the top level of `"$PROJECT_PATH/reviews/"`:
111
+
112
+ ```bash
113
+ find "$PROJECT_PATH/reviews" -maxdepth 1 -type f -name "*.md" 2>/dev/null
114
+ ```
115
+
116
+ If any active review artifacts exist:
117
+
118
+ 1. Create `"$PROJECT_PATH/reviews/archived"` if needed.
119
+ 2. For each active review file, rewrite any references touched during this preflight so they point to `reviews/archived/{filename}.md` instead of `reviews/{filename}.md`. At minimum, check:
120
+ - `"$PROJECT_PATH/plan.md"`
121
+ - `"$PROJECT_PATH/implementation.md"`
122
+ - `"$PROJECT_PATH/state.md"`
123
+ 3. Move the review artifact into `reviews/archived/`, adding a timestamp suffix if the archive target already exists.
124
+ 4. Report the archived paths before continuing.
125
+
126
+ Rules:
127
+
128
+ - Only archive top-level active review artifacts. Leave `reviews/archived/` untouched.
129
+ - This preflight is bookkeeping only; do not change review statuses unless a rewritten artifact path requires it.
130
+
131
+ ### Step 1: Determine Scope (Phase or Range)
132
+
133
+ Parse args if provided (otherwise prompt):
134
+
135
+ - `pNN` (preferred for progress PRs)
136
+ - `range=<sha1>..<sha2>`
137
+ - `base_sha=<sha>` (meaning `<sha>..HEAD`)
138
+
139
+ If scope is `pNN`, gather commits via commit convention grep:
140
+
141
+ ```bash
142
+ PHASE="p02" # example
143
+ git log --oneline --grep="\\(${PHASE}-" HEAD~500..HEAD
144
+ ```
145
+
146
+ If the grep returns no commits:
147
+
148
+ - Tell user commit conventions are missing/inconsistent for this phase
149
+ - Ask user to provide:
150
+ - `base_sha=<sha>` or `range=<sha1>..<sha2>`
151
+ - or confirm a broad range (merge-base..HEAD)
152
+
153
+ If scope is `range`/`base_sha`, set:
154
+
155
+ - `SCOPE_RANGE` to the range string (e.g., `abc..HEAD`)
156
+
157
+ ### Step 2: Load Artifacts (Mode-Aware)
158
+
159
+ Resolve workflow mode from `state.md` (default `spec-driven`):
160
+
161
+ ```bash
162
+ WORKFLOW_MODE=$(grep "^oat_workflow_mode:" "$PROJECT_PATH/state.md" 2>/dev/null | head -1 | awk '{print $2}')
163
+ WORKFLOW_MODE=${WORKFLOW_MODE:-spec-driven}
164
+ ```
165
+
166
+ Read (as available):
167
+
168
+ - `{PROJECT_PATH}/spec.md`
169
+ - `{PROJECT_PATH}/design.md`
170
+ - `{PROJECT_PATH}/plan.md`
171
+ - `{PROJECT_PATH}/implementation.md` (if exists)
172
+ - `{PROJECT_PATH}/discovery.md` (recommended for quick mode)
173
+ - `{PROJECT_PATH}/references/imported-plan.md` (recommended for import mode)
174
+
175
+ If `WORKFLOW_MODE != spec-driven` and spec/design are missing:
176
+
177
+ - continue (do not block)
178
+ - include an explicit note in PR summary that spec-driven requirements/design artifacts are absent for this scope
179
+
180
+ ### Step 3: Check Review Status (Recommended)
181
+
182
+ If scope is `pNN`, check `plan.md` `## Reviews` table row:
183
+
184
+ - If `| pNN | code | passed | ...` exists: good
185
+ - Otherwise: warn that review has not been marked `passed` for this phase (e.g., it may be `received`, `fixes_added`, or `fixes_completed` pending re-review)
186
+
187
+ Do not block PR generation; this is a progress PR.
188
+
189
+ ### Step 4: Collect Scope Data
190
+
191
+ Produce:
192
+
193
+ - commit list (for `pNN` grep or `SCOPE_RANGE`)
194
+ - changed files (best-effort)
195
+
196
+ For `SCOPE_RANGE`:
197
+
198
+ ```bash
199
+ git log --oneline "$SCOPE_RANGE"
200
+ git diff --name-only "$SCOPE_RANGE"
201
+ git diff --shortstat "$SCOPE_RANGE"
202
+ ```
203
+
204
+ For `pNN` (no reliable contiguous range):
205
+
206
+ - include the commit list from grep
207
+ - optionally include file lists per commit (only if needed; can be large)
208
+
209
+ ### Step 5: Write PR Description Artifact
210
+
211
+ Write to:
212
+
213
+ - `{PROJECT_PATH}/pr/progress-{scope}-YYYY-MM-DD.md`
214
+
215
+ ```bash
216
+ mkdir -p "$PROJECT_PATH/pr"
217
+ ```
218
+
219
+ Frontmatter policy:
220
+
221
+ - Keep YAML frontmatter in the local artifact file for OAT metadata and traceability.
222
+ - Do **not** include YAML frontmatter in the PR body submitted to GitHub.
223
+
224
+ Reference links policy:
225
+
226
+ - Prefer clickable blob links to the current branch for References.
227
+ - Build links from `origin` + current branch when possible.
228
+ - If remote URL cannot be resolved into a web URL, fall back to plain relative paths.
229
+
230
+ Local path exclusion:
231
+
232
+ - Read `.oat/config.json` and extract `localPaths` (glob patterns for gitignored directories).
233
+ - Do **not** include References links to any path that matches a `localPaths` pattern — those paths are gitignored and will not exist on the remote.
234
+ - Common matches: `.oat/projects/**/reviews/archived`, `.oat/projects/**/pr`. Active `reviews/` paths remain eligible for References when they are tracked; only archived review paths should be treated as local-only by default.
235
+
236
+ Example link context:
237
+
238
+ ```bash
239
+ ORIGIN_URL=$(git remote get-url origin 2>/dev/null || echo "")
240
+ BRANCH=$(git rev-parse --abbrev-ref HEAD)
241
+ PROJECT_REL="${PROJECT_PATH#./}"
242
+
243
+ REPO_WEB=""
244
+ case "$ORIGIN_URL" in
245
+ git@github.com:*) REPO_WEB="https://github.com/${ORIGIN_URL#git@github.com:}" ;;
246
+ https://github.com/*) REPO_WEB="$ORIGIN_URL" ;;
247
+ esac
248
+ REPO_WEB="${REPO_WEB%.git}"
249
+ ```
250
+
251
+ Recommended template:
252
+
253
+ ```markdown
254
+ ---
255
+ oat_generated: true
256
+ oat_generated_at: YYYY-MM-DD
257
+ oat_pr_type: progress
258
+ oat_pr_scope: { pNN|range }
259
+ oat_project: { PROJECT_PATH }
260
+ ---
261
+
262
+ # {project-name} ({scope})
263
+
264
+ ## Summary
265
+
266
+ {1-3 sentence summary of what this phase delivered}
267
+
268
+ ## Goals / Non-Goals
269
+
270
+ {goals addressed by this phase, from available requirement artifacts: spec in spec-driven mode, discovery/import reference in quick/import mode}
271
+
272
+ ## Changes
273
+
274
+ - Project: `{PROJECT_PATH}`
275
+ - Scope: `{scope}`
276
+ - Commits:
277
+ {bulleted list}
278
+
279
+ ## Verification
280
+
281
+ - Tests: {what was run / expected}
282
+ - Lint/Types/Build: {what was run / expected}
283
+
284
+ ## Reviews
285
+
286
+ {phase review row from plan.md Reviews table, if available}
287
+
288
+ ## References
289
+
290
+ Only include links to artifacts that actually exist in the project. Omit any that are absent.
291
+
292
+ - Spec: `[spec.md]({REPO_WEB}/blob/{BRANCH}/{PROJECT_REL}/spec.md)`
293
+ - Design: `[design.md]({REPO_WEB}/blob/{BRANCH}/{PROJECT_REL}/design.md)`
294
+ - Plan: `[plan.md]({REPO_WEB}/blob/{BRANCH}/{PROJECT_REL}/plan.md)` (fallback: `{PROJECT_PATH}/plan.md`)
295
+ - Implementation: `[implementation.md]({REPO_WEB}/blob/{BRANCH}/{PROJECT_REL}/implementation.md)` (fallback: `{PROJECT_PATH}/implementation.md`)
296
+ - Discovery: `[discovery.md]({REPO_WEB}/blob/{BRANCH}/{PROJECT_REL}/discovery.md)`
297
+ - Imported Source: `[references/imported-plan.md]({REPO_WEB}/blob/{BRANCH}/{PROJECT_REL}/references/imported-plan.md)`
298
+ - Reviews: `[reviews/]({REPO_WEB}/tree/{BRANCH}/{PROJECT_REL}/reviews)` (fallback: `{PROJECT_PATH}/reviews/`) — include when active `reviews/` is tracked; omit archived review paths and any target that still matches a `localPaths` pattern
299
+ ```
300
+
301
+ ### Step 6: Optional - Open PR
302
+
303
+ Ask the user:
304
+
305
+ ```
306
+ PR description written to {path}.
307
+
308
+ Do you want to open a PR now?
309
+ 1) Yes (use gh CLI if available)
310
+ 2) No (I will open manually)
311
+ ```
312
+
313
+ If user chooses (1), provide best-effort guidance:
314
+
315
+ - Strip YAML frontmatter from the local artifact into a temporary body file:
316
+ ```bash
317
+ BODY_FILE="{path}"
318
+ TMP_BODY="$(mktemp -t oat-pr-body.XXXXXX.md)"
319
+ awk 'NR==1 && $0=="---" {infm=1; next} infm && $0=="---" {infm=0; next} !infm {print}' "$BODY_FILE" > "$TMP_BODY"
320
+ ```
321
+ - Resolve the base branch:
322
+
323
+ ```bash
324
+ # Resolution chain: explicit arg > OAT config > git remote > fallback
325
+ BASE_BRANCH="{base_arg if provided}"
326
+ if [ -z "$BASE_BRANCH" ]; then
327
+ BASE_BRANCH=$(oat config get git.defaultBranch 2>/dev/null || true)
328
+ fi
329
+ if [ -z "$BASE_BRANCH" ]; then
330
+ BASE_BRANCH=$(git rev-parse --abbrev-ref origin/HEAD 2>/dev/null | sed 's|origin/||' || true)
331
+ fi
332
+ BASE_BRANCH="${BASE_BRANCH:-main}"
333
+ ```
334
+
335
+ - Use the stripped body file with `gh`:
336
+
337
+ ```bash
338
+ git push -u origin "$(git rev-parse --abbrev-ref HEAD)"
339
+ gh pr create --base "$BASE_BRANCH" --title "{title}" --body-file "$TMP_BODY"
340
+ ```
341
+
342
+ - Optionally clean up temp file:
343
+ ```bash
344
+ rm -f "$TMP_BODY"
345
+ ```
346
+
347
+ Do not assume `gh` is installed; if missing, instruct manual PR creation using the file contents and note the resolved base branch.
348
+
349
+ ## Success Criteria
350
+
351
+ - Residual active review artifacts are archived before PR generation continues
352
+ - Scope determined (phase or explicit range)
353
+ - PR description artifact written to `{PROJECT_PATH}/pr/`
354
+ - User has clear next step to open PR (manual or gh)
@@ -0,0 +1,342 @@
1
+ ---
2
+ name: oat-project-progress
3
+ version: 1.2.0
4
+ description: Use when resuming work, checking status, or unsure which OAT skill to run next. Evaluates project progress and routes to the appropriate next step.
5
+ disable-model-invocation: true
6
+ user-invocable: true
7
+ allowed-tools: Read, Glob, Grep, Bash(git:*), AskUserQuestion
8
+ ---
9
+
10
+ # Progress Router
11
+
12
+ Check knowledge base status, project progress, and get recommendations for next steps.
13
+
14
+ ## Progress Indicators (User-Facing)
15
+
16
+ When executing this skill, provide lightweight progress feedback so the user can tell what’s happening after they confirm.
17
+
18
+ - Print a phase banner once at start using horizontal separators, e.g.:
19
+
20
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
21
+ OAT ▸ PROGRESS
22
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
23
+
24
+ - Before multi-step work, print step indicators, e.g.:
25
+ - `[1/4] Checking knowledge base…`
26
+ - `[2/4] Scanning project status…`
27
+ - `[3/4] Determining next steps…`
28
+ - `[4/4] Refreshing dashboard…`
29
+
30
+ ## Usage
31
+
32
+ Run `oat-project-progress` at any time to:
33
+
34
+ - Check if knowledge base exists and is fresh
35
+ - See current project status
36
+ - Get recommended next skill
37
+
38
+ ## Process
39
+
40
+ ### Step 1: Check Knowledge Base Exists
41
+
42
+ ```bash
43
+ EXISTING_MD=$(find .oat/repo/knowledge -name "*.md" -type f 2>/dev/null | head -1)
44
+ ```
45
+
46
+ **If `$EXISTING_MD` is empty:**
47
+
48
+ ```
49
+ ⚠️ No knowledge base found.
50
+
51
+ Run the oat-repo-knowledge-index skill first to generate codebase analysis.
52
+ ```
53
+
54
+ **Exit here.**
55
+
56
+ ### Step 2: Check Knowledge Staleness
57
+
58
+ Extract frontmatter from `.oat/repo/knowledge/project-index.md`:
59
+
60
+ ```bash
61
+ SOURCE_MERGE_BASE_SHA=$(grep "^oat_source_main_merge_base_sha:" .oat/repo/knowledge/project-index.md | awk '{print $2}')
62
+ GENERATED_AT=$(grep "^oat_generated_at:" .oat/repo/knowledge/project-index.md | awk '{print $2}')
63
+ ```
64
+
65
+ **Calculate staleness:**
66
+
67
+ 1. **Age check:**
68
+
69
+ ```bash
70
+ # Skip if date is missing or invalid
71
+ if [ -n "$GENERATED_AT" ] && echo "$GENERATED_AT" | grep -qE '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'; then
72
+ if date -j -f "%Y-%m-%d" "$GENERATED_AT" +%s >/dev/null 2>&1; then
73
+ GENERATED_TS=$(date -j -f "%Y-%m-%d" "$GENERATED_AT" +%s)
74
+ else
75
+ GENERATED_TS=$(date -d "$GENERATED_AT" +%s 2>/dev/null || echo "")
76
+ fi
77
+ if [ -n "$GENERATED_TS" ]; then
78
+ DAYS_OLD=$(( ($(date +%s) - $GENERATED_TS) / 86400 ))
79
+ fi
80
+ fi
81
+ ```
82
+
83
+ 2. **Git diff check:**
84
+
85
+ ```bash
86
+ if [ -n "$SOURCE_MERGE_BASE_SHA" ]; then
87
+ FILES_CHANGED=$(git diff --numstat "$SOURCE_MERGE_BASE_SHA..HEAD" 2>/dev/null | wc -l | tr -d ' ')
88
+ CHANGES_SUMMARY=$(git diff --shortstat "$SOURCE_MERGE_BASE_SHA..HEAD" 2>/dev/null)
89
+ fi
90
+ ```
91
+
92
+ **Staleness thresholds:**
93
+
94
+ - Age: >7 days old
95
+ - Changes: >20 files changed
96
+
97
+ **If stale:**
98
+
99
+ ```
100
+ ⚠️ Knowledge base may be stale.
101
+
102
+ Generated: {GENERATED_AT} ({DAYS_OLD} days ago)
103
+ Changes since: {FILES_CHANGED} files changed
104
+ {CHANGES_SUMMARY}
105
+
106
+ Consider running the oat-repo-knowledge-index skill to refresh.
107
+ ```
108
+
109
+ ### Step 3: List Projects (Highlight Active Project)
110
+
111
+ OAT stores active project context in `.oat/config.local.json` (`activeProject`, local-only).
112
+
113
+ ```bash
114
+ ACTIVE_PROJECT_PATH=$(oat config get activeProject 2>/dev/null || true)
115
+ PROJECTS_ROOT="${OAT_PROJECTS_ROOT:-$(oat config get projects.root 2>/dev/null || echo ".oat/projects/shared")}"
116
+ PROJECTS_ROOT="${PROJECTS_ROOT%/}"
117
+ ```
118
+
119
+ **If `ACTIVE_PROJECT_PATH` is set and valid (directory exists):**
120
+
121
+ ```
122
+ Active Project: {basename(ACTIVE_PROJECT_PATH)} ({ACTIVE_PROJECT_PATH})
123
+ ```
124
+
125
+ **If `ACTIVE_PROJECT_PATH` is missing/invalid:** show:
126
+
127
+ ```
128
+ Active Project: (not set)
129
+ ```
130
+
131
+ ```bash
132
+ ls -d "$PROJECTS_ROOT"/*/ 2>/dev/null
133
+ ```
134
+
135
+ **If no projects:**
136
+
137
+ ```
138
+ No active projects.
139
+
140
+ Start a new project:
141
+ oat-project-new - Create a spec-driven project scaffold
142
+ oat-project-quick-start - Start a quick workflow project
143
+ oat-project-import-plan - Import an external markdown plan into OAT
144
+ ```
145
+
146
+ **Continue to Step 6 (show available skills).**
147
+
148
+ ### Step 4: For Each Project, Show Status
149
+
150
+ Read `{project}/state.md` frontmatter:
151
+
152
+ - `oat_phase` - Current phase
153
+ - `oat_phase_status` - in_progress or complete
154
+ - `oat_workflow_mode` - spec-driven | quick | import
155
+ - `oat_blockers` - Any blockers
156
+ - `oat_hill_checkpoints` - Configured gates (e.g., `["discovery", "spec", "design"]`)
157
+ - `oat_hill_completed` - Completed HiLL checkpoints
158
+
159
+ **Display format:**
160
+
161
+ ```
162
+ 📁 {project-name}
163
+ Active: {yes/no}
164
+ Mode: {oat_workflow_mode}
165
+ Phase: {oat_phase} ({oat_phase_status})
166
+ HiLL Gates: {oat_hill_checkpoints}
167
+ Completed: {oat_hill_completed as checkmarks}
168
+ HiLL Pending: {yes/no for current phase}
169
+ Blockers: {oat_blockers or "None"}
170
+ Next: {recommended_skill}
171
+ ```
172
+
173
+ ### Step 5: Determine Next Skill
174
+
175
+ Based on project state, recommend next action.
176
+
177
+ Read `oat_workflow_mode` from `state.md` frontmatter:
178
+
179
+ - `spec-driven` (default if missing)
180
+ - `quick`
181
+ - `import`
182
+
183
+ Read `oat_execution_mode` from `state.md` frontmatter:
184
+
185
+ - `single-thread` (default if missing)
186
+ - `subagent-driven`
187
+
188
+ **HiLL override (apply before phase routing):**
189
+
190
+ - If current `oat_phase` is listed in `oat_hill_checkpoints` **and** not listed in `oat_hill_completed`, the phase's HiLL gate is still pending.
191
+ - In that case, do **not** advance to the next phase even if `oat_phase_status: complete`.
192
+ - Recommend continuing the current phase skill to capture explicit approval:
193
+ - discovery gate pending -> `oat-project-discover`
194
+ - spec gate pending -> `oat-project-spec`
195
+ - design gate pending -> `oat-project-design`
196
+
197
+ **Drift detection (apply before routing `implement | in_progress`):**
198
+
199
+ When `oat_phase: implement` and `oat_phase_status: in_progress`, check for artifact drift before recommending next skill:
200
+
201
+ ```bash
202
+ # Use the project path from Step 4's per-project loop (or ACTIVE_PROJECT_PATH for single-project)
203
+ # Count planned tasks
204
+ PLAN_TASKS=$(grep -cE '^### Task p[0-9]+-t[0-9]+:' "$ACTIVE_PROJECT_PATH/plan.md" 2>/dev/null || echo 0)
205
+
206
+ # Count completed tasks in implementation.md
207
+ IMPL_COMPLETED=$(grep -cE '^\*\*Status:\*\* completed' "$ACTIVE_PROJECT_PATH/implementation.md" 2>/dev/null || echo 0)
208
+
209
+ # Check for commits since last tracked SHA
210
+ LAST_SHA=$(grep "^oat_last_commit:" "$ACTIVE_PROJECT_PATH/state.md" 2>/dev/null | awk '{print $2}')
211
+ if [ -n "$LAST_SHA" ]; then
212
+ UNTRACKED_COMMITS=$(git rev-list --count "$LAST_SHA"..HEAD 2>/dev/null || echo 0)
213
+ else
214
+ UNTRACKED_COMMITS=0
215
+ fi
216
+ ```
217
+
218
+ **Drift indicators (any one is sufficient):**
219
+
220
+ - `PLAN_TASKS` > `IMPL_COMPLETED` and `UNTRACKED_COMMITS` > 0 (plan has more tasks than completed entries, and there are untracked commits — most direct signal)
221
+ - `IMPL_COMPLETED` < number of task-convention commits on branch (tasks implemented but not logged)
222
+ - `UNTRACKED_COMMITS` > 3 and `oat_current_task_id` is null or stale
223
+ - Commits exist that match `feat(pNN-tNN):` pattern but lack corresponding completed entries in `implementation.md`
224
+
225
+ If drift is detected, recommend `oat-project-reconcile` alongside the normal implementation skill.
226
+
227
+ Routing matrix by mode:
228
+
229
+ **Spec-Driven mode (`oat_workflow_mode: spec-driven`):**
230
+
231
+ | oat_phase | oat_phase_status | Next Skill |
232
+ | --------- | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
233
+ | discovery | in_progress | Continue `oat-project-discover` |
234
+ | discovery | complete | `oat-project-spec` |
235
+ | spec | in_progress | Continue `oat-project-spec` |
236
+ | spec | complete | `oat-project-design` |
237
+ | design | in_progress | Continue `oat-project-design` |
238
+ | design | complete | `oat-project-plan` |
239
+ | plan | in_progress | Continue `oat-project-plan` |
240
+ | plan | complete | `oat-project-subagent-implement` when `oat_execution_mode: subagent-driven`, otherwise `oat-project-implement` |
241
+ | implement | in_progress | Continue `oat-project-subagent-implement` when `oat_execution_mode: subagent-driven`, otherwise `oat-project-implement`. If artifacts appear out of sync with recent commits (e.g., `implementation.md` has fewer completed tasks than commits suggest), also mention `oat-project-reconcile` as an option. |
242
+ | implement | complete | Ready for final review / PR |
243
+
244
+ **Quick mode (`oat_workflow_mode: quick`):**
245
+
246
+ | oat_phase | oat_phase_status | Next Skill |
247
+ | --------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
248
+ | discovery | in_progress | Continue `oat-project-discover` |
249
+ | discovery | complete | `oat-project-plan` |
250
+ | plan | in_progress | Continue `oat-project-plan` |
251
+ | plan | complete | `oat-project-subagent-implement` when `oat_execution_mode: subagent-driven`, otherwise `oat-project-implement` |
252
+ | implement | in_progress | Continue `oat-project-subagent-implement` when `oat_execution_mode: subagent-driven`, otherwise `oat-project-implement`. If drift detected (see drift detection above), also mention `oat-project-reconcile` as an option. |
253
+ | implement | complete | Ready for final review / PR |
254
+
255
+ **Import mode (`oat_workflow_mode: import`):**
256
+
257
+ | oat_phase | oat_phase_status | Next Skill |
258
+ | --------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
259
+ | plan | in_progress | Continue `oat-project-import-plan` |
260
+ | plan | complete | `oat-project-subagent-implement` when `oat_execution_mode: subagent-driven`, otherwise `oat-project-implement` |
261
+ | implement | in_progress | Continue `oat-project-subagent-implement` when `oat_execution_mode: subagent-driven`, otherwise `oat-project-implement`. If drift detected (see drift detection above), also mention `oat-project-reconcile` as an option. |
262
+ | implement | complete | Ready for final review / PR |
263
+
264
+ **If blockers exist:**
265
+
266
+ ```
267
+ ⚠️ Blocker: {blocker description}
268
+
269
+ Address blocker before continuing.
270
+ ```
271
+
272
+ Execution-mode note:
273
+
274
+ - Keep `oat_ready_for` in `plan.md` canonical (`oat-project-implement`).
275
+ - Runtime routing at plan completion is controlled by `oat_execution_mode` in `state.md`.
276
+
277
+ ### Step 6: Show Available Skills
278
+
279
+ ```
280
+ OAT Workflow Skills:
281
+
282
+ Knowledge:
283
+ oat-repo-knowledge-index - Generate/refresh codebase knowledge base
284
+
285
+ Workflow:
286
+ oat-project-quick-start - Start a quick workflow (discover -> plan -> implement)
287
+ oat-project-import-plan - Import an external markdown plan and normalize plan.md
288
+ oat-project-promote-spec-driven - Promote quick/import project to spec-driven lifecycle
289
+ oat-project-discover - Start discovery phase (requirements gathering)
290
+ oat-project-spec - Create specification from discovery
291
+ oat-project-design - Create technical design from spec
292
+ oat-project-plan - Create implementation plan from design (spec-driven mode)
293
+ oat-project-implement - Execute implementation plan
294
+ oat-project-subagent-implement - Execute implementation plan with subagent orchestration
295
+ oat-project-reconcile - Reconcile manual/human commits with plan tasks
296
+
297
+ Status:
298
+ oat-project-progress - Check project progress (this skill)
299
+ oat-project-next - Continue working — routes to the correct next skill automatically
300
+
301
+ Reviews:
302
+ oat-project-review-provide - Request a fresh-context code/artifact review (writes review artifact)
303
+ oat-project-review-receive - Convert review findings into plan tasks (gap closure)
304
+
305
+ PRs:
306
+ oat-project-pr-progress - Create a progress PR description (phase-scoped)
307
+ oat-project-pr-final - Create the final project PR description (after final review)
308
+ ```
309
+
310
+ ### Step 7: Output Summary
311
+
312
+ Combine all information:
313
+
314
+ ```
315
+ OAT Progress Report
316
+ ===================
317
+
318
+ Knowledge Base:
319
+ Status: {✓ Fresh / ⚠️ Stale / ❌ Missing}
320
+ Generated: {date}
321
+ Changes since: {N} files
322
+
323
+ Active Projects:
324
+ {project summaries}
325
+
326
+ Next Step: {recommendation}
327
+ ```
328
+
329
+ ### Step 8: Regenerate Dashboard
330
+
331
+ After all progress checks, regenerate the repo state dashboard:
332
+
333
+ ```bash
334
+ oat state refresh
335
+ ```
336
+
337
+ ## Success Criteria
338
+
339
+ - Knowledge base status clearly shown
340
+ - All active projects listed with status
341
+ - Clear next-step recommendations
342
+ - Blockers highlighted prominently