<< All versions

Skill v1.0.0

currentAutomated scan100/100
iusztinpaul/squid/squid-clean-docs
──Details
PublishedOctober 25, 2026 at 09:46 PM
Content Hashsha256:d99788440faf64d0...
Git SHA51b18907a37b
──Files
Files (1 file, 5.5 KB)
SKILL.md5.5 KBactive
SKILL.md · 94 lines · 5.5 KB

version: "1.0.0" name: squid-clean-docs disable-model-invocation: true argument-hint: "[scope-path] (default: whole repo)" description: >- Strip redundancy from prose — docs, READMEs, code comments, docstrings — keeping behaviour identical.


Clean docs — remove words, keep behaviour

You are the cleaner. You delete redundant prose — markdown docs, code comments, docstrings; you do not touch executable code. Zero behaviour diff is the contract — if a deletion could alter runtime, it is out of scope.

$ARGUMENTS is an optional scope path (docs/, src/ingest/). Empty means the whole repo.

When NOT to use — never touch these without explicit opt-in

ExcludedWhy
docs/adr/, docs/notes/ADRs are immutable historical records; notes are the user's.
CHANGELOG*, LICENSE*Append-only / legally load-bearing.
.github/Issue/PR templates and workflow files are functional surface, not reader prose.
Generated + vendored trees (node_modules/, .venv/, dist/, vendor/, *_pb2.py)Not authored; regenerated on build.
Linter/type directives (# noqa, # type: ignore, # pragma: no cover)These are code, not comments.
Doctest examples (>>> blocks in docstrings)Executable tests, not prose.

Step 1 — Confirm scope

State the default exclusion list above, then ask (one round, AskUserQuestion): what else is off-limits? Do not scan until answered.

Step 2 — Apply the keep/delete test

Read every candidate file whole — never delete on a filename or a skim; a comment can only be judged next to the line it sits on.

A comment or docstring survives only if it states something the code cannot. A constraint, a non-obvious _why_, a limit, a workaround and its issue link. If it narrates _what_ the next line does, it is noise — delete it.

DeleteKeep
# increment the counter above i += 1# Chunk at 200 tokens — the embedding model truncates above 256.
A docstring restating the signature: """Takes a user_id and returns a User.""""""Returns None for soft-deleted users; callers must handle it (see #412)."""
# TODO: refactor this someday (no owner, no issue)# TODO(#88): drop once the v1 endpoint is retired.
# Fixed the bug where... — history belongs in git# Retry 3×: the upstream API 502s under ~5% of cold starts.

Docs: a section dies when it duplicates a section that lives elsewhere. Keep exactly one home for each idea; replace the copy with a one-line cross-reference. A README that repeats CONTRIBUTING.md's install steps loses them and links instead.

Tasks/templates: collapse repeated task files into one template plus the deltas; keep the template.

Step 3 — Plan of attack (the output artifact)

Print one table in chat. Do not write it to disk unless the user asks.

FileWhat goesRule (Step 2)~Lines
src/ingest/chunk.py4 narrating comments, 1 signature docstringrestates code−12
README.mdinstall section duplicating CONTRIBUTING.mdone home per idea−18

Stop and wait for explicit approval. Do not edit before it.

Step 4 — Execute

Apply the approved plan. Commit one category at a time (comments, docs) so any revert is surgical.

Step 5 — Verify

Behaviour must be provably unchanged before hand-off:

  • Test + lint suite green (make pre-commit && make unit-tests, or the project's equivalent) —

docstring deletions can break doctests and doc builds.

  • git diff --stat touches only prose and docstrings — no logic lines.
  • No broken internal links: every path, heading, or anchor you deleted or moved has no remaining

referrers.

Anything red: revert that commit, do not "fix forward".

Step 6 — Hand-off

Report lines removed per category and the verify result. If the README was reorganised, say what moved where.

Notes on shape

  • Removing beats rewriting. Prefer deleting a paragraph to shortening it.
  • If the caveman plugin is installed, run this first and /caveman-compress after — this decides what

exists, that compresses wording.

All versions