Add a user-invocable `/lint` skill that wraps
`ruff check` with staged-file defaults and piker's
`ruff.toml` config via a PEP 723 script.
The `ruff.toml` (from prior commit) now enforces
piker's `'''` multiline docstring convention with
`D2xx` formatting rules: summary on second line
(D213), closing quotes on separate line (D209), blank
line between summary and description (D205), plus
`W` trailing-whitespace and cherry-picked `D4xx`
content checks.
Deats,
- `scripts/check.py`: pure-stdlib wrapper that
defaults to staged `.py` files via
`git diff --cached`, with `--all`, `--fix`,
`--diff`, and `--stats` flags.
- calls `ruff` from `$PATH` (works with nixpkgs,
nvim-bundled, or pip-installed).
- prints clear install guidance if `ruff` not found.
- `SKILL.md`: documents usage, common violations
(D213, D205, D204), and fix patterns for
converting to piker's docstring style.
(this patch was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
Refactor `SKILL.md` to adhere to claude-code skills docs and
eliminate content duplication with the supporting file.
Deats,
- fix `allowed-tools` from YAML list to comma-separated string
per frontmatter spec.
* https://code.claude.com/docs/en/skills#frontmatter-reference
- drop ~220 lines of inlined style-guide content that duplicated
`style-guide-reference.md`; replace with compact "Quick
Reference" section + markdown link to the full guide.
- fix supporting file ref from backtick-code to proper markdown
link syntax: `[style-guide-reference.md](./...)`.
- inline the file-writing instructions (timestamp + hash filename
format) directly, replacing the now-broken `CLAUDE.md` ref.
Also,
- add missing "commit msg" footer variant to
`style-guide-reference.md` (previously only showed "patch").
- move `.claude/CLAUDE.md` -> `style-guide-reference.md` as
proper skill supporting file.
(this patch was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
Reorganize all 5 skills from loose `.md` files (and one
partially-formatted `commit_msg/`) into the documented
`subdirectory/SKILL.md` format with YAML frontmatter.
Deats,
- `commit_msg/` -> `commit-msg/` w/ enhanced frontmatter:
`argument-hint`, `disable-model-invocation`,
`allowed-tools`, dynamic `!` context injection for
staged diff + recent log, `$ARGUMENTS` support
- `piker_profiling.md` -> `piker-profiling/SKILL.md` +
`patterns.md` for detailed profiling patterns
- `piker_slang_and_communication_style.md` ->
`piker-slang/SKILL.md` + `dictionary.md` +
`examples.md`
- `pyqtgraph_rendering_optimization.md` ->
`pyqtgraph-optimization/SKILL.md` + `examples.md`
- `timeseries_numpy_polars_optimization.md` ->
`timeseries-optimization/SKILL.md` +
`numpy-patterns.md` + `polars-patterns.md`
Also,
- all background skills use `user-invocable: false`
for auto-application when relevant.
- use a hyphen convention across all dir names.
- content is now split into supporting files linked from each
`SKILL.md`.
(this patch was generated in some part by
[`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
Since apparently my commit-msg generator thingie stores the "training"
prompt content in this file by default.. REALLY this should be put into
a `SKILL.md` or similar later so that only truly global ctx content is
put here.