Use Your First Skill
Skills are structured actions that wrap external API calls. Each skill has a name, parameters, and returns structured JSON. This guide shows how to discover and execute skills.
Discover available skills
Section titled “Discover available skills”The CLI provides three levels of discovery:
-
List all integrations
Terminal window skillett skills{"integrations": [{ "slug": "github", "name": "GitHub", "status": "connected", "endpoints": 55 },{ "slug": "gmail", "name": "Gmail", "status": "not_connected", "endpoints": 12 }]} -
List endpoints for an integration
Terminal window skillett skills github{"integration": "github","status": "connected","categories": [{"name": "issues","endpoints": [{ "name": "create_issue", "method": "POST" },{ "name": "list_issues_for_repo", "method": "GET" },{ "name": "get_issue", "method": "GET" },{ "name": "update_issue", "method": "PATCH" }]}]} -
Get full endpoint documentation
Terminal window skillett skills github create_issue{"name": "create_issue","method": "POST","description": "Create an issue in a GitHub repository.","parameters": [{ "name": "repo", "type": "string", "required": true, "description": "Repository in owner/repo format" },{ "name": "title", "type": "string", "required": true, "description": "Issue title" },{ "name": "body", "type": "string", "required": false, "description": "Issue body (markdown)" },{ "name": "labels", "type": "array", "required": false, "description": "Label names to apply" },{ "name": "assignees", "type": "array", "required": false, "description": "Usernames to assign" }],"example": "skillett run github create_issue --repo acme/webapp --title \"Bug report\"","errors": [{ "code": 400, "cause": "Bad Request", "fix": "Check parameter types and required fields" },{ "code": 404, "cause": "Not Found", "fix": "Verify the repository exists and you have access" }]}
Execute a skill
Section titled “Execute a skill”Use skillett run to execute any endpoint:
skillett run github create_issue --repo acme/webapp --title "Bug report" --body "Steps to reproduce..." --labels "bug,priority"{ "status": 200, "data": { "id": 42, "number": 7, "title": "Bug report", "state": "open", "html_url": "https://github.com/acme/webapp/issues/7" }}Parameter formats
Section titled “Parameter formats”| Format | Example | Use case |
|---|---|---|
| Flags | --title "Bug report" | String parameters |
| Boolean | --draft | Boolean flags |
| Arrays | --labels "bug,priority" | Comma-separated arrays |
| JSON | '{"key":"value"}' | Complex objects |
| Numbers | --per_page 50 | Auto-detected |
Exit codes
Section titled “Exit codes”| Code | Meaning |
|---|---|
0 | Success (HTTP 2xx) |
1 | Client error (HTTP 4xx) |
2 | Network or server error |
Pull skill docs locally
Section titled “Pull skill docs locally”Download an integration’s full documentation for offline or agent access:
skillett pull github{ "slug": "github", "files": 62, "path": ".claude/skills/skillett-github/" }This writes the SKILL.md and all endpoint docs to your agent’s skill directory, enabling offline discovery.
Next steps
Section titled “Next steps”- CLI Reference — Full documentation for all commands
- API Reference — REST endpoints for direct HTTP access
- Integrations — Detailed guides for each service