1<!--
2SPDX-FileCopyrightText: Amolith <amolith@secluded.site>
3
4SPDX-License-Identifier: CC0-1.0
5-->
6
7# agent-skills
8
9A collection of [Agent Skills]; structured markdown that extends LLM
10agent capabilities through a standardised format.
11
12[Agent Skills]: https://agentskills.io/
13
14## Available Skills
15
16- [authoring-skills](skills/authoring-skills/SKILL.md): Creates
17 well-structured Agent Skills following best practices. Use when
18 writing new skills, reviewing existing skills, or when the user
19 mentions skill authoring.
20- [formatting-commits](skills/formatting-commits/SKILL.md): Creates
21 commits strictly following Conventional Commits format via the
22 `formatted-commit` CLI.
23- [invoking-subagents](skills/invoking-subagents/SKILL.md): Invokes
24 ad-hoc subagents to read through lots of data and extract relevant
25 information. Useful for exploring repositories, reading git logs,
26 reviewing large diffs.
27- [querying-documentation](skills/querying-documentation/SKILL.md):
28 Spawns focused agents to search specific language/framework
29 documentation and answer moderately complex queries.
30- [creating-tasks-through-lunatask](skills/creating-tasks-through-lunatask/SKILL.md):
31 Creates tasks in Lunatask for todos, reminders, deferred work, and
32 handoffs.
33- [resuming-work-through-lunatask](skills/resuming-work-through-lunatask/SKILL.md):
34 Resumes previously deferred work from Lunatask. Use when user pastes a
35 task note, shares a deep link, or references continuing earlier work.
36- [frontend-accessibility](skills/frontend-accessibility/SKILL.md):
37 Generates accessible HTML, React, and frontend code following WCAG 2.2
38 AA guidelines. Focuses on semantic HTML, keyboard accessibility, and
39 screen reader compatibility.
40- [handling-customer-data](skills/handling-customer-data/SKILL.md):
41 Handles customer data responsibly by answering questions about data
42 without ever seeing the data directly.
43- [scripting-with-go](skills/scripting-with-go/SKILL.md): Creates
44 executable Go scripts with shebang-like behavior for long-lived
45 automation.
46- [writing-roc-lang](skills/writing-roc-lang/SKILL.md): Writes Roc code
47 with strong static types, helpful compiler errors, and functional
48 programming. Covers both full applications and one-off scripts.
49- [resolving-secrets](skills/resolving-secrets/SKILL.md): Wraps shell
50 commands to resolve secret references in environment variables.
51
52## Installation
53
54Clone the repository, then install skills via `make` or manual symlinks.
55
56```sh
57git clone https://git.secluded.site/agent-skills
58cd agent-skills
59```
60
61### With Make
62
63Skills install to `~/.config/crush/skills/` by default. Override by
64setting `SKILL_DIR`. Tab completion works so you don't have to remember
65skill names or copy/paste.
66
67```sh
68# List available skills
69make list
70
71# Install all skills to default dir
72make all
73
74# Install specific skills to Claude Code
75SKILL_DIR=$HOME/.claude/skills make authoring-skills formatting-commits
76
77# Remove a specific skill from Amp
78make uninstall-authoring-skills SKILL_DIR=$HOME/.config/agents/skills
79
80# Remove all skills from Codex
81make uninstall SKILL_DIR=$HOME/.codex/skills
82```
83
84### With symlinks
85
86```sh
87# Install all skills
88for s in skills/*/; do ln -s "$PWD/$s" ~/.config/crush/skills/; done
89
90# Install specific skills
91ln -s "$PWD/skills/authoring-skills" ~/.config/crush/skills/
92
93# Remove a skill
94rm ~/.config/crush/skills/formatting-commits
95```
96
97### Agent skill directories
98
99| Agent | Dir |
100| ----------------------- | -------------------------- |
101| Crush | `~/.config/crush/skills/` |
102| Amp | `~/.config/agents/skills/` |
103| Anthropic's Claude Code | `~/.claude/skills/` |
104| OpenAI's Codex | `~/.codex/skills/` |
105
106## Updating
107
108```sh
109cd ~/path/to/agent-skills
110git pull
111```
112
113Symlinked skills update automatically.
114
115## Contributions
116
117Patch requests are in [amolith/llm-projects] on [pr.pico.sh]. You don't
118need a new account to contribute, you don't need to fork this repo, you
119don't need to fiddle with `git send-email`, you don't need to faff with
120your email client to get `git request-pull` working...
121
122You just need:
123
124- Git
125- SSH
126- An SSH key
127
128```sh
129# Clone this repo, make your changes, and commit them
130# Create a new patch request with
131git format-patch origin/main --stdout | ssh pr.pico.sh pr create amolith/llm-projects
132# After potential feedback, submit a revision to an existing patch request with
133git format-patch origin/main --stdout | ssh pr.pico.sh pr add {prID}
134# List patch requests
135ssh pr.pico.sh pr ls amolith/llm-projects
136```
137
138See "How do Patch Requests work?" on [pr.pico.sh]'s home page for a more
139complete example workflow.
140
141[amolith/llm-projects]: https://pr.pico.sh/r/amolith/llm-projects
142[pr.pico.sh]: https://pr.pico.sh