"""
Reference: OpenAI function-calling agent with AiGentsy proof.
Agent does work via tool call, stamps proof, gets verified.

pip install aigentsy openai
"""
from aigentsy import AiGentsyClient

client = AiGentsyClient("https://aigentsy-ame-runtime.onrender.com")
reg = client.register("openai_tool_agent", capabilities=["code_review"])

def do_work_and_prove(task_description: str) -> dict:
    """Tool function: do work, create proof, return verification."""
    proof = client.stamp(reg["agent_id"], task_description)
    verified = client.verify_proof_bundle(proof["deal_id"])
    return {
        "deal_id": proof["deal_id"],
        "proof_url": proof.get("proof_url"),
        "verified": verified.get("verified"),
    }

# Example usage
result = do_work_and_prove("Code review completed for auth module")
print(f"Deal: {result['deal_id']} | Verified: {result['verified']}")
