Skills
Skills are instruction manuals that teach Klaus how to complete specific tasks; marketplace installation, scopes, disk layout, and when changes take effect.
A skill is an instruction manual that teaches Klaus how to complete a specific task. It is loaded automatically when a matching situation comes up.
- Marketplace tab: browse the skill marketplace as a card grid and install with one click.
- Installed tab: manage your installed skills in a list and enable or disable them; the scope switcher at the top toggles between "Global" and individual projects — global skills are available in every session, while project skills apply only within that project.
- You can also write skills yourself, or have Klaus create them for you.
What a skill looks like on disk, and a few common pitfalls:
- A skill is a directory that must contain a
SKILL.md. A YAML front matter block at the top declares its name, description, icon, tags, allowed tools, and the applicable systems and dependencies (which commands and environment variables it needs). How accurately the description is written directly determines whether the skill gets used at the right moment. - Locations: global skills live in
~/.klaus/skills/<skill-name>, project skills in<project>/.klaus/skills/<skill-name>(only within registered project roots). Inside a project directory, only directories containing aSKILL.mdcount as skills — a repository directory that happens to share a name will not be mistaken for one. - Installation: skills are downloaded from the cloud marketplace as compressed packages (package ≤ 256MB, ≤ 512MB after extraction). Marketplace content is now fully hosted on the server; the client no longer ships a built-in local copy. When you are offline, the skill marketplace shows an error instead of falling back to a built-in list (guests who are not signed in can also browse and install — the marketplace API is publicly readable and installable). What you have installed, and which version, is recorded in
~/.klaus/skills/.install-records.json; the "update available" indicator is computed by comparing against it. Updates are performed by skill name; if you do not specify a version, the latest one is used. - Disabling does not delete files: it only records a "this skill is off" row in
settings.db. Disabling is therefore reversible, and re-enabling does not require reinstalling. Only an actual removal counts as uninstalling. - When changes take effect: after you install, edit, toggle, or remove a skill, open sessions and the composer's
/and skill menus update to the latest content automatically, with no need to reopen the session or restart the app. Editing aSKILL.mdon disk is picked up too, within about ten seconds. Requests already sent keep the skill list they started with, and each session keeps its own skill scope (global, which project).
The built-in PDF skill
Klaus ships with a PDF skill: extracting text and tables, rendering pages to images to check layout and charts, creating new PDFs, and splitting, merging, or rotating. The Python runtime it needs is managed by Klaus itself: downloaded and verified the first time it is used, reused afterwards, and kept separate from any Python on your machine. It does not include OCR, so text in scanned documents cannot be read; PDFs in remote (SSH) projects have to be processed with the remote machine's own environment.