odd-studio 3.3.1 → 3.3.3

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "odd-studio",
3
3
  "description": "Outcome-Driven Development — a planning and build harness for domain experts building serious software with AI. Installs the /odd skill, safety hooks, and project scaffolding into Claude Code.",
4
- "version": "3.3.1",
4
+ "version": "3.3.3",
5
5
  "author": {
6
6
  "name": "ODD Studio"
7
7
  },
package/README.md CHANGED
@@ -45,8 +45,9 @@ npx odd-studio init my-project --agent codex
45
45
  cd my-project
46
46
  ```
47
47
 
48
- In Codex, ODD Studio is installed as a project-local plugin with visible plugin commands. After restarting Codex, type `/odd`.
49
- Once inside `/odd`, the same starred flow works there too, including commands like `*plan`, `*build`, and `*status`. You can also invoke the direct Codex commands such as `/odd-build`.
48
+ In Codex, start ODD by saying `use ODD` or `start ODD`.
49
+ Codex reads `AGENTS.md`, which routes the session to `plugins/odd-studio/skills/odd/SKILL.md`.
50
+ Once ODD is active, the same starred flow works there too, including commands like `*plan`, `*build`, and `*status`.
50
51
 
51
52
  ### For Claude Code and OpenCode on the same machine
52
53
 
@@ -73,9 +74,10 @@ That single command:
73
74
  - Optionally installs Checkpoint security scanning (you'll be asked)
74
75
  - Initialises git with an initial commit
75
76
 
76
- **Then open your project in your AI coding agent and type:**
77
+ **Then open your project in your AI coding agent and start ODD:**
77
78
  ```
78
- /odd
79
+ Claude Code / OpenCode: /odd
80
+ Codex: use ODD
79
81
  ```
80
82
 
81
83
  ---
@@ -92,14 +94,14 @@ All supported agents get the same methodology, the same safety enforcement, and
92
94
 
93
95
  ---
94
96
 
95
- ## What happens when you type `/odd`
97
+ ## What happens when you start ODD
96
98
 
97
99
  Your AI coding agent loads the ODD orchestrator. It checks whether you have an existing project in progress (via your local `.odd/state.json` and odd-flow memory) and either:
98
100
 
99
101
  - **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?*
100
102
  - **Returning project:** Shows you exactly where you left off and resumes from there. Nothing is lost between sessions.
101
103
 
102
- From there, use the dedicated slash commands listed below or type sub-commands directly inside `/odd`.
104
+ From there, use the dedicated direct commands listed below in Claude Code or OpenCode, or type sub-commands inside the active ODD session.
103
105
 
104
106
  ---
105
107
 
@@ -157,7 +159,7 @@ ODD Studio installs safety gates that run automatically throughout your build. T
157
159
  **Claude Code:** Implemented as shell hooks registered in `.claude/settings.local.json` (project-local).
158
160
  **OpenCode:** Implemented as a JS plugin (`odd-studio-plugin.js`) in `.opencode/plugins/` (project-local).
159
161
  **Codex:** Implemented as a project-local plugin in `plugins/odd-studio/` with `hooks.json` and plugin-local skills.
160
- It also installs Codex plugin commands so `/odd` is directly discoverable in the composer.
162
+ Codex starts through `AGENTS.md` instructions (`use ODD` / `start ODD`) rather than a guaranteed `/odd` composer command.
161
163
 
162
164
  ---
163
165
 
@@ -261,9 +263,9 @@ Only the config directories for your target agent are generated (`.claude/`, `.o
261
263
 
262
264
  ---
263
265
 
264
- ## Slash commands
266
+ ## Direct Commands
265
267
 
266
- These are the top-level commands you can invoke in Claude Code, OpenCode, or Codex:
268
+ These are the top-level direct commands you can invoke in Claude Code or OpenCode:
267
269
 
268
270
  | Command | What it does |
269
271
  |---------|-------------|
@@ -277,7 +279,7 @@ These are the top-level commands you can invoke in Claude Code, OpenCode, or Cod
277
279
 
278
280
  ## Sub-commands inside `/odd`
279
281
 
280
- Once inside `/odd`, you can also use these sub-commands:
282
+ Once ODD is active, you can use these sub-commands in Claude Code, OpenCode, or Codex:
281
283
 
282
284
  ```
283
285
  *persona Work on personas with Diana
@@ -217,10 +217,12 @@ function printNextSteps({ isClaude, isOpenCode, isCodex, projectName }) {
217
217
  console.log(` ${stepN++}. Open your project: ` + chalk.cyan('opencode'));
218
218
  }
219
219
  if (isCodex) {
220
- console.log(` ${stepN++}. Restart Codex: ` + chalk.cyan('quit and reopen') + chalk.dim(' (activates the local ODD Studio plugin)'));
221
220
  console.log(` ${stepN++}. Open your project in Codex`);
221
+ console.log(` ${stepN++}. Start ODD by saying: ` + chalk.cyan('use ODD') + chalk.dim(' (Codex reads AGENTS.md automatically — no /odd command needed)'));
222
+ }
223
+ if (isClaude || isOpenCode) {
224
+ console.log(` ${stepN++}. Start your ODD session: ` + chalk.cyan('/odd'));
222
225
  }
223
- console.log(` ${stepN++}. Start your ODD session: ` + chalk.cyan('/odd'));
224
226
  console.log();
225
227
  }
226
228
 
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.1
18
+ const pkg = require('../package.json'); // v3.3.3
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.1",
3
+ "version": "3.3.3",
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"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "odd-studio",
3
- "version": "3.3.1",
3
+ "version": "3.3.3",
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",
package/skill/SKILL.md CHANGED
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: "odd"
3
- version: "3.3.1"
3
+ version: "3.3.3"
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
5
  ---
6
6
 
@@ -35,7 +35,7 @@ Display this when no existing state is found:
35
35
 
36
36
  ---
37
37
 
38
- Welcome to ODD Studio v3.3.1.
38
+ Welcome to ODD Studio v3.3.3.
39
39
 
40
40
  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
41
 
@@ -59,7 +59,7 @@ Display this when existing state is found. Replace the bracketed values with act
59
59
 
60
60
  ---
61
61
 
62
- Welcome back to ODD Studio v3.3.1.
62
+ Welcome back to ODD Studio v3.3.3.
63
63
 
64
64
  **Project:** [project.name]
65
65
  **Current Phase:** [state.currentPhase]
@@ -1,6 +1,20 @@
1
- # {{PROJECT_NAME}} — OpenCode Configuration
1
+ # {{PROJECT_NAME}} — Agent Configuration
2
2
  # Powered by ODD Studio (Outcome-Driven Development)
3
3
 
4
+ ## How to Start ODD
5
+
6
+ This project uses ODD Studio for planning and building. To activate the ODD coach:
7
+
8
+ **In Codex:** Say `use ODD` or `start ODD` — there is no `/odd` slash command in Codex.
9
+ The agent will read the coaching protocol below and guide you through planning or building.
10
+
11
+ **In OpenCode:** Type `/odd` to start.
12
+
13
+ When activated, read the full coaching protocol:
14
+ - `plugins/odd-studio/skills/odd/SKILL.md` (Codex) or `.opencode/commands/odd/SKILL.md` (OpenCode)
15
+
16
+ Then execute the startup state check documented in that file.
17
+
4
18
  ## Project Context
5
19
  This project is built using Outcome-Driven Development. All build decisions flow from the
6
20
  outcomes documented in `docs/outcomes/` and the plan in `docs/plan.md`.
@@ -134,7 +148,9 @@ _Until then, the ODD defaults apply:_
134
148
  _This section is populated by Rachel during Step 9b of the planning phase._
135
149
 
136
150
  ## Session Start Protocol
137
- Every new session begins with:
151
+ Every new session begins with the user saying **"use ODD"** or **"start ODD"**.
152
+ When you see this, read the full coaching protocol from the skill file (see "How to Start ODD" above),
153
+ then run the startup state check:
138
154
  ```
139
155
  Read docs/plan.md and docs/outcomes/. We are in Phase [X].
140
156
  Phase [A...] is complete and verified.