01Control path
Agent
↓
Intent
↓
Policy / Decision
↓
Authorization (Gatekeeper)
↓
Tool
↓
Audit (timelines)02Components that exist today
- Skillgate — curated skills from OpenAPI/modules; read/write/approval classes
- Decision Runtime — closed-set decide(); confidence informs policy, never grants permission
- Gatekeeper — allow / deny / require-approval before tool execution
- DNA policies — packaged with the agent contract
- Timelines / logs — JSONL run history via hazel logs
03Skillgate registration
typescript
import { Skillgate } from '@hazeljs/skillgate';
import { ToolRegistry } from '@hazeljs/agent';
const gate = Skillgate.fromOpenApi(spec, {
// classify read / write / approval
});
gate.register(new ToolRegistry(), 'api-concierge');