mirror of
https://github.com/Heretek-OpenCode/heretek-opencode.git
synced 2026-11-09 10:39:36 -10:00
- contract/v1/fixtures: 10 golden JSON-RPC 2.0 pairs for search/fetch/
extract_structured/research_report (+initialize, tools-list wire compat),
X-Swarm-Contract:1 headers, real sha256 contentHash digests
- packages/contract-client (@heretek-ai/gateway-contract 1.0.0): Zod schemas
for all tools, provenance envelope {provenance,trust:untrusted,content},
typed MCP client (initialize negotiation, Retry-After retry, sha256
verification, contract header assertion), fixture loader + hash check,
pure SSRF/sanitize/circuit/cache modules
- packages/opencode-guard (@heretek-ai/gateway-guard): OpenCode v2 plugin on
@opencode/plugin 2.0.26 exact (define + tool.hook + mcp.transform),
gateway-only allowlist, lane-egress fallback documented
- apps/gateway (Bun/TS): SSRF fail-closed (literal blocklist + DNS pin +
no-redirect-to-private), per-(host,engine) circuit breakers with half-open,
injection sanitize envelope, sha256 cache keys + TTLs, caps as error codes
- catalog (4 engines), deploy (smokescreen + caddy snippets)
- QA: bun test 44/44, tsc clean, oxlint clean
19 lines
456 B
JSON
19 lines
456 B
JSON
{
|
|
"name": "@heretek-ai/gateway",
|
|
"version": "1.0.0",
|
|
"private": true,
|
|
"description": "Hardened MCP gateway (POST /mcp, GET /ready): SSRF fail-closed, per-host circuit breakers, injection envelope, cache, caps",
|
|
"type": "module",
|
|
"scripts": {
|
|
"start": "bun run src/index.ts",
|
|
"test": "bun test test"
|
|
},
|
|
"dependencies": {
|
|
"zod": "^3.23.8"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.0.0",
|
|
"typescript": "^5.5.0"
|
|
}
|
|
}
|