Skip to content

TKCollective/crewai-agentoracle

Repository files navigation

crewai-agentoracle

PyPI License: MIT

A CrewAI tool that inserts a verification step between what an agent retrieves and what it acts on. For each factual claim it returns a cryptographically signed verification record — an act / halt / abstain recommendation with a per-claim confidence score, issued under the standards-track AgentOracle receipt profile (first entry in the ERC-8210 Receipt Profile Registry). Every record is byte-level verifiable offline against the reference verifier, independent of the issuer.


Install

pip install crewai-agentoracle

Feedback & Support

Built something with AgentOracle? Hit an issue? We want to hear from you.

If you're evaluating AgentOracle for a project, drop a note in Discussions — we respond fast and can help with integration.


Quickstart

from crewai import Agent, Task, Crew
from crewai_agentoracle import AgentOracleVerifyTool

verify_tool = AgentOracleVerifyTool()

researcher = Agent(
    role="Research Analyst",
    goal="Research AI agent frameworks and verify all claims before reporting",
    backstory="You are a meticulous analyst who never reports unverified information.",
    tools=[verify_tool],
    verbose=True
)

task = Task(
    description="Research the top AI agent frameworks in 2026. Verify every major claim before including it in your report.",
    expected_output="A verified report on AI agent frameworks with confidence scores for each claim.",
    agent=researcher
)

crew = Crew(agents=[researcher], tasks=[task], verbose=True)
result = crew.kickoff()

That's it. Your crew now verifies before acting.


What comes back

{
  "overall_confidence": 0.91,
  "recommendation": "act",
  "claims": [
    {
      "claim": "LangGraph leads agent frameworks in 2026",
      "verdict": "supported",
      "confidence": 0.94,
      "evidence": "Confirmed across 4 independent sources"
    },
    {
      "claim": "CrewAI was acquired by Google in 2025",
      "verdict": "refuted",
      "confidence": 0.02,
      "correction": "CrewAI remains independent as of April 2026"
    }
  ]
}

Verify the signed receipt

Every verdict is issued as a cryptographically signed verification record (JWS over a JCS-canonicalized payload, Ed25519/ES256). Records verify byte-for-byte offline against the reference verifier — no trust in the issuer required:

pip install agentoracle-receipt-verify
from agentoracle_receipt_verify import verify

# `receipt` is the signed envelope returned alongside each verdict;
# `ao_jwks` is fetched from https://agentoracle.co/.well-known/jwks.json
result = verify(receipt, jwks_by_issuer={
    "https://agentoracle.co/.well-known/jwks.json": ao_jwks,
})

if result.valid:
    print("verified — canonical:", result.canonical_sha256)

The verifier recomputes the canonical byte string, checks the signature against the published key set, and returns the canonical SHA-256 — identical output to the TypeScript sibling @agentoracle/receipt-verify.


Recommendation logic

Score Recommendation What your agent should do
> 0.8 act Proceed — claims verified
0.5–0.8 verify Pause — route to human review
< 0.5 reject Discard — evidence contradicted

How it works

Every evaluation runs through 4 independent sources in parallel:

  1. Sonar — real-time web research
  2. Sonar Pro — deep multi-step analysis
  3. Adversarial — actively tries to disprove the claim
  4. Gemma 4 — claim decomposition and confidence calibration

Consensus builds the score. Contradiction flags the risk.


Multi-agent crew example

from crewai import Agent, Task, Crew
from crewai_agentoracle import AgentOracleVerifyTool

verify_tool = AgentOracleVerifyTool()

# Researcher finds the data
researcher = Agent(
    role="Research Analyst",
    goal="Find the latest information on AI agent frameworks",
    backstory="Expert researcher with access to real-time web data.",
    verbose=True
)

# Verifier checks it before the writer uses it
verifier = Agent(
    role="Fact Verifier",
    goal="Verify every claim the researcher finds before it goes to the writer",
    backstory="You trust nothing until it is verified. You use AgentOracle to score every claim.",
    tools=[verify_tool],
    verbose=True
)

# Writer only works with verified data
writer = Agent(
    role="Content Writer",
    goal="Write a report using only verified, high-confidence information",
    backstory="You write clearly and only include claims with confidence above 0.8.",
    verbose=True
)

research_task = Task(
    description="Research the top 5 AI agent frameworks in 2026.",
    expected_output="A list of frameworks with key claims about each.",
    agent=researcher
)

verify_task = Task(
    description="Verify every claim from the research. Flag anything below 0.8 confidence.",
    expected_output="Verified claims with confidence scores and verdicts.",
    agent=verifier,
    context=[research_task]
)

write_task = Task(
    description="Write a report using only the verified claims with confidence above 0.8.",
    expected_output="A clean, accurate report on AI agent frameworks.",
    agent=writer,
    context=[verify_task]
)

crew = Crew(
    agents=[researcher, verifier, writer],
    tasks=[research_task, verify_task, write_task],
    verbose=True
)

result = crew.kickoff()
print(result)

Try it free — no setup needed

curl -X POST https://agentoracle.co/preview \
  -H "Content-Type: application/json" \
  -d '{"query": "CrewAI was acquired by Google in 2025"}'

20 free requests per hour. No wallet, no API key, no account.


Pricing

Endpoint Price What it does
/preview Free Truncated results, no payment needed
/evaluate $0.01/claim Full per-claim verification + verdicts
/research $0.02/query Real-time research + verification

Payments via x402 protocol — USDC on Base, SKALE (gasless), or Stellar. No subscriptions. No minimums. No API keys.


Links

Related


Built by TK Collective · MIT licensed · x402 native · Base · SKALE · Stellar

About

CrewAI tool for AgentOracle — trust verification for AI agents

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors