Skip to content

@intutic/clawde ​

Classes ​

Interfaces ​

AdjudicateOptions ​

Properties ​

PropertyType
note?string

AttenuateOptions ​

Properties ​

PropertyTypeDescription
ttlSeconds?number60 to 86400 seconds.

Properties ​

PropertyType
chainIdstring
childKeyIdstring
createdAtstring
expiresAtstring
grantedCapsstring[]
parentKeyIdstring
workspaceIdstring

AttenuationResult ​

Properties ​

PropertyTypeDescription
attenuationChainIdstring-
childKeystringThe child vk_ key: shown once, never stored.
childKeyIdstring-
expiresAtstring-
grantedCapsstring[]-

AuthoredGuardrailInput ​

Properties ​

PropertyTypeDescription
description?string | null-
irRecord<string, unknown>-
namestringOne line.

AuthoredGuardrailUpdate ​

Any of the three. A changed IR creates the next version; description: null clears it.

Properties ​

PropertyType
description?string | null
ir?Record<string, unknown>
name?string

AuthoredGuardrailWriteResult ​

Properties ​

PropertyTypeDescription
forkedbooleanThe IR changed: a new version, PROPOSED with no evidence, replaced the old one, which is now RETIRED.
guardrailGuardrailDetailThe guardrail read back after the write.
oktrue-
supersedesstring | null-

BranchUsage ​

Extends ​

Properties ​

PropertyTypeDescriptionInherited from
branchstring | null--
commitCountnumber--
lastCallAtstring--
repostring | nullNull on the row for calls made with no git context.-
totalCostUsdnumber-UsageTotals.totalCostUsd
totalInputTokensnumber-UsageTotals.totalInputTokens
totalOutputTokensnumber-UsageTotals.totalOutputTokens
totalRawCostUsdnumber-UsageTotals.totalRawCostUsd
traceCountnumber-UsageTotals.traceCount

BranchUsageResponse ​

Properties ​

PropertyType
branchesBranchUsage[]
scopeUsageScope

BudgetCheckResult ​

Properties ​

PropertyType
allowedboolean
reason?string
remaining_usdnumber

BundleUploadOptions ​

Properties ​

PropertyTypeDescription
fileName?stringThe upload's file name. Default rule.wasm.

BundleUploadResult ​

Properties ​

PropertyType
accepted?boolean
gates?object[]
mode?string
ruleId?string

ChatMessage ​

Properties ​

PropertyType
contentstring | any[]
name?string
role"system" | "user" | "assistant" | "tool"
tool_call_id?string
tool_calls?any[]

ChatParams ​

Indexable ​

ts
[key: string]: any

Properties ​

PropertyType
max_tokens?number
messagesChatMessage[]
modelstring
response_format?any
stream?boolean
temperature?number
tool_choice?any
tools?any[]

ChatResponse ​

Properties ​

PropertyTypeDescription
budgetPctUsed?numberDeprecated Never set: the proxy does not report budget on responses. Use checkBudget().
budgetRemainingUsd?numberDeprecated Never set: the proxy does not report budget on responses. Use checkBudget().
choicesobject[]-
creatednumber-
idstring-
modelstring-
objectstring-
upstream?UpstreamCallsWhat the proxy's retry layer did, when it did anything: how many upstream calls this answer took, and — when a fallback answered after the model's retries ran out — which model failed (model names the one that answered). Absent for the ordinary single-call request.
usage?object-
usage.completion_tokensnumber-
usage.prompt_tokensnumber-
usage.total_tokensnumber-
verdict?Verdict | LegacyVerdictAlways allow: a response only comes back when the proxy let the request through.

CheckDomainVerificationResult ​

Properties ​

PropertyType
domainstring
status"pending" | "verified" | "consumed" | "expired"
txtRecordNamestring
txtRecordValuestring
verificationIdstring
verifiedAtstring | null

CircuitBreakerOptions ​

Properties ​

PropertyTypeDescription
failOpen?boolean-
maxCostUsd?numberDeprecated Use requireBudget: true. Any value turns the workspace budget check on; the amount is not compared with anything, because nothing reports a call's cost before it is made.
requireBudget?booleanRun checkBudget() first and refuse to run the function when the workspace has no budget left. Default: false.
sensitivityTier?"low" | "medium" | "high" | "critical"Deprecated Ignored: neither the SDK nor the proxy reads a sensitivity tier.

ClawdeClientOptions ​

Options for a ClawdeClient.

Properties ​

PropertyTypeDefault valueDescription
apiKeystringundefinedThe key the proxy authenticates: an Intutic virtual key (vk_…) or a provider key.
autoContext?booleantrueResolve context (resolveContext()) and register a session carrying the repository, branch and commit on the first chat(). false does neither.
baseUrl?stringINTUTIC_BASE_URL, then http://localhost:4000The proxy's address.
controlPlaneUrl?stringINTUTIC_CONTROL_PLANE_URL, then Intutic's hosted control planeControl-plane base URL used by checkBudget() and session registration (a different origin from baseUrl — see ControlPlaneClient).
graphIdentity?Partial<GraphIdentity>undefinedThis client's position in the agent graph. Omit and it is inherited from the environment, so a spawned agent is automatically a child of its spawner. Supply it when one process drives several logical agents and the environment cannot describe the shape.
provider?"openai" | "anthropic" | "google"undefined'anthropic' sends chat() to the proxy's /v1/messages route, converting the request and the answer between the OpenAI and Anthropic shapes. Otherwise the request goes to /v1/chat/completions as it is.
retries?number2How many times a transport failure, a timeout or a 5xx answer is retried.
timeout?number30000How long one attempt may take, in milliseconds.

CommitUsage ​

Extends ​

Properties ​

PropertyTypeInherited from
branchstring | null-
commitstring | null-
firstCallAtstring-
lastCallAtstring-
repostring | null-
totalCostUsdnumberUsageTotals.totalCostUsd
totalInputTokensnumberUsageTotals.totalInputTokens
totalOutputTokensnumberUsageTotals.totalOutputTokens
totalRawCostUsdnumberUsageTotals.totalRawCostUsd
traceCountnumberUsageTotals.traceCount

CommitUsageResponse ​

Properties ​

PropertyType
commitsCommitUsage[]
scopeUsageScope

CompleteLoopRunOptions ​

Properties ​

PropertyType
outcome?"FAILED" | "SUCCEEDED"

ConfigChain ​

Properties ​

PropertyTypeDescription
breaksobject[]-
contentMismatchesobject[]-
harnessTypestring | null-
intactboolean-
okboolean-
snapshotsNotWalkednumberSaturates at 1: read it as "more snapshots than the walk covered".
snapshotsWalkednumber-
snapshotsWithoutContent?number-
unchainedSnapshotIdsstring[]-
workspaceIdstring-

ControlPlaneClientOptions ​

Options for a ControlPlaneClient.

Properties ​

PropertyTypeDefault valueDescription
apiKeystringundefinedAn Intutic virtual key (vk_…) or a login JWT.
baseUrl?stringINTUTIC_CONTROL_PLANE_URL, then Intutic's hosted control planeThe control plane's address.

CostPrediction ​

Properties ​

PropertyType
basedOnSamplesnumber
confidence"low" | "medium" | "high"
estimatedCostUsdnumber
estimatedOutputTokensnumber
estimatedReasoningTokensnumber | null
inputTokensnumber

CreateOrgParams ​

Properties ​

PropertyTypeDescription
domainstring-
orgNamestring-
region?stringGateway cell region ('us'
verificationIdstring-

CreateOrgResult ​

Properties ​

PropertyType
namestring
orgIdstring
planTierstring
region?string
teamIdstring
workspaceIdstring

DecisionReviewResult ​

Properties ​

PropertyTypeDescription
bypassWritten?booleanA short-lived bypass was written for the exact retried call.
okboolean-
statusstring-

DeviceDisconnect ​

Properties ​

PropertyType
createdAtstring
disconnectIdstring
fingerprintstring
harnessesstring[]
hostnamestring
memberIdstring | null
reportedBystring | null
scope"machine" | "harness"

DuplicatesOptions ​

Properties ​

PropertyTypeDescription
minJaccard?number0 to 1.

EvidenceArchive ​

An evidence archive: the parts verification reads. Everything else is covered by the archive hash.

Indexable ​

ts
[key: string]: unknown

Properties ​

PropertyType
categories?object[]
collectedAt?string
formatVersion?number
frameworks?object[]
manifest?object
manifest.algorithm?string
manifest.archiveSha256?string
manifest.sections?Record<string, string>
manifest.unsignedReason?string
overallScore?number | null
periodEnd?string
periodStart?string
runId?string
signature?EvidenceDetachedSignature | null

EvidenceCollectOptions ​

Properties ​

PropertyTypeDescription
periodEnd?string-
periodStart?stringISO 8601.

EvidenceCollectResult ​

Properties ​

PropertyType
archiveEvidenceArchive
artifactUrlstring | null
runIdstring
signedboolean
signingKeyId?string
unsignedReason?string

EvidenceDetachedSignature ​

Properties ​

PropertyType
algorithmstring
keyIdstring
preimageDomainstring
valuestring

EvidenceVerification ​

Properties ​

PropertyTypeDescription
archiveHashMatchesboolean-
archiveSha256stringThe recomputed whole-archive hash, and whether it equals manifest.archiveSha256.
sectionMismatchesstring[]Manifest entries whose content does not hash to the recorded value, or that name nothing in the archive.
sectionsCheckednumber-
signatureEvidenceSignatureState-
signingKeyIdstring | null-
unsignedReasonstring | null-
verifiedbooleanTrue only when the hashes match and a published key accepts the signature.

ExtractDocumentResult ​

Properties ​

PropertyType
cap| { cap: number; count: number; } | null
chunksnumber
docIdstring
errorstring | null
extractorstring
guardrailsobject
guardrails.existingnumber
guardrails.proposednumber
guardrails.rejectedForInjectionnumber
liftedobject
lifted.clausesnumber
lifted.errorsstring[]
lifted.validnumber
llmUnavailableboolean
malformednumber
proposalsnumber
rejectednumber
runIdstring | null
skipped"no_passages" | "daily_cap" | "cap_unavailable" | "llm_disabled" | null
validnumber
verbatimQuotesnumber

ExtractOptions ​

Properties ​

PropertyTypeDescription
llm?booleanDefault true. False runs only the front-matter lift, with no model call.

Finding ​

Properties ​

PropertyType
anomaly_kindstring | null
confidencenumber
created_atstring
detector_idstring
dispositionstring | null
finding_idstring
harnessstring | null
loop_run_idstring | null
outcomeFindingOutcome | null
outcome_atstring | null
outcome_bystring | null
outcome_notestring | null
reasonstring | null
session_idstring | null
severitystring | null
shadowedboolean
trace_idstring | null

FindingAdjudication ​

Properties ​

PropertyType
finding_idstring
outcomeFindingOutcome

FindingFilters ​

Properties ​

PropertyTypeDescription
detectorId?string-
limit?number-
unadjudicated?booleanOnly findings nobody has ruled on.

FindingStats ​

Properties ​

PropertyType
caveatsstring[]
detectorsobject[]

FrameworkCoverage ​

Indexable ​

ts
[key: string]: unknown

Properties ​

PropertyType
frameworkIdstring
generatedAtstring
mappingVersionstring
namestring
summaryobject
summary.controlsnumber
summary.fullnumber
summary.mappednumber
summary.partialnumber
summary.statesRecord<string, number>

GateLiveness ​

Properties ​

PropertyType
gatesobject[]
windowHoursnumber

Gateway ​

Properties ​

PropertyType
createdAtstring
deploymentTargetstring
gatewayIdstring
keyPrefixstring
lastHeartbeatAtstring | null
namestring
proxyVersionstring | null
revokedAtstring | null
statusstring

GatewayConfigResult ​

Properties ​

PropertyTypeDescription
configRecord<string, unknown>The flags set on the gateway (requireVk, requireProvisionedKey). One never set is absent: the gateway runs its deployment's own value.
configVersionnumber-

GatewayConfigUpdate ​

Properties ​

PropertyType
requireProvisionedKey?boolean
requireVk?boolean

GatewayRegisterParams ​

Properties ​

PropertyType
deploymentTarget"docker" | "kubernetes" | "bare_metal"
namestring

GatewayRegisterResult ​

Properties ​

PropertyTypeDescription
deploymentTargetstring-
gatewayIdstring-
instructionsstring-
namestring-
statusstring-
tokenstringShown once — not retrievable again after this response.

GatewayResolution ​

Properties ​

PropertyType
gateway| { deploymentTarget: string; gatewayId: string; name: string; status: string; } | null
source"workspace" | "org" | "default"
staleAssignment?string

GatewayRotateResult ​

Properties ​

PropertyTypeDescription
gatewayIdstring-
instructionsstring-
previousTokenValidUntilstring-
tokenstringShown once — not retrievable again after this response.

GatewayStatus ​

Properties ​

PropertyTypeDescription
activeWorkspaces?number | null-
appliedConfigVersionnumber | nullThe config version the gateway reported running in its last heartbeat; null when unreachable or not reported.
desiredConfigVersionnumberThe version the latest config change produced; 0 before any. The gateway pulls it on its next heartbeat.
lastError?string | null-
litellmReachable?boolean | null-
proxyVersion?string | nullThe fields below are null when the gateway is unreachable, and absent when its last heartbeat did not report them.
reportedAtstring | null-
status"pending" | "online" | "degraded" | "unreachable"-
uptimeSeconds?number | null-

GitHubWebhookInfo ​

Properties ​

PropertyType
configuredboolean
createdAtstring | null
lastDeliveryAtstring | null
secretRotatedAtstring | null
urlstring | null

GitHubWebhookSecret ​

Properties ​

PropertyTypeDescription
secretstringShown once: not retrievable again after this response.
urlstring-

GuardrailConflict ​

Properties ​

PropertyType
aobject
a.idstring
a.quotestring
bobject
b.idstring
b.quotestring
detailstring
kindstring
tokenstring | null

GuardrailDeleteResult ​

Properties ​

PropertyType
guardrailGuardrailDetail
okboolean

GuardrailDetail ​

Extends ​

Properties ​

PropertyTypeDescriptionInherited from
clauseRecord<string, unknown> | null-GuardrailSummary.clause
descriptionstring | null-GuardrailSummary.description
document| { docId: string; provider: string; sourceUrl: string | null; title: string; } | null-GuardrailSummary.document
enforcingFiresnumber-GuardrailSummary.enforcingFires
eventsobject[]--
guardrailIdstring-GuardrailSummary.guardrailId
irRecord<string, unknown>The guardrail IR: kind and the keys that kind takes.GuardrailSummary.ir
namestring | null-GuardrailSummary.name
passageRecord<string, unknown> | null--
promotedAtstring | null-GuardrailSummary.promotedAt
proposedAtstring-GuardrailSummary.proposedAt
provenanceGuardrailProvenance-GuardrailSummary.provenance
rejectedReasonstring | null-GuardrailSummary.rejectedReason
renderedunknown-GuardrailSummary.rendered
rolesstring[]-GuardrailSummary.roles
ruleCandidateIdstring | null-GuardrailSummary.ruleCandidateId
scopestring-GuardrailSummary.scope
shadowAtstring | null-GuardrailSummary.shadowAt
shadowEvaluationsnumber-GuardrailSummary.shadowEvaluations
shadowWouldActnumber-GuardrailSummary.shadowWouldAct
sourceStaleboolean-GuardrailSummary.sourceStale
statusGuardrailStatus-GuardrailSummary.status
supersededBystring | null--
supersedesstring | null-GuardrailSummary.supersedes
targetGuardrailTarget-GuardrailSummary.target
validationunknown--
versionnumber-GuardrailSummary.version

GuardrailFilters ​

Properties ​

PropertyType
docId?string
limit?number
provenance?GuardrailProvenance
status?GuardrailStatus
target?GuardrailTarget

GuardrailImpactSeed ​

Name exactly one: the document or the passage whose change to follow.

Properties ​

PropertyType
docId?string
passageId?string

GuardrailReadiness ​

Properties ​

PropertyTypeDescription
adjudicatednumber | nullNull when the evidence counters could not be read.
adjudicatedRequirednumber-
evaluationsnumber | nullNull when the evidence counters could not be read (the guardrail is then not ready).
falsePositiveRatenumber | null-
falsePositivesnumber | nullNull when the evidence counters could not be read.
neverFiredboolean-
readyboolean-
reasonsstring[]-
thresholdsobject-
thresholds.maxAdjudicatedFalsePositiveRatenumber-
thresholds.maxWouldActRatenumber-
thresholds.minAdjudicatedFiresnumber-
thresholds.minShadowEvaluationsnumber-
wouldActnumber | nullNull when the evidence counters could not be read.
wouldActRatenumber | null-

GuardrailReplay ​

Properties ​

PropertyType
capturednumber
firesnumber
sampleobject[]
source"enforcement_log" | "context_snapshots" | "execution_traces" | "none"
truncatedboolean
unsupportedstring[]
windowDaysnumber

GuardrailSummary ​

Extended by ​

Properties ​

PropertyTypeDescription
clauseRecord<string, unknown> | null-
descriptionstring | null-
document| { docId: string; provider: string; sourceUrl: string | null; title: string; } | null-
enforcingFiresnumber-
guardrailIdstring-
irRecord<string, unknown>The guardrail IR: kind and the keys that kind takes.
namestring | null-
promotedAtstring | null-
proposedAtstring-
provenanceGuardrailProvenance-
rejectedReasonstring | null-
renderedunknown-
rolesstring[]-
ruleCandidateIdstring | null-
scopestring-
shadowAtstring | null-
shadowEvaluationsnumber-
shadowWouldActnumber-
sourceStaleboolean-
statusGuardrailStatus-
supersedesstring | null-
targetGuardrailTarget-
versionnumber-

GuardrailTransitionResult ​

Properties ​

PropertyTypeDescription
guardrailGuardrailDetailThe guardrail as the transition left it.
okboolean-
readiness?GuardrailReadiness-

Incident ​

One governance incident, with the route's snake_case keys.

Properties ​

PropertyTypeDescription
anomaly_typestringThe incident type: an anomaly category or a system incident type.
created_atstring | null-
descriptionstring-
escalation_chainRecord<string, unknown> | null-
incident_idstring-
resolution_statusstring | null-
resolved_atstring | null-
resolved_bystring | null-
review_priority?numberIn a list only: how far up the review queue the incident ranks.
session_idstring | null-
severity"CRITICAL" | "HIGH" | "MEDIUM" | "LOW"-
trace_idstring | null-
workspace_idstring-

IncidentFilters ​

Properties ​

PropertyTypeDescription
limit?number1 to 100; default 20.
page?numberFrom 1; default 1.
severity?stringCRITICAL, HIGH, MEDIUM or LOW.
status?stringOPEN, RESOLVED or AUTO_RESOLVED.
type?stringAn anomaly category such as SCOPE_VIOLATION, or a system incident type: WASM_RULE_REFUSED or SYSTEM_ANOMALY. The control plane refuses one it does not know with a 400.

IncidentList ​

listProperty and rowCase, which every control-plane list response carries beside its rows.

Extends ​

Properties ​

PropertyTypeDescriptionInherited from
dataIncident[]Ranked by review priority, not time. A list of 20 or more arrives TOON-encoded and is decoded here, with each cell cut at 120 characters: getIncident has the whole description.-
listProperty?string-ListEnvelope.listProperty
metaobject--
meta.auditobjectThe review budget: how many of the matching incidents the ranked queue covers.-
meta.audit.budgetnumber--
meta.audit.matchednumber--
meta.audit.overBudgetboolean--
meta.audit.withheldnumber--
meta.limitnumber--
meta.pagenumber--
meta.totalnumber--
rowCase?"snake" | "camel" | "mixed"-ListEnvelope.rowCase

IntegrityChain ​

The walk is the answer whether or not it found a break (the control plane answers a break with a 409).

Properties ​

PropertyType
breaksobject[]
intactboolean
okboolean
rootsNotWalkednumber
rootsWalkednumber
unchainedRootIdsstring[]
workspaceIdstring

IntegrityRecompute ​

Properties ​

PropertyType
changedTraceIdsstring[]
missingTraceIdsstring[]
okboolean
recomputedRootstring | null
retentionExpired?boolean
storedRootstring
verdict"match" | "mismatch" | "missing_traces"

IntegrityRootDetail ​

Properties ​

PropertyType
leavesobject[]
okboolean
rootSealedRoot & SignedIntegrityRoot & object

IntegrityRootList ​

listProperty and rowCase, which every control-plane list response carries beside its rows.

Extends ​

Properties ​

PropertyTypeInherited from
dataSealedRoot[]-
leafSchemaVersionnumber-
listProperty?stringListEnvelope.listProperty
okboolean-
rowCase?"snake" | "camel" | "mixed"ListEnvelope.rowCase

InventoryDevice ​

Properties ​

PropertyType
cliVersionstring | null
deviceIdstring
disconnectedAtstring | null
firstSeenAtstring
guardProbes| { failed: number; ranAt: number; total: number; } | null
harnessesnumber
hostnamestring
lastSeenAtstring
mcpServersnumber
platformstring
reportedBystring | null
skillsnumber
staleboolean
staleGatesnumber
ungovernedHarnessesnumber
ungovernedMcpServersnumber
workspacestring | null

InventoryFilters ​

Properties ​

PropertyTypeDescription
device?stringA device id.
harness?string-
search?stringText matched against the item's name and the machine's hostname.
status?string-

InventoryHarness ​

Extends ​

  • InventoryItem

Properties ​

PropertyTypeInherited from
configuredboolean-
deviceIdstringInventoryItem.deviceId
deviceStalebooleanInventoryItem.deviceStale
firstSeenAtstringInventoryItem.firstSeenAt
gateFilestring | null-
gateInstalledboolean | null-
gateKindstring-
harnessstring-
hostnamestringInventoryItem.hostname
itemIdstringInventoryItem.itemId
lastHookEventAtstring | null-
lastSeenAtstringInventoryItem.lastSeenAt
reasonstring | null-
reasonTextstring | null-
statusstring-
versionstring | null-

InventoryMcpServer ​

Extends ​

  • InventoryItem

Properties ​

PropertyTypeInherited from
deviceIdstringInventoryItem.deviceId
deviceStalebooleanInventoryItem.deviceStale
endpointstring | null-
firstSeenAtstringInventoryItem.firstSeenAt
harnessstring-
hostnamestringInventoryItem.hostname
itemIdstringInventoryItem.itemId
lastSeenAtstringInventoryItem.lastSeenAt
reasonstring | null-
serverstring-
statusstring-
transportstring-

InventorySkill ​

Extends ​

  • InventoryItem

Properties ​

PropertyTypeInherited from
cleanboolean-
deviceIdstringInventoryItem.deviceId
deviceStalebooleanInventoryItem.deviceStale
findingsCountnumber-
firstSeenAtstringInventoryItem.firstSeenAt
hostnamestringInventoryItem.hostname
itemIdstringInventoryItem.itemId
lastSeenAtstringInventoryItem.lastSeenAt
namestring-
scannedboolean-
scriptCountnumber-
sha256string | null-
sourcestring-

InventorySkillFilters ​

Properties ​

PropertyType
device?string
search?string

InventorySummary ​

Properties ​

PropertyType
devicesnumber
governedHarnessesnumber
governedPercentnumber | null
harnessesnumber
mcpServersnumber
skillsnumber
staleDevicesnumber
staleGatesnumber
ungovernedHarnessesnumber
ungovernedMcpServersnumber
unverifiedHarnessesnumber

LedgerDuplicates ​

Properties ​

PropertyType
minJaccardnumber
passagePairsRecord<string, unknown>[]
sameRuleRecord<string, unknown>[]

LedgerImpact ​

Properties ​

PropertyType
clausesRecord<string, unknown>[]
guardrailsobject[]
maxDepthnumber
passagesRecord<string, unknown>[]
seedobject
seed.docIdstring | null
seed.passageIdstring | null
truncatedboolean

ListEnvelope ​

listProperty and rowCase, which every control-plane list response carries beside its rows.

Extended by ​

Properties ​

PropertyType
listProperty?string
rowCase?"snake" | "camel" | "mixed"

LoopRun ​

Indexable ​

ts
[key: string]: unknown

Properties ​

PropertyType
budgetLimitUsdstring
loopRunIdstring
namestring
statusLoopRunStatus
totalTokenCostUsdstring

LoopRunActionResult ​

Properties ​

PropertyType
okboolean
outcome?string
status?string

LoopRunReviewOptions ​

Properties ​

PropertyType
note?string

McpServer ​

Properties ​

PropertyTypeDescription
disabledToolsstring[]-
heldForReviewbooleanA high-risk tool change is waiting for a decision.
lastSeenAtstring-
serverIdstring-
serverNamestring-
status"candidate" | "approved" | "blocked"-
toolsstring[]-

McpServerDecision ​

Properties ​

PropertyType
okboolean
serverMcpServer

McpServerList ​

listProperty and rowCase, which every control-plane list response carries beside its rows.

Extends ​

Properties ​

PropertyTypeInherited from
defaultPolicy"allow" | "deny"-
highRiskToolChange"hold" | "notify"-
listProperty?stringListEnvelope.listProperty
pendingCountnumber-
rowCase?"snake" | "camel" | "mixed"ListEnvelope.rowCase
serversMcpServer[]-

MemberUsage ​

Extends ​

Properties ​

PropertyTypeDescriptionInherited from
activeDaysnumber--
displayNamestring | null--
emailstring | null--
memberIdstring | nullNull for calls no single member owns.-
modelsstring[]--
totalCostUsdnumber-UsageTotals.totalCostUsd
totalInputTokensnumber-UsageTotals.totalInputTokens
totalOutputTokensnumber-UsageTotals.totalOutputTokens
totalRawCostUsdnumber-UsageTotals.totalRawCostUsd
traceCountnumber-UsageTotals.traceCount

MemberUsageResponse ​

Properties ​

PropertyType
membersMemberUsage[]
scopeUsageScope

NotificationChannelConfig ​

Properties ​

PropertyType
emailRecipients?string[]
pagerdutyRoutingKey?string
slackChannelId?string
slackChannelName?string
webhookUrl?string

NotificationFilters ​

Properties ​

PropertyType
harnessType?string[]
severity?string[]
userId?string[]

NotificationRule ​

Properties ​

PropertyTypeDescription
channelNotificationChannel-
channelConfigNotificationChannelConfig-
cooldownMinutesnumber-
enabledboolean-
eventTypestring-
filtersNotificationFilters-
ruleIdstring-
signingSecret?stringA webhook rule's signing secret, only in the response that made it. Not retrievable again.

NotificationRuleInput ​

The body of a create. Channel config and filters are each stored whole.

Properties ​

PropertyType
channelNotificationChannel
channelConfigNotificationChannelConfig
cooldownMinutes?number
enabled?boolean
eventTypestring
filters?NotificationFilters

NotificationSecretRotation ​

Extends ​

Properties ​

PropertyTypeDescriptionInherited from
ruleIdstring--
signingSecretstringShown once: not retrievable again after this response.SigningSecretRotation.signingSecret

OrgSignupParams ​

Properties ​

PropertyType
emailstring
namestring
orgNamestring
passwordstring

OrgSignupResult ​

Properties ​

PropertyType
accessTokenstring
cliInstallstring
isNewUserboolean
orgobject
org.idstring
org.namestring
org.planTierstring
org.trialExpiresAtstring
refreshTokenstring
userobject
user.emailstring
user.emailVerifiedboolean
user.idstring
user.namestring
workspaceobject
workspace.idstring
workspace.namestring
workspace.planTierstring
workspace.trialExpiresAtstring

OrgSop ​

Indexable ​

ts
[key: string]: unknown

Properties ​

PropertyType
createdAtstring
orgId?string
orgSopIdstring
riskTierstring
titlestring

OrgSopInput ​

Properties ​

PropertyType
markdown_contentstring
risk_tier?string
titlestring

PassageSearchResult ​

Properties ​

PropertyType
passagesobject[]
querystring

PolicyDocumentDetail ​

Extends ​

Properties ​

PropertyTypeInherited from
clauseCountnumberPolicyDocumentSummary.clauseCount
clausesRecord<string, unknown>[]-
contentHashstring-
docIdstringPolicyDocumentSummary.docId
fetchedAtstringPolicyDocumentSummary.fetchedAt
guardrailCountnumberPolicyDocumentSummary.guardrailCount
injectionFlaggedbooleanPolicyDocumentSummary.injectionFlagged
lastRun| { error: string | null; extractor: string; finishedAt: string | null; runId: string; startedAt: string; } | nullPolicyDocumentSummary.lastRun
passageCountnumberPolicyDocumentSummary.passageCount
passagesRecord<string, unknown>[]-
providerstringPolicyDocumentSummary.provider
runsRecord<string, unknown>[]-
sopIdstring | nullPolicyDocumentSummary.sopId
sourceUrlstring | nullPolicyDocumentSummary.sourceUrl
statusstringPolicyDocumentSummary.status
titlestringPolicyDocumentSummary.title
upstreamVersionstring | null-

PolicyDocumentSummary ​

Extended by ​

Properties ​

PropertyType
clauseCountnumber
docIdstring
fetchedAtstring
guardrailCountnumber
injectionFlaggedboolean
lastRun| { error: string | null; extractor: string; finishedAt: string | null; runId: string; startedAt: string; } | null
passageCountnumber
providerstring
sopIdstring | null
sourceUrlstring | null
statusstring
titlestring

PolicySource ​

Properties ​

PropertyType
configRecord<string, unknown> | null
connector_idstring
created_at?string
last_attempt_at?string | null
last_sync_error?string | null
last_synced_atstring | null
namestring
providerPolicySourceProvider

PolicySourceInput ​

Properties ​

PropertyTypeDescription
config?Record<string, unknown>-
namestring-
providerPolicySourceProvider-
tokenstringThe provider credential (a Google service-account key is the key file's JSON).

PolicySourceSyncResult ​

Properties ​

PropertyType
processed_docsnumber
successboolean
successor_sopsstring[]
updated_sopsstring[]

PredictCostParams ​

Properties ​

PropertyTypeDescription
inputText?string-
inputTokenCount?number-
modelstring-
workspaceIdstringMust be the key's own workspace.

PromoteOptions ​

Properties ​

PropertyTypeDescription
acknowledgeNoTraffic?booleanPromote a guardrail that never fired in shadow. Default false.

ProviderCredentialStatus ​

Properties ​

PropertyType
lastFourstring | null
providerstring
provisionedboolean
routingLiveboolean
updatedAtstring | null

ProviderModelList ​

The models a provider credential can reach, as the provider listed them when the stored key was last checked. models and checkedAt are null until a check has recorded a list (and stay so for providers that have no list, such as Azure OpenAI, whose list names base models, not deployments).

Properties ​

PropertyType
checkedAtstring | null
modelsstring[] | null
providerstring

ProxyRefusal ​

Properties ​

PropertyTypeDescription
codestring-
messagestring-
ruleId?stringThe rule that decided, for a refusal the proxy answered in band.
verdictRefusalVerdict-

PullRequestRefreshResult ​

Properties ​

PropertyType
checkednumber
noAccessnumber
notModifiednumber
pullRequestsnumber
rateLimitedboolean

PullRequestSources ​

Properties ​

PropertyType
apiHoststring
connectorboolean
lastCheckedAtstring | null
mappedPullRequestsnumber
noAccessReposstring[]
webhookboolean

PullRequestUsage ​

Extends ​

Properties ​

PropertyTypeInherited from
authorstring | null-
baseBranchstring | null-
closedAtstring | null-
firstCallAtstring-
headBranchstring-
lastCallAtstring-
memberCountnumber-
mergedAtstring | null-
numbernumber-
openedAtstring-
repostring-
state"open" | "closed" | "merged"-
titlestring-
totalCostUsdnumberUsageTotals.totalCostUsd
totalInputTokensnumberUsageTotals.totalInputTokens
totalOutputTokensnumberUsageTotals.totalOutputTokens
totalRawCostUsdnumberUsageTotals.totalRawCostUsd
traceCountnumberUsageTotals.traceCount
urlstring-

PullRequestUsageResponse ​

Properties ​

PropertyType
githubPullRequestSources
pullRequestsPullRequestUsage[]
scopeUsageScope

ResolvedContext ​

Properties ​

PropertyType
ciPipeline?string
gitBranch?string
jiraTicket?string
pagerdutyIncident?string
sessionId?string
workingDirectory?string
workspaceId?string

ResponseEchoReport ​

Properties ​

PropertyType
patternsobject[]
refusalstring | null
tracesIngestednumber
windowobject
window.sincestring
window.untilstring

ResponseEchoReportOptions ​

Properties ​

PropertyTypeDescription
since?stringISO 8601.
until?string-

ReviewOptions ​

Properties ​

PropertyTypeDescription
reason?stringRecorded with the decision.

RuleCandidateSource ​

Properties ​

PropertyTypeDescription
candidateIdstring-
guardrailIdstring | null-
sourcestring-
sourceSha256stringLower-case hex; checked against source before it is returned.
statusstring-

SealedRoot ​

Properties ​

PropertyType
first_trace_atstring
last_trace_atstring
leaf_countnumber
leaf_schema_versionnumber
loop_run_idstring | null
merkle_rootstring
root_idstring
sealed_atstring
signature_algstring | null
signing_key_idstring | null

SiemDestination ​

Properties ​

PropertyTypeDescription
adapterTypeSiemAdapterType-
batchSizenumber-
config?Record<string, unknown>The adapter settings, with credentials masked.
destinationIdstring-
flushIntervalMsnumber-
isActiveboolean-
lastError?string | nullAbsent on the create response, which reports no health yet.
lastHeartbeatAt?string | nullAbsent on the create response, which reports no health yet.
namestring-
signingSecret?stringA webhook destination's signing secret, only in the response that made it.
sourceTablesstring[]Empty means the default set: every source except the opt-in ones.

SiemDestinationInput ​

Properties ​

PropertyTypeDescription
adapterTypeSiemAdapterType-
batchSize?number-
configRecord<string, unknown>Adapter settings, credentials included; the control plane encrypts them and masks them on every read.
flushIntervalMs?number-
namestring-
sourceTables?string[]-

SiemDestinationList ​

Properties ​

PropertyType
itemsSiemDestinationSummary[]
sourcesSiemSources

SiemDestinationUpdate ​

Properties ​

PropertyTypeDescription
batchSize?number-
config?Record<string, unknown>-
flushIntervalMs?number-
isActive?booleantrue turns a deleted (deactivated) destination back on.
name?string-
sourceTables?string[]-

SiemSecretRotation ​

Extends ​

Properties ​

PropertyTypeDescriptionInherited from
destinationIdstring--
signingSecretstringShown once: not retrievable again after this response.SigningSecretRotation.signingSecret

SiemSources ​

Properties ​

PropertyType
allstring[]
defaultsstring[]

SignedIntegrityRoot ​

The fields of a sealed root its signature covers, as GET /api/v1/integrity/roots/:rootId serves them: what verifyIntegrityRoot reads.

Properties ​

PropertyTypeDescription
leaf_schema_versionnumber-
loop_run_idstring | null-
merkle_rootstring-
previous_root?string | nullThe chain link; in the signed bytes from preimage version 2 on.
signaturestring | null-
signature_algstring | null-
signing_key_idstring | null-
signing_preimage_version?numberThe preimage the signature covers; absent from a control plane older than the column, which means 1.
workspace_idstring-

SigningJwks ​

The control plane's published signing keys, one per kid.

Properties ​

PropertyType
keysRecord<string, unknown>[]

SigningSecretRotation ​

Extended by ​

Properties ​

PropertyTypeDescription
signingSecretstringShown once: not retrievable again after this response.

SopCreateResult ​

The created SOP: POST /api/v1/sops answers with the SOP itself (it sends no ok).

Properties ​

PropertyType
complexityTierstring
isActiveboolean
lifecycleStatestring
markdownContentstring
riskTierstring
sopIdstring
titlestring
versionstring
workspaceIdstring

SopDetail ​

Indexable ​

ts
[key: string]: unknown

Properties ​

PropertyTypeDescription
markdownContentstring-
riskTierstring | nullNull for a SOP stored without one.
sopIdstring-
titlestring-
versionstring-

SopInput ​

The body intutic sops push sends, in the route's snake_case.

Properties ​

PropertyType
complexity_tier?string
markdown_contentstring
risk_tier?string
titlestring
version?string

SopSummary ​

Indexable ​

ts
[key: string]: unknown

Properties ​

PropertyType
contentHash?string
sopIdstring
titlestring

StartDomainVerificationResult ​

Properties ​

PropertyType
domainstring
expiresAtstring
txtRecordNamestring
txtRecordValuestring
verificationIdstring

StartLoopRunOptions ​

Properties ​

PropertyTypeDescription
autoJudge?boolean-
budgetLimitUsd?string | number-
sops?string[]SOP names active for the run.

Team ​

Properties ​

PropertyType
createdAtstring
namestring
orgIdstring
slugstring
teamIdstring

TeamUsage ​

Extends ​

Properties ​

PropertyTypeInherited from
activeMembersnumber-
displayNamestring-
groupIdstring-
memberCountnumber-
totalCostUsdnumberUsageTotals.totalCostUsd
totalInputTokensnumberUsageTotals.totalInputTokens
totalOutputTokensnumberUsageTotals.totalOutputTokens
totalRawCostUsdnumberUsageTotals.totalRawCostUsd
traceCountnumberUsageTotals.traceCount

TeamUsageResponse ​

Properties ​

PropertyTypeDescription
scimGroupsbooleanFalse when the workspace has no SCIM groups, so there are no teams.
teamsTeamUsage[]-

TokenCoverage ​

Properties ​

PropertyType
guardrailsobject[]
passagesobject[]
tokenstring

TraceDetail ​

Indexable ​

ts
[key: string]: unknown

Properties ​

PropertyType
actualCostUsdnumber
actualModelRoutedstring
enforcementActionstring
requestedModelstring
requestIdstring
sessionIdstring
timestampstring
traceIdstring

TraceFilters ​

Properties ​

PropertyTypeDescription
enforcement?"BYPASS" | "ENHANCE" | "HIJACK" | "KILL"-
limit?number1 to 100; default 20.
model?string-
offset?number-
since?stringISO 8601, or a relative duration such as 24h or 7d.

TraceList ​

listProperty and rowCase, which every control-plane list response carries beside its rows.

Extends ​

Properties ​

PropertyTypeInherited from
limit?number-
listProperty?stringListEnvelope.listProperty
offset?number-
rowCase?"snake" | "camel" | "mixed"ListEnvelope.rowCase
totalnumber-
tracesTraceSummary[]-

TraceSummary ​

Properties ​

PropertyType
actualCostUsdnumber
actualModelRoutedstring
anomalyDetectedstring | null
breakGlass?boolean
breakGlassRequestId?string | null
complianceScorenumber
enforcementActionstring
requestedModelstring
timestampstring
traceIdstring

UpstreamCalls ​

The proxy's x-intutic-upstream-attempts / x-intutic-upstream-fallback-from headers, read.

Properties ​

PropertyType
attemptsnumber
fallbackFrom?string

UsageOptions ​

Properties ​

PropertyTypeDescription
period?UsagePeriodDefault monthly.

UsageTotals ​

Extended by ​

Properties ​

PropertyType
totalCostUsdnumber
totalInputTokensnumber
totalOutputTokensnumber
totalRawCostUsdnumber
traceCountnumber

WasmReplayOptions ​

Properties ​

PropertyTypeDescription
limit?number-
since?stringISO 8601.

WasmReplayResult ​

Properties ​

PropertyType
contextCountnumber
ruleIdstring
sampleMatchesRecord<string, unknown>[]
sincestring | null
verdictCountsRecord<string, number>
wouldActCountnumber
wouldActRatenumber

WhoamiResult ​

Properties ​

PropertyType
emailstring
memberIdstring
rolestring
workspaceIdstring

Workspace ​

Properties ​

PropertyType
createdAtstring
namestring
planTierstring
slugstring
workspaceIdstring

WorkspaceSettings ​

Extended by ​

Properties ​

PropertyTypeDescription
settingsRecord<string, unknown>Every setting, resolved with its default.
workspaceIdstring-

WorkspaceSettingsUpdateResult ​

Extends ​

Properties ​

PropertyTypeDescriptionInherited from
settingsRecord<string, unknown>Every setting, resolved with its default.WorkspaceSettings.settings
updatedtrue--
workspaceIdstring-WorkspaceSettings.workspaceId

Type Aliases ​

CoverageFormat ​

ts
type CoverageFormat = "json" | "md" | "csv" | "pdf";

The coverage report formats: md is markdown.


EventCallback ​

ts
type EventCallback = (data) => void | Promise<void>;

Called with the refusal before chat() throws it as a ClawdeBlockedError.

Parameters ​

ParameterTypeDescription
data{ budgetPctUsed?: number; budgetRemainingUsd?: number; code: string; message: string; ruleId?: string; status: number; verdict: Verdict | LegacyVerdict; }-
data.budgetPctUsed?numberDeprecated Never set.
data.budgetRemainingUsd?numberDeprecated Never set.
data.codestringThe proxy's refusal code, e.g. policy_denied, OVERAGE_HARD_CAP_EXCEEDED or TOOL_DENIED.
data.messagestring-
data.ruleId?stringThe rule that decided, when the proxy names one.
data.statusnumber-
data.verdictVerdict | LegacyVerdictOne of the RefusalVerdict values; typed wider so listeners written against 2.0 compile.

Returns ​

void | Promise<void>


EvidenceSignatureState ​

ts
type EvidenceSignatureState = "valid" | "invalid" | "unsigned" | "unverifiable" | "keys_unavailable";

FindingOutcome ​

ts
type FindingOutcome = "TRUE_POSITIVE" | "FALSE_POSITIVE";

GuardrailProvenance ​

ts
type GuardrailProvenance = "extracted" | "authored";

GuardrailStatus ​

ts
type GuardrailStatus = "PROPOSED" | "SHADOW" | "ENFORCING" | "REJECTED" | "RETIRED";

GuardrailTarget ​

ts
type GuardrailTarget = "hook_rule" | "sop_front_matter" | "wasm_rule" | "workspace_setting";

IntegrityRootSignatureState ​

ts
type IntegrityRootSignatureState = "valid" | "invalid" | "unsigned" | "unverifiable" | "keys_unavailable";

What verifyIntegrityRoot established: valid a published key accepted the signature, invalid the key the root names rejected it, unsigned no key was configured when it was sealed, unverifiable the key is not published or the root names an algorithm or preimage version this build cannot check, keys_unavailable no key set was given. Only invalid says the root changed.


LegacyVerdict ​

ts
type LegacyVerdict = "hijack" | "enhance" | "bypass";

Deprecated ​

Never reported. The proxy applies these inside the response and does not tell the client, so no response carries them and no event fires for them. Still accepted so code written against 2.0 compiles; they will be removed in the next major version.


LoopRunStatus ​

ts
type LoopRunStatus = "ACTIVE" | "PENDING_REVIEW" | "COMPLETED" | "FAILED" | "KILLED";

MirrorAdoptionReport ​

ts
type MirrorAdoptionReport = 
  | {
  averageCostDeltaUsd: number | null;
  averageLatencyDeltaMs: number | null;
  candidateBetter: number;
  candidateModel: string;
  faultRateDelta: number | null;
  originalBetter: number;
  sampleCount: number;
  sufficientData: true;
  tie: number;
  unjudged: number;
}
  | {
  candidateModel: string;
  minimumRequired: number;
  reason: string;
  sampleCount: number;
  sufficientData: false;
};

NotificationChannel ​

ts
type NotificationChannel = "slack" | "email" | "webhook" | "pagerduty";

NotificationRuleUpdate ​

ts
type NotificationRuleUpdate = Partial<NotificationRuleInput>;

An update sends only the fields that change; channelConfig and filters replace the stored ones whole.


PolicySourceProvider ​

ts
type PolicySourceProvider = "notion" | "confluence" | "github" | "gdrive";

The connector providers that are policy sources.


RefusalVerdict ​

ts
type RefusalVerdict = "kill" | "reask" | "hold";

A governance refusal the proxy answered with: kill blocks the request, reask refuses this attempt and tells the agent to revise it (it escalates to kill after repeated attempts), and hold pauses a loop run until a human reviews it.


SiemAdapterType ​

ts
type SiemAdapterType = 
  | "syslog_cef"
  | "webhook_https"
  | "gcs"
  | "s3"
  | "splunk_hec"
  | "datadog_logs";

SiemDestinationSummary ​

ts
type SiemDestinationSummary = Omit<SiemDestination, "config" | "signingSecret">;

A destination as the list answers it: no adapter settings, and no signing secret.


UsagePeriod ​

ts
type UsagePeriod = "daily" | "monthly";

UsageScope ​

ts
type UsageScope = "workspace" | "self";

self when the caller may see only their own calls (below OWNER, ADMIN and EM).


Verdict ​

ts
type Verdict = "allow" | RefusalVerdict;

What chat() can know about a request: it was let through, or refused.


VerdictEvent ​

ts
type VerdictEvent = RefusalVerdict | LegacyVerdict;

Events on() accepts.

Variables ​

PROXY_REFUSALS ​

ts
const PROXY_REFUSALS: Readonly<Record<string, {
  status: number;
  verdict: RefusalVerdict;
}>>;

The proxy's governance refusals, by code, with the status the proxy sends each with and the verdict it represents.

Most arrive as an error: the code is the error.type of the proxy's JSON error body ({"error": {"type", "message"}}, json_error in packages/proxy/src/proxy.rs). Matching on the status and the code together matters because the same statuses also carry errors that are not decisions: a provider's own 429 rate limit, a 403 for a key used against the wrong workspace, a 400 for a malformed body. Those are not refusals and must not be reported as one.

The rest (status 200, and COST_GATE_EXCEEDED on a non-streaming request) arrive in band: an assistant turn explaining the refusal, named by REFUSAL_HEADER, or on a stream by the STREAM_REFUSAL_MARKER comment line.

__tests__/refusals.test.ts holds this table to packages/shared-types/fixtures/refusal-codes.json, the one list the proxy and the Python SDK are held to as well, so a refusal the proxy adds or renames fails the build instead of silently turning back into an allow or a retried connection error.


REFUSAL_HEADER ​

ts
const REFUSAL_HEADER: "x-intutic-refusal" = 'x-intutic-refusal';

The headers the proxy sets on a 200 that is a refusal in the shape of an answer: the response gate withheld a tool call the model made, output DLP withheld the body, or the cost-prediction gate answered instead of the model. The first names the refusal's code, the second the rule that decided.


REFUSAL_RULE_HEADER ​

ts
const REFUSAL_RULE_HEADER: "x-intutic-refusal-rule" = 'x-intutic-refusal-rule';

STREAM_REFUSAL_MARKER ​

ts
const STREAM_REFUSAL_MARKER: ": intutic-refusal " = ': intutic-refusal ';

The prefix of the SSE comment line that names a refusal on a stream: : intutic-refusal {"code", "rule", "message"}. The response headers went out before the refusal happened, so a stream says it in band; every SSE parser skips comment lines, so clients that do not look for it are unaffected.


UPSTREAM_ATTEMPTS_HEADER ​

ts
const UPSTREAM_ATTEMPTS_HEADER: "x-intutic-upstream-attempts" = 'x-intutic-upstream-attempts';

Set by the proxy when its retry layer made more than one upstream call.


UPSTREAM_FALLBACK_HEADER ​

ts
const UPSTREAM_FALLBACK_HEADER: "x-intutic-upstream-fallback-from" = 'x-intutic-upstream-fallback-from';

Set by the proxy when a fallback answered: the model whose retries ran out.

Functions ​

normalizeRequest() ​

ts
function normalizeRequest(params, provider?): any;

Parameters ​

ParameterType
paramsChatParams
provider?string

Returns ​

any


normalizeResponse() ​

ts
function normalizeResponse(response, provider?): ChatResponse;

Parameters ​

ParameterType
responseany
provider?string

Returns ​

ChatResponse


resolveContext() ​

ts
function resolveContext(): Promise<ResolvedContext>;

Each field comes from ~/.intutic/config.json when that file carries it, and from the environment otherwise. The file intutic init writes holds none of these fields, so reading it must not hide the environment.

Returns ​

Promise<ResolvedContext>


streamRefusal() ​

ts
function streamRefusal(text): ProxyRefusal | null;

The refusal named anywhere in a stream's text, or null when there is none. Pass the whole body, or each line as it arrives.

Parameters ​

ParameterType
textstring

Returns ​

ProxyRefusal | null


verifyEvidenceArchive() ​

ts
function verifyEvidenceArchive(archive, jwks): EvidenceVerification;

Checks an evidence archive the way it was sealed: the manifest's hashes, then the signature over the archive hash against the published key its keyId names (jwks, from ControlPlaneClient.getSigningKeys() or a saved copy; null when it could not be had).

verified is true only for an archive whose hashes match and whose signature a published key accepts. An unsigned archive, or one whose key is not published, is not verified even when its hashes match: nothing then shows who produced it.

Parameters ​

ParameterType
archiveEvidenceArchive
jwksSigningJwks | null

Returns ​

EvidenceVerification


verifyIntegrityRoot() ​

ts
function verifyIntegrityRoot(root, jwks): IntegrityRootSignatureState;

Checks a sealed root's signature against the published key the root itself names (jwks, from ControlPlaneClient.getSigningKeys() or a saved copy; null when it could not be had). Pass the root of ControlPlaneClient.getIntegrityRoot().

Only invalid says the root was changed: a published key rejected it. unverifiable (the key is not published, or the root names an algorithm or preimage version this build cannot check) and keys_unavailable are no verdict, and unsigned is a deployment that had no signing key. The key is chosen by signing_key_id and never by trying others: a root that verifies under some other key is not the same claim.

Parameters ​

ParameterType
rootSignedIntegrityRoot
jwksSigningJwks | null

Returns ​

IntegrityRootSignatureState

The circuit breaker for AI agents