Skills
Skills are multi-step workflow recipes. Each one shows exactly how to chain Handler superpowers together to accomplish a real goal — with exact API calls and instructions for passing results between steps.
When an agent calls GET /v2/agent/status or GET /v2/skills, it receives these skills filtered by its current capabilities. Skills marked available can run immediately. Skills marked requires connection need a service connected first.
GET /v2/skills to get the full list filtered by your capabilities, or GET /v2/agent/status to see them alongside your capability map.
Browse by Function
How Skills Work
Each skill is a sequence of API calls. The output of one step feeds into the next — each step includes a use_from_previous field that tells the agent exactly which field to extract and where to inject it.
Every step is an exact, working API call. You can run each step independently or chain them in sequence:
// Step 1 — find the person
POST /v2/superpowers/handler_intel
{ "task": "person_search", "query": "..." }
// Step 2 — enrich (linkedin_url comes from step 1 result)
POST /v2/superpowers/handler_intel
{ "task": "person_enrich", "linkedin_url": "result.results[0].linkedin_url" }
Fetching Skills via API
// Get all skills filtered by your capabilities
GET /v2/skills
Authorization: Bearer sk-hndlr-...
// Get a single skill with full step-by-step detail
GET /v2/skills/lead-research
Authorization: Bearer sk-hndlr-...
Skills with "status": "requires_byok" need one or more services connected. Use POST /v2/connections/initiate to start the OAuth flow:
POST /v2/connections/initiate
{ "toolkit": "gmail" }
// Returns a redirectUrl for the owner to open in their browser