@bradheitmann/odin-sentinel 0.4.3 → 0.4.4
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 +126 -0
- package/package.json +1 -1
- package/scripts/audit/public-surface.mjs +4 -3
package/README.md
CHANGED
|
@@ -28,6 +28,132 @@ programming language.
|
|
|
28
28
|
For a recommended first team, see
|
|
29
29
|
[docs/guides/recommended-starter-team.md](docs/guides/recommended-starter-team.md).
|
|
30
30
|
|
|
31
|
+
## Quick Start
|
|
32
|
+
|
|
33
|
+
### 1. Install
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
npm i -g @bradheitmann/odin-sentinel
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Or use `npx` without installing — see the host-specific configs below.
|
|
40
|
+
|
|
41
|
+
### 2. Configure your MCP host
|
|
42
|
+
|
|
43
|
+
Pick the one you use. Restart the host after editing.
|
|
44
|
+
|
|
45
|
+
**Claude Code**
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
claude mcp add odin-sentinel -- npx -y -p @bradheitmann/odin-sentinel odin-sentinel-mcp
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Codex** (`~/.codex/config.toml`)
|
|
52
|
+
|
|
53
|
+
```toml
|
|
54
|
+
[mcp_servers.odin-sentinel]
|
|
55
|
+
command = "npx"
|
|
56
|
+
args = ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Cursor / Cursor CLI / VS Code / Factory (Droid) / Pi** (`mcpServers` JSON)
|
|
60
|
+
|
|
61
|
+
```json
|
|
62
|
+
{
|
|
63
|
+
"mcpServers": {
|
|
64
|
+
"odin-sentinel": {
|
|
65
|
+
"command": "npx",
|
|
66
|
+
"args": ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Zed** (`~/.config/zed/settings.json` → `context_servers`)
|
|
73
|
+
|
|
74
|
+
```json
|
|
75
|
+
"odin-sentinel": {
|
|
76
|
+
"source": "custom",
|
|
77
|
+
"command": "npx",
|
|
78
|
+
"args": ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
**Goose** (`~/.config/goose/config.yaml` → `extensions`)
|
|
83
|
+
|
|
84
|
+
```yaml
|
|
85
|
+
odin-sentinel:
|
|
86
|
+
type: stdio
|
|
87
|
+
cmd: npx
|
|
88
|
+
args: ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
89
|
+
enabled: true
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Crush** (`~/.config/crush/crush.json` → `mcp`)
|
|
93
|
+
|
|
94
|
+
```json
|
|
95
|
+
{
|
|
96
|
+
"mcp": {
|
|
97
|
+
"odin-sentinel": {
|
|
98
|
+
"type": "stdio",
|
|
99
|
+
"command": "npx",
|
|
100
|
+
"args": ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**OpenCode** (`~/.config/opencode/opencode.json` → `mcp`)
|
|
107
|
+
|
|
108
|
+
```json
|
|
109
|
+
{
|
|
110
|
+
"mcp": {
|
|
111
|
+
"odin-sentinel": {
|
|
112
|
+
"type": "local",
|
|
113
|
+
"command": ["npx", "-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"],
|
|
114
|
+
"enabled": true
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
**OpenHands** (`~/.openhands/config.toml`)
|
|
121
|
+
|
|
122
|
+
```toml
|
|
123
|
+
[mcp.stdio_servers.odin-sentinel]
|
|
124
|
+
name = "odin-sentinel"
|
|
125
|
+
command = "npx"
|
|
126
|
+
args = ["-y", "-p", "@bradheitmann/odin-sentinel", "odin-sentinel-mcp"]
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### 3. Use it
|
|
130
|
+
|
|
131
|
+
After restarting the host, give the agent an instruction like:
|
|
132
|
+
|
|
133
|
+
> Use the `odin-sentinel` MCP server. Call `odin.get_startup_packet`, then bootstrap an executive office and one development pod.
|
|
134
|
+
|
|
135
|
+
The agent will read the protocol resources (`odin://protocol/*`), follow the role contracts, and stay inside the SCP governance rules.
|
|
136
|
+
|
|
137
|
+
### 4. Verify (optional)
|
|
138
|
+
|
|
139
|
+
A one-line smoke test that works without any host:
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"probe","version":"0"}}}\n' \
|
|
143
|
+
| npx -y -p @bradheitmann/odin-sentinel odin-sentinel-mcp
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
A successful response includes `"serverInfo":{"name":"odin-sentinel","version":"0.4.4"}`.
|
|
147
|
+
|
|
148
|
+
### Claude Code plugin (optional)
|
|
149
|
+
|
|
150
|
+
If you're on Claude Code, you can install the SCP skill + MCP server together as a plugin:
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
claude plugin marketplace add bradheitmann/odin-sentinel
|
|
154
|
+
claude plugin install sentinel-coordination-protocol@odin-sentinel
|
|
155
|
+
```
|
|
156
|
+
|
|
31
157
|
## Terms
|
|
32
158
|
|
|
33
159
|
- ODIN Sentinel: this MCP server and its portable team-coordination protocol.
|
package/package.json
CHANGED
|
@@ -33,10 +33,11 @@ function filesToAudit() {
|
|
|
33
33
|
|
|
34
34
|
const publicFiles = filesToAudit();
|
|
35
35
|
|
|
36
|
-
//
|
|
37
|
-
// directories and tilde home paths
|
|
38
|
-
//
|
|
36
|
+
// Install and protocol documentation legitimately references agent harness
|
|
37
|
+
// config directories and tilde home paths. The path-style rules below skip
|
|
38
|
+
// these files; the rest of the rules still apply.
|
|
39
39
|
const BUNDLED_DOC = new Set([
|
|
40
|
+
"README.md",
|
|
40
41
|
"protocol/bootstrap-" + "sk" + "ill.md",
|
|
41
42
|
"plugins/sentinel-coordination-protocol/" + "sk" + "ills/sentinel-coordination-protocol/SK" + "ILL.md"
|
|
42
43
|
]);
|