Agent score
Return Trust and Confidence evidence for an Agent.
Operation: agent_score
Price: 10 credits / $0.10 display equivalent
Scope: scores:read
See REST result fields for Trust, Confidence, status, freshness, ledger, charge source and balance units.
Use before adopting, delegating to or executing an Agent. Supply a GitHub owner/repository, Agent URL or canonical Agent ID. Clawdbase resolves that input to one canonical registry identity before scoring or reserving usage.
{
"operation": "agent_score",
"subject": "owner/repository",
"channel": "api",
"idempotency_key": "agent-owner-repository-01"
}Keep Agent Trust and Confidence on the Agent record. Do not substitute its Creator's score.
When to use it
Run agent_score before an Agent receives tools, credentials, write access, network access or delegated authority. Repeat according to your evidence-freshness policy after material repository, ownership or deployment changes.
Code examples
curl --request POST 'https://www.clawdbase.ai/api/clawdbase/operations/run' \
--header "Authorization: Bearer $CLAWDBASE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"operation": "agent_score",
"subject": "owner/repository",
"channel": "api",
"idempotency_key": "deployment-481:agent_score:owner-repository"
}'const response = await fetch('https://www.clawdbase.ai/api/clawdbase/operations/run', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.CLAWDBASE_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
operation: 'agent_score',
subject: 'owner/repository',
channel: 'api',
idempotency_key: `deployment-481:agent_score:owner-repository`,
}),
signal: AbortSignal.timeout(50_000),
})
const body = await response.json()
if (!response.ok) throw new Error(body.error)import os
import requests
response = requests.post(
"https://www.clawdbase.ai/api/clawdbase/operations/run",
headers={
"Authorization": f"Bearer {os.environ['CLAWDBASE_API_KEY']}",
"Content-Type": "application/json",
},
json={
"operation": "agent_score",
"subject": "owner/repository",
"channel": "api",
"idempotency_key": "deployment-481:agent_score:owner-repository",
},
timeout=50,
)
body = response.json()
if not response.ok:
raise RuntimeError(body.get("error", "operation failed"))A 502 means the upstream assessment failed and no credits settled; retry with the same idempotency key. The raw response uses result.verification_status, not scoreStatus. Only a usable confirmed result can be evaluated; a pending request or unavailable result must never be replaced with a sample score.
Interpret the result
Confirm result.resolved_subject.canonical_id, then read Trust, Confidence and result.score_evidence.score_version. A fresh accepted result is persisted to that same canonical Agent and public Page. Join Creator or lineage context only as related evidence. Do not overwrite the Agent pair with a Creator pair or a similarly named scraped record.
Policy example
assessment below is an application adapter, not the raw Clawdbase response. This example maps result.verification_status to its local scoreStatus field. The returned actions belong to the consuming application.
const result = body.result
if (!body.ok || !body.settled || !result) return { action: 'require_review' }
if (result.resolved_subject?.canonical_id !== expectedCanonicalId ||
result.resolved_subject?.type !== 'agent') return { action: 'require_review' }
const assessment = {
scoreStatus: result.verification_status,
trust: result.scores?.trustScore,
confidence: result.scores?.confidenceScore,
}
if (assessment.scoreStatus !== 'complete') return { action: 'require_review' }
if (![assessment.trust, assessment.confidence].every(value =>
typeof value === 'number' && Number.isFinite(value) && value >= 0 && value <= 100
)) return { action: 'require_review' }
const scoredAt = Date.parse(result.score_evidence?.score_version ?? '')
if (!Number.isFinite(scoredAt) || scoredAt > Date.now() ||
Date.now() - scoredAt > maxScoreAgeMs) return { action: 'require_refresh' }
if (deployment.canWriteProduction) return { action: 'allow_sandboxed' }
return evaluateAgentEvidence(assessment)This illustrates combining evidence with deployment impact; it does not define a universal threshold.
Failure and retry
Invalid operation fields return 400, missing scores:read returns 403, and exhausted balances return 402. An inVerus failure returns 502, records a failed ledger row and reverses usage. Retry the same evaluation with the same idempotency key.
Related surfaces
The public Agent Page is /a/{owner}/{repo} or /a/id/{id}. Console Page refresh is zero-cost system maintenance. A successful metered Agent operation also advances the resolved Agent's canonical score version so its API receipt and public Page refer to the same record.