Skip to content

Commit 8aba720

Browse files
[recipes] Add work operating model activation workflow
1 parent 2c933e4 commit 8aba720

11 files changed

Lines changed: 2108 additions & 0 deletions

File tree

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ Standalone capabilities that make your Open Brain smarter.
9090
| [Life Engine](recipes/life-engine/) | Self-improving personal assistant — calendar, habits, health, proactive briefings via Telegram or Discord | [@justfinethanku](https://github.com/justfinethanku) |
9191
| [Life Engine Video](recipes/life-engine-video/) | Add-on that renders Life Engine briefings as short animated videos with voiceover | [@justfinethanku](https://github.com/justfinethanku) |
9292
| [Daily Digest](recipes/daily-digest/) | Automated daily summary of recent thoughts delivered via email or Slack | OB1 Team |
93+
| [Work Operating Model Activation](recipes/work-operating-model-activation/) | Conversation-first workflow that turns tacit work patterns into structured Open Brain records and agent-ready operating files | [@jonathanedwards](https://github.com/jonathanedwards) |
9394
| [Research-to-Decision Workflow](recipes/research-to-decision-workflow/) | Composition recipe that chains canonical skills into operator and investor research, synthesis, meeting, and memo workflows | [@NateBJones](https://github.com/NateBJones) |
9495

9596
### [`/skills`](skills/) — Agent Skills
@@ -106,6 +107,7 @@ Plain-text skill packs you can drop into Claude Code, Codex, or other AI clients
106107
| [Meeting Synthesis Skill Pack](skills/meeting-synthesis/) | Converts meeting notes or transcripts into decisions, action items, risks, and follow-up artifacts | [@NateBJones](https://github.com/NateBJones) |
107108
| [Panning for Gold Skill Pack](skills/panning-for-gold/) | Turns brain dumps and transcripts into evaluated idea inventories | [@jaredirish](https://github.com/jaredirish) |
108109
| [Claudeception Skill Pack](skills/claudeception/) | Extracts reusable lessons from work sessions into new skills | [@jaredirish](https://github.com/jaredirish) |
110+
| [Work Operating Model Skill Pack](skills/work-operating-model/) | Runs a five-layer elicitation interview and saves the approved operating model into Open Brain | [@jonathanedwards](https://github.com/jonathanedwards) |
109111

110112
### [`/dashboards`](dashboards/) — Frontend Templates
111113

recipes/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ Step-by-step builds that add a new capability to your Open Brain. Follow the ins
99
| [Email History Import](email-history-import/) | Pull your Gmail archive into searchable thoughts |
1010
| [ChatGPT Conversation Import](chatgpt-conversation-import/) | Ingest your ChatGPT data export |
1111
| [Daily Digest](daily-digest/) | Automated summary of recent thoughts via email or Slack |
12+
| [Work Operating Model Activation](work-operating-model-activation/) | Interview-driven workflow that stores how you actually work and generates agent-ready operating files |
1213
| [Research-to-Decision Workflow](research-to-decision-workflow/) | Compose canonical skills into operator and investor paths for analysis, synthesis, meetings, and decision documents |
1314

1415
## Contributing
Lines changed: 190 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,190 @@
1+
# Work Operating Model Activation
2+
3+
> A conversation-first workflow that interviews you about how your work actually runs, stores the answers as structured Open Brain data, and generates agent-ready operating files.
4+
5+
## What It Does
6+
7+
This recipe adds a dedicated MCP server plus schema for a 45-minute elicitation workflow. The interview runs in five fixed layers:
8+
9+
1. operating rhythms
10+
2. recurring decisions
11+
3. dependencies
12+
4. institutional knowledge
13+
5. friction
14+
15+
Each approved layer is saved into structured tables, summarized into one durable Open Brain thought through your existing core connector, and made available for later querying and export generation.
16+
17+
This recipe depends on the canonical [Work Operating Model skill](../../skills/work-operating-model/), which owns the interview behavior. The recipe owns the data model, remote MCP server, and export snapshots.
18+
19+
## Prerequisites
20+
21+
- Working Open Brain setup ([guide](../../docs/01-getting-started.md))
22+
- Existing core Open Brain connector with `search_thoughts` and `capture_thought`
23+
- AI client that supports reusable skills or prompt packs
24+
- Supabase CLI installed and linked to your project
25+
- Canonical [Work Operating Model skill](../../skills/work-operating-model/)
26+
27+
## Credential Tracker
28+
29+
```text
30+
WORK OPERATING MODEL ACTIVATION -- CREDENTIAL TRACKER
31+
----------------------------------------------------
32+
33+
FROM YOUR OPEN BRAIN SETUP
34+
Project URL: ____________
35+
Secret key: ____________
36+
Project ref: ____________
37+
MCP Access Key: ____________
38+
Core Open Brain tools available: yes / no
39+
40+
GENERATED DURING SETUP
41+
Default User ID: ____________
42+
Function URL: ____________
43+
MCP Connection URL: ____________
44+
Current profile version: ____________
45+
46+
----------------------------------------------------
47+
```
48+
49+
## Steps
50+
51+
### 1. Install the skill dependency
52+
53+
Follow the installation steps in the [Work Operating Model skill](../../skills/work-operating-model/). The skill handles the interview, confirmation gates, contradiction pass, and summary-thought capture.
54+
55+
### 2. Run the schema
56+
57+
Open your Supabase SQL Editor and run [`schema.sql`](./schema.sql):
58+
59+
```text
60+
https://supabase.com/dashboard/project/YOUR_PROJECT_ID/sql/new
61+
```
62+
63+
This creates:
64+
65+
- `operating_model_profiles`
66+
- `operating_model_sessions`
67+
- `operating_model_layer_checkpoints`
68+
- `operating_model_entries`
69+
- `operating_model_exports`
70+
71+
It also adds the helper RPC functions `operating_model_start_session()` and `operating_model_save_layer()` for atomic session and layer persistence.
72+
73+
### 3. Generate your default user ID
74+
75+
This recipe is single-user on purpose. Generate one UUID and reuse it for future sessions:
76+
77+
```bash
78+
uuidgen | tr '[:upper:]' '[:lower:]'
79+
```
80+
81+
Save it to your credential tracker, then set it in Supabase:
82+
83+
```bash
84+
supabase secrets set DEFAULT_USER_ID=your-generated-uuid
85+
```
86+
87+
### 4. Deploy the MCP server
88+
89+
Follow the [Deploy an Edge Function](../../primitives/deploy-edge-function/) guide using these values:
90+
91+
| Setting | Value |
92+
|---------|-------|
93+
| Function name | `work-operating-model-mcp` |
94+
| Download path | `recipes/work-operating-model-activation` |
95+
96+
This function uses:
97+
98+
- `SUPABASE_URL`
99+
- `SUPABASE_SERVICE_ROLE_KEY`
100+
- `MCP_ACCESS_KEY`
101+
- `DEFAULT_USER_ID`
102+
103+
### 5. Connect it to your AI client
104+
105+
Use the [Remote MCP Connection](../../primitives/remote-mcp/) pattern.
106+
107+
| Setting | Value |
108+
|---------|-------|
109+
| Connector name | `Work Operating Model` |
110+
| URL | Your function URL with the same MCP key pattern you use for your other OB1 servers |
111+
112+
Keep your core Open Brain connector enabled too. This recipe stores structured data in its own tables, but the skill still uses the base `search_thoughts` and `capture_thought` tools for hints and summary memory writes.
113+
114+
### 6. Start the interview
115+
116+
With both connectors enabled and the skill installed, prompt your AI client:
117+
118+
```text
119+
Use the Work Operating Model workflow to interview me and build my operating model.
120+
```
121+
122+
The skill should:
123+
124+
1. call `start_operating_model_session`
125+
2. run the five layers in order
126+
3. show a checkpoint summary after each layer
127+
4. wait for your confirmation before saving
128+
5. save the layer with `save_operating_model_layer`
129+
6. capture one summary thought through your core Open Brain connector
130+
7. run a contradiction pass
131+
8. call `generate_operating_model_exports`
132+
133+
### 7. Review the exports
134+
135+
At the end of a successful run, the MCP server stores and returns:
136+
137+
- `operating-model.json`
138+
- `USER.md`
139+
- `SOUL.md`
140+
- `HEARTBEAT.md`
141+
- `schedule-recommendations.json`
142+
143+
These are stored in `operating_model_exports`, so they still exist even if your client cannot write files locally.
144+
145+
## Available MCP Tools
146+
147+
1. `start_operating_model_session`
148+
Create or resume the active interview run. Returns profile status, session status, completed layers, pending layer, session checkpoints, and latest approved checkpoints.
149+
150+
2. `save_operating_model_layer`
151+
Atomically upserts the approved layer checkpoint plus canonical entries for that layer, then advances the session to the next layer or review state.
152+
153+
3. `query_operating_model`
154+
Reads the latest operating model or a filtered slice by `layer`, `keyword`, `cadence`, `stakeholder`, `unresolved_only`, or `friction_priority`.
155+
156+
4. `generate_operating_model_exports`
157+
Renders and stores the final JSON/markdown artifacts after all five layers are approved.
158+
159+
## Expected Outcome
160+
161+
When this recipe is working correctly:
162+
163+
- a first session creates version `1` of a structured operating model
164+
- pausing after layer 2 and restarting later resumes at the correct pending layer
165+
- each approved layer writes one checkpoint plus canonical entries into the recipe tables
166+
- the skill captures six summary thoughts in your core Open Brain:
167+
- one per layer
168+
- one final synthesis
169+
- `query_operating_model` can find things like `Monday planning block`, `finance email dependency`, or `handoff friction`
170+
- `generate_operating_model_exports` returns all five artifact blobs even if no local files are written
171+
172+
## Troubleshooting
173+
174+
**Issue: `start_operating_model_session` says no environment variable is configured**
175+
Solution: Verify `DEFAULT_USER_ID` was set with `supabase secrets set DEFAULT_USER_ID=...` and redeploy the function if needed.
176+
177+
**Issue: The skill can see the recipe connector but not `search_thoughts` or `capture_thought`**
178+
Solution: This recipe does not replace the core Open Brain server. Re-enable your base connector alongside this one.
179+
180+
**Issue: Export generation fails with missing layers**
181+
Solution: At least one approved checkpoint must exist for each of the five layers. Resume the session and finish the missing layer summaries before exporting.
182+
183+
**Issue: Querying by friction priority returns nothing**
184+
Solution: `friction_priority` reads from `details.priority`, so the saved friction entries need `low`, `medium`, or `high` in that field.
185+
186+
## Next Steps
187+
188+
- Feed `USER.md`, `SOUL.md`, and `HEARTBEAT.md` into any agent platform that uses operating files.
189+
- Re-run the workflow quarterly or after a major role change to create a new version.
190+
- Use the [MCP Tool Audit & Optimization Guide](../../docs/05-tool-audit.md) once you add this server so your capture/query/admin tool surface stays manageable.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"imports": {
3+
"@hono/mcp": "npm:@hono/mcp@0.1.1",
4+
"@modelcontextprotocol/sdk": "npm:@modelcontextprotocol/sdk@1.24.3",
5+
"@supabase/supabase-js": "npm:@supabase/supabase-js@2.47.10",
6+
"hono": "npm:hono@4.9.2",
7+
"zod": "npm:zod@4.1.13"
8+
}
9+
}

0 commit comments

Comments
 (0)