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
15 lines
425 B
JSON
15 lines
425 B
JSON
{
|
|
"name": "@heretek-ai/opencode-gateway",
|
|
"version": "1.0.0",
|
|
"private": true,
|
|
"description": "Hardened web-ingestion MCP gateway: versioned contract, typed client, guard plugin, engine catalog, egress deploy snippets",
|
|
"workspaces": [
|
|
"packages/*",
|
|
"apps/*"
|
|
],
|
|
"scripts": {
|
|
"test": "bun test packages/contract-client/test apps/gateway/test",
|
|
"check": "bunx tsc --noEmit -p tsconfig.json"
|
|
}
|
|
}
|