@open-agent-toolkit/cli 0.1.11 → 0.1.13

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 (31) hide show
  1. package/assets/docs/cli-utilities/configuration.md +66 -11
  2. package/assets/docs/reference/oat-directory-structure.md +22 -21
  3. package/assets/docs/workflows/projects/dispatch-ceiling.md +123 -0
  4. package/assets/docs/workflows/projects/implementation-execution.md +27 -9
  5. package/assets/docs/workflows/projects/index.md +1 -0
  6. package/assets/docs/workflows/projects/lifecycle.md +1 -1
  7. package/assets/public-package-versions.json +4 -4
  8. package/assets/skills/oat-project-implement/SKILL.md +125 -31
  9. package/assets/skills/oat-project-plan/SKILL.md +28 -28
  10. package/assets/skills/oat-project-quick-start/SKILL.md +28 -27
  11. package/dist/commands/config/index.d.ts.map +1 -1
  12. package/dist/commands/config/index.js +53 -13
  13. package/dist/commands/project/dispatch-ceiling/index.d.ts.map +1 -1
  14. package/dist/commands/project/dispatch-ceiling/index.js +126 -28
  15. package/dist/config/dispatch-ceiling-preset.d.ts +54 -0
  16. package/dist/config/dispatch-ceiling-preset.d.ts.map +1 -0
  17. package/dist/config/dispatch-ceiling-preset.js +32 -0
  18. package/dist/config/json.d.ts +2 -0
  19. package/dist/config/json.d.ts.map +1 -0
  20. package/dist/config/json.js +29 -0
  21. package/dist/config/oat-config.d.ts +9 -2
  22. package/dist/config/oat-config.d.ts.map +1 -1
  23. package/dist/config/oat-config.js +26 -18
  24. package/dist/config/resolve.d.ts.map +1 -1
  25. package/dist/config/resolve.js +5 -2
  26. package/dist/config/sync-config.d.ts.map +1 -1
  27. package/dist/config/sync-config.js +2 -1
  28. package/dist/providers/ceiling/registry.d.ts +53 -0
  29. package/dist/providers/ceiling/registry.d.ts.map +1 -0
  30. package/dist/providers/ceiling/registry.js +77 -0
  31. package/package.json +3 -2
@@ -0,0 +1,77 @@
1
+ import { VALID_CLAUDE_DISPATCH_CEILINGS, VALID_CODEX_DISPATCH_CEILINGS, } from '../../config/oat-config.js';
2
+ /** Codex pinned-variant base role names (must match sync-extension output). */
3
+ const CODEX_IMPLEMENTER_ROLE = 'oat-phase-implementer';
4
+ const CODEX_REVIEWER_ROLE = 'oat-reviewer';
5
+ /** Claude tier order, low → high, for above-orchestrator comparison. */
6
+ export const CLAUDE_TIER_ORDER = ['haiku', 'sonnet', 'opus'];
7
+ const codexAdapter = {
8
+ provider: 'codex',
9
+ supportsCeiling: true,
10
+ validValues: [...VALID_CODEX_DISPATCH_CEILINGS],
11
+ mechanism: 'pinned-variant',
12
+ compileToDispatchArgs(value, role) {
13
+ if (!VALID_CODEX_DISPATCH_CEILINGS.includes(value)) {
14
+ return null;
15
+ }
16
+ const baseRole = role === 'reviewer' ? CODEX_REVIEWER_ROLE : CODEX_IMPLEMENTER_ROLE;
17
+ return { variant: `${baseRole}-${value}` };
18
+ },
19
+ // Codex enforces via effort variants, not model tier; there is no
20
+ // above-orchestrator upgrade path to verify.
21
+ verifyOnDispatch() {
22
+ return false;
23
+ },
24
+ };
25
+ function isAboveOrchestrator(value, orchestratorTier) {
26
+ if (!orchestratorTier) {
27
+ return false;
28
+ }
29
+ const requestedIndex = CLAUDE_TIER_ORDER.indexOf(value);
30
+ const orchestratorIndex = CLAUDE_TIER_ORDER.indexOf(orchestratorTier);
31
+ if (requestedIndex < 0 || orchestratorIndex < 0) {
32
+ return false;
33
+ }
34
+ return requestedIndex > orchestratorIndex;
35
+ }
36
+ const claudeAdapter = {
37
+ provider: 'claude',
38
+ supportsCeiling: true,
39
+ validValues: [...VALID_CLAUDE_DISPATCH_CEILINGS],
40
+ mechanism: 'model-arg',
41
+ compileToDispatchArgs(value) {
42
+ if (!VALID_CLAUDE_DISPATCH_CEILINGS.includes(value)) {
43
+ return null;
44
+ }
45
+ return { model: value };
46
+ },
47
+ // Verify only when the request is above the orchestrator tier (upgrade path).
48
+ verifyOnDispatch(value, ctx) {
49
+ return isAboveOrchestrator(value, ctx.orchestratorTier);
50
+ },
51
+ };
52
+ function advisoryAdapter(provider) {
53
+ return {
54
+ provider,
55
+ supportsCeiling: false,
56
+ validValues: [],
57
+ mechanism: 'none',
58
+ compileToDispatchArgs() {
59
+ return null;
60
+ },
61
+ verifyOnDispatch() {
62
+ return false;
63
+ },
64
+ };
65
+ }
66
+ const REGISTERED_ADAPTERS = {
67
+ codex: codexAdapter,
68
+ claude: claudeAdapter,
69
+ };
70
+ /**
71
+ * Look up the ceiling adapter for a provider. Unknown providers fall back to an
72
+ * advisory no-op adapter (`supportsCeiling: false`, `mechanism: 'none'`,
73
+ * `compileToDispatchArgs → null`).
74
+ */
75
+ export function getCeilingAdapter(provider) {
76
+ return REGISTERED_ADAPTERS[provider] ?? advisoryAdapter(provider);
77
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-agent-toolkit/cli",
3
- "version": "0.1.11",
3
+ "version": "0.1.13",
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",
@@ -30,10 +30,11 @@
30
30
  "@inquirer/prompts": "^8.2.0",
31
31
  "chalk": "^5.6.2",
32
32
  "commander": "^12.1.0",
33
+ "jsonc-parser": "3.2.1",
33
34
  "ora": "^9.0.0",
34
35
  "yaml": "2.8.2",
35
36
  "zod": "^3.25.76",
36
- "@open-agent-toolkit/control-plane": "0.1.11"
37
+ "@open-agent-toolkit/control-plane": "0.1.13"
37
38
  },
38
39
  "devDependencies": {
39
40
  "@types/node": "^22.10.0",