Implementation Partner Handoff

August 24, 2026 ยท View on GitHub

This guide packages the local, self-hosted HELM AI Kernel v0.8.5 source target for an implementation partner. It does not describe a hosted HELM API.

NavigoTech Innovation is an official HELM implementation partner. Partner status does not widen runtime authority: every client action still needs an exact routed boundary, identity scope, policy, approval path, source read-back, and evidence contract.

1. Install The Pinned CLI

brew tap mindburn-labs/tap
brew update
brew install mindburn-labs/tap/helm-ai-kernel
helm-ai-kernel --version

The expected source release target for this packet is 0.8.5. This is not a registry availability claim. If the registry or local cache does not return that release after publication, stop and use the signed asset from the v0.8.5 release.

2. Run A Clean Local Proof

helm-ai-kernel mcp proof --json --out ~/.helm-ai-kernel/proofs

helm-ai-kernel verify \
  --bundle ~/.helm-ai-kernel/proofs/<run-id>/evidencepacks/<run-id> \
  --profile dev-local \
  --allow-self-attested \
  --json

--allow-self-attested accepts internal consistency for this local proof, not provenance. Keep the emitted run ID, receipt paths, verification result, CLI version, and environment in the implementation record.

3. Choose One Documented Surface

NeedSurfaceCurrent boundary
No-key sandbox proofPublic demo HTTP or TypeScript SDKSynthetic demo only
Typed application callSDKsLocal clients; auth helpers differ by language
Exact route contractHTTP APIFiltered 16-operation public contract
Generated clientOpenAPI YAMLPrefer when an SDK lacks required headers
Existing OpenAI clientOpenAI proxyLocal proxy mode
MCP configuration and authorization proofMCPNot a general-purpose upstream proxy

Do not present any local base URL as a hosted HELM endpoint.

4. Pin Runtime Mode And Base URL

Runtime modeStart commandBase URL
quickstarthelm-ai-kernel quickstarthttp://127.0.0.1:7714
servehelm-ai-kernel serve --policy <policy.toml>http://127.0.0.1:7714
serverhelm-ai-kernel serverhttp://127.0.0.1:8080
OpenAI-compatible proxyhelm-ai-kernel proxy --port 9090http://127.0.0.1:9090/v1
Selected HTTP MCP runtimeruntime-specific; see MCPhttp://localhost:9100/mcp

The command, port, policy, and client must refer to the same runtime mode. These loopback URLs are the only base URLs in this packet. A public docs URL, health endpoint, or QA hostname is not a partner credential or a production API endpoint.

5. Apply Route Authentication

Protected operations use the exported HELM_ADMIN_API_KEY as the HTTP bearer credential.

Tenant-scoped routes also bind tenant and principal identity. When the scoped emergency fence is enabled, the server can additionally require X-Helm-Workspace-ID. Use HTTP API for the route class and SDKs for the per-language header support.

If the selected SDK cannot send a required identity header, stop and use direct HTTP or a client generated from /openapi.yaml. Never remove a required scope merely to make an example run.

The maintained Go, TypeScript, Python, Java, and Rust clients can send the required API-key, tenant, and principal headers. The Go client cannot set the optional workspace header, so use direct HTTP or a generated OpenAPI client when a scoped emergency fence requires that additional binding.

6. Run One Protected HTTP Evaluation

Use the server-owned values supplied by the environment owner. The tenant and principal headers are mandatory for the current evaluate contract; the workspace header is mandatory only when the scoped emergency fence is enabled. Start the local API server with the same server-owned values in its environment:

HELM_ADMIN_API_KEY='<environment-owned-admin-key>' \
HELM_RUNTIME_TENANT_ID='<server-owned-tenant-id>' \
HELM_RUNTIME_PRINCIPAL_ID='<server-owned-principal-id>' \
helm-ai-kernel server

Then, in a separate terminal, run the decision and receipt proof:

export HELM_BASE_URL=http://127.0.0.1:8080
export HELM_ADMIN_API_KEY='<environment-owned-admin-key>'
export HELM_TENANT_ID='<server-owned-tenant-id>'
export HELM_PRINCIPAL_ID='<server-owned-principal-id>'

curl --fail-with-body --silent --show-error \
  -X POST "$HELM_BASE_URL/api/v1/evaluate" \
  -H "Authorization: ${HELM_AUTH_SCHEME:-Bearer} ${HELM_ADMIN_API_KEY:?HELM_ADMIN_API_KEY is required}" \
  -H "X-Helm-Tenant-ID: $HELM_TENANT_ID" \
  -H "X-Helm-Principal-ID: $HELM_PRINCIPAL_ID" \
  -H "Idempotency-Key: navigotech-local-read-001" \
  -H 'Content-Type: application/json' \
  --data-binary "{\"principal\":\"$HELM_PRINCIPAL_ID\",\"action\":\"ticket.read\",\"resource\":\"ticket:demo-001\",\"context\":{\"effect_class\":\"read\",\"integration\":\"navigotech-local-proof\"}}"

curl --fail-with-body --silent --show-error \
  "$HELM_BASE_URL/api/v1/receipts?limit=10" \
  -H "Authorization: ${HELM_AUTH_SCHEME:-Bearer} ${HELM_ADMIN_API_KEY:?HELM_ADMIN_API_KEY is required}" \
  -H "X-Helm-Tenant-ID: $HELM_TENANT_ID" \
  -H "X-Helm-Principal-ID: $HELM_PRINCIPAL_ID"

Do not expect ALLOW merely because the request is well formed. DENY or ESCALATE is a valid fail-closed proof when the policy, scope, approval, or route is incomplete. Record the returned decision and receipt references before connecting an executor. The receipt query proves boundary persistence, not upstream dispatch. If the environment requires X-Helm-Workspace-ID, add the exact server-owned value to both requests; never source it from request JSON.

7. Prove Dispatch And No-Dispatch

For the exact client action, record:

  1. action, resource, effect class, tenant, principal, and workspace;
  2. least-authority credential and expiry;
  3. policy version and expected verdict;
  4. named approval path for ESCALATE;
  5. explicit executor or upstream path for ALLOW;
  6. no-dispatch observation for DENY and unresolved ESCALATE;
  7. source-system response and read-back;
  8. reconciliation status and exception owner; and
  9. receipt or EvidencePack plus offline verifier result.

Setup output or generated configuration is not proof that a native client loaded HELM. Observe the configured event or call crossing the boundary.

8. Revoke And Hand Off

Revoke temporary MCP approval when the proof ends:

helm-ai-kernel mcp revoke \
  --server-id <server-id> \
  --reason "implementation proof complete"

Give the client the version pin, configuration diff, policy, credential scope, approval path, source read-back, evidence bundle, verifier command, revocation procedure, rollback procedure, limitations, and support owner.

9. Repeat Without Founder Assistance

The implementation channel is repeatable only after the partner completes the same bounded proof for a second unrelated client without Mindburn founder or engineering intervention. A partner announcement or generated configuration is not a substitute for that second independent install.