{"_id":"@bradheitmann/odin-sentinel","_rev":"21-7d235647a79feff25a886c4628cee3f4","name":"@bradheitmann/odin-sentinel","dist-tags":{"latest":"0.7.2"},"versions":{"0.2.1":{"name":"@bradheitmann/odin-sentinel","version":"0.2.1","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.2.1","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"bin":{"odin-sentinel":"./dist/src/bin/index.js","odin-sentinel-mcp":"./dist/src/bin/index.js"},"dist":{"shasum":"28bda494159072e91ac06369ee95b3dce4eb810c","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.2.1.tgz","fileCount":43,"integrity":"sha512-xlMf4yE6DSqoTn59I5HNabaaORuGTpVmmwhcJtqo+Qv53EUv6c0+iYYynY3xjmLH9jQBP6033QewLlPXSLdPnQ==","signatures":[{"sig":"MEQCIBwCdE2vc9fDcWaUj02uqZrBXDn+DXfNuiwfln/b94TwAiB/abll/VdPUtd8eNQEoPZvf4ZjPwGY3RgTeWPt9hBxiQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102099},"main":"./dist/src/protocol/index.js","type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"deprecated":"Old version. Upgrade: pnpm add -g\n@bradheitmann/odin-sentinel@latest","description":"Multi-harness terminal-pane team builder and orchestrator over MCP.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"zod":"^4.1.12","yaml":"^2.8.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.2.1_1778120493088_0.5230313683408574","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@bradheitmann/odin-sentinel","version":"0.4.2","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.2","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"bin":{"odin-sentinel":"./dist/src/bin/index.js","odin-sentinel-mcp":"./dist/src/bin/index.js"},"dist":{"shasum":"31cf68f5f08e193c2dd8d36f96db5b9d3f77c511","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.2.tgz","fileCount":62,"integrity":"sha512-mVXsOSLv69ATwWCK/bQ765F5EeRiAdP8SNz3UkuVdK+QMYaRXF815ADIhgUY8gxa7+yttPBRlz5uD+Wzg3dQDw==","signatures":[{"sig":"MEUCIQCauO8mOzgaTHENkZfQCZRdjliYM9c43BOZu36Ih4dCqQIgOIKw3Z2XSIV+8MJGkvXpGhFfWtMcxGHb7ic1Iyu8/nE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":241457},"main":"./dist/src/protocol/index.js","type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"deprecated":"Old version. Upgrade: pnpm add -g\n@bradheitmann/odin-sentinel@latest","description":"Multi-harness terminal-pane team builder and orchestrator over MCP.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^4.1.12","yaml":"^2.8.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.2_1778528434343_0.052909642970208726","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"@bradheitmann/odin-sentinel","version":"0.4.3","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.3","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"bin":{"odin-sentinel":"./dist/src/bin/index.js","odin-sentinel-mcp":"./dist/src/bin/index.js"},"dist":{"shasum":"54c87189909902ae39ac9e3eebe7def4245bac0e","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.3.tgz","fileCount":62,"integrity":"sha512-moSNExyoWjd7/cwF9+KfUFA1gmPqL5+pMcCaLcnDRH1bfU4kp/IWJTqaUsQjE3lt/cQyL/4lztOQL46epMjcZA==","signatures":[{"sig":"MEQCIE2utFiFTTTtylrvnQkZDz0PB0hf9riPhsAG3JfbcCOhAiBqOuKw0JTB8qjOmMsafxmg4mojU1ineZOLX3CGGmcQbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":240902},"main":"./dist/src/protocol/index.js","type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"deprecated":"Old version. Upgrade: pnpm add -g\n@bradheitmann/odin-sentinel@latest","description":"Multi-harness terminal-pane team builder and orchestrator over MCP.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^4.1.12","yaml":"^2.8.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.3_1778529035493_0.4359959306698564","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"@bradheitmann/odin-sentinel","version":"0.4.4","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.4","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"bin":{"odin-sentinel":"./dist/src/bin/index.js","odin-sentinel-mcp":"./dist/src/bin/index.js"},"dist":{"shasum":"6ff5c559622c6563cb12e3e4557765fdb423da04","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.4.tgz","fileCount":62,"integrity":"sha512-YHmTKOZJqhkJI7zhLNKiXEq87i1NBs1lF650R+WaDOrNRXgm9AsTubsWPk23T7KqP2Jih7LBZ5hupMfmtecapA==","signatures":[{"sig":"MEYCIQCd3SJrB14yup+nZh2moms3OXjciUbYJC2+AkRwKXxZxwIhAJu4UqXaIqh0d0LxDKCM12TyyjFIW0ZWV8rqbJZushbH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":243798},"main":"./dist/src/protocol/index.js","type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"deprecated":"Old version. Upgrade: pnpm add -g\n@bradheitmann/odin-sentinel@latest","description":"Multi-harness terminal-pane team builder and orchestrator over MCP.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^4.1.12","yaml":"^2.8.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.4_1778569383604_0.6235365384040126","host":"s3://npm-registry-packages-npm-production"}},"0.4.5":{"name":"@bradheitmann/odin-sentinel","version":"0.4.5","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.5","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"bin":{"odin-sentinel":"./dist/src/bin/index.js","odin-sentinel-mcp":"./dist/src/bin/index.js"},"dist":{"shasum":"a8f6531bf10a4f7717b9abb716b576737bcd986b","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.5.tgz","fileCount":63,"integrity":"sha512-9vdt2xNl8ErfxH17vRvTmDGxWywZ6kwGuNjPtSiDj0rdU2D9vRm3prmDLZRtc04SF1Ykzf9IrPN2isdVgmvmZQ==","signatures":[{"sig":"MEUCIHtT1dMFRlan6l1aKsPEpBxHAgKBqWxRkGTF9Q7ipheFAiEAjLcDjl+eZ9h1ITVtLI+bpF06vTTFWkrsIbiAwW/ZPr0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":252651},"main":"./dist/src/protocol/index.js","type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"description":"Multi-harness terminal-pane team builder and orchestrator over MCP.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^4.1.12","yaml":"^2.8.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.5_1778581830159_0.7855747280194461","host":"s3://npm-registry-packages-npm-production"}},"0.4.6":{"name":"@bradheitmann/odin-sentinel","version":"0.4.6","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.6","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"./dist/src/bin/index.js","odin-sentinel-mcp":"./dist/src/bin/index.js"},"dist":{"shasum":"fb7fff5aec7fd95557dcafd2342dcd5900f54e07","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.6.tgz","fileCount":69,"integrity":"sha512-YSjQWT3+UyXevZukgLj6LpBZsrGMo8E8/Hs+Bt8liNtv7o1wAE6ke4XAUUvLqrFfDAkppNCoqW2zk8ea55knzg==","signatures":[{"sig":"MEUCIQC70BtqTIFy0j9WJckcf37obEuxoYtbqf4UeWP5gP2mmAIgLyaXtej+ehYsekBE3hgcVrkDyinDqBjtZRxYHNc+Bb4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":503495},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.6","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Multi-harness terminal-pane team builder and orchestrator over MCP.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.6_1778699379683_0.04514962206294748","host":"s3://npm-registry-packages-npm-production"}},"0.4.7":{"name":"@bradheitmann/odin-sentinel","version":"0.4.7","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.7","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"./dist/src/bin/index.js","odin-sentinel-mcp":"./dist/src/bin/index.js"},"dist":{"shasum":"852d478185a49f905236a655d04edfb4564785e2","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.7.tgz","fileCount":69,"integrity":"sha512-B0x11K5DEX+xK5e62YZg5SMNvHZiB3ndOwkB/7rAqlAFL/B9iMH1tH+SCwRxa4fPT1hR1uBD1sE4ivMEIwyzBQ==","signatures":[{"sig":"MEUCIDRXZZA/FUNpQ1DgxvxloXE4Y3pj6rB/iYh4mjZxbbsmAiEAi6Ds2zUc0Py9oULzPZwntoKt9oeEOy68R7ieBV/cQ7c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":504841},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.7","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 23 tools, 9 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.7_1778899527724_0.9525502470041187","host":"s3://npm-registry-packages-npm-production"}},"0.4.8":{"name":"@bradheitmann/odin-sentinel","version":"0.4.8","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.8","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"caf7a2e00b381fe4b0a8998ba13d668eedb7e86f","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.8.tgz","fileCount":71,"integrity":"sha512-rjYJao9NRESvtj0zUuSr9nH56MZbEsx+aC7KE7U/hknSDsdXXbxypHfEtaB0P47C/jGxk3HsKTSYvVCJqo2HDg==","signatures":[{"sig":"MEUCIG34hylZraP7TqF1G/tL0/u/jK4YQMlbrROQwlxhC49RAiEAuTBAkaMWK73eBkjirtTMWMpqxZ1rsbS5jcjm6TjaUTg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":584221},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.8","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 27 tools, 9 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.8_1780545691435_0.9080437796573819","host":"s3://npm-registry-packages-npm-production"}},"0.4.9":{"name":"@bradheitmann/odin-sentinel","version":"0.4.9","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.9","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"7eecbaee690c153f99ca330ab808994067c1db59","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.9.tgz","fileCount":71,"integrity":"sha512-XprOyynmjzxLxJLZk93E+eP8lgehPNngQo45ItWsajv6w1UgoMsARm6acyuGmKkNbGF+8ssB64eXy6xGK3hJmg==","signatures":[{"sig":"MEUCIAhestLvCqWwbBo8ukvt8hCsytX1IlahS8NpKyj24WQeAiEAitS1HW6eFSEfnCm7WyVCP9ITJPn0qo9DyZB8NZGSca0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":585278},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.9","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 27 tools, 9 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.9_1780547994137_0.9422403084810917","host":"s3://npm-registry-packages-npm-production"}},"0.4.10":{"name":"@bradheitmann/odin-sentinel","version":"0.4.10","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.10","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"473ad5a1b3c7642567d3dc7c406f5fd9494d2a67","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.10.tgz","fileCount":72,"integrity":"sha512-2PPq8sWCUMXV/Qc2D6j1O3i089zN7VKg2A8+fwyK/t+PtY36Q91oXUMYeGEbk1HeKtNr5NXgoiUlf3dcSywLuw==","signatures":[{"sig":"MEYCIQCeYb0PV3HGt0q4RIypI0FwE94zvjxvl3n1l0KrmV/U3AIhAMV4ovs8Feb7TUscC+7awLhxgNbXjAVnvb3tkkGj1TH4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":650416},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.10","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 27 tools, 9 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.10_1780559305082_0.41195416956351005","host":"s3://npm-registry-packages-npm-production"}},"0.4.11":{"name":"@bradheitmann/odin-sentinel","version":"0.4.11","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.11","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"a30fe96853188d44ae38e8d701690ee5e62bda0d","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.11.tgz","fileCount":72,"integrity":"sha512-VIIWoPGoxQBhYIWXzBk2wYtwf5o/iJXpH/kjd4fwDtk10FOvq1nlY1kWELg3FukOdpKNLF7XTM10CwUqf3isyA==","signatures":[{"sig":"MEYCIQCTj5bUBjIfgppPAkffvUp8ue4iHSatZQXscUbnYETdkgIhAMM2lcskfy1pzueIjZX5l+mToWFXvWh6Z5l9+antd+03","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":650416},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.11","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 27 tools, 9 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.11_1780562012604_0.8583962582923996","host":"s3://npm-registry-packages-npm-production"}},"0.4.12":{"name":"@bradheitmann/odin-sentinel","version":"0.4.12","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.12","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"526a7cd93ada05b2485b3040ed872b70b19ba72a","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.12.tgz","fileCount":87,"integrity":"sha512-tNcblcERa6xGSKm1Kzttcjpl7CrH+WpUYpsc7qfAvSguUNH9SZ0xMPrAZQdtizfIZZDFEGSfdR+m5+0KdYOZ2w==","signatures":[{"sig":"MEYCIQDq91EcFwDdduc+CnvFF/so2tqsETJ204GrrCkhYo6hUAIhAOTW6xjVTrnBMhH7K8Hfn3T7N+N/X7gTEaEJIqv88GAg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":844977},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.12","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 27 tools, 13 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.12_1780564448472_0.617048488262032","host":"s3://npm-registry-packages-npm-production"}},"0.4.13":{"name":"@bradheitmann/odin-sentinel","version":"0.4.13","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.4.13","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"b45f4da89b0ddc8999320e01bf18cd1b1d85d02b","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.4.13.tgz","fileCount":87,"integrity":"sha512-vV5IcTruJjxt3vZf7BqVqkq/Cmur0JlZxUKrfXelCptTvMOx/21kS05EOie1zSI4+iwpYFwJewZXs5gXtN1MJg==","signatures":[{"sig":"MEQCIDgrEUc+r31JNhHbq3h1paq1+9kDATSsceKKiDJAz4uYAiBE/MSCgco8BFlzXsej/SOE1kpLOML2RJvQEwrlc6rnUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":851035},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.4.13","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 27 tools, 13 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.4.13_1780567959694_0.022179188360610835","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@bradheitmann/odin-sentinel","version":"0.5.0","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.5.0","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-watch":"dist/src/odin-watch/index.js","odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"2d330e2b1ee7e30406a8a7d9c1b3bc81db3d0bf4","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.5.0.tgz","fileCount":136,"integrity":"sha512-tNc49QhEE259xUGwOrHp0BDhT/DZsno6w08tHfIdeU3uz9YNIgPamx9ETDzO4JuNw5lpZfq8cxKaA4JQ/oW8cw==","signatures":[{"sig":"MEUCIQCvKHP77aFDj/4Jmv3baJkSYx1l3zco3BzxRjRh8rACFQIgF6dwO7f4Bw1JWlYtQWM77nE3OHQJGSbyubN1zyUibu0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1024821},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.5.0","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 29 tools, 18 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"4.1.5","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.5.0_1781258356648_0.947601191196735","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@bradheitmann/odin-sentinel","version":"0.6.0","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":"ODIN Sentinel contributors","license":"MIT","_id":"@bradheitmann/odin-sentinel@0.6.0","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-watch":"dist/src/odin-watch/index.js","odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"fccab3cae7ce19bba50aa7f1e8d6d32cc42c7a74","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.6.0.tgz","fileCount":184,"integrity":"sha512-ut/tGkxWpBXePYTCFSmvYEI4vhnXjIckIs5Lq0P2jLkOjflixSDHOd5mc0Y6qdFkOQ/Slu8cCq3JAPrx8HTMNQ==","signatures":[{"sig":"MEUCIDxzhfs7TITyDxy9jQhXraKh3r6HB1xxO9j0pxNkhwZcAiEAsvi6/5wIsgDQ/oiJw+N144GkOYU2SZTW/JfVoNbz9Oc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1615278},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.6.0","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json && node -e \"const fs=require('node:fs');const path=require('node:path');const src=path.join('src','harness-pacing','seeds');const dest=path.join('dist','src','harness-pacing','seeds');fs.mkdirSync(dest,{recursive:true});for(const f of fs.readdirSync(src)){if(f.endsWith('.json'))fs.copyFileSync(path.join(src,f),path.join(dest,f));}\"","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","validate":"pnpm run audit:public && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 48 tools, 27 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.7.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vite":"^8.1.4","vitest":"4.1.10","typescript":"^5.9.3","@types/node":"^24.10.1","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.6.0_1787524837618_0.852458719323943","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@bradheitmann/odin-sentinel","version":"0.7.1","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"author":{"name":"ODIN Sentinel contributors"},"license":"MIT","_id":"@bradheitmann/odin-sentinel@0.7.1","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"bin":{"odin-watch":"dist/src/odin-watch/index.js","odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"dist":{"shasum":"82dc93af41d513111c4430ed3f023c98c64fb7bf","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.7.1.tgz","fileCount":191,"integrity":"sha512-wQCpwbwx+P457UMyQHbwoqQEBRG2eSPoe3H7Hi4G2fgHxm6hhQMj8c51ntq8Uu/Y1GmBySwZ0aR+a4dRdJnCTQ==","signatures":[{"sig":"MEYCIQC1agw8x5UGucFUsG5D3UjqS9I8Lul0O/hOq79CrZEakAIhAOUvcfSV3HMKHgdZUdTSR/tIJFThRzSGqkf9/eon7Xv2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDt4nINr47/jvdyCByDmM1BhQtj3rxFEENaR9LRtuOdIAIhAIlpdMjQgiRBoOmFHA/IKc4MWM16NTZPK+Rvxket2bge","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1829223},"main":"./dist/src/protocol/index.js","odin":{"publicVersion":"0.7.1","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json && node -e \"const fs=require('node:fs');const path=require('node:path');const src=path.join('src','harness-pacing','seeds');const dest=path.join('dist','src','harness-pacing','seeds');fs.mkdirSync(dest,{recursive:true});for(const f of fs.readdirSync(src)){if(f.endsWith('.json'))fs.copyFileSync(path.join(src,f),path.join(dest,f));}\"","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"pnpm run build","validate":"pnpm run audit:public && pnpm run audit:deps && pnpm run audit:doctrine && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:deps":"node scripts/audit/dependency-audit.mjs","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage","audit:doctrine":"node scripts/audit/doctrine-currency.mjs","prepublishOnly":"pnpm run validate"},"_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"_npmVersion":"11.19.1","description":"Portable MCP governance protocol for multi-agent terminal teams: 48 tools, 27 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"_nodeVersion":"26.9.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.0.3","devDependencies":{"tsx":"^4.23.12","vite":"^8.2.2","vitest":"4.1.10","typescript":"^5.9.3","@types/node":"^24.13.3","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/odin-sentinel_0.7.1_1790116308230_0.511533800367086","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"_id":"@bradheitmann/odin-sentinel@0.7.2","bin":{"odin-watch":"dist/src/odin-watch/index.js","odin-sentinel":"dist/src/bin/index.js","odin-sentinel-mcp":"dist/src/bin/index.js"},"bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"dist":{"shasum":"df33e4196af00868e682e81109200c5c5dc8b5e4","tarball":"https://registry.npmjs.org/@bradheitmann/odin-sentinel/-/odin-sentinel-0.7.2.tgz","fileCount":191,"integrity":"sha512-B+6I+8Lie2zSHO1MU0+vCYMeAKc9vG042zJpXjg2Xkt0/5ZGAmHJrQmxZeZO4d+eavfwqcl1CszVVqIZ1ea/UA==","signatures":[{"sig":"MEYCIQCRItJfQrTiz0paUfBT9JWPj+MFZNkPUvdKgWok5aNGPgIhANGiFXB/8nR6goGqLo/86ObdFB1hIZNsbJsqmyeH0fsU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIB6MnujIEmdqgH4k8pNkT4u4KU5r+oRkpb9y0KyUlmcbAiBVFWvHgkRLDZrcl2Hja/Q85Q2FHCE7u/YhpmBOMcRu0A=="}],"unpackedSize":1848528},"main":"./dist/src/protocol/index.js","name":"@bradheitmann/odin-sentinel","odin":{"publicVersion":"0.7.2","minimumCompatibleChildMcpVersion":"0.4.5"},"type":"module","types":"./dist/src/protocol/index.d.ts","author":{"name":"ODIN Sentinel contributors"},"engines":{"node":">=22.13.0","pnpm":">=11.0.0"},"exports":{".":{"types":"./dist/src/protocol/index.d.ts","import":"./dist/src/protocol/index.js"},"./mcp":{"types":"./dist/src/mcp/server.d.ts","import":"./dist/src/mcp/server.js"},"./package.json":"./package.json"},"gitHead":"52219fa53bf9f127250728bb961d19c5f6661c90","license":"MIT","scripts":{"dev":"tsx src/bin/index.ts","test":"vitest run","build":"pnpm run clean && tsc -p tsconfig.build.json && node -e \"const fs=require('node:fs');const path=require('node:path');const src=path.join('src','harness-pacing','seeds');const dest=path.join('dist','src','harness-pacing','seeds');fs.mkdirSync(dest,{recursive:true});for(const f of fs.readdirSync(src)){if(f.endsWith('.json'))fs.copyFileSync(path.join(src,f),path.join(dest,f));}\"","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"pnpm run build","validate":"pnpm run audit:public && pnpm run audit:deps && pnpm run audit:doctrine && pnpm run typecheck && pnpm test && pnpm run build && pnpm run test:package","typecheck":"tsc -p tsconfig.json --noEmit","audit:deps":"node scripts/audit/dependency-audit.mjs","audit:public":"node scripts/audit/public-surface.mjs","test:package":"node scripts/audit/verify-pack.mjs","test:coverage":"vitest run --coverage","audit:doctrine":"node scripts/audit/doctrine-currency.mjs","prepublishOnly":"pnpm run validate"},"version":"0.7.2","_npmUser":{"name":"bradheitmann","email":"bradheitmann@gmail.com"},"homepage":"https://github.com/bradheitmann/odin-sentinel#readme","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"_npmVersion":"11.19.1","description":"Portable MCP governance protocol for multi-agent terminal teams: 48 tools, 27 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","directories":{},"maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"_nodeVersion":"26.9.0","dependencies":{"zod":"4.4.3","yaml":"2.8.4","@modelcontextprotocol/sdk":"1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.0.3","devDependencies":{"tsx":"^4.23.12","vite":"^8.2.2","vitest":"4.1.10","typescript":"^5.9.3","@types/node":"^24.13.3","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/odin-sentinel_0.7.2_1790153717391_0.3026647463554195"}}},"time":{"created":"2026-05-07T02:21:32.882Z","modified":"2026-09-23T08:55:17.659Z","0.2.1":"2026-05-07T02:21:33.246Z","0.4.2":"2026-05-11T19:40:34.584Z","0.4.3":"2026-05-11T19:50:35.658Z","0.4.4":"2026-05-12T07:03:03.797Z","0.4.5":"2026-05-12T10:30:30.327Z","0.4.6":"2026-05-13T19:09:39.849Z","0.4.7":"2026-05-16T02:45:27.898Z","0.4.8":"2026-06-04T04:01:31.615Z","0.4.9":"2026-06-04T04:39:54.284Z","0.4.10":"2026-06-04T07:48:25.243Z","0.4.11":"2026-06-04T08:33:32.852Z","0.4.12":"2026-06-04T09:14:08.653Z","0.4.13":"2026-06-04T10:12:39.915Z","0.5.0":"2026-06-12T09:59:16.784Z","0.6.0":"2026-08-23T22:40:37.771Z","0.7.1":"2026-09-22T22:31:48.333Z","0.7.2":"2026-09-23T08:55:17.489Z"},"bugs":{"url":"https://github.com/bradheitmann/odin-sentinel/issues"},"author":{"name":"ODIN Sentinel contributors"},"license":"MIT","homepage":"https://github.com/bradheitmann/odin-sentinel#readme","keywords":["mcp","model-context-protocol","agent-orchestration","multi-agent","sentinel"],"repository":{"url":"git+https://github.com/bradheitmann/odin-sentinel.git","type":"git"},"description":"Portable MCP governance protocol for multi-agent terminal teams: 48 tools, 27 resources, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.","maintainers":[{"name":"bradheitmann","email":"bradheitmann@gmail.com"}],"readme":"# ODIN Sentinel\n\n**Portable MCP governance protocol for visible multi-agent teams: 48 tools, 27 resources, role topology, readiness gates, ODIN watchers, receipts, delegation, and closeout over stdio.**\n\nODIN Sentinel is a local stdio MCP server plus a portable coordination protocol\nfor visible agent teams. It gives agents a shared roster, startup packet,\ndelegation contract, receipt shape, layout rule, and closeout checklist. It does\nnot provide model inference, host a backend, or replace your development process.\n\nPlain version: ODIN Sentinel helps you put coding agents into named visible\nroles, check whether they are ready, and keep a human operator in control. If a\ntool asks you to sign in, approve a permission prompt, or configure an account,\nthat is a normal setup blocker, not a personal failure. You can pause, choose a\ndifferent harness, keep a role slot empty, or ask for help.\n\nFor the fastest path, read [docs/guides/quick-start.md](docs/guides/quick-start.md).\nFor copy-paste prompts, read [docs/guides/quickstart-prompts.md](docs/guides/quickstart-prompts.md).\nFor a starter team shape, read [docs/guides/recommended-starter-team.md](docs/guides/recommended-starter-team.md).\n\n## Contributor Setup\n- Required: Node.js 22.13+ and pnpm 11.0.3, pinned by `packageManager`.\n- Recommended: `corepack enable && pnpm install`.\n- Corepack fetches pnpm 11.0.3 automatically; mismatched global pnpm versions may warn or fail.\n\n## Terms In Plain Language\n\n- MCP server: a local tool bridge that lets an agent ask ODIN Sentinel for\n  protocol documents and validation checks.\n- Harness: the app or CLI running an agent, such as Claude Code, Codex, Goose,\n  Crush, OpenHands, Cursor, Zed, or another MCP-capable host.\n- CMUX: the visible terminal workspace where the human can see named role slots.\n- Governed team mode: the stricter mode where persistent agents must be visible,\n  assigned to roles, and monitored.\n- Native skill or prompt fallback: the instructions that teach an agent how to\n  behave in this system.\n\n## Minimum Governed-Team Checklist\n\nBefore launching persistent governed roles, confirm:\n\n- Node.js satisfies `package.json` (`>=22.13.0`).\n- `@bradheitmann/odin-sentinel@0.7.2` is installed or available through a pinned\n  `pnpm dlx` or `npx` command.\n- The ODIN MCP server is configured in each selected harness.\n- The SCP native skill is installed where supported, or the full prompt/resource\n  fallback is available.\n- CMUX is installed and the team will run in one visible CMUX workspace.\n- Harnesses and accounts are selected and authenticated.\n- Local inference is smoke-tested if used: endpoint reachable, content returned\n  within timeout, and not only `reasoning_content`.\n- Role-compatibility smoke test passes for each persistent role.\n\nRole slots may be prepared before readiness is complete, but occupants should\nnot be launched until readiness passes or the PM records a waiver/substitution.\n\n## Install\n\nRecommended zero-install path:\n\n```bash\npnpm dlx --package @bradheitmann/odin-sentinel@0.7.2 odin-sentinel-mcp\n```\n\nSupported npm global install:\n\n```bash\nnpm i -g @bradheitmann/odin-sentinel@0.7.2\n```\n\nSupported npx zero-install path:\n\n```bash\nnpx -y -p @bradheitmann/odin-sentinel@0.7.2 odin-sentinel-mcp\n```\n\nA stdio smoke test that does not require an MCP host:\n\n```bash\nprintf '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2024-11-05\",\"capabilities\":{},\"clientInfo\":{\"name\":\"probe\",\"version\":\"0\"}}}\\n' \\\n  | pnpm dlx --package @bradheitmann/odin-sentinel@0.7.2 odin-sentinel-mcp\n```\n\nA successful response includes `\"serverInfo\":{\"name\":\"odin-sentinel\",\"version\":\"0.7.2\"}`.\nMinimum compatible child MCP version for governed-team docs is `0.4.5`.\n\n## MCP Host Examples\n\nClaude Code:\n\n```bash\nclaude mcp add odin-sentinel -- pnpm dlx --package @bradheitmann/odin-sentinel@0.7.2 odin-sentinel-mcp\n```\n\nCodex (`~/.codex/config.toml`):\n\n```toml\n[mcp_servers.odin-sentinel]\ncommand = \"pnpm\"\nargs = [\"dlx\", \"--package\", \"@bradheitmann/odin-sentinel@0.7.2\", \"odin-sentinel-mcp\"]\n```\n\nCursor / VS Code / Droid / Crush (`mcpServers` JSON):\n\n```json\n{\n  \"mcpServers\": {\n    \"odin-sentinel\": {\n      \"command\": \"pnpm\",\n      \"args\": [\"dlx\", \"--package\", \"@bradheitmann/odin-sentinel@0.7.2\", \"odin-sentinel-mcp\"]\n    }\n  }\n}\n```\n\nZed (`~/.config/zed/settings.json`):\n\n```json\n\"odin-sentinel\": {\n  \"source\": \"custom\",\n  \"command\": \"pnpm\",\n  \"args\": [\"dlx\", \"--package\", \"@bradheitmann/odin-sentinel@0.7.2\", \"odin-sentinel-mcp\"]\n}\n```\n\nGoose (`~/.config/goose/config.yaml`):\n\n```yaml\nodin-sentinel:\n  type: stdio\n  cmd: pnpm\n  args: [\"dlx\", \"--package\", \"@bradheitmann/odin-sentinel@0.7.2\", \"odin-sentinel-mcp\"]\n  enabled: true\n```\n\nOpenCode (`~/.config/opencode/opencode.json`):\n\n```json\n{\n  \"mcp\": {\n    \"odin-sentinel\": {\n      \"type\": \"local\",\n      \"command\": [\"pnpm\", \"dlx\", \"--package\", \"@bradheitmann/odin-sentinel@0.7.2\", \"odin-sentinel-mcp\"],\n      \"enabled\": true\n    }\n  }\n}\n```\n\nOpenHands (`~/.openhands/config.toml`):\n\n```toml\n[mcp.stdio_servers.odin-sentinel]\nname = \"odin-sentinel\"\ncommand = \"pnpm\"\nargs = [\"dlx\", \"--package\", \"@bradheitmann/odin-sentinel@0.7.2\", \"odin-sentinel-mcp\"]\n```\n\nIf a host cannot run `pnpm`, use the equivalent pinned npx command:\n\n```bash\nnpx -y -p @bradheitmann/odin-sentinel@0.7.2 odin-sentinel-mcp\n```\n\n## MCP, Skill, Plugin, Prompt Fallback\n\n- MCP server: supplies protocol resources and validation tools.\n- Native skill: improves discoverability and automatic invocation in supported\n  harnesses.\n- Plugin: may package the MCP server and native skill together for a host.\n- Full prompt injection: fallback only when MCP/native skill/plugin support is\n  unavailable.\n\nMCP alone is useful, but governed team mode is strongest when the persistent\nroles also have native skill context or the full bootstrap prompt.\n\n## CMUX Requirement\n\nGoverned team mode requires CMUX or a compatible visible terminal-pane surface.\nThe EXEC PM should remain in the same CMUX workspace as the rest of the team by\ndefault. Tab-only layouts are degraded; the canonical layout is human-readable\nspatial/pod organization.\n\nWithout CMUX, ODIN can still expose MCP resources, validation tools, and protocol\nsnapshots, but the visible team-management experience is not active governed\nmode.\n\n## Public Starter Templates\n\nThe `templates/` directory contains intentionally basic PM, DEV, QA, and team\nmanifest templates. They are starter material only. Add your own criteria before\nusing them for real work.\n\nLocal operator planning folders may be useful private workspaces, but they are\nnot shipped product internals and are not required for public users.\n\n## Provided MCP Resources (27)\n\n- `odin://protocol/main`\n- `odin://protocol/roles`\n- `odin://protocol/topology`\n- `odin://protocol/model-profiles`\n- `odin://protocol/closeout`\n- `odin://protocol/delegation`\n- `odin://protocol/receipts/boot`\n- `odin://protocol/step-up-ladder`\n- `odin://protocol/recipe-capture`\n- `odin://protocol/qa-independence`\n- `odin://protocol/commit-gate`\n- `odin://protocol/harness-control-matrix`\n- `odin://protocol/authority-chain`\n- `odin://protocol/blocked-pod-rollover`\n- `odin://protocol/slice-health-sentinels`\n- `odin://protocol/receipts/team-manifest`\n- `odin://protocol/bootstrap-skill`\n- `odin://protocol/skill-references/boot-receipt-examples`\n- `odin://protocol/skill-references/canonical-introduction-prompt`\n- `odin://protocol/skill-references/harness-skill-targets`\n- `odin://protocol/skill-references/team-bootstrap-runbook`\n- `odin://protocol/role-cards/exec-pm`\n- `odin://protocol/role-cards/team-pm`\n- `odin://protocol/role-cards/dev-worker`\n- `odin://protocol/role-cards/qa-worker`\n- `odin://protocol/role-cards/exec-asst`\n\n## Provided MCP Tools (48)\n\nThe governance-registry compatibility surface (the `odin_append_event` / `odin_query_events` tools below, plus the `odin://registry/{scope}/events` resource template) is ACTIVE BY DEFAULT as of 0.6.0; set `ODIN_GOVDISP_REGISTRY_MCP=0` to opt out and restore the 46-tool baseline.\n\n- `odin.get_version`\n- `odin.get_startup_packet`\n- `odin.get_role_profile`\n- `odin.get_role_card`\n- `odin.get_bootstrap_skill`\n- `odin.get_boot_receipt_schema`\n- `odin.get_boot_receipt_examples`\n- `odin.get_active_watch_packet`\n- `odin.get_harness_probe_matrix`\n- `odin.get_onboarding_plan`\n- `odin.evaluate_readiness_gate`\n- `odin.evaluate_escalation_gate`\n- `odin.validate_boot_receipt`\n- `odin.validate_bring_up_plan`\n- `odin.validate_team_manifest`\n- `odin.get_delegation_packet`\n- `odin.validate_delegation_packet`\n- `odin.validate_remediation_packet`\n- `odin.validate_fallback_contract`\n- `odin.validate_successor_contract`\n- `odin.validate_outage_handoff`\n- `odin.validate_closure_independence`\n- `odin.validate_commit_gate`\n- `odin.validate_control_recipe`\n- `odin.validate_harness_control_recipe`\n- `odin.validate_delivery_verification`\n- `odin.validate_authority_action`\n- `odin.evaluate_blocked_pod_rollover`\n- `odin.evaluate_slice_health`\n- `odin.evaluate_oversized_slice_sentinel`\n- `odin.evaluate_qa_timeout_sentinel`\n- `odin.evaluate_spec_defect_sentinel`\n- `odin.validate_cmux_delivery_proof`\n- `odin.validate_instruction_read_proof`\n- `odin.get_activation_gates`\n- `odin.get_closeout_checklist`\n- `odin.get_runtime_notice`\n- `odin.export_protocol_snapshot`\n- `odin.compute_surface_layout`\n- `odin.compute_surface_layout_gate`\n- `odin.compute_human_cmux_quad_layout`\n- `odin.compile_session_report`\n- `odin.preview_telemetry_redaction`\n- `odin.submit_session_report`\n- `odin.get_telemetry_config`\n- `odin.get_mission_frontrun_pack`\n- `odin_append_event`\n- `odin_query_events`\n\n## Development\n\n```bash\npnpm install\npnpm run typecheck\npnpm test\npnpm run build\npnpm run validate\n```\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n","readmeFilename":"README.md"}