◆ concepts · skills

Skills.

Skills are reusable playbooks the agent loads on demand. A handful ship with Kuzy; you write your own as plain Markdown files.

◆ what

A skill is a Markdown file the agent reads at the start of a task. It tells Kuzy how to handle a class of work — what files to read, what tools to call in what order, what checks to run before finishing.

Kuzy ships with four built-in skills you can call from any session:

  • deep-research — multi-source discovery across Reddit, Twitter/X, Product Hunt, Hacker News.
  • landing-page — generates a full landing page (HTML, CSS, copy) from a brief.
  • reddit-commenter — batched Reddit engagement with reference tracking and rate limits.
  • dev-mode — sets up a local dev environment, picks the right tools, runs a smoke test.

And six built-in slash commands wrap common flows: /scan, /review, /deploy, /pipeline-new, /reddit, /prd.

Your own skills go in agent_data/skills/ or .kuzy/skills/ in any repo — Kuzy auto-loads them. Plain Markdown means they version-control with your code.

◆ anatomy of a skill

A skill is a plain Markdown file with a frontmatter header. The agent reads frontmatter when deciding which skill to load and follows the body as instructions.

agent_data/skills/refactor-credit-flow.md
---
name: refactor-credit-flow
description: Extract credit-debit logic into a typed Ledger protocol and update tests.
triggers:
  - "refactor credit"
  - "audit billing math"
tools_needed:
  - read_file
  - write_file
  - edit_file
  - run_shell
  - git
---

# Refactor credit-flow

When the user asks to refactor billing/credit math:

1. Read `src/billing/bridge_server.py` and `src/billing/credit.py` first.
2. Recall prior decisions via `memory_recall("credit ledger")`.
3. Extract a typed `Ledger` protocol; update call sites.
4. Run `pytest tests/billing -q`. If it fails, fix and re-run.
5. Stage + commit with: "refactor(credit): atomic ledger".
6. Hand back to user; do not push.
◆ how loading works

Skills load explicitly, not magically:

  • The agent sees a prompt and scans available skills (built-in + user-authored).
  • If a skill's triggers match the prompt, Kuzy loads its body as a system note for the rest of the task.
  • You can also call skill load <name> as a tool to force it in.

There's no "auto-generation after N runs" — write the skill once, commit it with your repo, every Kuzy session in that workspace picks it up.

◆ share & install

Skills are plain Markdown files. Drop them in .kuzy/skills/in a repo, commit, and your teammate's Kuzy picks them up the moment they clone.

add a custom skill
mkdir -p .kuzy/skills
cat > .kuzy/skills/weekly-digest.md << 'EOF'
---
name: weekly-digest
description: Crawl repos + PRs, post a digest in Slack.
triggers: ["weekly digest", "monday summary"]
---
# steps go here
EOF
git add .kuzy/skills && git commit -m "feat(kuzy): weekly-digest skill"
◆ shipped skills

deep-research

Multi-source discovery across Reddit, Twitter/X, Product Hunt, Hacker News. Uses web_search, firecrawl_search, twitter_search, web_fetch_ai together; saves findings via memory_save.

landing-page

Generates a full landing page (HTML, CSS, copy) from a brief. Uses write_file, edit_file, visual_review (vision critique on a screenshot of the page), iterates until clean.

reddit-commenter

Batched Reddit engagement with reference tracking and outbound rate limits (5/min default, tunable via KUZY_OUTBOUND_MESSAGES_PER_MIN).

dev-mode

Sets up a local dev environment for the current repo: picks the right tools, writes a .env.example if absent, runs a smoke test (run_shell), saves the "how to run this" recipe to project memory.