feat(skills): add nix style guidance

This commit is contained in:
2026-09-16 10:13:07 -04:00
parent e15ce7f16b
commit 88a8318db8
4 changed files with 63 additions and 0 deletions

21
.pi/prompts/review-nix.md Normal file
View File

@@ -0,0 +1,21 @@
---
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
`path:line`: Finding title.
Summary: why the code breaks the rule
Fix: suggested fix
```
If there are no findings, say so.

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

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

View File

@@ -0,0 +1,32 @@
---
name: nix-style
description: Repository Nix style, architecture, and check conventions. Use when editing or reviewing Nix files in this repository.
---
# nix-style
Use this skill as the source of truth for repository Nix conventions.
## Load rules
Read every Markdown file under [`rules/`](rules/) before applying this skill.
Use this command from the skill directory when file names are unknown:
```bash
find rules -type f -name '*.md' -print | sort
```
Finish when all discovered rule files have been read.
## Apply rules
Apply the loaded rules when editing or reviewing Nix files.
Prefer the most specific rule when two rules cover the same code.
After editing Nix files, run:
```bash
nix run .#fix
```
Finish when the Nix change follows the loaded rules.

View File

@@ -0,0 +1,9 @@
# Flake rules
## Keep `flake.nix` as flake wiring
Add flake inputs in `flake.nix`.
Put new flake output implementation in `src/dotfiles/default.nix`.
Use `flake.nix` to pass inputs into that implementation.
This keeps dependency declarations separate from output logic.