Votes on governance proposals — only after Beomz validates the intent
WHAT BEOMZ PROTECTS
Before casting a governance vote, the agent submits the full intent digest (action type + payload hash) to Beomz — catching malformed proposals, duplicate votes, or injected payloads before they hit the chain.
DEFAULT INPUT
DAO proposal #88 intent
A governance vote intent on proposal #88 — a 50,000 USDC treasury transfer requiring quorum validation.
WALLET MODE
SUBJECT TO VERIFY
LIVE VERDICT
No verdict yet
Run the demo above to see a live Beomz verdict.
FRAMEWORK-IDIOMATIC INTEGRATION
AutoGen# AutoGen DAO Delegate agent with Beomz intent verification
import autogen, os, hashlib, json
from beomz import BeomzClient
beomz = BeomzClient(
network="testnet",
account_id=os.environ["BEOMZ_DEMO_ACCOUNT_ID"],
private_key=os.environ["BEOMZ_DEMO_PRIVATE_KEY"],
)
proposal_88 = {
"proposal_id": 88,
"action": "transfer",
"recipient": "treasury.dao.near",
"amount": "50000 USDC",
"quorum": 0.51,
}
payload_hash = hashlib.sha256(
json.dumps(proposal_88, sort_keys=True).encode()
).hexdigest()
# Verify the intent before voting
verdict = beomz.verify_intent(
action_type="dao_vote",
payload={"hash": payload_hash, "proposal_id": 88},
)
if verdict.result != "Safe":
raise RuntimeError(f"Vote blocked: {verdict.ai_summary}")
# AutoGen multi-agent vote approval flow
config_list = [{"model": "gpt-4o", "api_key": os.environ["OPENAI_API_KEY"]}]
delegate = autogen.AssistantAgent(
name="DAODelegate",
system_message="Cast DAO votes only after Beomz clears the intent.",
llm_config={"config_list": config_list},
)
user_proxy = autogen.UserProxyAgent(
name="Governance",
human_input_mode="NEVER",
code_execution_config=False,
)
user_proxy.initiate_chat(
delegate,
message=f"Proposal #88 is cleared (verdict={verdict.result}). Cast YES vote.",
)