Skills overview
A skill is a markdown file that teaches Slo one kind of task: how your team writes a router, runs a migration, opens a pull request or reviews a change. Slo ships with 116 of them.
What's included
| Category | Skills | Covers |
|---|---|---|
| Coding | 38 | Services, domain logic, routers, workers, clients, naming, type hints, docstrings, tests |
| Design and analysis | 26 | Feature specs and their checks, task breakdowns, reviews, debugging, completion checks, workflows |
| Git ops | 13 | Branches, commits, pull and merge requests, review fixes, worktrees, releases |
| Frontend (Vue) | 11 | Vue 3, TypeScript, Pinia, composables, routing, WebSockets, theming |
| Integration tests | 11 | Test plans, step definitions, fixtures, debugging failing tests |
| CLI | 5 | Typer apps and command structure |
| TUI | 5 | Textual apps, the diff viewer, scheduled operations |
| Presentation | 3 | HTML pages, single-page reports and print-ready PDF books |
| Orientation | 2 | How to enter a repository and where project knowledge lives |
| Your own content | 2 | Creating your own skills and workflows |
Ask "what skills do you have for X?" inside Slo to see specific names.
How Slo picks them
You don't name skills. Slo sees the list of skills and a one-line description of each, and reads the ones that match your task before it starts:
"Build a FastAPI router for user sign-up, with named arguments and type hints."
For that, Slo reads build-routers, named-arguments-and-type-hints and auth-security-patterns, and follows all three.
The more specific your request, the better the match. If you want a particular skill applied, say so: "follow the worktrees skill" or "use our Go conventions skill".
Making them yours
Put a file at ~/.slo/user_skills/<skill-name>/SKILL.md. If the name matches a built-in skill, yours replaces it. If not, it's added to the list. Slo logs every replacement, so you can tell when yours is being used.