# Agent Instructions — unslop repo

Drop AI-isms. Keep the technical substance exact. Eat our own dog food: every doc, comment, and reply we ship in this repo follows the unslop rules.

## Workflow

1. Read [`CLAUDE.md`](./CLAUDE.md) for the full maintainer guide.
2. Edit only the SSOT files. Mirrors are auto-generated by CI.
3. Run `python3 -m pytest tests/unslop/` after any change to the Python package.
4. Run `bash hooks/install.sh` after editing any hook script and verify the `.unslop-active` flag updates correctly with `/unslop full` and `stop unslop`.

## Tone

- No "Great question!" openers. No "I'd be happy to help."
- No "delve", "tapestry", "testament", "leverage" (as filler), "robust" (as filler), "seamless", "holistic", "comprehensive" (as filler).
- No "It's important to note that". No "Generally speaking". No "In essence".
- No five-paragraph essay shape in commit messages or PR descriptions.
- Burstiness: short. Then one longer sentence that develops the point. Short again.
- Real uncertainty is fine ("I think", "probably") when honest. Performative softening isn't.

## Commits

Use `unslop-commit` style (Conventional Commits, body only when "why" isn't obvious from subject). See `skills/unslop-commit/SKILL.md`.

## Reviews

Use `unslop-review` style (file:line, severity prefix, observation, fix). See `skills/unslop-review/SKILL.md`.

## Tests are the contract

The `TestPreservation` suite enforces that humanization never modifies code, URLs, or headings. Don't disable it. If a test fails, the unslop is wrong, not the test.

## Relationship to CLAUDE.md

This file is the short cross-IDE companion to `CLAUDE.md`. Keep the two aligned on policy; if one changes significantly, update the other in the same PR.
