Interface: HitlConfig
Defined in: packages/agentos/src/api/types.ts:205
Human-in-the-loop (HITL) configuration. Gates specific lifecycle events behind an async approval handler before the agent proceeds.
Properties
approvals?
optionalapprovals:object
Defined in: packages/agentos/src/api/types.ts:210
Declarative approval triggers. All are opt-in; omitting a field means no pause at that lifecycle point.
beforeAgent?
optionalbeforeAgent:string[]
Agent names whose invocations require approval before execution.
beforeEmergent?
optionalbeforeEmergent:boolean
Whether emergent agent creation requires approval.
beforeReturn?
optionalbeforeReturn:boolean
Whether returning the final answer requires approval.
beforeStrategyOverride?
optionalbeforeStrategyOverride:boolean
Whether a runtime strategy override requires approval.
beforeTool?
optionalbeforeTool:string[]
Tool names whose invocations require approval before execution.
guardrailOverride?
optionalguardrailOverride:boolean
Defined in: packages/agentos/src/api/types.ts:252
Run guardrails AFTER HITL approval to catch destructive actions.
When enabled (default), even after a tool call is approved by the HITL
handler (auto-approve, LLM judge, or human), the configured guardrails
run a final safety check against the tool call arguments. If any
guardrail returns action: 'block', the approval is overridden and the
tool call is denied.
Set to false to disable this safety net and give full autonomy to the
HITL handler's decision.
Default
true
handler()?
optionalhandler: (request) =>Promise<ApprovalDecision>
Defined in: packages/agentos/src/api/types.ts:227
Custom async handler invoked for every approval request.
Must resolve to an ApprovalDecision within timeoutMs or the
onTimeout policy is applied.
Parameters
request
Returns
Promise<ApprovalDecision>
onTimeout?
optionalonTimeout:"error"|"reject"|"approve"
Defined in: packages/agentos/src/api/types.ts:236
Policy applied when the handler does not respond within timeoutMs.
"reject"— treat as denied; the action is blocked."approve"— treat as approved; the action proceeds automatically."error"— throw an error and halt the run.
postApprovalGuardrails?
optionalpostApprovalGuardrails:string[]
Defined in: packages/agentos/src/api/types.ts:263
Guardrail IDs to run as a post-approval safety check.
Only evaluated when guardrailOverride is not false. These
guardrails are invoked after the HITL handler approves a tool call and
can veto the approval if they detect destructive patterns.
Default
['pii-redaction', 'code-safety']
timeoutMs?
optionaltimeoutMs:number
Defined in: packages/agentos/src/api/types.ts:229
Maximum milliseconds to wait for the handler to resolve. Defaults to 30_000.