@open-agent-toolkit/cli 0.3.18 → 0.3.19

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 (99) hide show
  1. package/assets/agents/oat-phase-implementer.md +81 -3
  2. package/assets/agents/oat-reviewer.md +15 -5
  3. package/assets/bundle-metadata.json +1 -1
  4. package/assets/docs/reference/cli-reference.md +8 -5
  5. package/assets/docs/reference/oat-directory-structure.md +1 -0
  6. package/assets/docs/reference/project-artifacts.md +17 -1
  7. package/assets/docs/reference/project-state-machine.md +19 -4
  8. package/assets/docs/skills/brainstorm.md +2 -1
  9. package/assets/docs/skills/index.md +1 -0
  10. package/assets/docs/workflows/advanced/autonomy.md +9 -1
  11. package/assets/docs/workflows/advanced/workflow-gates.md +11 -6
  12. package/assets/docs/workflows/approvals-and-automation.md +13 -8
  13. package/assets/docs/workflows/choose-workflow.md +16 -8
  14. package/assets/docs/workflows/projects/closeout/closeout-skills.md +8 -3
  15. package/assets/docs/workflows/projects/closeout/pr-flow.md +2 -0
  16. package/assets/docs/workflows/projects/execution/execution-skills.md +14 -2
  17. package/assets/docs/workflows/projects/execution/implementation-execution.md +15 -0
  18. package/assets/docs/workflows/projects/execution/picking-up-projects.md +10 -1
  19. package/assets/docs/workflows/projects/lifecycle.md +73 -9
  20. package/assets/docs/workflows/projects/planning/hill-checkpoints.md +18 -1
  21. package/assets/docs/workflows/projects/planning/planning-skills.md +11 -10
  22. package/assets/docs/workflows/projects/planning/starting-projects.md +92 -20
  23. package/assets/docs/workflows/projects/reviews/index.md +15 -2
  24. package/assets/docs/workflows/projects/reviews/review-flavors.md +5 -3
  25. package/assets/public-package-versions.json +4 -4
  26. package/assets/skills/oat-brainstorm/SKILL.md +33 -9
  27. package/assets/skills/oat-brainstorm/references/destinations.md +9 -4
  28. package/assets/skills/oat-docs/SKILL.md +9 -4
  29. package/assets/skills/oat-pjm-review-backlog/SKILL.md +2 -2
  30. package/assets/skills/oat-project-autonomous/SKILL.md +14 -8
  31. package/assets/skills/oat-project-autonomous/references/gate-inventory.md +17 -2
  32. package/assets/skills/oat-project-brief/SKILL.md +592 -0
  33. package/assets/skills/oat-project-brief/references/brief-contract.md +294 -0
  34. package/assets/skills/oat-project-brief/references/docs/autonomy-contract.md +393 -0
  35. package/assets/skills/oat-project-brief/references/docs/gate-approval-record.md +84 -0
  36. package/assets/skills/oat-project-capture/SKILL.md +2 -2
  37. package/assets/skills/oat-project-complete/SKILL.md +7 -2
  38. package/assets/skills/oat-project-discover/SKILL.md +3 -2
  39. package/assets/skills/oat-project-dispatch-subagents/SKILL.md +9 -1
  40. package/assets/skills/oat-project-document/SKILL.md +11 -1
  41. package/assets/skills/oat-project-document/references/docs/autonomy-contract.md +17 -2
  42. package/assets/skills/oat-project-implement/SKILL.md +1 -1
  43. package/assets/skills/oat-project-implement/references/completion-and-closeout.md +40 -0
  44. package/assets/skills/oat-project-implement/references/docs/autonomy-contract.md +17 -2
  45. package/assets/skills/oat-project-implement/references/docs/gate-approval-record.md +4 -0
  46. package/assets/skills/oat-project-implement/references/phase-execution.md +166 -1
  47. package/assets/skills/oat-project-implement/references/plan-and-resume.md +97 -3
  48. package/assets/skills/oat-project-import-plan/SKILL.md +5 -1
  49. package/assets/skills/oat-project-lite/SKILL.md +4 -1
  50. package/assets/skills/oat-project-lite/references/docs/autonomy-contract.md +17 -2
  51. package/assets/skills/oat-project-new/SKILL.md +5 -1
  52. package/assets/skills/oat-project-next/SKILL.md +31 -4
  53. package/assets/skills/oat-project-next/references/docs/gate-approval-record.md +4 -0
  54. package/assets/skills/oat-project-plan/SKILL.md +12 -2
  55. package/assets/skills/oat-project-plan-writing/SKILL.md +6 -4
  56. package/assets/skills/oat-project-pr-final/SKILL.md +15 -3
  57. package/assets/skills/oat-project-pr-final/references/docs/autonomy-contract.md +17 -2
  58. package/assets/skills/oat-project-pr-progress/SKILL.md +31 -4
  59. package/assets/skills/oat-project-progress/SKILL.md +30 -8
  60. package/assets/skills/oat-project-progress/references/docs/gate-approval-record.md +4 -0
  61. package/assets/skills/oat-project-promote-spec-driven/SKILL.md +2 -2
  62. package/assets/skills/oat-project-quick-start/SKILL.md +60 -1
  63. package/assets/skills/oat-project-quick-start/references/docs/autonomy-contract.md +17 -2
  64. package/assets/skills/oat-project-quick-start/references/docs/gate-approval-record.md +4 -0
  65. package/assets/skills/oat-project-reconcile/SKILL.md +65 -3
  66. package/assets/skills/oat-project-review-provide/SKILL.md +331 -12
  67. package/assets/skills/oat-project-review-receive/SKILL.md +86 -1
  68. package/assets/skills/oat-project-revise/SKILL.md +27 -4
  69. package/assets/skills/oat-project-summary/SKILL.md +95 -2
  70. package/assets/skills/oat-wave-execute/SKILL.md +3 -2
  71. package/assets/templates/implementation-brief.md +165 -0
  72. package/assets/templates/plan-brief.md +140 -0
  73. package/assets/templates/plan.md +1 -1
  74. package/assets/templates/state.md +8 -2
  75. package/dist/commands/project/new/scaffold.d.ts +1 -1
  76. package/dist/commands/project/new/scaffold.d.ts.map +1 -1
  77. package/dist/commands/project/new/scaffold.js +35 -7
  78. package/dist/commands/project/promote/promote.d.ts +32 -1
  79. package/dist/commands/project/promote/promote.d.ts.map +1 -1
  80. package/dist/commands/project/promote/promote.js +562 -5
  81. package/dist/commands/project/validate-plan/frontmatter.d.ts +12 -0
  82. package/dist/commands/project/validate-plan/frontmatter.d.ts.map +1 -0
  83. package/dist/commands/project/validate-plan/frontmatter.js +27 -0
  84. package/dist/commands/project/validate-plan/index.d.ts.map +1 -1
  85. package/dist/commands/project/validate-plan/index.js +52 -18
  86. package/dist/commands/project/validate-plan/profiles.d.ts +54 -0
  87. package/dist/commands/project/validate-plan/profiles.d.ts.map +1 -0
  88. package/dist/commands/project/validate-plan/profiles.js +269 -0
  89. package/dist/commands/project/validate-plan/validate-plan.d.ts +3 -19
  90. package/dist/commands/project/validate-plan/validate-plan.d.ts.map +1 -1
  91. package/dist/commands/project/validate-plan/validate-plan.js +5 -82
  92. package/dist/commands/shared/frontmatter.d.ts +1 -1
  93. package/dist/commands/shared/frontmatter.d.ts.map +1 -1
  94. package/dist/commands/shared/frontmatter.js +1 -0
  95. package/dist/commands/state/generate.d.ts.map +1 -1
  96. package/dist/commands/state/generate.js +51 -2
  97. package/dist/commands/tools/shared/pack-manifest.d.ts.map +1 -1
  98. package/dist/commands/tools/shared/pack-manifest.js +3 -0
  99. package/package.json +2 -2
@@ -11,7 +11,7 @@ import { resolveProjectsRoot } from '../shared/oat-paths.js';
11
11
  import { resolveScopeRoot } from '../shared/project-scope.js';
12
12
  import { readOatLocalConfig } from '../../config/oat-config.js';
13
13
  import { ensureDir, fileExists } from '../../fs/io.js';
14
- import { evaluateQuickPlanReadiness, quickPlanNotReadyReason, } from '@open-agent-toolkit/control-plane';
14
+ import { BRIEF_MODES, evaluateQuickPlanReadiness, quickPlanNotReadyReason, } from '@open-agent-toolkit/control-plane';
15
15
  import YAML from 'yaml';
16
16
  const defaultGit = {
17
17
  isGitRepo(root) {
@@ -238,6 +238,24 @@ function calculateStaleness(knowledge, git, repoRoot, today) {
238
238
  }
239
239
  return result;
240
240
  }
241
+ /**
242
+ * True when the frontmatter workflow mode belongs to the brief mode family.
243
+ * The dashboard keeps the raw frontmatter string, so it checks membership
244
+ * against the control plane's registry rather than a local list.
245
+ */
246
+ function isBriefWorkflow(workflowMode) {
247
+ return BRIEF_MODES.includes(workflowMode);
248
+ }
249
+ /**
250
+ * Printed for brief projects in the implement phase, where the router's
251
+ * brief-unit guard applies. The dashboard reads `state.md` frontmatter only
252
+ * and never phase-unit progress, so it cannot apply that guard at
253
+ * `implement:complete`/`pr_open`.
254
+ */
255
+ const BRIEF_ROUTER_AUTHORITY_NOTE = '> Brief projects count progress in phase-units, which this dashboard does not read. ' +
256
+ '`oat project status` and `oat-project-next` use the control-plane router, which is the ' +
257
+ 'authority for the brief-unit guard: an unaccepted phase-unit sends the project back to ' +
258
+ '`oat-project-implement` before any finalization step.';
241
259
  function computeNextStep(project, hasProjects, state) {
242
260
  if (project.status === 'not set') {
243
261
  if (project.lastPausedProject) {
@@ -283,11 +301,15 @@ function computeNextStep(project, hasProjects, state) {
283
301
  // projects whose state.md still lists `spec` in oat_hill_checkpoints route
284
302
  // to oat-project-design here so they finish through the consolidated flow
285
303
  // rather than being pushed back at the deprecated standalone skill.
304
+ // Brief modes own their plan phase through the brief entry skill, as the
305
+ // router's mode-aware current-phase lookup does.
286
306
  const phaseSkillMap = {
287
307
  discovery: 'oat-project-discover',
288
308
  spec: 'oat-project-design',
289
309
  design: 'oat-project-design',
290
- plan: 'oat-project-plan',
310
+ plan: isBriefWorkflow(state.workflowMode)
311
+ ? 'oat-project-brief'
312
+ : 'oat-project-plan',
291
313
  implement: 'oat-project-implement',
292
314
  };
293
315
  return {
@@ -366,6 +388,25 @@ function computeNextStep(project, hasProjects, state) {
366
388
  step: 'oat-project-lite',
367
389
  reason: 'Continue lite planning',
368
390
  },
391
+ // Brief routes mirror the router's BRIEF_ROUTES. Parity with
392
+ // `recommendSkill` is bounded to these plan-phase states and
393
+ // `implement:in_progress` (generate.test.ts pins it): this dashboard has no
394
+ // phase-unit progress, so at `implement:complete`/`pr_open` a brief follows
395
+ // the shared post-implementation map below and the router, reached through
396
+ // `oat project status` and `oat-project-next`, is the authority for the
397
+ // brief-unit guard. The dashboard prints a note saying so.
398
+ 'brief:plan:in_progress': {
399
+ step: 'oat-project-brief',
400
+ reason: 'Continue the project brief',
401
+ },
402
+ 'brief:plan:complete': {
403
+ step: 'oat-project-implement',
404
+ reason: 'Start implementation from the approved brief',
405
+ },
406
+ 'brief:implement:in_progress': {
407
+ step: 'oat-project-implement',
408
+ reason: 'Continue implementation',
409
+ },
369
410
  };
370
411
  if (routeMap[key])
371
412
  return routeMap[key];
@@ -563,6 +604,13 @@ function buildDashboardMarkdown(project, state, knowledge, staleness, nextStep,
563
604
  lines.push('');
564
605
  lines.push(`**${nextStep.step}** - ${nextStep.reason}`);
565
606
  lines.push('');
607
+ if (project.status === 'active' &&
608
+ state &&
609
+ state.phase === 'implement' &&
610
+ isBriefWorkflow(state.workflowMode)) {
611
+ lines.push(BRIEF_ROUTER_AUTHORITY_NOTE);
612
+ lines.push('');
613
+ }
566
614
  lines.push('## Quick Commands');
567
615
  lines.push('');
568
616
  lines.push('- `oat-project-progress` - Check current status');
@@ -571,6 +619,7 @@ function buildDashboardMarkdown(project, state, knowledge, staleness, nextStep,
571
619
  lines.push('- `oat-project-quick-start` - Create a quick workflow project');
572
620
  lines.push('- `oat-project-import-plan` - Import an external provider plan');
573
621
  lines.push('- `oat-project-lite` - Create a lite workflow project');
622
+ lines.push('- `oat-project-brief` - Create a brief workflow project');
574
623
  lines.push('- `oat project open <name>` - Open or resume a project');
575
624
  lines.push('- `oat project pause [name]` - Pause active or named project');
576
625
  lines.push('- `oat-project-complete` - Mark project complete');
@@ -1 +1 @@
1
- {"version":3,"file":"pack-manifest.d.ts","sourceRoot":"","sources":["../../../../src/commands/tools/shared/pack-manifest.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,QAAQ,EACT,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,GACf,CAAC;AAEF,eAAO,MAAM,UAAU,4GASiB,CAAC;AAEzC,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,QAAQ,CAE3D;AAoID,eAAO,MAAM,aAAa,EAAE,SAAS,cAAc,EA2LlD,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAMhE;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,QAAQ,EACd,IAAI,CAAC,EAAE,aAAa,GACnB,SAAS,mBAAmB,EAAE,CAGhC;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAC9C,MAAM,EAAE,CAQV;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAIlE;AAoJD,wBAAgB,oBAAoB,CAClC,QAAQ,GAAE,SAAS,cAAc,EAAkB,GAClD,IAAI,CAiEN"}
1
+ {"version":3,"file":"pack-manifest.d.ts","sourceRoot":"","sources":["../../../../src/commands/tools/shared/pack-manifest.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,QAAQ,EACT,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,GACf,CAAC;AAEF,eAAO,MAAM,UAAU,4GASiB,CAAC;AAEzC,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,QAAQ,CAE3D;AAqID,eAAO,MAAM,aAAa,EAAE,SAAS,cAAc,EA6LlD,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAMhE;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,QAAQ,EACd,IAAI,CAAC,EAAE,aAAa,GACnB,SAAS,mBAAmB,EAAE,CAGhC;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAC9C,MAAM,EAAE,CAQV;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAIlE;AAoJD,wBAAgB,oBAAoB,CAClC,QAAQ,GAAE,SAAS,cAAc,EAAkB,GAClD,IAAI,CAiEN"}
@@ -77,6 +77,7 @@ const WORKFLOW_SKILL_NAMES = [
77
77
  'oat-cursor-cloud-projects',
78
78
  'oat-explainer-kit',
79
79
  'oat-project-autonomous',
80
+ 'oat-project-brief',
80
81
  'oat-project-capture',
81
82
  'oat-project-clear-active',
82
83
  'oat-project-complete',
@@ -193,7 +194,9 @@ export const PACK_MANIFEST = [
193
194
  'design.md',
194
195
  'plan.md',
195
196
  'plan-lite.md',
197
+ 'plan-brief.md',
196
198
  'implementation.md',
199
+ 'implementation-brief.md',
197
200
  'summary.md',
198
201
  'project-log.md',
199
202
  'project-retro.md',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-agent-toolkit/cli",
3
- "version": "0.3.18",
3
+ "version": "0.3.19",
4
4
  "private": false,
5
5
  "description": "Open Agent Toolkit CLI",
6
6
  "homepage": "https://github.com/voxmedia/open-agent-toolkit/tree/main/packages/cli",
@@ -35,7 +35,7 @@
35
35
  "ora": "^9.0.0",
36
36
  "yaml": "2.8.2",
37
37
  "zod": "^3.25.76",
38
- "@open-agent-toolkit/control-plane": "0.3.18"
38
+ "@open-agent-toolkit/control-plane": "0.3.19"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/node": "^22.10.0",