from openclaw import Agent, Tool
# Define Shoal as a tool the agent can call
shoal_tool = Tool(
name="shoal_intelligence",
description="Fetch real-time radar and signal events from Shoal Intelligence API",
api_base="https://api.shoal.xyz/v1",
auth={"type": "bearer", "token": "YOUR_SHOAL_API_KEY"},
endpoints=[
{
"name": "get_radar",
"method": "GET",
"path": "/radar/all",
"params": {"since": "required", "limit": "optional"},
},
{
"name": "get_signal",
"method": "GET",
"path": "/signal/all",
"params": {"since": "required", "limit": "optional"},
},
{
"name": "get_brief",
"method": "GET",
"path": "/brief",
"params": {"id": "required", "since": "required"},
},
],
)
agent = Agent(
name="ShoalWatcher",
tools=[shoal_tool],
instructions="""
Monitor Shoal Intelligence for high-signal events (signal > 5.0).
Focus on security_incident, partnership, and investment categories.
When a high-signal event is detected, summarize it and flag for review.
""",
)
agent.run()