Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ Auto-trigger on matching tasks (all `user-invocable: false` except `make-interfa
| `solid` | Generic SOLID for TS/Python/Go modules - strategy maps, discriminated unions, fat-interface splits, dependency injection |
| `type-safety-discipline` | Branded/newtype IDs, discriminated unions, parse-don't-validate - TS primary; references for Rust/Kotlin/Python |

The `productivity/` category contains `agent-first-setup`, `context-tree`, `multi-tool-bridge`, `scaffold`, `skill-agent-pipeline`, `skill-maintenance`, `write-skill`, and `zoom-out`.
The `productivity/` category contains `agent-first-setup`, `context-tree`, `multi-tool-bridge`, `report-skill-issue`, `scaffold`, `skill-agent-pipeline`, `skill-maintenance`, `write-skill`, and `zoom-out`.

### Plan lifecycle (the `plan-lifecycle` plugin)

Expand Down
2 changes: 1 addition & 1 deletion plugins/docks/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Auto-trigger on matching tasks (all `user-invocable: false` except `make-interfa
| `solid` | Generic SOLID for TS/Python/Go modules — strategy maps, discriminated unions, fat-interface splits, dependency injection |
| `type-safety-discipline` | Branded/newtype IDs, discriminated unions, parse-don't-validate — TS primary; references for Rust/Kotlin/Python |

Plus `agent-first-setup`, `context-tree`, `multi-tool-bridge`, `scaffold`, `skill-maintenance`, `write-skill`, and `zoom-out` under `productivity/`.
Plus `agent-first-setup`, `context-tree`, `multi-tool-bridge`, `report-skill-issue`, `scaffold`, `skill-maintenance`, `write-skill`, and `zoom-out` under `productivity/`.

### Plan lifecycle (companion plugin)

Expand Down
4 changes: 4 additions & 0 deletions plugins/docks/skills/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,10 @@ byte-identical absent-lifecycle prerequisite paragraph; no check compares the
copies. `plugins/plan-lifecycle/skills/AGENTS.md` (Fail-loud routing) owns the
rule and the command that finds every copy.

## Report section (every shipped skill)

Every shipped skill of the docks and plan-lifecycle plugins ends with one byte-identical `## Report a problem with this skill` section, so an agent that uses a skill sees where and how to report a problem with it. The section points to the docks `report-skill-issue` skill. For a runtime without docks, it allows only a draft for the user, because the publication safeguards live in that skill. A new skill copies the section unchanged; a change to the section changes every copy in the same commit. Verify: `for f in plugins/docks/skills/*/*/SKILL.md plugins/plan-lifecycle/skills/*/*/SKILL.md; do sed -n '/^## Report a problem with this skill$/,$p' "$f" | sha256sum; done | sort | uniq -c` must print one line whose count equals the number of shipped skills.

## Cross-tool wording (Claude Code + Codex)

Skills run in both runtimes; phrase for both. Sources: the Claude Code skills docs (`## Sources`) and the openai/codex source.
Expand Down
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/accessibility/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: "Use when making UI accessible: focus trap + restore-on-close in mo
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-23"
content_hash: "dbca450826300d1e4d88fd6331e04919988a6d33b77a59074cd569f940a98104"
updated: "2026-10-23"
content_hash: "5ef4ee5bbf865ad959c5c41fcec507c056878b618fab21a212750a29610a9c44"
---

# Accessibility
Expand Down Expand Up @@ -212,3 +212,7 @@ Contrast criteria (1.4.x) audits route to `design-tokenization`.
- APG patterns index: https://www.w3.org/WAI/ARIA/apg/patterns/ · Read Me First: https://www.w3.org/WAI/ARIA/apg/practices/read-me-first/
- WCAG 2.2 changes: https://www.w3.org/WAI/standards-guidelines/wcag/new-in-22/
- Companion skills: `design-tokenization` (contrast/tokens), `make-interfaces-feel-better` (motion values, hit areas), `react-component-patterns` (component APIs)

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/code-clarity/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: "Use when code is hard to understand without narration; improving n
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-24"
content_hash: "1dafc5e1aed48b9f9a95c837935aeea0c9845f20e104ecdc2bada93115cdfcf8"
updated: "2026-10-23"
content_hash: "1e0bd7d6d6e2c5e7bd59e09b9c672a842f11ec8a1120cb944af4418ec34b8297"
---

# Code Clarity
Expand Down Expand Up @@ -192,3 +192,7 @@ shorter files, more abstractions, or a higher raw test count.
- `tdd-workflow`: a new behavior contract should be written test-first.
- `solid`: a demonstrated mixed change axis, fat Interface, growing dispatch,
or concrete dependency needs a structural pattern.

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/code-guardrails/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: "Use when setting up strict linter rules for TypeScript (oxlint, an
user-invocable: true
metadata:
pattern: tool-wrapper
updated: "2026-09-24"
content_hash: "d7581cc74f6c4adf10f22114724c3294dd5e419cdf43242b311a132241619ca1"
updated: "2026-10-23"
content_hash: "edb40fc49d952999cc51e8dcb7515e66ff7c17d813bee9a3388a1d71464a019a"
---

# Code Guardrails
Expand Down Expand Up @@ -238,3 +238,7 @@ Then list the tools you did not install and the questions for the user.
- Run the two checks in "Find scattered values" again. Each remaining repeated value
must have a reason in the report.
- Run the project tests. A moved constant must not change behavior.

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/code-review/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: Use when reviewing code for bugs, security vulnerabilities (OWASP T
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-24"
content_hash: "b79b459375711df7545e89d5b3745f1f387279f4a025c74565fec5d2bbb8d83c"
updated: "2026-10-23"
content_hash: "6957128707464720648cd7207b6cdaa6fceba4bcf22c4a176d79b07a24ed5351"
---

# Code Review
Expand Down Expand Up @@ -211,3 +211,7 @@ MEDIUM · Maintainability · src/api/orders.ts:45-62
- Pairs with: the `security` skill for OWASP Top 10 coverage with adversarial perspective; the `refactor` skill for SOLID and dead-code analysis at scale; `lint-no-suppressions` if your fix would otherwise involve silencing a linter rule
- Per-axis finding catalogs: `references/security.md`, `references/perf.md`, `references/maintainability.md`
- OWASP Top 10 vocabulary: https://owasp.org/Top10/

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/commit-discipline/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: "Use when splitting work into small reviewable/atomic commits, deci
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-23"
content_hash: "7b5fb2ca75a7ab21734bb0f35dfb418f67cf849b8ecd388fd4b6d6e20f0af21f"
updated: "2026-10-23"
content_hash: "157a2715927032a78b2af3dba171e5255a49b11d7c4edd69d7159502871f359b"
---

# Commit & PR Discipline
Expand Down Expand Up @@ -252,3 +252,7 @@ git diff @{upstream}.. --stat # size sanity: is this one reviewable unit?
- `git-rebase(1)` — `--autosquash`, `rebase.autoSquash`, `--exec`, `--update-refs`;
`git-commit(1)` — `--fixup=amend:`/`reword:` (re-verify against your installed
Git's man pages).

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/dep-vuln-workflow/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: Use when running bun/pnpm/npm/yarn audit, pip-audit, cargo audit, o
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-23"
content_hash: "8655db8483888b6d0e6b85fbb49abef8df212ca148bdfc7d387da3b6248c92ab"
updated: "2026-10-23"
content_hash: "4da60cafda174ac480d497a05983897f90d616f8dc7dea73bd3cc804ce995ab4"
---

# Dependency Vulnerability & Upgrade Workflow
Expand Down Expand Up @@ -132,3 +132,7 @@ The lockfile (`bun.lock` / `pnpm-lock.yaml` / `package-lock.json` / `yarn.lock`
- RustSec Advisory DB: https://rustsec.org/advisories/
- PyPA Advisory DB: https://github.com/pypa/advisory-database
- Go Vulnerability DB: https://pkg.go.dev/vuln/

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/design-tokenization/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: "Use when working with colors, Tailwind classes, CSS variables, dar
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-23"
content_hash: "df13bc6b4ad0edc5bdc9ce7a35bae32c80db8ef6a3d07a5760ff5ed5adccbb1d"
updated: "2026-10-23"
content_hash: "3c341f36e34da1d5c1d065b2caab992a96916ad6531f6c24b2cb12c606019161"
---

# Design Tokenization
Expand Down Expand Up @@ -177,3 +177,7 @@ Four-step procedure. Don't skip the audit — proposing token names without seei
- shadcn/ui design tokens: https://ui.shadcn.com/docs/theming (uses the `*-foreground` convention)
- Brandfetch / logo.dev — verify official hex before adding a brand token
- Companion skills: `accessibility` (semantics, keyboard behavior, and ARIA), `make-interfaces-feel-better` (visual polish), `lint-no-suppressions` (when CI greps feel "annoying" — fix the violation, don't disable)

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/fix-workflow/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: Use when fixing a specific bug, security finding, performance regre
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-24"
content_hash: "655b1d447db265b60d69707a5a43ca2092d34de790fb79d9d4cf6307e4402915"
updated: "2026-10-23"
content_hash: "e1d85256c77c5a5255502ea2bc8ecec68b5910e04df672ee3d2f85ab7eaaacfa"
---

# Fix Workflow
Expand Down Expand Up @@ -195,3 +195,7 @@ After all approved fixes land, run the full verification sweep (tests + lint + t
- Per-finding-type templates: `references/security-fix-templates.md`, `references/perf-fix-templates.md`, `references/bug-fix-templates.md`
- Feedback-loop construction (Step 0): `references/feedback-loops.md`
- Framing for feedback-loops.md adapted from Matt Pocock's `diagnosing-bugs` skill (formerly `diagnose`; MIT): https://github.com/mattpocock/skills/blob/main/skills/engineering/diagnosing-bugs/SKILL.md — the original text was adapted from the `diagnose` version pinned at https://github.com/mattpocock/skills/blob/694fa30311e02c2639942308513555e61ee84a6f/skills/engineering/diagnose/SKILL.md

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: "Use when a linter or type-checker flags an error; when tempted to
user-invocable: false
metadata:
pattern: tool-wrapper
updated: "2026-09-23"
content_hash: "f84f8db840dac60cb80898571ddb7a00f63ca056bde41931a8e55887675208fe"
updated: "2026-10-23"
content_hash: "b3715bdf00626f49c21f0ca95630e708afe95485495990f451fb75d192e926e2"
---

# Never Suppress Lint / Type Errors
Expand Down Expand Up @@ -102,3 +102,7 @@ CI must enforce the suppression block too. Client-side hooks are bypassable with
- ruff rule reference: https://docs.astral.sh/ruff/rules/
- clippy lint list: https://rust-lang.github.io/rust-clippy/master/
- golangci-lint `nolintlint` (set `require-explanation: true` to require a reason on `//nolint:`): https://golangci-lint.run/docs/linters/configuration/#nolintlint

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: "Use when building or reviewing UI components; fixing positioning t
user-invocable: true
metadata:
pattern: upstream-adapted
updated: "2026-08-25"
updated: "2026-10-23"
upstream:
source: https://github.com/jakubkrehel/make-interfaces-feel-better
license: MIT
Expand All @@ -15,7 +15,7 @@ metadata:
- "2026-08-25: SKILL.md description and icons.md route accessibility semantics, keyboard, and ARIA work to accessibility"
- "2026-08-25: SKILL.md and surfaces.md distinguish WCAG 2.2 Target Size (Minimum) AA 24×24px from 44×44px touch and 40×40px dense-desktop usability heuristics"
- "2026-08-25: animations.md, surfaces.md, and typography.md add Contents tables required by docks reference hygiene"
content_hash: "7d94c2ea34fa0ed414aabda7aea4ee9484f364a37e93b5e6912a5c8030d0bcbe"
content_hash: "aff027c6dc1155504e6119e8c1ed271b57ac3bd68a6ccd1cada55f7db08ba894"
---

# Details that make interfaces feel better
Expand Down Expand Up @@ -199,3 +199,7 @@ After the findings:
2. **Verdict**: `Block` if any `HIGH` finding remains, `Needs changes` if only `MEDIUM` or `LOW` findings remain, and `Approve` only when no actionable findings remain. List every unverified check beside the verdict.

When there are no findings, omit the findings table, state "No actionable interface-polish findings", report verification and rejected candidates, and end with `Approve`.

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ paths:
- "**/*.js"
metadata:
pattern: tool-wrapper
updated: "2026-09-23"
content_hash: "192403e00c8c0e97c8f6f7c0e83160842b639908692b3adb824e2267e160188b"
updated: "2026-10-23"
content_hash: "5ab177592d79aafa89439210627d3892305ce699cebd106e35b7e37599591ff9"
---

# React Component Patterns
Expand Down Expand Up @@ -116,3 +116,7 @@ This is the single home of the derived-state example. The full anti-pattern →
- `useSyncExternalStore`: https://react.dev/reference/react/useSyncExternalStore
- Radix UI Slot source: https://github.com/radix-ui/primitives/blob/main/packages/react/slot/src/slot.tsx
- TanStack Table headless docs: https://tanstack.com/table/latest/docs/introduction

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
8 changes: 6 additions & 2 deletions plugins/docks/skills/engineering/refactor/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: "Use when auditing a codebase for structural issues — dead code,
user-invocable: true
metadata:
pattern: pipeline
updated: "2026-09-24"
content_hash: "051d96108813dc7a20b04b7a27c346e913680099028044d94ba60255534dae16"
updated: "2026-10-23"
content_hash: "adecb5d2163cfbdc270efe3b9cd2cf1feaeafa7e92b894fea3e0792f7eb8969e"
---

# Refactor (cross-tool pipeline)
Expand Down Expand Up @@ -150,3 +150,7 @@ No content loss outside the planned diff: every deletion must be a planned dead-
| Flagging modernization from memory | Ships a backwards "fix" (e.g. Next.js `proxy.ts`) | Verify against current docs for the installed version |
| Resolving one SOLID violation but adding another | Net-negative refactor ships | Phase 8 re-checks all 5 principles; revert on any new violation |
| Assuming a GitHub plan issue is available in a repository with no GitHub remote | The report cannot be filed | Stop and report the missing GitHub remote; do not create a plan file |

## Report a problem with this skill

When this skill gives a wrong, outdated, or unsafe instruction, or a script that it ships fails, report the problem in the public DocksDocks/docks repository. Use the docks `report-skill-issue` skill for the report. If that skill is not installed, do not file anything: give the user a draft instead. The draft names this skill and its plugin version, quotes the instruction, and states what happened and what you expected. Leave out secrets and private names.
Loading
Loading