Decomposes complex user requests into executable subtasks, identifies required capabilities, searches for existing skills at skills.sh, and creates new skills when no solution exists. This skill should be used when the user submits a complex multi-step request, wants to automate workflows, or needs help breaking down large tasks into manageable pieces.
This skill helps decompose complex user requests into executable subtasks, identify required capabilities for each task, search for existing skills from the open skills ecosystem, and automatically create new skills when no existing solution is available.
User Request → Task Decomposition → Capability Identification → Skill Search → Gap Analysis → Skill Creation → Execution Plan
When receiving a user request, follow these steps:
Analyze the request to identify:
Example analysis:
User Input: "Help me get email summaries every morning and send them to Slack"
Analysis:
- Core objective: Automated email digest delivery to Slack
- Domains: Email access, content summarization, messaging
- Trigger: Scheduled (daily morning)
Break down the complex task into minimal executable units:
Task Decomposition:
- task_id: 1
name: "Access and retrieve email list"
type: "data_retrieval"
input: "Email credentials/session"
output: "List of emails with metadata"
dependencies: []
- task_id: 2
name: "Extract key information from emails"
type: "data_extraction"
input: "Email list"
output: "Structured email data"
dependencies: [1]
- task_id: 3
name: "Generate email summary"
type: "content_generation"
input: "Structured email data"
output: "Formatted summary text"
dependencies: [2]
- task_id: 4
name: "Send message to Slack"
type: "message_delivery"
input: "Summary text, Slack webhook/token"
output: "Delivery confirmation"
dependencies: [3]
- task_id: 5
name: "Configure scheduled execution"
type: "scheduling"
input: "Workflow script, schedule config"
output: "Active scheduled job"
dependencies: [4]
Map each subtask to a capability type from the universal capability taxonomy.
| Capability | Description | Search Keywords |
|---|---|---|
browser_automation | Web navigation, interaction, scraping | browser, selenium, puppeteer, playwright, scrape |
web_search | Internet search and information retrieval | search, google, bing, duckduckgo |
api_integration | Third-party API communication | api, rest, graphql, webhook, {service-name} |
data_extraction | Parse and extract structured data | parse, extract, scrape, ocr, pdf |
data_transformation | Convert, clean, transform data | transform, convert, format, clean, etl |
content_generation | Create text, images, or other content | generate, write, create, summarize, translate |
file_operations | Read, write, manipulate files | file, read, write, csv, excel, json, pdf |
message_delivery | Send notifications or messages | notify, send, email, slack, discord, telegram |
scheduling | Time-based task execution | schedule, cron, timer, daily, weekly |
authentication | Identity and access management | auth, oauth, login, token, credentials |
database_operations | Database CRUD operations | database, sql, mongodb, query, store |
code_execution | Run scripts or programs | execute, run, script, shell, python |
version_control | Git and code repository operations | git, github, gitlab, commit, pr, review |
testing | Automated testing and QA | test, jest, pytest, e2e, unit |
deployment | Application deployment and CI/CD | deploy, docker, kubernetes, ci-cd, release |
monitoring | System and application monitoring | monitor, alert, log, metrics, health |
For each subtask:
Example:
Task: "Send message to Slack"
Capability: message_delivery
Search Keywords: ["slack", "notification", "message", "webhook"]
Use the Skills CLI to search for existing skills at https://skills.sh/
For each capability need, search using relevant keywords:
# Search for skills matching the capability
npx skills find <keyword>
# Examples:
npx skills find slack notification
npx skills find browser automation
npx skills find pdf extract
npx skills find github api
When results are returned:
Install with npx skills add <owner/repo@skill>
owner/repo@skill-name
└ https://skills.sh/owner/repo/skill-name
Evaluate each result for:
Capability Mapping:
- task_id: 1
capability: browser_automation
search_query: "browser email automation"
found_skills:
- name: "anthropic/claude-skills@browser-use"
url: "https://skills.sh/anthropic/claude-skills/browser-use"
match_score: high
recommendation: "Install browser-use skill"
- task_id: 4
capability: message_delivery
search_query: "slack notification"
found_skills: []
recommendation: "Create new skill: slack-notification"
Identify tasks without matching skills:
These capabilities are typically handled by the agent's native abilities:
content_generation - LLM's native text generationdata_transformation - Basic data manipulation via codecode_execution - Direct script executionscheduling - System-level cron/scheduler configurationFor capabilities without built-in support, determine:
When no existing skill matches a required capability, create a new skill.
---