feat(skills): add style review workflow

This commit is contained in:
2026-09-17 09:56:58 -04:00
parent 247712582a
commit cf9a671fb8
15 changed files with 160 additions and 66 deletions

View File

@@ -1,31 +0,0 @@
---
description: Review Nix changes against repository Nix style rules
argument-hint: "[target]"
---
Use the `nix-style` skill.
Audit ${ARGUMENTS:-the staged diff} for violations of the repository Nix style rules.
Report only actionable findings.
Order findings by severity.
Do not report preferences unless a loaded rule states them.
Use this format for each finding:
```text
`code-path:line`
> `smallest reviewed-code excerpt that shows the violation`
`rule-file:line`: Finding title.
Summary: why the code breaks the rule
Fix: suggested fix
```
Keep the code excerpt to one to three lines when possible.
Use a longer excerpt only when the violation needs surrounding context.
Use `...` to omit unrelated lines from a multi-line excerpt.
Use a skill-relative rule citation, such as `let.md:7`.
Make the fix direct.
Do not include alternatives when one fix best follows the cited rule.
It is acceptable to report no findings when the reviewed Nix already follows the loaded rules.

42
.pi/prompts/review.md Normal file
View File

@@ -0,0 +1,42 @@
---
description: Review changes against repository style rules
argument-hint: "[target]"
---
Review target: `${ARGUMENTS:-the staged diff}`.
Audit the target for violations of the repository style rules.
Choose skills from the reviewed files:
- Use the `nix-style` skill for `*.nix` files.
- Use the `rust-style` skill for `*.rs` files.
- Use the `rust-style` skill for `Cargo.toml` files.
- Use the `rust-style` skill for Bazel files that define Rust targets.
If the target includes multiple matching file types, use all matching skills.
If the target is a diff, choose skills from the changed files.
Do not use a style skill when no reviewed file matches it.
Report only actionable findings.
Order findings by severity.
Do not report preferences unless a loaded rule states them.
Use this format for each finding:
```text
`code-path:line`
> `smallest reviewed-code excerpt that shows the violation`
`skill::rule-file:line`: Finding title.
Summary: why the code breaks the rule
Fix: suggested fix
```
Keep the code excerpt to one to three lines when possible.
Use a longer excerpt only when the violation needs surrounding context.
Use `...` to omit unrelated lines from a multi-line excerpt.
Use a style-skill rule citation, such as `rust::files.md:23` or `nix::let.md:7`.
Make the fix direct.
Do not include alternatives when one fix best follows the cited rule.
It is acceptable to report no findings when the target follows the loaded rules.

View File

@@ -1 +1 @@
../../src/skills/nix-style
../../src/skills/style/nix

1
.pi/skills/rust-style Symbolic link
View File

@@ -0,0 +1 @@
../../src/skills/style/rust