openplanr 2.2641.0 → 2.2641.2

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 (583) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +14 -14
  3. package/bin/openplanr.js +13 -0
  4. package/bin/planr.js +5 -11
  5. package/dist/cli/commands/artifact.d.ts.map +1 -1
  6. package/dist/cli/commands/artifact.js +6 -5
  7. package/dist/cli/commands/artifact.js.map +1 -1
  8. package/dist/cli/commands/checklist.d.ts.map +1 -1
  9. package/dist/cli/commands/checklist.js +4 -3
  10. package/dist/cli/commands/checklist.js.map +1 -1
  11. package/dist/cli/commands/company.d.ts.map +1 -1
  12. package/dist/cli/commands/company.js +3 -2
  13. package/dist/cli/commands/company.js.map +1 -1
  14. package/dist/cli/commands/context.d.ts +1 -1
  15. package/dist/cli/commands/context.js +1 -1
  16. package/dist/cli/commands/doctor.d.ts.map +1 -1
  17. package/dist/cli/commands/doctor.js +11 -5
  18. package/dist/cli/commands/doctor.js.map +1 -1
  19. package/dist/cli/commands/export.d.ts +1 -1
  20. package/dist/cli/commands/export.js +1 -1
  21. package/dist/cli/commands/github.d.ts +1 -1
  22. package/dist/cli/commands/github.d.ts.map +1 -1
  23. package/dist/cli/commands/github.js +16 -18
  24. package/dist/cli/commands/github.js.map +1 -1
  25. package/dist/cli/commands/init-deterministic.d.ts.map +1 -1
  26. package/dist/cli/commands/init-deterministic.js +2 -1
  27. package/dist/cli/commands/init-deterministic.js.map +1 -1
  28. package/dist/cli/commands/linear.d.ts +2 -2
  29. package/dist/cli/commands/linear.d.ts.map +1 -1
  30. package/dist/cli/commands/linear.js +29 -28
  31. package/dist/cli/commands/linear.js.map +1 -1
  32. package/dist/cli/commands/operate/registrars/index.d.ts +1 -1
  33. package/dist/cli/commands/operate/registrars/index.d.ts.map +1 -1
  34. package/dist/cli/commands/operate/registrars/index.js +1 -1
  35. package/dist/cli/commands/operate/registrars/index.js.map +1 -1
  36. package/dist/cli/commands/operate/render.d.ts.map +1 -1
  37. package/dist/cli/commands/operate/render.js +2 -1
  38. package/dist/cli/commands/operate/render.js.map +1 -1
  39. package/dist/cli/commands/operate.d.ts.map +1 -1
  40. package/dist/cli/commands/operate.js +2 -1
  41. package/dist/cli/commands/operate.js.map +1 -1
  42. package/dist/cli/commands/planning-artifacts.d.ts.map +1 -1
  43. package/dist/cli/commands/planning-artifacts.js +2 -1
  44. package/dist/cli/commands/planning-artifacts.js.map +1 -1
  45. package/dist/cli/commands/quick/interaction.d.ts +1 -1
  46. package/dist/cli/commands/quick/interaction.d.ts.map +1 -1
  47. package/dist/cli/commands/quick/interaction.js +1 -1
  48. package/dist/cli/commands/quick/interaction.js.map +1 -1
  49. package/dist/cli/commands/quick/project.d.ts +1 -1
  50. package/dist/cli/commands/quick/project.d.ts.map +1 -1
  51. package/dist/cli/commands/quick/project.js +1 -1
  52. package/dist/cli/commands/quick/project.js.map +1 -1
  53. package/dist/cli/commands/report-linter.d.ts +1 -1
  54. package/dist/cli/commands/report-linter.js +1 -1
  55. package/dist/cli/commands/report.d.ts +1 -1
  56. package/dist/cli/commands/report.d.ts.map +1 -1
  57. package/dist/cli/commands/report.js +32 -35
  58. package/dist/cli/commands/report.js.map +1 -1
  59. package/dist/cli/commands/setup.d.ts.map +1 -1
  60. package/dist/cli/commands/setup.js +5 -4
  61. package/dist/cli/commands/setup.js.map +1 -1
  62. package/dist/cli/commands/spec.d.ts +11 -11
  63. package/dist/cli/commands/spec.d.ts.map +1 -1
  64. package/dist/cli/commands/spec.js +34 -33
  65. package/dist/cli/commands/spec.js.map +1 -1
  66. package/dist/cli/commands/sprint-refinement.d.ts.map +1 -1
  67. package/dist/cli/commands/sprint-refinement.js +2 -1
  68. package/dist/cli/commands/sprint-refinement.js.map +1 -1
  69. package/dist/cli/commands/status.d.ts.map +1 -1
  70. package/dist/cli/commands/status.js +2 -1
  71. package/dist/cli/commands/status.js.map +1 -1
  72. package/dist/cli/commands/story/interaction.d.ts +1 -1
  73. package/dist/cli/commands/story/interaction.d.ts.map +1 -1
  74. package/dist/cli/commands/story/interaction.js +1 -1
  75. package/dist/cli/commands/story/interaction.js.map +1 -1
  76. package/dist/cli/commands/story/project.d.ts +1 -1
  77. package/dist/cli/commands/story/project.d.ts.map +1 -1
  78. package/dist/cli/commands/story/project.js +1 -1
  79. package/dist/cli/commands/story/project.js.map +1 -1
  80. package/dist/cli/commands/sync.d.ts +1 -1
  81. package/dist/cli/commands/sync.d.ts.map +1 -1
  82. package/dist/cli/commands/sync.js +3 -2
  83. package/dist/cli/commands/sync.js.map +1 -1
  84. package/dist/cli/commands/template.d.ts +1 -1
  85. package/dist/cli/commands/template.js +10 -10
  86. package/dist/cli/commands/template.js.map +1 -1
  87. package/dist/cli/commands/update.d.ts +1 -1
  88. package/dist/cli/commands/update.js +1 -1
  89. package/dist/cli/commands/upgrade.d.ts +1 -1
  90. package/dist/cli/commands/upgrade.d.ts.map +1 -1
  91. package/dist/cli/commands/upgrade.js +3 -2
  92. package/dist/cli/commands/upgrade.js.map +1 -1
  93. package/dist/cli/commands/voice.d.ts +1 -1
  94. package/dist/cli/commands/voice.js +1 -1
  95. package/dist/cli/index.js +6 -3
  96. package/dist/cli/index.js.map +1 -1
  97. package/dist/dashboard/.vite/manifest.json +1 -1
  98. package/dist/dashboard/assets/{index-D7R6tnlX.js → index-DI_TKz9J.js} +115 -115
  99. package/dist/dashboard/assets/index-DI_TKz9J.js.map +1 -0
  100. package/dist/dashboard/dashboard-manifest.json +10 -10
  101. package/dist/dashboard/index.html +1 -1
  102. package/dist/generators/cursor-generator.js +1 -1
  103. package/dist/generators/cursor-generator.js.map +1 -1
  104. package/dist/models/schema.d.ts +0 -4
  105. package/dist/models/schema.d.ts.map +1 -1
  106. package/dist/models/schema.js +2 -3
  107. package/dist/models/schema.js.map +1 -1
  108. package/dist/models/types.d.ts +13 -16
  109. package/dist/models/types.d.ts.map +1 -1
  110. package/dist/services/artifact-service.d.ts +1 -1
  111. package/dist/services/artifact-service.js +2 -2
  112. package/dist/services/artifact-service.js.map +1 -1
  113. package/dist/services/audit-log-service.d.ts.map +1 -1
  114. package/dist/services/audit-log-service.js +2 -1
  115. package/dist/services/audit-log-service.js.map +1 -1
  116. package/dist/services/claude-plugin-service.d.ts +3 -1
  117. package/dist/services/claude-plugin-service.d.ts.map +1 -1
  118. package/dist/services/claude-plugin-service.js +9 -5
  119. package/dist/services/claude-plugin-service.js.map +1 -1
  120. package/dist/services/codex-plugin-service.d.ts.map +1 -1
  121. package/dist/services/codex-plugin-service.js +3 -2
  122. package/dist/services/codex-plugin-service.js.map +1 -1
  123. package/dist/services/company-auth-service.d.ts.map +1 -1
  124. package/dist/services/company-auth-service.js +2 -1
  125. package/dist/services/company-auth-service.js.map +1 -1
  126. package/dist/services/company-sync-service.d.ts.map +1 -1
  127. package/dist/services/company-sync-service.js +9 -8
  128. package/dist/services/company-sync-service.js.map +1 -1
  129. package/dist/services/config-service.d.ts +6 -1
  130. package/dist/services/config-service.d.ts.map +1 -1
  131. package/dist/services/config-service.js +19 -4
  132. package/dist/services/config-service.js.map +1 -1
  133. package/dist/services/credentials-service.js +2 -2
  134. package/dist/services/credentials-service.js.map +1 -1
  135. package/dist/services/delivery-status-service.d.ts +1 -1
  136. package/dist/services/delivery-status-service.d.ts.map +1 -1
  137. package/dist/services/delivery-status-service.js +3 -2
  138. package/dist/services/delivery-status-service.js.map +1 -1
  139. package/dist/services/diagram-authoring-service.d.ts.map +1 -1
  140. package/dist/services/diagram-authoring-service.js +2 -1
  141. package/dist/services/diagram-authoring-service.js.map +1 -1
  142. package/dist/services/diagram-pipeline-service.d.ts.map +1 -1
  143. package/dist/services/diagram-pipeline-service.js +6 -5
  144. package/dist/services/diagram-pipeline-service.js.map +1 -1
  145. package/dist/services/distribution-service.d.ts +1 -4
  146. package/dist/services/distribution-service.d.ts.map +1 -1
  147. package/dist/services/distribution-service.js +3 -61
  148. package/dist/services/distribution-service.js.map +1 -1
  149. package/dist/services/github-service.d.ts +8 -5
  150. package/dist/services/github-service.d.ts.map +1 -1
  151. package/dist/services/github-service.js +23 -21
  152. package/dist/services/github-service.js.map +1 -1
  153. package/dist/services/graph-integrity.d.ts +1 -1
  154. package/dist/services/graph-integrity.js +1 -1
  155. package/dist/services/landing/landing-service.d.ts.map +1 -1
  156. package/dist/services/landing/landing-service.js +4 -1
  157. package/dist/services/landing/landing-service.js.map +1 -1
  158. package/dist/services/landing/receipt-custody.d.ts.map +1 -1
  159. package/dist/services/landing/receipt-custody.js +3 -2
  160. package/dist/services/landing/receipt-custody.js.map +1 -1
  161. package/dist/services/linear/errors.d.ts.map +1 -1
  162. package/dist/services/linear/errors.js +2 -1
  163. package/dist/services/linear/errors.js.map +1 -1
  164. package/dist/services/linear/plan-builders.d.ts +3 -3
  165. package/dist/services/linear/plan-builders.d.ts.map +1 -1
  166. package/dist/services/linear/plan-builders.js +2 -2
  167. package/dist/services/linear/strategy-context.d.ts.map +1 -1
  168. package/dist/services/linear/strategy-context.js +6 -5
  169. package/dist/services/linear/strategy-context.js.map +1 -1
  170. package/dist/services/linear-mapping-service.d.ts +1 -1
  171. package/dist/services/linear-mapping-service.d.ts.map +1 -1
  172. package/dist/services/linear-mapping-service.js +3 -2
  173. package/dist/services/linear-mapping-service.js.map +1 -1
  174. package/dist/services/linear-pull-service.d.ts +1 -1
  175. package/dist/services/linear-pull-service.d.ts.map +1 -1
  176. package/dist/services/linear-pull-service.js +10 -9
  177. package/dist/services/linear-pull-service.js.map +1 -1
  178. package/dist/services/linear-push-service.d.ts +5 -6
  179. package/dist/services/linear-push-service.d.ts.map +1 -1
  180. package/dist/services/linear-push-service.js +22 -22
  181. package/dist/services/linear-push-service.js.map +1 -1
  182. package/dist/services/linear-service.d.ts +2 -2
  183. package/dist/services/linear-service.js +2 -2
  184. package/dist/services/linear-team-service.d.ts.map +1 -1
  185. package/dist/services/linear-team-service.js +2 -1
  186. package/dist/services/linear-team-service.js.map +1 -1
  187. package/dist/services/operate/assignment-packet-service.d.ts.map +1 -1
  188. package/dist/services/operate/assignment-packet-service.js +2 -1
  189. package/dist/services/operate/assignment-packet-service.js.map +1 -1
  190. package/dist/services/operate/delivery-evidence.d.ts.map +1 -1
  191. package/dist/services/operate/delivery-evidence.js +2 -1
  192. package/dist/services/operate/delivery-evidence.js.map +1 -1
  193. package/dist/services/operate/measurement-schedule-service.d.ts.map +1 -1
  194. package/dist/services/operate/measurement-schedule-service.js +2 -1
  195. package/dist/services/operate/measurement-schedule-service.js.map +1 -1
  196. package/dist/services/operate/path-custody.d.ts.map +1 -1
  197. package/dist/services/operate/path-custody.js +2 -1
  198. package/dist/services/operate/path-custody.js.map +1 -1
  199. package/dist/services/operate/pinned-legacy-replay-runner.d.ts.map +1 -1
  200. package/dist/services/operate/pinned-legacy-replay-runner.js +3 -2
  201. package/dist/services/operate/pinned-legacy-replay-runner.js.map +1 -1
  202. package/dist/services/operate/planning-handoff-service.d.ts.map +1 -1
  203. package/dist/services/operate/planning-handoff-service.js +3 -2
  204. package/dist/services/operate/planning-handoff-service.js.map +1 -1
  205. package/dist/services/operate/project-transaction-lock.d.ts.map +1 -1
  206. package/dist/services/operate/project-transaction-lock.js +2 -1
  207. package/dist/services/operate/project-transaction-lock.js.map +1 -1
  208. package/dist/services/operate/repository-read-service.d.ts.map +1 -1
  209. package/dist/services/operate/repository-read-service.js +5 -4
  210. package/dist/services/operate/repository-read-service.js.map +1 -1
  211. package/dist/services/operate/screened-evidence-service.d.ts.map +1 -1
  212. package/dist/services/operate/screened-evidence-service.js +5 -4
  213. package/dist/services/operate/screened-evidence-service.js.map +1 -1
  214. package/dist/services/operate/storage-layout.d.ts.map +1 -1
  215. package/dist/services/operate/storage-layout.js +8 -7
  216. package/dist/services/operate/storage-layout.js.map +1 -1
  217. package/dist/services/operate/store.d.ts.map +1 -1
  218. package/dist/services/operate/store.js +7 -6
  219. package/dist/services/operate/store.js.map +1 -1
  220. package/dist/services/pipeline-package-service.js +1 -1
  221. package/dist/services/pipeline-package-service.js.map +1 -1
  222. package/dist/services/provenance-service.d.ts.map +1 -1
  223. package/dist/services/provenance-service.js +2 -1
  224. package/dist/services/provenance-service.js.map +1 -1
  225. package/dist/services/report-linter-service.js +1 -1
  226. package/dist/services/report-linter-service.js.map +1 -1
  227. package/dist/services/revise-cache-service.d.ts.map +1 -1
  228. package/dist/services/revise-cache-service.js +2 -1
  229. package/dist/services/revise-cache-service.js.map +1 -1
  230. package/dist/services/runtime-manager/doctor.d.ts +13 -0
  231. package/dist/services/runtime-manager/doctor.d.ts.map +1 -1
  232. package/dist/services/runtime-manager/doctor.js +50 -3
  233. package/dist/services/runtime-manager/doctor.js.map +1 -1
  234. package/dist/services/runtime-manager/inventory.d.ts +1 -0
  235. package/dist/services/runtime-manager/inventory.d.ts.map +1 -1
  236. package/dist/services/runtime-manager/inventory.js +3 -1
  237. package/dist/services/runtime-manager/inventory.js.map +1 -1
  238. package/dist/services/runtime-manager-service.d.ts +4 -2
  239. package/dist/services/runtime-manager-service.d.ts.map +1 -1
  240. package/dist/services/runtime-manager-service.js +52 -33
  241. package/dist/services/runtime-manager-service.js.map +1 -1
  242. package/dist/services/server-lifecycle-service.d.ts.map +1 -1
  243. package/dist/services/server-lifecycle-service.js +14 -9
  244. package/dist/services/server-lifecycle-service.js.map +1 -1
  245. package/dist/services/spec-service.d.ts +4 -4
  246. package/dist/services/spec-service.d.ts.map +1 -1
  247. package/dist/services/spec-service.js +43 -77
  248. package/dist/services/spec-service.js.map +1 -1
  249. package/dist/services/sprint-refinement-service.d.ts +6 -6
  250. package/dist/services/sprint-refinement-service.d.ts.map +1 -1
  251. package/dist/services/sprint-refinement-service.js +16 -16
  252. package/dist/services/sprint-refinement-service.js.map +1 -1
  253. package/dist/services/template-service.d.ts.map +1 -1
  254. package/dist/services/template-service.js +3 -1
  255. package/dist/services/template-service.js.map +1 -1
  256. package/dist/services/upgrade-offer-service.d.ts +2 -2
  257. package/dist/services/upgrade-offer-service.d.ts.map +1 -1
  258. package/dist/services/upgrade-offer-service.js +4 -3
  259. package/dist/services/upgrade-offer-service.js.map +1 -1
  260. package/dist/services/upgrade-report.d.ts +1 -1
  261. package/dist/services/upgrade-report.d.ts.map +1 -1
  262. package/dist/services/upgrade-report.js +5 -4
  263. package/dist/services/upgrade-report.js.map +1 -1
  264. package/dist/services/upgrade-service.d.ts +5 -5
  265. package/dist/services/upgrade-service.d.ts.map +1 -1
  266. package/dist/services/upgrade-service.js +14 -13
  267. package/dist/services/upgrade-service.js.map +1 -1
  268. package/dist/templates/backlog/backlog-item.md.hbs +1 -1
  269. package/dist/templates/checklists/agile-checklist.md.hbs +6 -6
  270. package/dist/templates/epics/epic.md.hbs +1 -1
  271. package/dist/templates/export/planning-report.html.hbs +1 -1
  272. package/dist/templates/export/planning-report.md.hbs +1 -1
  273. package/dist/templates/features/feature.md.hbs +1 -1
  274. package/dist/templates/guides/estimation.md.hbs +3 -12
  275. package/dist/templates/quick/quick-task.md.hbs +1 -1
  276. package/dist/templates/rules/cursor/create-epic.mdc.hbs +1 -1
  277. package/dist/templates/rules/cursor/create-features.mdc.hbs +1 -1
  278. package/dist/templates/rules/cursor/create-user-story.mdc.hbs +1 -1
  279. package/dist/templates/rules/cursor/openplanr.mdc.hbs +1 -1
  280. package/dist/templates/rules/shared/capability-map.md.hbs +1 -1
  281. package/dist/templates/rules/shared/host-native-guidance.md.hbs +1 -1
  282. package/dist/templates/spec/spec-shaped.md.hbs +1 -1
  283. package/dist/templates/spec/spec.md.hbs +1 -1
  284. package/dist/templates/sprints/sprint-tasks.md.hbs +1 -1
  285. package/dist/templates/sprints/sprint.md.hbs +1 -1
  286. package/dist/templates/stories/user-story.md.hbs +1 -1
  287. package/dist/utils/constants.d.ts +8 -4
  288. package/dist/utils/constants.d.ts.map +1 -1
  289. package/dist/utils/constants.js +10 -4
  290. package/dist/utils/constants.js.map +1 -1
  291. package/docs/ARTIFACT_REVIEW.md +13 -13
  292. package/docs/CLI.md +258 -262
  293. package/docs/CROSS_RUNTIME_SETUP.md +33 -33
  294. package/docs/TROUBLESHOOTING.md +28 -28
  295. package/install.ps1 +2 -2
  296. package/install.sh +3 -3
  297. package/lib/host-packages/adapter-registry.json +5 -5
  298. package/lib/host-packages/capability-map.json +9 -9
  299. package/lib/host-packages/claude/.claude-plugin/marketplace.json +2 -2
  300. package/lib/host-packages/claude/openplanr/.claude-plugin/plugin.json +1 -1
  301. package/lib/host-packages/claude/openplanr/.openplanr-content.json +109 -89
  302. package/lib/host-packages/claude/openplanr/README.md +13 -17
  303. package/lib/host-packages/claude/openplanr/agents/planr-backend.md +49 -55
  304. package/lib/host-packages/claude/openplanr/agents/planr-database.md +56 -92
  305. package/lib/host-packages/claude/openplanr/agents/planr-designer.md +35 -51
  306. package/lib/host-packages/claude/openplanr/agents/planr-devops.md +37 -51
  307. package/lib/host-packages/claude/openplanr/agents/planr-documentation.md +29 -52
  308. package/lib/host-packages/claude/openplanr/agents/planr-entity-scaffold.md +24 -23
  309. package/lib/host-packages/claude/openplanr/agents/planr-frontend.md +46 -58
  310. package/lib/host-packages/claude/openplanr/agents/planr-qa.md +4 -2
  311. package/lib/host-packages/claude/openplanr/agents/planr-specification.md +54 -51
  312. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/default/backend.md +21 -65
  313. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/default/designer.md +5 -6
  314. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/default/devops.md +2 -3
  315. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/default/doc-gen.md +3 -4
  316. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/default/frontend.md +19 -64
  317. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/default/specification.md +10 -12
  318. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/spec-driven/backend.md +19 -62
  319. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/spec-driven/designer.md +5 -6
  320. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/spec-driven/devops.md +2 -3
  321. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/spec-driven/doc-gen.md +2 -3
  322. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/spec-driven/frontend.md +16 -59
  323. package/lib/host-packages/claude/openplanr/references/agents/shared/modes/spec-driven/specification.md +9 -11
  324. package/lib/host-packages/claude/openplanr/references/pipeline/stacks/database/mongodb.md +4 -4
  325. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-owner-custody.mjs +8 -0
  326. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-review.mjs +105 -55
  327. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-share.mjs +12 -7
  328. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/package.json +3 -3
  329. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/share.js +1 -1
  330. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +9 -1
  331. package/lib/host-packages/claude/openplanr/runtime/plan/scripts/design.mjs +11 -4
  332. package/lib/host-packages/claude/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +9 -1
  333. package/lib/host-packages/claude/openplanr/skills/artifact/SKILL.md +14 -14
  334. package/lib/host-packages/claude/openplanr/skills/artifact/references/company-review.md +9 -9
  335. package/lib/host-packages/claude/openplanr/skills/artifact/references/design-sharing.md +1 -1
  336. package/lib/host-packages/claude/openplanr/skills/artifact/references/diagram-sharing.md +4 -4
  337. package/lib/host-packages/claude/openplanr/skills/ceo-review/SKILL.md +0 -1
  338. package/lib/host-packages/claude/openplanr/skills/ceo-review/references/operate-advisor-contract.md +25 -4
  339. package/lib/host-packages/claude/openplanr/skills/chair-review/SKILL.md +6 -2
  340. package/lib/host-packages/claude/openplanr/skills/challenger-review/SKILL.md +6 -2
  341. package/lib/host-packages/claude/openplanr/skills/cmo-review/SKILL.md +0 -1
  342. package/lib/host-packages/claude/openplanr/skills/cmo-review/references/operate-advisor-contract.md +25 -4
  343. package/lib/host-packages/claude/openplanr/skills/coo-review/SKILL.md +0 -1
  344. package/lib/host-packages/claude/openplanr/skills/coo-review/references/operate-advisor-contract.md +25 -4
  345. package/lib/host-packages/claude/openplanr/skills/cpo-review/SKILL.md +0 -1
  346. package/lib/host-packages/claude/openplanr/skills/cpo-review/references/operate-advisor-contract.md +25 -4
  347. package/lib/host-packages/claude/openplanr/skills/cto-review/SKILL.md +0 -1
  348. package/lib/host-packages/claude/openplanr/skills/cto-review/references/operate-advisor-contract.md +25 -4
  349. package/lib/host-packages/claude/openplanr/skills/dashboard/SKILL.md +1 -1
  350. package/lib/host-packages/claude/openplanr/skills/delegate/SKILL.md +7 -0
  351. package/lib/host-packages/claude/openplanr/skills/delegate/references/capsule-contract.md +16 -1
  352. package/lib/host-packages/claude/openplanr/skills/delegate/references/operator-guide.md +8 -6
  353. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/adapters/claude.mjs +11 -4
  354. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/adapters/native.mjs +1 -1
  355. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/backend-diagnostics.mjs +14 -48
  356. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/context.mjs +84 -22
  357. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/credentials.mjs +167 -0
  358. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/presentation.mjs +3 -2
  359. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/run-contract.mjs +5 -7
  360. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/run-preparation.mjs +2 -0
  361. package/lib/host-packages/claude/openplanr/skills/delegate/scripts/run-record.mjs +2 -3
  362. package/lib/host-packages/claude/openplanr/skills/design/SKILL.md +1 -1
  363. package/lib/host-packages/claude/openplanr/skills/design/references/team-review.md +1 -1
  364. package/lib/host-packages/claude/openplanr/skills/design/references/utilities.md +4 -4
  365. package/lib/host-packages/claude/openplanr/skills/design-loop/SKILL.md +1 -1
  366. package/lib/host-packages/claude/openplanr/skills/design-loop/references/team-review.md +1 -1
  367. package/lib/host-packages/claude/openplanr/skills/design-loop/references/utilities.md +4 -4
  368. package/lib/host-packages/claude/openplanr/skills/design-review/SKILL.md +1 -1
  369. package/lib/host-packages/claude/openplanr/skills/design-review/references/team-review.md +1 -1
  370. package/lib/host-packages/claude/openplanr/skills/design-review/references/utilities.md +4 -4
  371. package/lib/host-packages/claude/openplanr/skills/diagram/SKILL.md +15 -15
  372. package/lib/host-packages/claude/openplanr/skills/diagram/references/diagram-document.md +1 -1
  373. package/lib/host-packages/claude/openplanr/skills/diagram/references/diagram-intent-to-ir.md +1 -1
  374. package/lib/host-packages/claude/openplanr/skills/diagram/references/diagram-sharing.md +4 -4
  375. package/lib/host-packages/claude/openplanr/skills/doctor/SKILL.md +9 -9
  376. package/lib/host-packages/claude/openplanr/skills/doctor/references/upgrade.md +18 -16
  377. package/lib/host-packages/claude/openplanr/skills/land/SKILL.md +2 -2
  378. package/lib/host-packages/claude/openplanr/skills/operate/SKILL.md +5 -3
  379. package/lib/host-packages/claude/openplanr/skills/plan/SKILL.md +8 -2
  380. package/lib/host-packages/claude/openplanr/skills/plan/references/artifact-contract.md +5 -0
  381. package/lib/host-packages/claude/openplanr/skills/spec/references/specification-contract.md +5 -0
  382. package/lib/host-packages/claude/openplanr/skills/sprint/SKILL.md +16 -15
  383. package/lib/host-packages/claude/openplanr/skills/sprint/references/refinement-contract.md +5 -5
  384. package/lib/host-packages/claude/openplanr/skills/sprint/references/sprint-formats.md +8 -8
  385. package/lib/host-packages/claude/openplanr/skills/sprint/references/tracker-connections.md +70 -0
  386. package/lib/host-packages/claude/openplanr/skills/sprint/schemas/refinement.schema.json +3 -3
  387. package/lib/host-packages/claude/openplanr/skills/status/SKILL.md +5 -4
  388. package/lib/host-packages/claude/openplanr/skills/status/references/tracker-connections.md +70 -0
  389. package/lib/host-packages/claude/openplanr/skills/sync/SKILL.md +11 -20
  390. package/lib/host-packages/claude/openplanr/skills/sync/references/tracker-connections.md +70 -0
  391. package/lib/host-packages/claude/openplanr/skills/sync/scripts/names.mjs +8 -0
  392. package/lib/host-packages/claude/openplanr/skills/sync/scripts/sync.mjs +3 -2
  393. package/lib/host-packages/cursor/openplanr/.openplanr-content.json +81 -61
  394. package/lib/host-packages/cursor/openplanr/manifest.json +1 -1
  395. package/lib/host-packages/cursor/openplanr/rules/planr-artifact/references/company-review.md +9 -9
  396. package/lib/host-packages/cursor/openplanr/rules/planr-artifact/references/design-sharing.md +1 -1
  397. package/lib/host-packages/cursor/openplanr/rules/planr-artifact/references/diagram-sharing.md +4 -4
  398. package/lib/host-packages/cursor/openplanr/rules/planr-artifact.mdc +14 -14
  399. package/lib/host-packages/cursor/openplanr/rules/planr-ceo-review/references/operate-advisor-contract.md +25 -4
  400. package/lib/host-packages/cursor/openplanr/rules/planr-chair-review.mdc +6 -1
  401. package/lib/host-packages/cursor/openplanr/rules/planr-challenger-review.mdc +6 -1
  402. package/lib/host-packages/cursor/openplanr/rules/planr-cmo-review/references/operate-advisor-contract.md +25 -4
  403. package/lib/host-packages/cursor/openplanr/rules/planr-coo-review/references/operate-advisor-contract.md +25 -4
  404. package/lib/host-packages/cursor/openplanr/rules/planr-cpo-review/references/operate-advisor-contract.md +25 -4
  405. package/lib/host-packages/cursor/openplanr/rules/planr-cto-review/references/operate-advisor-contract.md +25 -4
  406. package/lib/host-packages/cursor/openplanr/rules/planr-dashboard.mdc +1 -1
  407. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/references/capsule-contract.md +16 -1
  408. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/references/operator-guide.md +8 -6
  409. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/adapters/claude.mjs +11 -4
  410. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/adapters/native.mjs +1 -1
  411. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/backend-diagnostics.mjs +14 -48
  412. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/context.mjs +84 -22
  413. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/credentials.mjs +167 -0
  414. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/presentation.mjs +3 -2
  415. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/run-contract.mjs +5 -7
  416. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/run-preparation.mjs +2 -0
  417. package/lib/host-packages/cursor/openplanr/rules/planr-delegate/scripts/run-record.mjs +2 -3
  418. package/lib/host-packages/cursor/openplanr/rules/planr-delegate.mdc +7 -0
  419. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/team-review.md +1 -1
  420. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/utilities.md +4 -4
  421. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/team-review.md +1 -1
  422. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/utilities.md +4 -4
  423. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop.mdc +1 -1
  424. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/team-review.md +1 -1
  425. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/utilities.md +4 -4
  426. package/lib/host-packages/cursor/openplanr/rules/planr-design-review.mdc +1 -1
  427. package/lib/host-packages/cursor/openplanr/rules/planr-design.mdc +1 -1
  428. package/lib/host-packages/cursor/openplanr/rules/planr-diagram/references/diagram-document.md +1 -1
  429. package/lib/host-packages/cursor/openplanr/rules/planr-diagram/references/diagram-intent-to-ir.md +1 -1
  430. package/lib/host-packages/cursor/openplanr/rules/planr-diagram/references/diagram-sharing.md +4 -4
  431. package/lib/host-packages/cursor/openplanr/rules/planr-diagram.mdc +15 -15
  432. package/lib/host-packages/cursor/openplanr/rules/planr-doctor/references/upgrade.md +18 -16
  433. package/lib/host-packages/cursor/openplanr/rules/planr-doctor.mdc +9 -9
  434. package/lib/host-packages/cursor/openplanr/rules/planr-land.mdc +2 -2
  435. package/lib/host-packages/cursor/openplanr/rules/planr-operate.mdc +5 -3
  436. package/lib/host-packages/cursor/openplanr/rules/planr-plan/references/artifact-contract.md +5 -0
  437. package/lib/host-packages/cursor/openplanr/rules/planr-plan.mdc +8 -2
  438. package/lib/host-packages/cursor/openplanr/rules/planr-spec/references/specification-contract.md +5 -0
  439. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/references/refinement-contract.md +5 -5
  440. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/references/sprint-formats.md +8 -8
  441. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/references/tracker-connections.md +70 -0
  442. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/schemas/refinement.schema.json +3 -3
  443. package/lib/host-packages/cursor/openplanr/rules/planr-sprint.mdc +16 -15
  444. package/lib/host-packages/cursor/openplanr/rules/planr-status/references/tracker-connections.md +70 -0
  445. package/lib/host-packages/cursor/openplanr/rules/planr-status.mdc +5 -4
  446. package/lib/host-packages/cursor/openplanr/rules/planr-sync/references/tracker-connections.md +70 -0
  447. package/lib/host-packages/cursor/openplanr/rules/planr-sync/scripts/names.mjs +8 -0
  448. package/lib/host-packages/cursor/openplanr/rules/planr-sync/scripts/sync.mjs +3 -2
  449. package/lib/host-packages/cursor/openplanr/rules/planr-sync.mdc +11 -20
  450. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-owner-custody.mjs +8 -0
  451. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-review.mjs +105 -55
  452. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-share.mjs +12 -7
  453. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/package.json +3 -3
  454. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/share.js +1 -1
  455. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +9 -1
  456. package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/design.mjs +11 -4
  457. package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +9 -1
  458. package/lib/host-packages/openai/.claude-plugin/marketplace.json +2 -2
  459. package/lib/host-packages/openai/openplanr/.codex-plugin/plugin.json +1 -1
  460. package/lib/host-packages/openai/openplanr/.openplanr-content.json +90 -70
  461. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-owner-custody.mjs +8 -0
  462. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-review.mjs +105 -55
  463. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-share.mjs +12 -7
  464. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/package.json +3 -3
  465. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/share.js +1 -1
  466. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +9 -1
  467. package/lib/host-packages/openai/openplanr/runtime/plan/scripts/design.mjs +11 -4
  468. package/lib/host-packages/openai/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +9 -1
  469. package/lib/host-packages/openai/openplanr/skills/artifact/SKILL.md +14 -14
  470. package/lib/host-packages/openai/openplanr/skills/artifact/references/company-review.md +9 -9
  471. package/lib/host-packages/openai/openplanr/skills/artifact/references/design-sharing.md +1 -1
  472. package/lib/host-packages/openai/openplanr/skills/artifact/references/diagram-sharing.md +4 -4
  473. package/lib/host-packages/openai/openplanr/skills/ceo-review/SKILL.md +0 -1
  474. package/lib/host-packages/openai/openplanr/skills/ceo-review/references/operate-advisor-contract.md +25 -4
  475. package/lib/host-packages/openai/openplanr/skills/chair-review/SKILL.md +6 -2
  476. package/lib/host-packages/openai/openplanr/skills/challenger-review/SKILL.md +6 -2
  477. package/lib/host-packages/openai/openplanr/skills/cmo-review/SKILL.md +0 -1
  478. package/lib/host-packages/openai/openplanr/skills/cmo-review/references/operate-advisor-contract.md +25 -4
  479. package/lib/host-packages/openai/openplanr/skills/coo-review/SKILL.md +0 -1
  480. package/lib/host-packages/openai/openplanr/skills/coo-review/references/operate-advisor-contract.md +25 -4
  481. package/lib/host-packages/openai/openplanr/skills/cpo-review/SKILL.md +0 -1
  482. package/lib/host-packages/openai/openplanr/skills/cpo-review/references/operate-advisor-contract.md +25 -4
  483. package/lib/host-packages/openai/openplanr/skills/cto-review/SKILL.md +0 -1
  484. package/lib/host-packages/openai/openplanr/skills/cto-review/references/operate-advisor-contract.md +25 -4
  485. package/lib/host-packages/openai/openplanr/skills/dashboard/SKILL.md +1 -1
  486. package/lib/host-packages/openai/openplanr/skills/delegate/SKILL.md +7 -0
  487. package/lib/host-packages/openai/openplanr/skills/delegate/openplanr.skill.json +11 -0
  488. package/lib/host-packages/openai/openplanr/skills/delegate/references/capsule-contract.md +16 -1
  489. package/lib/host-packages/openai/openplanr/skills/delegate/references/operator-guide.md +8 -6
  490. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/adapters/claude.mjs +11 -4
  491. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/adapters/native.mjs +1 -1
  492. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/backend-diagnostics.mjs +14 -48
  493. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/context.mjs +84 -22
  494. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/credentials.mjs +167 -0
  495. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/presentation.mjs +3 -2
  496. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/run-contract.mjs +5 -7
  497. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/run-preparation.mjs +2 -0
  498. package/lib/host-packages/openai/openplanr/skills/delegate/scripts/run-record.mjs +2 -3
  499. package/lib/host-packages/openai/openplanr/skills/design/SKILL.md +1 -1
  500. package/lib/host-packages/openai/openplanr/skills/design/references/team-review.md +1 -1
  501. package/lib/host-packages/openai/openplanr/skills/design/references/utilities.md +4 -4
  502. package/lib/host-packages/openai/openplanr/skills/design-loop/SKILL.md +1 -1
  503. package/lib/host-packages/openai/openplanr/skills/design-loop/references/team-review.md +1 -1
  504. package/lib/host-packages/openai/openplanr/skills/design-loop/references/utilities.md +4 -4
  505. package/lib/host-packages/openai/openplanr/skills/design-review/SKILL.md +1 -1
  506. package/lib/host-packages/openai/openplanr/skills/design-review/references/team-review.md +1 -1
  507. package/lib/host-packages/openai/openplanr/skills/design-review/references/utilities.md +4 -4
  508. package/lib/host-packages/openai/openplanr/skills/diagram/SKILL.md +15 -15
  509. package/lib/host-packages/openai/openplanr/skills/diagram/references/diagram-document.md +1 -1
  510. package/lib/host-packages/openai/openplanr/skills/diagram/references/diagram-intent-to-ir.md +1 -1
  511. package/lib/host-packages/openai/openplanr/skills/diagram/references/diagram-sharing.md +4 -4
  512. package/lib/host-packages/openai/openplanr/skills/doctor/SKILL.md +9 -9
  513. package/lib/host-packages/openai/openplanr/skills/doctor/references/upgrade.md +18 -16
  514. package/lib/host-packages/openai/openplanr/skills/land/SKILL.md +2 -2
  515. package/lib/host-packages/openai/openplanr/skills/operate/SKILL.md +5 -3
  516. package/lib/host-packages/openai/openplanr/skills/plan/SKILL.md +8 -2
  517. package/lib/host-packages/openai/openplanr/skills/plan/references/artifact-contract.md +5 -0
  518. package/lib/host-packages/openai/openplanr/skills/spec/references/specification-contract.md +5 -0
  519. package/lib/host-packages/openai/openplanr/skills/sprint/SKILL.md +16 -15
  520. package/lib/host-packages/openai/openplanr/skills/sprint/openplanr.skill.json +11 -0
  521. package/lib/host-packages/openai/openplanr/skills/sprint/references/refinement-contract.md +5 -5
  522. package/lib/host-packages/openai/openplanr/skills/sprint/references/sprint-formats.md +8 -8
  523. package/lib/host-packages/openai/openplanr/skills/sprint/references/tracker-connections.md +70 -0
  524. package/lib/host-packages/openai/openplanr/skills/sprint/schemas/refinement.schema.json +3 -3
  525. package/lib/host-packages/openai/openplanr/skills/status/SKILL.md +5 -4
  526. package/lib/host-packages/openai/openplanr/skills/status/openplanr.skill.json +11 -0
  527. package/lib/host-packages/openai/openplanr/skills/status/references/tracker-connections.md +70 -0
  528. package/lib/host-packages/openai/openplanr/skills/sync/SKILL.md +11 -20
  529. package/lib/host-packages/openai/openplanr/skills/sync/openplanr.skill.json +22 -0
  530. package/lib/host-packages/openai/openplanr/skills/sync/references/tracker-connections.md +70 -0
  531. package/lib/host-packages/openai/openplanr/skills/sync/scripts/names.mjs +8 -0
  532. package/lib/host-packages/openai/openplanr/skills/sync/scripts/sync.mjs +3 -2
  533. package/lib/integrations.mjs +3 -2
  534. package/lib/names.d.mts +4 -0
  535. package/lib/names.mjs +8 -0
  536. package/lib/planning-folder.d.mts +14 -0
  537. package/lib/planning-folder.mjs +40 -0
  538. package/package.json +5 -5
  539. package/dist/dashboard/assets/index-D7R6tnlX.js.map +0 -1
  540. package/dist/services/connectors/adapters/business-metrics.d.ts +0 -5
  541. package/dist/services/connectors/adapters/business-metrics.d.ts.map +0 -1
  542. package/dist/services/connectors/adapters/business-metrics.js +0 -41
  543. package/dist/services/connectors/adapters/business-metrics.js.map +0 -1
  544. package/dist/services/connectors/adapters/deployment-health.d.ts +0 -18
  545. package/dist/services/connectors/adapters/deployment-health.d.ts.map +0 -1
  546. package/dist/services/connectors/adapters/deployment-health.js +0 -67
  547. package/dist/services/connectors/adapters/deployment-health.js.map +0 -1
  548. package/dist/services/connectors/adapters/github.d.ts +0 -5
  549. package/dist/services/connectors/adapters/github.d.ts.map +0 -1
  550. package/dist/services/connectors/adapters/github.js +0 -31
  551. package/dist/services/connectors/adapters/github.js.map +0 -1
  552. package/dist/services/connectors/adapters/linear-jira.d.ts +0 -5
  553. package/dist/services/connectors/adapters/linear-jira.d.ts.map +0 -1
  554. package/dist/services/connectors/adapters/linear-jira.js +0 -26
  555. package/dist/services/connectors/adapters/linear-jira.js.map +0 -1
  556. package/dist/services/connectors/adapters/posthog.d.ts +0 -5
  557. package/dist/services/connectors/adapters/posthog.d.ts.map +0 -1
  558. package/dist/services/connectors/adapters/posthog.js +0 -31
  559. package/dist/services/connectors/adapters/posthog.js.map +0 -1
  560. package/dist/services/connectors/adapters/sentry.d.ts +0 -5
  561. package/dist/services/connectors/adapters/sentry.d.ts.map +0 -1
  562. package/dist/services/connectors/adapters/sentry.js +0 -31
  563. package/dist/services/connectors/adapters/sentry.js.map +0 -1
  564. package/dist/services/connectors/checkpoint-custody.d.ts +0 -45
  565. package/dist/services/connectors/checkpoint-custody.d.ts.map +0 -1
  566. package/dist/services/connectors/checkpoint-custody.js +0 -496
  567. package/dist/services/connectors/checkpoint-custody.js.map +0 -1
  568. package/dist/services/connectors/connector-registry.d.ts +0 -144
  569. package/dist/services/connectors/connector-registry.d.ts.map +0 -1
  570. package/dist/services/connectors/connector-registry.js +0 -423
  571. package/dist/services/connectors/connector-registry.js.map +0 -1
  572. package/dist/services/connectors/connector-runtime.d.ts +0 -208
  573. package/dist/services/connectors/connector-runtime.d.ts.map +0 -1
  574. package/dist/services/connectors/connector-runtime.js +0 -1305
  575. package/dist/services/connectors/connector-runtime.js.map +0 -1
  576. package/dist/services/connectors/credential-custody.d.ts +0 -96
  577. package/dist/services/connectors/credential-custody.d.ts.map +0 -1
  578. package/dist/services/connectors/credential-custody.js +0 -390
  579. package/dist/services/connectors/credential-custody.js.map +0 -1
  580. package/dist/templates/voice/standup.md.hbs +0 -20
  581. /package/lib/host-packages/claude/openplanr/runtime/design/scripts/{design-runtime-support-5cb7531bede8.mjs → design-runtime-support-336900df0d39.mjs} +0 -0
  582. /package/lib/host-packages/cursor/openplanr/runtime/design/scripts/{design-runtime-support-5cb7531bede8.mjs → design-runtime-support-336900df0d39.mjs} +0 -0
  583. /package/lib/host-packages/openai/openplanr/runtime/design/scripts/{design-runtime-support-5cb7531bede8.mjs → design-runtime-support-336900df0d39.mjs} +0 -0
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Runtime adapter manager behind `planr setup`, `planr doctor` and `planr runtime`: previews and
2
+ * Runtime adapter manager behind `openplanr setup`, `openplanr doctor` and `openplanr runtime`: previews and
3
3
  * applies project or user installs of the OpenPlanr skills for Claude Code, Codex and Cursor,
4
4
  * records owned files in `<planrHome>/runtime/state.json` with per-project backups, and diagnoses
5
5
  * drift. Entry points: `previewSetup`, `applySetup`, `rollbackRuntime`, `removeRuntime`,
@@ -10,20 +10,20 @@ import { createHash, randomUUID } from 'node:crypto';
10
10
  import { existsSync, constants as fsConstants, lstatSync, readdirSync, readFileSync, realpathSync, } from 'node:fs';
11
11
  import { mkdir, open, readFile, rename, rm, unlink, writeFile, } from 'node:fs/promises';
12
12
  import path from 'node:path';
13
- import { fileURLToPath } from 'node:url';
14
13
  import { validateJson } from '../../lib/json-schema.mjs';
15
14
  import { CLI_NODE_REMEDIATION, cliNodeVersionMessage, supportsCliNodeVersion, } from '../../lib/node-runtime.mjs';
16
15
  import { planrHome, userHome } from '../../lib/planr-home.mjs';
16
+ import { CLI_COMMAND, getPackageRoot, PLANNING_FOLDER } from '../utils/constants.js';
17
17
  import { spliceManagedBlock } from '../utils/splice-managed-block.js';
18
18
  import { applyBundledClaudePluginIntegration, claudePluginUninstallCommand, inspectBundledClaudePluginIntegration, } from './claude-plugin-service.js';
19
19
  import { applyCodexPluginIntegration, inspectCodexPluginIntegration, } from './codex-plugin-service.js';
20
20
  import { resolvePipelinePackage } from './pipeline-package-service.js';
21
21
  import { readOpenPlanrVersion } from './provenance-service.js';
22
22
  import { effectiveCodexHome, inspectCodexSkillDiscovery, } from './runtime-manager/codex-discovery.js';
23
- import { classifyComponentDrift as classifyRuntimeComponentDrift, diagnoseManagedRuntimeFiles, diagnoseRuntimeProvenance, } from './runtime-manager/doctor.js';
23
+ import { classifyComponentDrift as classifyRuntimeComponentDrift, diagnoseManagedRuntimeFiles, diagnoseRetiredCommandSkills, diagnoseRuntimeProvenance, pluginDocuments, } from './runtime-manager/doctor.js';
24
24
  import { migrateLegacyGlobalRuntimeState, } from './runtime-manager/global-state.js';
25
25
  import { inventoryManagedSkillFiles, planCodexUserBundleTransition, } from './runtime-manager/install-plan.js';
26
- import { detectInstalledRuntimes, inspectRuntimeProjectContext, listInstalledRuntimeAdapters, } from './runtime-manager/inventory.js';
26
+ import { detectInstalledRuntimes, inspectRuntimeProjectContext, listInstalledRuntimeAdapters, planningFolderConflict, } from './runtime-manager/inventory.js';
27
27
  import { inspectRuntimeLocator, inspectRuntimePackage, inspectThinRule, runtimeLocator, thinDiscoveryMetadata, thinSkillEntry, } from './runtime-manager/runtime-package.js';
28
28
  export { classifyComponentDrift } from './runtime-manager/doctor.js';
29
29
  const runtimeLockSchema = JSON.parse(readFileSync(new URL('../../lib/runtime-lock.schema.json', import.meta.url), 'utf8'));
@@ -631,7 +631,7 @@ function chooseRuntimes(choice) {
631
631
  return detected;
632
632
  }
633
633
  function readRegistry() {
634
- const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..');
634
+ const root = getPackageRoot();
635
635
  const registryPath = path.join(root, 'lib', 'host-packages', 'adapter-registry.json');
636
636
  if (!existsSync(registryPath)) {
637
637
  throw new RuntimeManagerError('E_HOST_PACKAGE_MISSING', 'The OpenPlanr host-package inventory is missing.', 'Reinstall the OpenPlanr utility CLI or run the workspace skill generator.');
@@ -645,7 +645,7 @@ function readRegistry() {
645
645
  };
646
646
  }
647
647
  export function bundledHostRoot(host) {
648
- const cliRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..');
648
+ const cliRoot = getPackageRoot();
649
649
  const root = path.join(cliRoot, 'lib', 'host-packages', host);
650
650
  if (!existsSync(root) || lstatSync(root).isSymbolicLink() || !lstatSync(root).isDirectory()) {
651
651
  throw new RuntimeManagerError('E_HOST_PACKAGE_MISSING', `The bundled ${host} OpenPlanr package is missing or unsafe.`, 'Reinstall the OpenPlanr utility CLI or run the workspace skill generator.');
@@ -733,7 +733,7 @@ function normalizeInstallScope(adapter, requested) {
733
733
  const supportsUser = adapter.installScopes.includes('user');
734
734
  const supportsProject = adapter.installScopes.includes('project');
735
735
  if (requested === 'user' && !supportsUser) {
736
- throw new RuntimeManagerError('E_SCOPE_UNSUPPORTED', `OpenPlanr's ${adapter.id} integration currently requires project scope.`, `Change into your project, then run \`planr setup --runtime ${adapter.id} --scope project\`. To initialize a new project there, run \`planr init\` first.`);
736
+ throw new RuntimeManagerError('E_SCOPE_UNSUPPORTED', `OpenPlanr's ${adapter.id} integration currently requires project scope.`, `Change into your project, then run \`${CLI_COMMAND} setup --runtime ${adapter.id} --scope project\`. To initialize a new project there, run \`${CLI_COMMAND} init\` first.`);
737
737
  }
738
738
  if (requested === 'project' && !supportsProject) {
739
739
  throw new RuntimeManagerError('E_SCOPE_UNSUPPORTED', `${adapter.id} does not support project-scope installation.`);
@@ -795,7 +795,7 @@ function buildRuntimeLock(options, runtimes, runtimeScopes, registry, pipelineVe
795
795
  adapters,
796
796
  skillModes,
797
797
  });
798
- const lockPath = path.join(options.projectDir, '.planr', 'runtime-lock.json');
798
+ const lockPath = path.join(options.projectDir, PLANNING_FOLDER, 'runtime-lock.json');
799
799
  if (existsSync(lockPath)) {
800
800
  try {
801
801
  const existing = JSON.parse(readFileSync(lockPath, 'utf8'));
@@ -907,7 +907,7 @@ function buildActions(options, runtimes, runtimeScopes, retainedProject) {
907
907
  actions.push({
908
908
  runtime,
909
909
  scope: 'project',
910
- target: path.join(options.projectDir, '.planr', 'runtime-policy', `${runtime}.json`),
910
+ target: path.join(options.projectDir, PLANNING_FOLDER, 'runtime-policy', `${runtime}.json`),
911
911
  content: Buffer.from(`${JSON.stringify({ schemaVersion: '1.0.0', runtime, discovery: 'user', mode: skillInstallMode(runtime, options), packageDigest: runtimePackage.digest, packageVersion: runtimePackage.version }, null, 2)}\n`),
912
912
  kind: 'file',
913
913
  custody: 'professional-skill',
@@ -978,7 +978,7 @@ function buildActions(options, runtimes, runtimeScopes, retainedProject) {
978
978
  actions.push({
979
979
  runtime: 'core',
980
980
  scope: 'project',
981
- target: path.join(options.projectDir, '.planr', 'runtime-lock.json'),
981
+ target: path.join(options.projectDir, PLANNING_FOLDER, 'runtime-lock.json'),
982
982
  content: buildRuntimeLock({
983
983
  ...options,
984
984
  projectSkillMode: options.projectSkillMode ?? retainedProject?.skillModes?.codex,
@@ -1005,7 +1005,7 @@ function isRetiredGeneratedCursorRule(target, content) {
1005
1005
  }
1006
1006
  const generatedFooter = source.trimEnd().split(/\r?\n/u).at(-1) ?? '';
1007
1007
  const deprecatedAlias = '---\ndescription: Deprecated OpenPlanr pipeline alias\nalwaysApply: false\n---\n\nThis compatibility alias is deprecated. Use the portable `openplanr.mdc` rule.\n';
1008
- return ((generatedFooter.startsWith('*Generated by `planr rules generate --target cursor --scope pipeline`.') &&
1008
+ return ((generatedFooter.startsWith(`*Generated by \`${CLI_COMMAND} rules generate --target cursor --scope pipeline\`.`) &&
1009
1009
  generatedFooter.endsWith('*')) ||
1010
1010
  source === deprecatedAlias);
1011
1011
  }
@@ -1332,8 +1332,13 @@ export async function previewSetup(options) {
1332
1332
  .find((adapter) => adapter.id === runtime)
1333
1333
  ?.installScopes.includes('user')) &&
1334
1334
  options.skillMode !== 'project-rule';
1335
- throw new RuntimeManagerError('E_PROJECT_CONTEXT_REQUIRED', `Project-scoped setup requires a Git worktree or initialized OpenPlanr project; ${projectContext.path} is neither.`, `Change into your project and rerun this command, or run \`planr init\` here to initialize one.${canUseUserScope ? ' To install across projects instead, rerun this command with --scope user.' : ''}`);
1335
+ throw new RuntimeManagerError('E_PROJECT_CONTEXT_REQUIRED', `Project-scoped setup requires a Git worktree or initialized OpenPlanr project; ${projectContext.path} is neither.`, `Change into your project and rerun this command, or run \`${CLI_COMMAND} init\` here to initialize one.${canUseUserScope ? ' To install across projects instead, rerun this command with --scope user.' : ''}`);
1336
1336
  }
1337
+ const folderConflict = !options.minimal && (scope === 'project' || scope === 'both')
1338
+ ? planningFolderConflict(options.projectDir)
1339
+ : null;
1340
+ if (folderConflict)
1341
+ throw new RuntimeManagerError(folderConflict.code, folderConflict.problem, folderConflict.fix);
1337
1342
  let scopeIncompatibleRuntimes = [];
1338
1343
  if (!options.minimal && (options.runtime ?? 'auto') === 'auto' && !options.runtimes) {
1339
1344
  const adapters = listRuntimeAdapters();
@@ -1343,7 +1348,7 @@ export async function previewSetup(options) {
1343
1348
  });
1344
1349
  selectedRuntimes = selectedRuntimes.filter((runtime) => !scopeIncompatibleRuntimes.includes(runtime));
1345
1350
  if (selectedRuntimes.length === 0) {
1346
- throw new RuntimeManagerError('E_SCOPE_UNSUPPORTED', 'Detected coding agents require project scope, but setup defaulted to user scope.', 'Change into a Git or initialized OpenPlanr project and run `planr setup --scope project`.');
1351
+ throw new RuntimeManagerError('E_SCOPE_UNSUPPORTED', 'Detected coding agents require project scope, but setup defaulted to user scope.', `Change into a Git or initialized OpenPlanr project and run \`${CLI_COMMAND} setup --scope project\`.`);
1347
1352
  }
1348
1353
  }
1349
1354
  let runtimes = selectedRuntimes;
@@ -1433,7 +1438,7 @@ export async function previewSetup(options) {
1433
1438
  runtime: 'claude-code',
1434
1439
  status: 'fail',
1435
1440
  message: `Claude plugin state could not be inspected: ${claudeInspection.error}`,
1436
- fix: 'Update Claude Code, then rerun `planr setup --runtime claude --scope user`.',
1441
+ fix: `Update Claude Code, then rerun \`${CLI_COMMAND} setup --runtime claude --scope user\`.`,
1437
1442
  });
1438
1443
  }
1439
1444
  else if (claudeInspection.ready) {
@@ -1485,7 +1490,7 @@ export async function previewSetup(options) {
1485
1490
  runtime: 'codex',
1486
1491
  status: 'fail',
1487
1492
  message: `Codex plugin state could not be inspected: ${codexInspection.error}`,
1488
- fix: 'Repair the Codex marketplace state, then rerun planr setup --dry-run.',
1493
+ fix: `Repair the Codex marketplace state, then rerun ${CLI_COMMAND} setup --dry-run.`,
1489
1494
  });
1490
1495
  }
1491
1496
  else if (codexInspection.duplicates.length > 0) {
@@ -1635,7 +1640,7 @@ export async function applySetup(options) {
1635
1640
  replacesPlugin ||
1636
1641
  replacesClaudePlugin) &&
1637
1642
  !options.replaceManaged) {
1638
- throw new RuntimeManagerError('E_INSTALL_MODE_CONFLICT', 'Changing OpenPlanr discovery mode would retire existing OpenPlanr-managed content.', 'Review planr setup --dry-run, then rerun with --replace-managed to replace only OpenPlanr-owned content.');
1643
+ throw new RuntimeManagerError('E_INSTALL_MODE_CONFLICT', 'Changing OpenPlanr discovery mode would retire existing OpenPlanr-managed content.', `Review ${CLI_COMMAND} setup --dry-run, then rerun with --replace-managed to replace only OpenPlanr-owned content.`);
1639
1644
  }
1640
1645
  const expectedTargets = new Map(actions.map((action) => {
1641
1646
  if (!existsSync(action.target))
@@ -2312,6 +2317,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2312
2317
  const claudeManagedAtUserScope = Object.values(state.projects).some((project) => project.runtimes.includes('claude-code') &&
2313
2318
  ['user', 'both'].includes(project.runtimeScopes?.['claude-code'] ??
2314
2319
  inferRuntimeScope(project.ownedFiles, 'claude-code')));
2320
+ const pluginSkillDocuments = [];
2315
2321
  const claudeDetected = Boolean(options.claudeCommandRunner) ||
2316
2322
  (detectedRuntimes.find((runtime) => runtime.runtime === 'claude-code')?.installed ?? false);
2317
2323
  if (claudeDetected && claudeManagedAtUserScope) {
@@ -2321,10 +2327,16 @@ export async function runtimeDoctor(projectDir, options = {}) {
2321
2327
  code: 'runtime-claude-plugins',
2322
2328
  status: 'fail',
2323
2329
  message: `Claude plugin state could not be inspected: ${inspection.error}`,
2324
- fix: 'Update Claude Code, then run `planr runtime update claude --scope user`.',
2330
+ fix: `Update Claude Code, then run \`${CLI_COMMAND} runtime update claude --scope user\`.`,
2325
2331
  });
2326
2332
  }
2327
2333
  else {
2334
+ for (const root of [
2335
+ ...inspection.plugins.flatMap((plugin) => plugin.installPath ?? []),
2336
+ ...inspection.duplicatePluginPaths,
2337
+ ]) {
2338
+ pluginSkillDocuments.push(...pluginDocuments('claude-code', root));
2339
+ }
2328
2340
  const drift = inspection.plugins.filter((plugin) => !plugin.installed ||
2329
2341
  !plugin.enabled ||
2330
2342
  !plugin.identityValid ||
@@ -2340,7 +2352,9 @@ export async function runtimeDoctor(projectDir, options = {}) {
2340
2352
  .map((plugin) => `${plugin.id} ${plugin.installedVersion ?? 'missing'} → ${plugin.expectedVersion}${!plugin.identityValid ? ' (invalid identity)' : ''}`)
2341
2353
  .join(', ')}`,
2342
2354
  ...(!inspection.ready
2343
- ? { fix: 'Run `planr runtime update claude --scope user` and restart Claude Code.' }
2355
+ ? {
2356
+ fix: `Run \`${CLI_COMMAND} runtime update claude --scope user\` and restart Claude Code.`,
2357
+ }
2344
2358
  : {}),
2345
2359
  });
2346
2360
  if (inspection.legacyPluginIds.length > 0) {
@@ -2361,7 +2375,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2361
2375
  }
2362
2376
  }
2363
2377
  const expectsProjectLock = installed?.ownedFiles.some((file) => file.scope === 'project') ?? false;
2364
- const lock = path.join(projectDir, '.planr', 'runtime-lock.json');
2378
+ const lock = path.join(projectDir, PLANNING_FOLDER, 'runtime-lock.json');
2365
2379
  if (!existsSync(lock)) {
2366
2380
  const lockStatus = expectsProjectLock ? 'warn' : installed ? 'pass' : 'warn';
2367
2381
  diagnostics.push({
@@ -2373,9 +2387,9 @@ export async function runtimeDoctor(projectDir, options = {}) {
2373
2387
  ? 'User-scope setup does not require a project runtime lock'
2374
2388
  : 'No managed runtime setup found for this directory',
2375
2389
  ...(expectsProjectLock
2376
- ? { fix: 'Run `planr setup --scope project`.' }
2390
+ ? { fix: `Run \`${CLI_COMMAND} setup --scope project\`.` }
2377
2391
  : !installed
2378
- ? { fix: 'Run `planr setup`.' }
2392
+ ? { fix: `Run \`${CLI_COMMAND} setup\`.` }
2379
2393
  : {}),
2380
2394
  });
2381
2395
  }
@@ -2414,7 +2428,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2414
2428
  // digest/adapter drift, or a component drift that does not include the CLI
2415
2429
  // (for example a pinned obsolete skill bundle), remains a genuine `fail`.
2416
2430
  // The warn/fail derivation lives in the single `classifyComponentDrift`
2417
- // helper so `planr upgrade status` reuses this exact distinction rather
2431
+ // helper so `openplanr upgrade status` reuses this exact distinction rather
2418
2432
  // than re-deriving it; a digest/adapter drift is doctor's
2419
2433
  // flavour of an incompatible tuple.
2420
2434
  const { drift, genuineDrift, upgradeOnlyDrift, status } = classifyRuntimeComponentDrift({
@@ -2435,8 +2449,8 @@ export async function runtimeDoctor(projectDir, options = {}) {
2435
2449
  ...(drift
2436
2450
  ? {
2437
2451
  fix: upgradeOnlyDrift
2438
- ? 'Run `planr runtime update all --scope project` to refresh the lock to the upgraded component versions.'
2439
- : 'Run `planr runtime update all --scope project`.',
2452
+ ? `Run \`${CLI_COMMAND} runtime update all --scope project\` to refresh the lock to the upgraded component versions.`
2453
+ : `Run \`${CLI_COMMAND} runtime update all --scope project\`.`,
2440
2454
  }
2441
2455
  : {}),
2442
2456
  });
@@ -2446,7 +2460,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2446
2460
  code: 'runtime-lock-invalid',
2447
2461
  status: 'fail',
2448
2462
  message: 'Project runtime lock is not valid JSON or does not match the supported contract',
2449
- fix: 'Run `planr setup --scope project` after reviewing the existing lock.',
2463
+ fix: `Run \`${CLI_COMMAND} setup --scope project\` after reviewing the existing lock.`,
2450
2464
  });
2451
2465
  }
2452
2466
  }
@@ -2465,7 +2479,9 @@ export async function runtimeDoctor(projectDir, options = {}) {
2465
2479
  message: stateDrift
2466
2480
  ? 'Runtime lock adapters do not match the managed installation state'
2467
2481
  : 'Runtime lock adapters match the managed installation state',
2468
- ...(stateDrift ? { fix: 'Run `planr setup --dry-run`, then approve the repair.' } : {}),
2482
+ ...(stateDrift
2483
+ ? { fix: `Run \`${CLI_COMMAND} setup --dry-run\`, then approve the repair.` }
2484
+ : {}),
2469
2485
  });
2470
2486
  }
2471
2487
  }
@@ -2474,7 +2490,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2474
2490
  code: 'runtime-state-missing',
2475
2491
  status: 'warn',
2476
2492
  message: 'The project has a runtime lock but this machine has no managed adapter state',
2477
- fix: 'Run `planr setup` to install the locked runtime adapters on this machine.',
2493
+ fix: `Run \`${CLI_COMMAND} setup\` to install the locked runtime adapters on this machine.`,
2478
2494
  });
2479
2495
  }
2480
2496
  const globallyOwned = Object.values(state.userBundles ?? {}).flatMap((bundle) => bundle?.ownedFiles ?? []);
@@ -2485,6 +2501,9 @@ export async function runtimeDoctor(projectDir, options = {}) {
2485
2501
  const managedFileDiagnostic = diagnoseManagedRuntimeFiles(managedFiles, ownershipHash);
2486
2502
  if (managedFileDiagnostic)
2487
2503
  diagnostics.push(managedFileDiagnostic);
2504
+ const commandDiagnostic = diagnoseRetiredCommandSkills([...managedFiles, ...pluginSkillDocuments], options.commandRoots ?? [], managedBlockBytes);
2505
+ if (commandDiagnostic)
2506
+ diagnostics.push(commandDiagnostic);
2488
2507
  const verifiedPackages = new Map();
2489
2508
  const closureFailures = [];
2490
2509
  for (const file of managedFiles) {
@@ -2507,7 +2526,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2507
2526
  : 'Pinned runtime packages match their complete content inventories',
2508
2527
  ...(closureFailures.length
2509
2528
  ? {
2510
- fix: 'Run `planr doctor --fix` to preview exact-package repair; preserve modified cache bytes for inspection.',
2529
+ fix: `Run \`${CLI_COMMAND} doctor --fix\` to preview exact-package repair; preserve modified cache bytes for inspection.`,
2511
2530
  }
2512
2531
  : {}),
2513
2532
  });
@@ -2546,7 +2565,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2546
2565
  code: 'runtime-codex-skill-resolution',
2547
2566
  status: 'warn',
2548
2567
  message: `${stale.length} stale skill(s), ${missing.length} missing skill(s), ${unreadable.length} unreadable skill(s), ${ambiguous.length} multiple discovery path(s), ${oldCaches.length} skill(s) with inactive cached copies. CLI package ${codexDiscovery.packageVersion}; per-skill and Protocol versions, paths and closure hashes are in doctor --json. An already-open session may retain earlier skills.`,
2549
- fix: 'Run `planr setup --runtime codex --dry-run` in this profile, review the installer repair, then restart Codex. Do not delete plugin caches by hand.',
2568
+ fix: `Run \`${CLI_COMMAND} setup --runtime codex --dry-run\` in this profile, review the installer repair, then restart Codex. Do not delete plugin caches by hand.`,
2550
2569
  });
2551
2570
  }
2552
2571
  if (oldCaches.length > 0) {
@@ -2563,7 +2582,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2563
2582
  code: 'runtime-codex-plugin',
2564
2583
  status: 'warn',
2565
2584
  message: `Codex plugin state could not be inspected: ${inspection.error}`,
2566
- fix: 'Run `planr setup --runtime codex --dry-run` for an exact repair preview.',
2585
+ fix: `Run \`${CLI_COMMAND} setup --runtime codex --dry-run\` for an exact repair preview.`,
2567
2586
  });
2568
2587
  }
2569
2588
  else {
@@ -2578,7 +2597,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2578
2597
  ...(inspection.ready
2579
2598
  ? {}
2580
2599
  : {
2581
- fix: 'Run `planr doctor --fix` to preview repairs while preserving your saved discovery choice.',
2600
+ fix: `Run \`${CLI_COMMAND} doctor --fix\` to preview repairs while preserving your saved discovery choice.`,
2582
2601
  }),
2583
2602
  });
2584
2603
  if ((directSkillFiles > 0 && inspection.installed) || inspection.duplicates.length > 0) {
@@ -2597,7 +2616,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2597
2616
  code: 'home-project-install',
2598
2617
  status: 'warn',
2599
2618
  message: `${accidentalHomeFiles.length} project-scoped managed file(s) were installed in the home directory`,
2600
- fix: 'Run `planr doctor --fix` to preview and remove only recorded OpenPlanr-owned project content.',
2619
+ fix: `Run \`${CLI_COMMAND} doctor --fix\` to preview and remove only recorded OpenPlanr-owned project content.`,
2601
2620
  });
2602
2621
  }
2603
2622
  const provenanceDiagnostic = diagnoseRuntimeProvenance(projectDir);
@@ -2636,7 +2655,7 @@ export async function runtimeDoctor(projectDir, options = {}) {
2636
2655
  code: 'pipeline-doctor-unavailable',
2637
2656
  status: 'warn',
2638
2657
  message: 'The pipeline doctor did not return valid JSON',
2639
- fix: 'Run `planr doctor` for direct diagnostics.',
2658
+ fix: `Run \`${CLI_COMMAND} doctor\` for direct diagnostics.`,
2640
2659
  });
2641
2660
  }
2642
2661
  }