{"audit":{"version":"1.3","generated_at":"2026-05-22T23:42:37.566752+00:00","generated_by":"Agenstry","report_url":"https://agenstry.com/agents/botcha.ai","methodology_url":"https://agenstry.com/methodology","verifier_jwks_url":"https://agenstry.com/.well-known/jwks.json","subject":{"domain":"botcha.ai","name":"BOTCHA","url":"https://botcha.ai/.well-known/agent.json"}},"identity":{"provider":{"organization":null,"url":null},"registry_verification":null,"signature":{"signed":false,"signature_valid":null}},"protocol":{"version":null,"supports_streaming":false,"supports_push_notifications":false},"operational":{"live_state":"endpoint_404","live_responds":false,"last_status_code":200,"last_elapsed_ms":27,"last_error":null},"track_record":{"first_seen":"2026-05-18T15:31:18.516147+00:00","last_checked":"2026-05-22T16:20:50.243143+00:00","last_seen_ok":"2026-05-22T16:20:50.243143+00:00","checks_total":6,"checks_ok":6,"uptime_pct":100.0,"archived":false,"archived_reason":null},"conformance":{"score":39,"grade":"F","summary":"F-grade: card is reachable but fails most operational signals.","criteria":[{"key":"valid_card","label":"Valid AgentCard","points":10,"max_points":10,"status":"pass","detail":"Schema-validated A2A AgentCard returned by the well-known endpoint."},{"key":"live_responds","label":"Live JSON-RPC","points":0,"max_points":25,"status":"fail","detail":"Card declares a URL but that URL returns 404."},{"key":"protocol_version","label":"Protocol version","points":0,"max_points":10,"status":"fail","detail":"No protocolVersion in card."},{"key":"signature","label":"JWS signature","points":0,"max_points":10,"status":"info","detail":"Card is unsigned (most published agents are)."},{"key":"uptime","label":"Uptime track record","points":15,"max_points":15,"status":"pass","detail":"6/6 probes succeeded (100% uptime)."},{"key":"skills","label":"Skill declaration","points":10,"max_points":10,"status":"pass","detail":"Declares 4 skills with structured metadata."},{"key":"verified_identity","label":"Verified Identity","points":0,"max_points":10,"status":"fail","detail":"No provider organisation declared. Anonymous agent."},{"key":"freshness","label":"Freshness + modern flags","points":4,"max_points":5,"status":"pass","detail":"seen in upstream source within 0d"},{"key":"security","label":"Security declaration","points":0,"max_points":5,"status":"info","detail":"No securitySchemes declared (common for open agents — not penalised)."}]},"skills":[{"id":"verify-agent","name":"Verify Agent","description":"Issue a BOTCHA challenge to verify an AI agent. Returns a signed access token on success.","tags":["verification","identity","challenge"],"examples":["GET /v1/token?app_id=<app_id> → solve SHA256 challenge → POST /v1/token/verify"],"inputModes":["application/json"],"outputModes":["application/json"]},{"id":"attest-card","name":"Attest Agent Card","description":"Issue a BOTCHA attestation for an A2A Agent Card. The attestation JWT is embedded into the card's extensions.botcha_attestation field, making BOTCHA the trust oracle for the A2A ecosystem.","tags":["attestation","a2a","trust","verification"],"examples":["POST /v1/a2a/attest with an A2A Agent Card JSON → attested card with extensions.botcha_attestation"],"inputModes":["application/json"],"outputModes":["application/json"]},{"id":"verify-card","name":"Verify Attested Agent Card","description":"Verify a BOTCHA-attested A2A Agent Card. Checks signature, card hash integrity, and expiration.","tags":["verification","a2a","attestation","trust"],"examples":["POST /v1/a2a/verify-card with an attested A2A Agent Card JSON"],"inputModes":["application/json"],"outputModes":["application/json"]},{"id":"check-reputation","name":"Check Reputation","description":"Get an agent's BOTCHA reputation score based on challenge history and verification track record.","tags":["reputation","trust","score"],"examples":["GET /v1/reputation/:agent_id"],"inputModes":["application/json"],"outputModes":["application/json"]}],"provenance":[{"source":"github_code","first_seen":"2026-05-18T15:31:18.516147+00:00"},{"source":"manifests","first_seen":"2026-05-18T19:43:39.883639+00:00"},{"source":"recrawl_hot","first_seen":"2026-05-21T01:00:08.275623+00:00"}],"recent_probes":[{"fetched_at":"2026-05-22T16:20:50.243143+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":27,"live_responds":false},{"fetched_at":"2026-05-22T11:25:30.159348+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":18,"live_responds":false},{"fetched_at":"2026-05-21T01:00:08.275623+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":17,"live_responds":false},{"fetched_at":"2026-05-19T00:46:26.560673+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":36,"live_responds":false},{"fetched_at":"2026-05-18T19:43:39.883639+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":24,"live_responds":false},{"fetched_at":"2026-05-18T15:31:18.516147+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":35,"live_responds":false}],"catalog_attestation":null,"verification_history":[],"signatures":[{"protected":"eyJhbGciOiJFUzI1NiIsImprdSI6Imh0dHBzOi8vYWdlbnN0cnkuY29tLy53ZWxsLWtub3duL2p3a3MuanNvbiIsImtpZCI6ImFnZW50ZmluZGVyLWVzMjU2LTEiLCJ0eXAiOiJKT1NFIn0","signature":"V8cN-jmQjjY2GXriEXx-QPo_jsQkiCVzS8mNxQ0yXAw6ax3AnHS9KNICIRnIGeYXxWLS9lOA-dJMci_qkvL0ow"}]}