@bradheitmann/odin-sentinel 0.4.6 → 0.4.7
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 +53 -5
- package/dist/src/protocol/version.d.ts +2 -2
- package/dist/src/protocol/version.js +2 -2
- package/docs/guides/quick-start.md +2 -2
- package/docs/guides/quickstart-prompts.md +2 -2
- package/docs/reference/distribution.md +1 -1
- package/docs/reference/public-surface-audit.md +1 -1
- package/package.json +5 -4
- package/protocol/SCP.md +2 -2
- package/protocol/bootstrap-skill.md +1 -1
- package/protocol/closeout.yaml +1 -1
- package/protocol/delegation.yaml +1 -1
- package/protocol/model-profiles.yaml +1 -1
- package/protocol/roles.yaml +1 -1
- package/protocol/topology.yaml +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ODIN Sentinel
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**Portable MCP governance protocol for visible multi-agent teams: 23 tools, 9 resources, role topology, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.**
|
|
4
4
|
|
|
5
5
|
ODIN Sentinel is a local stdio MCP server plus a portable coordination protocol
|
|
6
6
|
for visible agent teams. It gives agents a shared roster, startup packet,
|
|
@@ -17,6 +17,11 @@ For the fastest path, read [docs/guides/quick-start.md](docs/guides/quick-start.
|
|
|
17
17
|
For copy-paste prompts, read [docs/guides/quickstart-prompts.md](docs/guides/quickstart-prompts.md).
|
|
18
18
|
For a starter team shape, read [docs/guides/recommended-starter-team.md](docs/guides/recommended-starter-team.md).
|
|
19
19
|
|
|
20
|
+
## Contributor Setup
|
|
21
|
+
- Required: Node.js 22.13+ and pnpm 11.0.3, pinned by `packageManager`.
|
|
22
|
+
- Recommended: `corepack enable && pnpm install`.
|
|
23
|
+
- Corepack fetches pnpm 11.0.3 automatically; mismatched global pnpm versions may warn or fail.
|
|
24
|
+
|
|
20
25
|
## Terms In Plain Language
|
|
21
26
|
|
|
22
27
|
- MCP server: a local tool bridge that lets an agent ask ODIN Sentinel for
|
|
@@ -66,7 +71,7 @@ printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion
|
|
|
66
71
|
| npx -y -p @bradheitmann/odin-sentinel odin-sentinel-mcp
|
|
67
72
|
```
|
|
68
73
|
|
|
69
|
-
A successful response includes `"serverInfo":{"name":"odin-sentinel","version":"0.4.
|
|
74
|
+
A successful response includes `"serverInfo":{"name":"odin-sentinel","version":"0.4.7"}`.
|
|
70
75
|
Minimum compatible child MCP version for governed-team docs is `0.4.5`.
|
|
71
76
|
|
|
72
77
|
## MCP Host Examples
|
|
@@ -85,7 +90,7 @@ command = "npx"
|
|
|
85
90
|
args = ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
86
91
|
```
|
|
87
92
|
|
|
88
|
-
|
|
93
|
+
Cursor / VS Code / Droid / Crush (`mcpServers` JSON):
|
|
89
94
|
|
|
90
95
|
```json
|
|
91
96
|
{
|
|
@@ -98,6 +103,49 @@ Generic `mcpServers` JSON:
|
|
|
98
103
|
}
|
|
99
104
|
```
|
|
100
105
|
|
|
106
|
+
Zed (`~/.config/zed/settings.json`):
|
|
107
|
+
|
|
108
|
+
```json
|
|
109
|
+
"odin-sentinel": {
|
|
110
|
+
"source": "custom",
|
|
111
|
+
"command": "npx",
|
|
112
|
+
"args": ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
113
|
+
}
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Goose (`~/.config/goose/config.yaml`):
|
|
117
|
+
|
|
118
|
+
```yaml
|
|
119
|
+
odin-sentinel:
|
|
120
|
+
type: stdio
|
|
121
|
+
cmd: npx
|
|
122
|
+
args: ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
123
|
+
enabled: true
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
OpenCode (`~/.config/opencode/opencode.json`):
|
|
127
|
+
|
|
128
|
+
```json
|
|
129
|
+
{
|
|
130
|
+
"mcp": {
|
|
131
|
+
"odin-sentinel": {
|
|
132
|
+
"type": "local",
|
|
133
|
+
"command": ["npx", "-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"],
|
|
134
|
+
"enabled": true
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
OpenHands (`~/.openhands/config.toml`):
|
|
141
|
+
|
|
142
|
+
```toml
|
|
143
|
+
[mcp.stdio_servers.odin-sentinel]
|
|
144
|
+
name = "odin-sentinel"
|
|
145
|
+
command = "npx"
|
|
146
|
+
args = ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
147
|
+
```
|
|
148
|
+
|
|
101
149
|
## MCP, Skill, Plugin, Prompt Fallback
|
|
102
150
|
|
|
103
151
|
- MCP server: supplies protocol resources and validation tools.
|
|
@@ -130,7 +178,7 @@ using them for real work.
|
|
|
130
178
|
Local operator planning folders may be useful private workspaces, but they are
|
|
131
179
|
not shipped product internals and are not required for public users.
|
|
132
180
|
|
|
133
|
-
## Provided MCP Resources
|
|
181
|
+
## Provided MCP Resources (9)
|
|
134
182
|
|
|
135
183
|
- `odin://protocol/main`
|
|
136
184
|
- `odin://protocol/roles`
|
|
@@ -142,7 +190,7 @@ not shipped product internals and are not required for public users.
|
|
|
142
190
|
- `odin://protocol/receipts/team-manifest`
|
|
143
191
|
- `odin://protocol/bootstrap-skill`
|
|
144
192
|
|
|
145
|
-
## Provided MCP Tools
|
|
193
|
+
## Provided MCP Tools (23)
|
|
146
194
|
|
|
147
195
|
- `odin.get_version`
|
|
148
196
|
- `odin.get_startup_packet`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const VERSION: string;
|
|
2
|
-
export declare const PROTOCOL_SCHEMA_VERSION = "0.4.
|
|
2
|
+
export declare const PROTOCOL_SCHEMA_VERSION = "0.4.7";
|
|
3
3
|
export declare const MINIMUM_COMPATIBLE_MCP_VERSION = "0.4.5";
|
|
4
|
-
export declare const PUBLIC_LATEST_VERSION = "0.4.
|
|
4
|
+
export declare const PUBLIC_LATEST_VERSION = "0.4.7";
|
|
@@ -23,7 +23,7 @@ function readPackageVersion() {
|
|
|
23
23
|
throw new Error("Could not locate odin-sentinel package version");
|
|
24
24
|
}
|
|
25
25
|
export const VERSION = readPackageVersion();
|
|
26
|
-
export const PROTOCOL_SCHEMA_VERSION = "0.4.
|
|
26
|
+
export const PROTOCOL_SCHEMA_VERSION = "0.4.7";
|
|
27
27
|
export const MINIMUM_COMPATIBLE_MCP_VERSION = "0.4.5";
|
|
28
|
-
export const PUBLIC_LATEST_VERSION = "0.4.
|
|
28
|
+
export const PUBLIC_LATEST_VERSION = "0.4.7";
|
|
29
29
|
//# sourceMappingURL=version.js.map
|
|
@@ -85,7 +85,7 @@ printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion
|
|
|
85
85
|
| npx -y -p @bradheitmann/odin-sentinel odin-sentinel-mcp
|
|
86
86
|
```
|
|
87
87
|
|
|
88
|
-
Expect `serverInfo.name = odin-sentinel` and `serverInfo.version = 0.4.
|
|
88
|
+
Expect `serverInfo.name = odin-sentinel` and `serverInfo.version = 0.4.7`.
|
|
89
89
|
Minimum compatible child MCP version: `0.4.5`.
|
|
90
90
|
|
|
91
91
|
## 6. Auth And Provider Readiness
|
|
@@ -134,7 +134,7 @@ occupants until readiness passes or EXEC PM records a waiver/substitution.
|
|
|
134
134
|
| Skill missing | Install the native skill where supported or use `odin.get_bootstrap_skill` as full prompt fallback. |
|
|
135
135
|
| Auth/login required | Ask the user to provision the provider; verify status without printing secrets. |
|
|
136
136
|
| Permission prompt | Stop and route to PM/user; do not bypass silently. |
|
|
137
|
-
| Stale MCP version | Reinstall with `@latest`, restart host, and confirm `0.4.
|
|
137
|
+
| Stale MCP version | Reinstall with `@latest`, restart host, and confirm `0.4.7`. |
|
|
138
138
|
| Local inference stall | Require visible content within timeout; endpoint-only success is insufficient. |
|
|
139
139
|
| Role refusal | Mark the role `NON_GOVERNED_ONE_SHOT_ONLY` unless MCP/skill/full protocol proof is established. |
|
|
140
140
|
|
|
@@ -24,7 +24,7 @@ Rules:
|
|
|
24
24
|
Smoke test:
|
|
25
25
|
printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"probe","version":"0"}}}\n' | odin-sentinel-mcp
|
|
26
26
|
|
|
27
|
-
Expected version: 0.4.
|
|
27
|
+
Expected version: 0.4.7.
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
Restart any host whose MCP config changed.
|
|
@@ -37,7 +37,7 @@ Open CMUX first. Paste into the agent that will act as EXEC PM.
|
|
|
37
37
|
You are A/EXEC-PM. Bootstrap a Sentinel Coordination Protocol governed team in this CMUX workspace.
|
|
38
38
|
|
|
39
39
|
Procedure:
|
|
40
|
-
1. Call odin.get_version and confirm version 0.4.
|
|
40
|
+
1. Call odin.get_version and confirm version 0.4.7 or newer.
|
|
41
41
|
2. Call odin.get_bootstrap_skill and read the public SCP contract.
|
|
42
42
|
3. Confirm CMUX is active and you are in the same workspace as the team slots.
|
|
43
43
|
4. Compute the target layout with odin.compute_surface_layout using profile=human_cmux_quad.
|
|
@@ -6,7 +6,7 @@ public protocol semantics change, update them together.
|
|
|
6
6
|
|
|
7
7
|
## Current Public Versions
|
|
8
8
|
|
|
9
|
-
- npm package/server: `0.4.
|
|
9
|
+
- npm package/server: `0.4.7`
|
|
10
10
|
- minimum compatible child MCP version: `0.4.5`
|
|
11
11
|
|
|
12
12
|
Private local skill copies may differ for personal workflow reasons. Release
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bradheitmann/odin-sentinel",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.7",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
7
|
-
"description": "
|
|
7
|
+
"description": "Portable MCP governance protocol for multi-agent terminal teams: 23 tools, 9 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.",
|
|
8
8
|
"type": "module",
|
|
9
9
|
"main": "./dist/src/protocol/index.js",
|
|
10
10
|
"types": "./dist/src/protocol/index.d.ts",
|
|
@@ -56,7 +56,8 @@
|
|
|
56
56
|
"vitest": "4.1.5"
|
|
57
57
|
},
|
|
58
58
|
"engines": {
|
|
59
|
-
"node": ">=22.13.0"
|
|
59
|
+
"node": ">=22.13.0",
|
|
60
|
+
"pnpm": ">=11.0.0"
|
|
60
61
|
},
|
|
61
62
|
"repository": {
|
|
62
63
|
"type": "git",
|
|
@@ -67,7 +68,7 @@
|
|
|
67
68
|
"url": "https://github.com/bradheitmann/odin-sentinel/issues"
|
|
68
69
|
},
|
|
69
70
|
"odin": {
|
|
70
|
-
"publicVersion": "0.4.
|
|
71
|
+
"publicVersion": "0.4.7",
|
|
71
72
|
"minimumCompatibleChildMcpVersion": "0.4.5"
|
|
72
73
|
},
|
|
73
74
|
"scripts": {
|
package/protocol/SCP.md
CHANGED
|
@@ -7,7 +7,7 @@ updated: 2026-05-11
|
|
|
7
7
|
|
|
8
8
|
# Sentinel Coordination Protocol
|
|
9
9
|
|
|
10
|
-
SCP_PUBLIC_VERSION: 0.4.
|
|
10
|
+
SCP_PUBLIC_VERSION: 0.4.7
|
|
11
11
|
MIN_COMPATIBLE_CHILD_MCP: 0.4.5
|
|
12
12
|
|
|
13
13
|
Public install readiness: configure the ODIN MCP server, install native skill context where supported or use full prompt fallback, keep governed team roles in CMUX, verify auth/account readiness without printing secrets, smoke-test local inference if used, and validate role compatibility before launch. Private local skill copies may differ intentionally; public release checks compare repo-internal public artifacts only.
|
package/protocol/closeout.yaml
CHANGED
package/protocol/delegation.yaml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
version: 0.4.
|
|
1
|
+
version: 0.4.7
|
|
2
2
|
policy:
|
|
3
3
|
semantics: Recommended starter profiles, not bundled dependencies or availability guarantees.
|
|
4
4
|
runtime_requirement: Users must install and configure their own harnesses. Launchers must verify local harness/model availability before dispatch and apply fallbacks when unavailable.
|
package/protocol/roles.yaml
CHANGED
package/protocol/topology.yaml
CHANGED