About this project

This repository is Jon Hill's public collection of portable Agent Skills — self-contained, model- and harness-agnostic instructions that an AI coding agent can load on demand. Each skill is individually installable and nothing is specific to any one harness or depends on private tooling. ## Installation Browse the collection with `npx skills add jonhill90/skills --list`, or install specific skills into the current project with `npx skills add jonhill90/skills --skill tmux --skill github-cli`. The `npx skills` CLI pins installs by content hash in `skills-lock.json` for reproducibility. This repository also acts as an Agent Plugins 1.0.0 plugin (with `plugin.json` at the root and skills at `skills/<name>/SKILL.md`), and as a Claude Code plugin via `.claude-plugin/` — add the marketplace with `claude plugin marketplace add jonhill90/skills` and install with `claude plugin install jonhill90-skills@jonhill90`. The plugin has no pinned version, so it tracks the latest commit on `main` and loads the whole collection (about 5.6k tokens of skill descriptions per session). ## Skills in this collection The collection includes 42 skills, each with an upload audit status (PASS or FAIL) indicating whether local-machine or CLI assumptions were detected. Examples include: - `ask-a-council` — consult multiple perspectives - `devils-advocate` — challenge assumptions - `failing-test-first` — test-driven development - `github-cli` — GitHub CLI usage - `obsidian` — Obsidian note management - `prd` — product requirements documents - `spec-driven-development` — specification-first development - `tdd` — test-driven development - `tmux` — tmux terminal multiplexer - and many more covering workflows like planning, research, memory, and safe deletion. ## Where a skill belongs The README advises that most skills should not live in this repository. Placement depends on usage: skills useful across many unrelated projects belong in a public collection like this; skills true only in one repository belong in that repo's `.claude/skills/` or `.agents/skills/`; and one-off or externally maintained skills can be used directly via `npx skills use <package>@<skill>`. ## Authoring contract Each skill lives at `skills/<name>/SKILL.md` with optional `scripts/`, `references/`, and `assets/` directories. Portable frontmatter includes `name` and `description` (plus optional `license`, `compatibility`, `metadata`, `allowed-tools`). The directory name must match `name`, and `SKILL.md` should stay under 500 lines with detail moved into linked references. Full conventions are in `AGENTS.md`. ## Validation Run `python3 scripts/validate_repository.py` and `python3 -m unittest discover -s tests -v` to validate the repository. CI runs both on every pull request and on pushes to `main`. ## Content boundaries This repository holds only portable skill content and minimal validation/tests/CI. Personal harness configuration (canonical instructions, hooks, agents, settings, MCP declarations, install/sync tooling) lives in a separate personal harness repository. There is no behavioral eval system here for now; a community-maintained replacement is tracked in issue #309. Employer-owned or project-specific material is never copied here.