A collection of development workflow skills for Amp, Pi, and Claude Code.
Default architecture when writing Rails, from Vanilla Rails / 37signals/Basecamp.
Agent skill: vanilla-rails (auto-loaded on Rails implementation)
Claude Code commands: /vanilla-rails:review | /vanilla-rails:analyze | /vanilla-rails:simplify [goal]
Based on Fizzy: thin controllers, rich domain models, no service layers unless genuinely justified. "Vanilla Rails is plenty" - DHH.
Configure recommended Rails development dependencies for better developer experience.
Agent skill: rails-deps
Claude Code commands: /rails-deps:check | /rails-deps:install [gem] | /rails-deps:setup
Recommended gems: strong_migrations, herb, bullet, letter_opener.
Manage Linear issues without MCP through a bundled, JSON-first CLI that calls Linear's GraphQL API directly.
Agent skill: linear
The CLI supports OAuth 2.0 + PKCE login with automatic token refresh, issue search/read/create/update, comments, and a raw GraphQL escape hatch. Credentials are stored in macOS Keychain or a mode-0600 config file; LINEAR_API_KEY remains an optional fallback.
Automatically challenges your plans and decision-laden questions — question the question, verify against facts from the codebase, and give a better alternative.
Agent skill: question-it (auto-triggered)
Claude Code commands: /question-it:interview [plan] — manual decision-tree interview
Every question carries hidden assumptions, so it questions the question first. Every challenge is grounded in facts from the environment (code, git history, configs) — never hollow "have you considered X" — and comes with a concrete better alternative and its cost. One point at a time; nothing is acted on without your confirmation. Adapted from mattpocock/skills.
Stop spam PRs: only the change required for the request to be correct and green, written in the repo's own commit/PR voice.
Agent skill: not-spam-pr (auto-triggered on implement/fix and on commit/PR text)
No drive-by refactors, extra files, or templated "This PR" bodies. Match git log. Skip reviews, planning, gh-stack mechanics, and extras the user explicitly asked for.
Manage stacked pull requests with the official gh stack extension — split a large change into a chain of dependent PRs.
Agent skill: gh-stack
Claude Code commands: /gh-stack:setup — install and verify the extension
Create stacks (init/add), submit PR chains (submit), keep them in sync (sync), land them (merge), and navigate (bottom/top/up/down/trunk). Agent-friendly details: submit --auto skips the interactive editor, view --json gives machine-readable state, exit codes 0-10 drive recovery, and link works without local tracking for external tools like jj or Sapling. Ships references on layer design, per-command behavior, and troubleshooting.
Spawn and coordinate subagents as real herdr panes — visible, detachable, state-tracked delegation. Each subagent is a separate pi process in its own pane, orchestrated through the herdr CLI.
Agent skill: herdr-subagents
Pi command: /herdr-subagents:spawn <task> (ships via the Pi Package path) — split a sibling pane, start a pi subagent, submit the task, collect the result
Pi-oriented: the skill has no Claude Code plugin manifest and is not published to the marketplace — the orchestration works from any agent, but the callback bridge extension (herdr-callbacks.ts) runs on pi's extension API.
Requires herdr with the agent running inside a herdr-managed pane (HERDR_ENV=1). Supports single, parallel, and chained subagent workflows; the guardrail prevents using the skill outside herdr.
Fire-and-forget callbacks: the skill ships a pi extension (herdr-subagents/skills/herdr-subagents/extensions/herdr-callbacks.ts) that watches ~/.pi/agent/callbacks/ and injects subagent completion files into the parent session via sendUserMessage — delegate long work (CI watching, waits) without blocking, and get woken when it lands. Copy the extension to ~/.pi/agent/extensions/ and /reload in pi.
Install via the skills CLI from the skills.sh directory — no GitHub CLI preview feature required:
# Install all skills (interactive — auto-detects your installed agents)
npx skills add iuhoay/skills
# Install one skill
npx skills add iuhoay/skills --skill linearRun npx skills list to verify. This installs vanilla-rails, rails-deps, question-it, linear, gh-stack, herdr-subagents, and not-spam-pr using the cross-agent Agent Skills specification. It does not install Claude Code-specific slash commands, subagents, plugin manifests, or .lsp.json configuration — use the Claude Code Plugin section below for those.
Use the GitHub CLI to install all compatible skills at user scope for Amp, Claude Code, Pi, Codex, Cursor, Gemini CLI, and other supported agents:
gh skill install iuhoay/skills --all --agent amp --scope user
gh skill install iuhoay/skills --all --agent claude-code --scope user
gh skill install iuhoay/skills --all --agent pi --scope user
gh skill install iuhoay/skills --all --agent codex --scope userReplace --agent with the desired host. To install one skill instead of all of them, replace --all with its name, such as linear.
This installs vanilla-rails, rails-deps, question-it, linear, gh-stack, herdr-subagents, and not-spam-pr using the cross-agent Agent Skills specification. It does not install Claude Code-specific slash commands, subagents, plugin manifests, or .lsp.json configuration. The gh skill command is currently a preview feature.
After installing for Amp, start a new session and use skill: list from the command palette to verify the skills are available.
For the complete Claude Code integration, including slash commands, subagents, and Ruby LSP configuration, install the native plugins:
/plugin marketplace add iuhoay/skills
/plugin install vanilla-rails@iuhoay-skills
/plugin install rails-deps@iuhoay-skills
/plugin install ruby-lsp@iuhoay-skills
/plugin install linear@iuhoay-skills
/plugin install question-it@iuhoay-skills
/plugin install gh-stack@iuhoay-skills
/plugin install not-spam-pr@iuhoay-skills
herdr-subagents is deliberately absent from the marketplace: it is a pi-oriented skill (its callback bridge extension runs on pi's extension API), so it ships through the skills CLI / Pi Package paths only.
Alternatively, install the repository as a native Pi package:
pi install git:github.com/iuhoay/skillsThen start a new Pi session, or run /reload in the current session. The package provides:
/skill:vanilla-rails/skill:rails-deps/skill:linear/skill:question-it/skill:gh-stack/skill:not-spam-pr
The Ruby LSP plugin provides diagnostics, code navigation (go to definition, find references, hover), and Ruby/Rails language awareness. Amp and Pi do not load its .lsp.json configuration.
Install ruby-lsp before installing the Claude Code plugin:
gem install ruby-lspThe Linear skill's bundled CLI works across supported agents and requires Node.js 20 or newer. Claude Code users can run /linear:setup. From a clone of this repository, install and authenticate the CLI with:
node linear/skills/linear/scripts/linear.mjs install
linear auth login
linear issues list --team ENGMIT