odd-studio 3.3.6 → 3.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -19
- package/bin/commands/init.js +1 -1
- package/bin/commands/status.js +1 -1
- package/bin/odd-studio.js +1 -1
- package/codex-plugin/.codex-plugin/plugin.json +3 -3
- package/codex-plugin/README.md +2 -2
- package/package.json +1 -1
- package/scripts/install-codex-commands.js +3 -2
- package/skill/SKILL.md +72 -8
- package/skill/odd-build/SKILL.md +33 -0
- package/skill/odd-plan/SKILL.md +35 -0
- package/skill/odd-status/SKILL.md +32 -0
- package/templates/AGENTS.md +5 -5
package/README.md
CHANGED
|
@@ -27,27 +27,24 @@ ODD Studio is the companion tool to **The ODD Way to Build Software with Agentic
|
|
|
27
27
|
Add the following into Terminal inside your project folder, NOT your system root folder.
|
|
28
28
|
|
|
29
29
|
```bash
|
|
30
|
-
npx odd-studio init
|
|
31
|
-
cd my-project
|
|
30
|
+
npx odd-studio init
|
|
32
31
|
```
|
|
33
32
|
|
|
34
33
|
### For OpenCode (with Ollama / local models)
|
|
35
34
|
|
|
36
35
|
```bash
|
|
37
|
-
npx odd-studio init
|
|
38
|
-
cd my-project
|
|
36
|
+
npx odd-studio init --agent opencode
|
|
39
37
|
```
|
|
40
38
|
|
|
41
39
|
### For Codex
|
|
42
40
|
|
|
43
41
|
```bash
|
|
44
|
-
npx odd-studio init
|
|
45
|
-
cd my-project
|
|
42
|
+
npx odd-studio init --agent codex
|
|
46
43
|
```
|
|
47
44
|
|
|
48
|
-
In Codex, start ODD with
|
|
49
|
-
|
|
50
|
-
|
|
45
|
+
In Codex, start ODD with a natural-language kickoff such as `use ODD`, `start ODD`, or `begin ODD`.
|
|
46
|
+
For a state check, use `ODD status`. To continue building, use `ODD build`.
|
|
47
|
+
ODD now ships Codex skill-discovery metadata so these prompts can match the plugin directly instead of relying only on `AGENTS.md`.
|
|
51
48
|
|
|
52
49
|
If this project was originally set up for Claude Code or OpenCode and you want to add Codex later, run:
|
|
53
50
|
|
|
@@ -58,15 +55,13 @@ npx odd-studio upgrade --agent codex
|
|
|
58
55
|
### For Claude Code and OpenCode on the same machine
|
|
59
56
|
|
|
60
57
|
```bash
|
|
61
|
-
npx odd-studio init
|
|
62
|
-
cd my-project
|
|
58
|
+
npx odd-studio init --agent both
|
|
63
59
|
```
|
|
64
60
|
|
|
65
61
|
### For every supported agent on the same machine
|
|
66
62
|
|
|
67
63
|
```bash
|
|
68
|
-
npx odd-studio init
|
|
69
|
-
cd my-project
|
|
64
|
+
npx odd-studio init --agent all
|
|
70
65
|
```
|
|
71
66
|
|
|
72
67
|
Everything is installed into your project folder. Nothing is written to your home directory or installed globally.
|
|
@@ -83,7 +78,7 @@ That single command:
|
|
|
83
78
|
**Then open your project in your AI coding agent and start ODD:**
|
|
84
79
|
```
|
|
85
80
|
Claude Code / OpenCode: /odd
|
|
86
|
-
Codex:
|
|
81
|
+
Codex: `use ODD`
|
|
87
82
|
```
|
|
88
83
|
|
|
89
84
|
---
|
|
@@ -94,7 +89,7 @@ Codex: /odd
|
|
|
94
89
|
|-------|-------------------|---------------|
|
|
95
90
|
| **Claude Code** | Project-local skills (`.claude/skills/`), hooks (`.claude/settings.local.json`), odd-flow MCP (`.mcp.json`) | Claude (Opus, Sonnet, Haiku) |
|
|
96
91
|
| **OpenCode** | Project-local commands (`.opencode/commands/`), JS plugin (`.opencode/plugins/`), odd-flow MCP (`opencode.json`) | Any provider — Ollama (Qwen3-Coder, MiniMax M2.7, DeepSeek), OpenAI, Anthropic, Google, Groq, and 75+ more |
|
|
97
|
-
| **Codex** | Project-local plugin (`plugins/odd-studio/`),
|
|
92
|
+
| **Codex** | Project-local plugin (`plugins/odd-studio/`), skill-discovery metadata in `SKILL.md`, local marketplace registration (`.agents/plugins/marketplace.json`), plugin MCP (`plugins/odd-studio/.mcp.json`) | Codex |
|
|
98
93
|
|
|
99
94
|
All supported agents get the same methodology, the same safety enforcement, and the same odd-flow-powered cross-session memory. The only difference is the delivery mechanism.
|
|
100
95
|
|
|
@@ -107,7 +102,7 @@ Your AI coding agent loads the ODD orchestrator. It checks whether you have an e
|
|
|
107
102
|
- **New project:** Welcomes you, explains what you're about to build together, and starts with the first question: *Who uses this system, and what do they actually need?*
|
|
108
103
|
- **Returning project:** Shows you exactly where you left off and resumes from there. Nothing is lost between sessions.
|
|
109
104
|
|
|
110
|
-
From there, use the dedicated direct commands
|
|
105
|
+
From there, use the dedicated direct commands in Claude Code or OpenCode, natural-language ODD prompts in Codex, or type sub-commands inside the active ODD session once ODD is active.
|
|
111
106
|
|
|
112
107
|
---
|
|
113
108
|
|
|
@@ -164,7 +159,7 @@ ODD Studio installs safety gates that run automatically throughout your build. T
|
|
|
164
159
|
|
|
165
160
|
**Claude Code:** Implemented as shell hooks registered in `.claude/settings.local.json` (project-local).
|
|
166
161
|
**OpenCode:** Implemented as a JS plugin (`odd-studio-plugin.js`) in `.opencode/plugins/` (project-local).
|
|
167
|
-
**Codex:** Implemented as a project-local plugin in `plugins/odd-studio/` with `hooks.json`, plugin-local skills, and
|
|
162
|
+
**Codex:** Implemented as a project-local plugin in `plugins/odd-studio/` with `hooks.json`, plugin-local skills, and Codex skill-discovery metadata for prompts such as `use ODD`, `ODD status`, and `ODD build`.
|
|
168
163
|
|
|
169
164
|
---
|
|
170
165
|
|
|
@@ -228,7 +223,7 @@ The AI proposes the stack based on your outcomes. You approve it based on conseq
|
|
|
228
223
|
|
|
229
224
|
## Project structure
|
|
230
225
|
|
|
231
|
-
After `npx odd-studio init
|
|
226
|
+
After `npx odd-studio init`, your project looks like this:
|
|
232
227
|
|
|
233
228
|
```
|
|
234
229
|
my-project/
|
|
@@ -325,7 +320,6 @@ npx odd-studio export # Instructions for exporting the Sessio
|
|
|
325
320
|
Run from inside your existing ODD project:
|
|
326
321
|
|
|
327
322
|
```bash
|
|
328
|
-
cd my-project
|
|
329
323
|
npx odd-studio@latest upgrade
|
|
330
324
|
```
|
|
331
325
|
|
package/bin/commands/init.js
CHANGED
|
@@ -218,7 +218,7 @@ function printNextSteps({ isClaude, isOpenCode, isCodex, projectName }) {
|
|
|
218
218
|
}
|
|
219
219
|
if (isCodex) {
|
|
220
220
|
console.log(` ${stepN++}. Open your project in Codex`);
|
|
221
|
-
console.log(` ${stepN++}. Start ODD in Codex: ` + chalk.cyan('
|
|
221
|
+
console.log(` ${stepN++}. Start ODD in Codex: ` + chalk.cyan('use ODD') + chalk.dim(' (or say ODD status to inspect state first)'));
|
|
222
222
|
}
|
|
223
223
|
if (isClaude || isOpenCode) {
|
|
224
224
|
console.log(` ${stepN++}. Start your ODD session: ` + chalk.cyan('/odd'));
|
package/bin/commands/status.js
CHANGED
|
@@ -43,7 +43,7 @@ export function registerStatus(program, deps) {
|
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
print.blank();
|
|
46
|
-
console.log(chalk.dim(' Open your AI coding agent and
|
|
46
|
+
console.log(chalk.dim(' Open your AI coding agent and resume with /odd in Claude/OpenCode or by saying use ODD in Codex. Say ODD status in Codex for a state-only check.'));
|
|
47
47
|
print.blank();
|
|
48
48
|
});
|
|
49
49
|
}
|
package/bin/odd-studio.js
CHANGED
|
@@ -15,7 +15,7 @@ import { registerUninstall } from './commands/uninstall.js';
|
|
|
15
15
|
const __filename = fileURLToPath(import.meta.url);
|
|
16
16
|
const __dirname = path.dirname(__filename);
|
|
17
17
|
const require = createRequire(import.meta.url);
|
|
18
|
-
const pkg = require('../package.json'); // v3.3.
|
|
18
|
+
const pkg = require('../package.json'); // v3.3.8
|
|
19
19
|
|
|
20
20
|
const PACKAGE_ROOT = path.resolve(__dirname, '..');
|
|
21
21
|
const deps = { PACKAGE_ROOT, print };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "odd-studio",
|
|
3
|
-
"version": "3.3.
|
|
3
|
+
"version": "3.3.8",
|
|
4
4
|
"description": "Outcome-Driven Development planning and build harness for domain experts building serious software with AI.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "ODD Studio"
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"interface": {
|
|
22
22
|
"displayName": "ODD Studio",
|
|
23
23
|
"shortDescription": "Guide planning, build sequencing, and verification with Outcome-Driven Development",
|
|
24
|
-
"longDescription": "Use ODD Studio to plan around personas, outcomes, contracts, and phased delivery, then run a disciplined build and verification flow with odd-flow memory, safety gates, and Codex
|
|
24
|
+
"longDescription": "Use ODD Studio to plan around personas, outcomes, contracts, and phased delivery, then run a disciplined build and verification flow with odd-flow memory, safety gates, and Codex-native skill matching for prompts such as use ODD, ODD status, and ODD build.",
|
|
25
25
|
"developerName": "ODD Studio",
|
|
26
26
|
"category": "Coding",
|
|
27
27
|
"capabilities": [
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"websiteURL": "https://github.com/odd-studio/odd-studio",
|
|
33
33
|
"privacyPolicyURL": "https://github.com/odd-studio/odd-studio",
|
|
34
34
|
"termsOfServiceURL": "https://github.com/odd-studio/odd-studio",
|
|
35
|
-
"defaultPrompt": "
|
|
35
|
+
"defaultPrompt": "Use ODD to start or resume this ODD Studio project, or say ODD status to inspect the current state",
|
|
36
36
|
"brandColor": "#111111",
|
|
37
37
|
"screenshots": []
|
|
38
38
|
}
|
package/codex-plugin/README.md
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
|
|
3
3
|
This plugin installs the ODD Studio planning and build harness into Codex as a project-local plugin.
|
|
4
4
|
|
|
5
|
-
Primary entrypoints in Codex are
|
|
6
|
-
`AGENTS.md`
|
|
5
|
+
Primary entrypoints in Codex are natural-language prompts such as `use ODD`, `start ODD`, `ODD status`, and `ODD build`.
|
|
6
|
+
This plugin includes Codex skill-discovery metadata so ODD can be matched from those prompts. `AGENTS.md` reinforces the workflow, but the goal is native skill pickup rather than a fake slash-command surface.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "odd-studio",
|
|
3
|
-
"version": "3.3.
|
|
3
|
+
"version": "3.3.8",
|
|
4
4
|
"description": "Outcome-Driven Development for AI coding agents — a planning and build harness for domain experts building serious software with AI. Works with Claude Code, OpenCode, and Codex.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"claude-code",
|
|
@@ -5,6 +5,7 @@ import { COMMANDS } from './command-definitions.js';
|
|
|
5
5
|
import { CODEX_PLUGIN_NAME } from './assets.js';
|
|
6
6
|
|
|
7
7
|
const CODEX_ODD_ROOT = `plugins/${CODEX_PLUGIN_NAME}/skills/odd/`;
|
|
8
|
+
const CODEX_COMMAND_PREFIX = `/${CODEX_PLUGIN_NAME}:`;
|
|
8
9
|
|
|
9
10
|
export default async function installCodexCommands(pluginDest) {
|
|
10
11
|
const commandsDest = path.join(pluginDest, 'commands');
|
|
@@ -26,7 +27,7 @@ function buildMainCommand(cmd) {
|
|
|
26
27
|
`description: "${cmd.description}"`,
|
|
27
28
|
'---',
|
|
28
29
|
'',
|
|
29
|
-
|
|
30
|
+
`# ${CODEX_COMMAND_PREFIX}${cmd.name}`,
|
|
30
31
|
'',
|
|
31
32
|
'You are now operating as the ODD Studio coach.',
|
|
32
33
|
'',
|
|
@@ -44,7 +45,7 @@ function buildSubcommand(cmd) {
|
|
|
44
45
|
`description: "${cmd.description}"`,
|
|
45
46
|
'---',
|
|
46
47
|
'',
|
|
47
|
-
`#
|
|
48
|
+
`# ${CODEX_COMMAND_PREFIX}${cmd.name}`,
|
|
48
49
|
'',
|
|
49
50
|
rewriteBody(cmd.body),
|
|
50
51
|
'',
|
package/skill/SKILL.md
CHANGED
|
@@ -1,7 +1,68 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: "odd"
|
|
3
|
-
version: "3.3.
|
|
3
|
+
version: "3.3.8"
|
|
4
4
|
description: "Outcome-Driven Development planning and build coach. Use /odd to start or resume an ODD project — building personas, writing outcomes, mapping contracts, creating a Master Implementation Plan, and directing a odd-flow-powered build. Designed for domain experts who are not developers. Works with Claude Code, OpenCode, and Codex."
|
|
5
|
+
metadata:
|
|
6
|
+
priority: 10
|
|
7
|
+
pathPatterns:
|
|
8
|
+
- '.odd/state.json'
|
|
9
|
+
- 'docs/plan.md'
|
|
10
|
+
- 'docs/outcomes/**'
|
|
11
|
+
- 'docs/personas/**'
|
|
12
|
+
- 'docs/contract-map.md'
|
|
13
|
+
- 'docs/session-brief*.md'
|
|
14
|
+
- 'AGENTS.md'
|
|
15
|
+
bashPatterns:
|
|
16
|
+
- '\bnpx\s+odd-studio\s+status\b'
|
|
17
|
+
- '\bnpx\s+odd-studio\s+upgrade\b'
|
|
18
|
+
- '\bnpx\s+odd-studio\s+export\b'
|
|
19
|
+
promptSignals:
|
|
20
|
+
phrases:
|
|
21
|
+
- "use odd"
|
|
22
|
+
- "start odd"
|
|
23
|
+
- "begin odd"
|
|
24
|
+
- "resume odd"
|
|
25
|
+
- "continue odd"
|
|
26
|
+
- "odd studio"
|
|
27
|
+
- "outcome-driven development"
|
|
28
|
+
- "odd status"
|
|
29
|
+
- "odd build"
|
|
30
|
+
- "odd plan"
|
|
31
|
+
- "show odd status"
|
|
32
|
+
- "resume odd project"
|
|
33
|
+
allOf:
|
|
34
|
+
- [odd, status]
|
|
35
|
+
- [odd, build]
|
|
36
|
+
- [odd, plan]
|
|
37
|
+
- [outcome, driven]
|
|
38
|
+
anyOf:
|
|
39
|
+
- "odd"
|
|
40
|
+
- "outcome-driven"
|
|
41
|
+
- "persona"
|
|
42
|
+
- "outcome"
|
|
43
|
+
- "contract map"
|
|
44
|
+
- "phase brief"
|
|
45
|
+
noneOf: []
|
|
46
|
+
minScore: 5
|
|
47
|
+
retrieval:
|
|
48
|
+
aliases:
|
|
49
|
+
- odd
|
|
50
|
+
- odd studio
|
|
51
|
+
- outcome-driven development
|
|
52
|
+
- odd kickoff
|
|
53
|
+
- odd coach
|
|
54
|
+
intents:
|
|
55
|
+
- start odd
|
|
56
|
+
- resume odd project
|
|
57
|
+
- show odd status
|
|
58
|
+
- continue odd planning
|
|
59
|
+
- continue odd build
|
|
60
|
+
entities:
|
|
61
|
+
- personas
|
|
62
|
+
- outcomes
|
|
63
|
+
- contracts
|
|
64
|
+
- master implementation plan
|
|
65
|
+
- phase brief
|
|
5
66
|
---
|
|
6
67
|
|
|
7
68
|
# ODD Studio — Outcome-Driven Development Coach
|
|
@@ -35,7 +96,7 @@ Display this when no existing state is found:
|
|
|
35
96
|
|
|
36
97
|
---
|
|
37
98
|
|
|
38
|
-
Welcome to ODD Studio v3.3.
|
|
99
|
+
Welcome to ODD Studio v3.3.8.
|
|
39
100
|
|
|
40
101
|
You are about to plan and build something real — using a methodology called Outcome-Driven Development. Before we write a single line of code, we are going to get precise about three things:
|
|
41
102
|
|
|
@@ -49,7 +110,7 @@ Once your personas, outcomes, and contracts are documented, we generate a Master
|
|
|
49
110
|
|
|
50
111
|
This process takes longer than just asking Claude to "build a platform". It is also the reason projects built this way actually work — and why projects that skip it usually get rebuilt from scratch.
|
|
51
112
|
|
|
52
|
-
Ready? Type
|
|
113
|
+
Ready? Type `*plan` to begin, or `*help` to see all available commands.
|
|
53
114
|
|
|
54
115
|
---
|
|
55
116
|
|
|
@@ -59,7 +120,7 @@ Display this when existing state is found. Replace the bracketed values with act
|
|
|
59
120
|
|
|
60
121
|
---
|
|
61
122
|
|
|
62
|
-
Welcome back to ODD Studio v3.3.
|
|
123
|
+
Welcome back to ODD Studio v3.3.8.
|
|
63
124
|
|
|
64
125
|
**Project:** [project.name]
|
|
65
126
|
**Current Phase:** [state.currentPhase]
|
|
@@ -75,7 +136,7 @@ Welcome back to ODD Studio v3.3.6.
|
|
|
75
136
|
|
|
76
137
|
**What's next:** [state.nextStep]
|
|
77
138
|
|
|
78
|
-
Type
|
|
139
|
+
Type `*plan` to continue planning, `*build` to enter build mode, or `*status` for full detail.
|
|
79
140
|
|
|
80
141
|
---
|
|
81
142
|
|
|
@@ -129,7 +190,7 @@ Route to the correct planning stage based on current state:
|
|
|
129
190
|
- If plan is approved but `techStackDecided` is false: explain the transition to technical architecture, then load `docs/planning/build-planner.md` and activate Rachel for Step 9.
|
|
130
191
|
- If `techStackDecided` is true but `designApproachDecided` is false: explain the transition to design, then load `docs/planning/build-planner.md` and activate Rachel for Step 9b.
|
|
131
192
|
- If `designApproachDecided` is true but `architectureDocGenerated` is not true: explain the transition to document generation, then load `docs/planning/build-planner.md` and activate Rachel for Step 9d. Rachel will generate `docs/architecture.md` and `docs/ui/design-system.md` — the authoritative reference documents that build agents read before writing any code.
|
|
132
|
-
- If `architectureDocGenerated` is true: congratulate the user and suggest
|
|
193
|
+
- If `architectureDocGenerated` is true: congratulate the user and suggest `*build` or `*export`.
|
|
133
194
|
|
|
134
195
|
Always announce which stage you are routing to and why before loading the sub-document.
|
|
135
196
|
|
|
@@ -341,7 +402,7 @@ Checkpoint: clear.
|
|
|
341
402
|
|
|
342
403
|
**Next:** [next outcome name and one-sentence description]
|
|
343
404
|
|
|
344
|
-
Type
|
|
405
|
+
Type `*build` to begin, or `*status` to see the full phase progress.
|
|
345
406
|
|
|
346
407
|
---
|
|
347
408
|
|
|
@@ -438,7 +499,10 @@ Display this reference:
|
|
|
438
499
|
|
|
439
500
|
**ODD Studio Commands**
|
|
440
501
|
|
|
441
|
-
You can use either format:
|
|
502
|
+
You can use either format:
|
|
503
|
+
- `*command` within an active ODD session
|
|
504
|
+
- direct slash commands in hosts that support them
|
|
505
|
+
- natural-language kickoff phrases in Codex such as `use ODD`, `start ODD`, `ODD status`, or `ODD build`
|
|
442
506
|
|
|
443
507
|
| Within `/odd` | Direct command | What it does |
|
|
444
508
|
|---|---|---|
|
package/skill/odd-build/SKILL.md
CHANGED
|
@@ -2,6 +2,39 @@
|
|
|
2
2
|
name: "odd-build"
|
|
3
3
|
version: "1.0.0"
|
|
4
4
|
description: "ODD Studio build command. Reads project state from odd-flow memory and executes the *build protocol from the ODD Studio coach. Use /odd-build to start or continue a build session."
|
|
5
|
+
metadata:
|
|
6
|
+
priority: 9
|
|
7
|
+
pathPatterns:
|
|
8
|
+
- '.odd/state.json'
|
|
9
|
+
- 'docs/plan.md'
|
|
10
|
+
- 'docs/outcomes/**'
|
|
11
|
+
- 'docs/session-brief*.md'
|
|
12
|
+
promptSignals:
|
|
13
|
+
phrases:
|
|
14
|
+
- "odd build"
|
|
15
|
+
- "start odd build"
|
|
16
|
+
- "continue odd build"
|
|
17
|
+
- "begin odd build"
|
|
18
|
+
- "resume odd build"
|
|
19
|
+
allOf:
|
|
20
|
+
- [odd, build]
|
|
21
|
+
anyOf:
|
|
22
|
+
- "build"
|
|
23
|
+
- "phase"
|
|
24
|
+
- "verification"
|
|
25
|
+
- "outcome"
|
|
26
|
+
noneOf: []
|
|
27
|
+
minScore: 5
|
|
28
|
+
retrieval:
|
|
29
|
+
aliases:
|
|
30
|
+
- odd build
|
|
31
|
+
- build with odd
|
|
32
|
+
intents:
|
|
33
|
+
- start odd build
|
|
34
|
+
- continue odd build
|
|
35
|
+
entities:
|
|
36
|
+
- current build phase
|
|
37
|
+
- phase brief
|
|
5
38
|
---
|
|
6
39
|
|
|
7
40
|
# /odd-build
|
package/skill/odd-plan/SKILL.md
CHANGED
|
@@ -2,6 +2,41 @@
|
|
|
2
2
|
name: "odd-plan"
|
|
3
3
|
version: "1.0.0"
|
|
4
4
|
description: "ODD Studio planning command. Start or continue the planning phase — personas, outcomes, contracts, and Master Implementation Plan."
|
|
5
|
+
metadata:
|
|
6
|
+
priority: 9
|
|
7
|
+
pathPatterns:
|
|
8
|
+
- '.odd/state.json'
|
|
9
|
+
- 'docs/plan.md'
|
|
10
|
+
- 'docs/personas/**'
|
|
11
|
+
- 'docs/outcomes/**'
|
|
12
|
+
- 'docs/contract-map.md'
|
|
13
|
+
promptSignals:
|
|
14
|
+
phrases:
|
|
15
|
+
- "odd plan"
|
|
16
|
+
- "start odd planning"
|
|
17
|
+
- "continue odd planning"
|
|
18
|
+
- "begin odd planning"
|
|
19
|
+
- "resume odd planning"
|
|
20
|
+
allOf:
|
|
21
|
+
- [odd, plan]
|
|
22
|
+
anyOf:
|
|
23
|
+
- "persona"
|
|
24
|
+
- "outcome"
|
|
25
|
+
- "contract"
|
|
26
|
+
- "plan"
|
|
27
|
+
noneOf: []
|
|
28
|
+
minScore: 5
|
|
29
|
+
retrieval:
|
|
30
|
+
aliases:
|
|
31
|
+
- odd plan
|
|
32
|
+
- plan with odd
|
|
33
|
+
intents:
|
|
34
|
+
- start odd planning
|
|
35
|
+
- continue odd planning
|
|
36
|
+
entities:
|
|
37
|
+
- persona
|
|
38
|
+
- outcome
|
|
39
|
+
- contract map
|
|
5
40
|
---
|
|
6
41
|
|
|
7
42
|
# /odd-plan
|
|
@@ -2,6 +2,38 @@
|
|
|
2
2
|
name: "odd-status"
|
|
3
3
|
version: "1.0.0"
|
|
4
4
|
description: "ODD Studio status command. Show full project state, phase progress, and what comes next."
|
|
5
|
+
metadata:
|
|
6
|
+
priority: 9
|
|
7
|
+
pathPatterns:
|
|
8
|
+
- '.odd/state.json'
|
|
9
|
+
- 'docs/plan.md'
|
|
10
|
+
- 'docs/session-brief*.md'
|
|
11
|
+
promptSignals:
|
|
12
|
+
phrases:
|
|
13
|
+
- "odd status"
|
|
14
|
+
- "show odd status"
|
|
15
|
+
- "resume odd status"
|
|
16
|
+
- "where are we in odd"
|
|
17
|
+
- "what is the odd status"
|
|
18
|
+
allOf:
|
|
19
|
+
- [odd, status]
|
|
20
|
+
anyOf:
|
|
21
|
+
- "status"
|
|
22
|
+
- "progress"
|
|
23
|
+
- "phase"
|
|
24
|
+
- "resume"
|
|
25
|
+
noneOf: []
|
|
26
|
+
minScore: 5
|
|
27
|
+
retrieval:
|
|
28
|
+
aliases:
|
|
29
|
+
- odd status
|
|
30
|
+
- odd progress
|
|
31
|
+
intents:
|
|
32
|
+
- show odd status
|
|
33
|
+
- inspect odd progress
|
|
34
|
+
entities:
|
|
35
|
+
- current phase
|
|
36
|
+
- next step
|
|
5
37
|
---
|
|
6
38
|
|
|
7
39
|
# /odd-status
|
package/templates/AGENTS.md
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
|
|
6
6
|
This project uses ODD Studio for planning and building. To activate the ODD coach:
|
|
7
7
|
|
|
8
|
-
**In Codex:** Type
|
|
9
|
-
|
|
8
|
+
**In Codex:** Type `use ODD`, `start ODD`, or `begin ODD` to start.
|
|
9
|
+
Use `ODD status` to check the current state before resuming, or `ODD build` to continue the build flow.
|
|
10
10
|
|
|
11
11
|
**In OpenCode:** Type `/odd` to start.
|
|
12
12
|
|
|
@@ -148,9 +148,9 @@ _Until then, the ODD defaults apply:_
|
|
|
148
148
|
_This section is populated by Rachel during Step 9b of the planning phase._
|
|
149
149
|
|
|
150
150
|
## Session Start Protocol
|
|
151
|
-
Every new session begins with an explicit ODD
|
|
152
|
-
In
|
|
153
|
-
|
|
151
|
+
Every new session begins with an explicit ODD kickoff.
|
|
152
|
+
In OpenCode, the primary entrypoint is `/odd`. In Codex, the primary triggers are `use ODD`, `start ODD`, or `begin ODD`.
|
|
153
|
+
Treat `ODD status` as the status check and `ODD build` as the build kickoff.
|
|
154
154
|
When you see one of these triggers, read the full coaching protocol from the skill file (see "How to Start ODD" above),
|
|
155
155
|
then execute the startup state check from that skill exactly as written.
|
|
156
156
|
|