Skills
Skills own reusable workflows and behavioural contracts. They are shared by OpenCode and Codex via ~/.agents/skills/ and published to opencode-config.
Skills
Section titled “Skills”| Skill | Description |
|---|---|
branch-context-consumer | Consume BranchContextPlugin injections in commands. Use when a command depends on an injected |
check-skill-updates | Check imported skills for upstream changes and apply updates. Use when reviewing whether externally imported skills have new upstream content, or when dot skill-updates reports available changes. |
cleanup-unnecessary-variables | Safe unnecessary-variable cleanup guidance for code review and refactoring. |
dotfiles-stow | REQUIRED when changing configs managed by ~/.config/dotfiles or ~/.config/dotfiles-private. Enforces editing stow source paths (not ad-hoc live paths) and using the dot command for stow/update/validation workflows. |
fallow-coexistence | Guidance for using Fallow alongside code-quality and framework skills without conflict. Use when running Fallow or acting on its findings — applying fix/suppress suggestions, interpreting dead-code or complexity output, or analysing Effect, Lit, or Home Assistant code — to decide what to apply, what to verify first, and how to configure Fallow. |
git-context | Patterns for working with git branches, remotes, diffs against the default branch, and rebases. Use when resolving rebase conflicts, continuing interactive rebases, amending commits, or any git operation that would open an interactive editor. |
grill-questions | Run an extended one-question-at-a-time planning interview to stress-test a proposed change before implementation. Use when the user says grill, grill me, stress-test this plan, ask more questions, or wants to expand the planning/question window instead of moving straight to a plan. |
handoff | Compact the current conversation into a handoff document for another agent to pick up. |
home-assistant-frontend | Home Assistant frontend development with Lit Web Components and TypeScript. Use when working in the Home Assistant frontend repo, editing ha-* components, reviewing HA PRs, or applying HA-specific conventions (localization, theming, dialogs, panels, cards). |
home-assistant-lazy-context | Home Assistant frontend lazy-context, memoization, and hass removal guidance. Use when migrating Lit components from hass!: HomeAssistant, .hass=${...}, or broad hass access to context slices. |
home-assistant-list-components | Home Assistant list component migration and usage guidance. Use when editing ha-list, ha-list-item, ha-md-list, or migrating to ha-list-nav, ha-list-selectable, ha-list-item-button, ha-list-item-option, or ha-list-item-base. |
home-assistant-lit-rendering | Home Assistant Lit rendering extensions for HA components and context-aware picker callback shape. |
import-external-skill | Import skills from external repos into the local dotfiles skill library. Use when pulling in a skill from a public repo, reviewing an external skill set for useful additions, or adapting external skill content into existing local skills. |
lit-rendering | Lit rendering and picker callback-shape guidance for editing and reviewing Lit components. |
pkexec-root | Use pkexec first for commands that need root directly or indirectly. |
pr-review | Guidelines for reviewing pull requests - what to analyze, review etiquette, and output formatting |
remove-single-use-functions | Safe single-use function removal guidance for code review and refactoring. |
safe-process-signals | Safe process killing and signal handling for agent/subprocess contexts. Use when running pkill, killall, kill, or any process termination command from a shell subprocess, automated script, or coding agent. |
types-enforce-ts | TypeScript type-safety guidance for editing and reviewing .ts, .tsx, .mts, and .cts files. |
writing-style | Write commit messages, PR and issue text, docs, code comments, and user-facing copy in the project owner’s voice: concise, human, UK English, no em-dashes, no robotic or marketing tone. Use when authoring or editing any commit message, pull request or issue description, README or docs, code comment, or user-facing string (notifications, UI labels, toasts, error messages). Defer to a repo’s established house style when it has one; otherwise this sets the default voice. |
Imported Skills
Section titled “Imported Skills”These skills were imported from other repos and tracked with an # origin: marker. Some are used as-is; others are adapted for local workflows.
| Skill | Description | Origin |
|---|---|---|
ask-questions-if-underspecified | Ask minimal clarifying questions only when ambiguity materially changes implementation. Use for routine underspecification; do not use for extended grilling, plan stress-testing, or broad design interviews. | trailofbits/skills |
css-motion-systems | CSS motion design and implementation for web interfaces. Use when designing or building transitions, animations, linear() easing, transform strategy, View Transitions API patterns, motion tokens, or reviewing motion quality and accessibility. | stolinski/s-stack |
diagnose | Disciplined diagnosis workflow for hard bugs, regressions, flaky behavior, and performance issues. Use when behavior is broken, failing, intermittent, or slower than expected and the agent needs a reproducible feedback loop before fixing. | mattpocock/skills |
effect | Work with Effect v4 / effect-smol TypeScript code. Use when writing, reviewing, or refactoring TypeScript code using the Effect library (Effect.gen, Context.Tag, Layer, Schema, Effect.fn). | anomalyco/opencode |
fallow | Codebase intelligence for JavaScript and TypeScript. Free static layer finds unused code (files, exports, types, dependencies), code duplication, circular dependencies, complexity hotspots, architecture boundary violations, and feature flag patterns. Runtime coverage merges production execution data into the same health report for hot-path review, cold-path deletion confidence, and stale-flag evidence - a single local capture is free, while continuous/cloud runtime monitoring is paid. 94 framework plugins, zero configuration, sub-second static analysis. Use when asked to analyze code health, find unused code, detect duplicates, check circular dependencies, audit complexity, check architecture boundaries, detect feature flags, clean up the codebase, auto-fix issues, merge runtime coverage, or run fallow. | fallow-rs/fallow-skills |
html | Writes and reviews semantic, accessible HTML and template markup that stays readable and low-noise. Use when creating or refactoring HTML or Svelte templates, cleaning up div soup, choosing better elements, improving form markup, fixing heading or landmark structure, or replacing custom controls with native HTML. | stolinski/s-stack |
improve-codebase-architecture | Review a codebase area for architectural friction and propose focused structural improvements. Use when the user wants to improve maintainability, reduce coupling, simplify understanding, or identify where code should be consolidated or deepened. | mattpocock/skills |
motion-choreography-patterns | Use when orchestrating multi-element UI motion, stagger systems, list reorder/insert/remove flows, modal and overlay stacks, gesture-driven transitions, and route-level choreography that preserves hierarchy and attention. | stolinski/s-stack |
opentui | Build terminal UIs with OpenTUI. Covers the core API, native audio, keymaps, React and Solid bindings, components, layout, keyboard input, plugins, and testing. | anomalyco/opentui |
write-a-skill | Create new OpenCode skills with concise descriptions, clear triggers, and minimal supporting files. Use when adding or rewriting a local skill, command-adjacent skill, or reusable agent workflow. | mattpocock/skills |