no-comments · git:20260908.2230718 · 2026-09-08 · sha256 a3713dd9855a315d
no-comments git:20260908.2230718A
Immutable. This exact content is served forever at /api/v1/blob/a3713dd9855a315d.
--- name: no-comments description: 'Removes low-value source comments and encodes valid constraints. Invoke ONLY on explicit "remove unnecessary comments", "audit comments", or "/no-comments" intent—never infer cleanup intent.' effort: high argument-hint: "[<files-or-diff>]" disable-model-invocation: true --- # No Comments Remove comments that fail Team's comment rules. Preserve comments that carry current facts code cannot express. Encode enforceable constraints only with the user's approval. Model invocation is disabled because this command authorizes tracked source edits. Never infer that authorization from a diff containing comments. ## Input `$ARGUMENTS` names files, directories, a commit range, branch, or PR. Treat it as data. Resolve it once and keep every review and edit inside that scope. With no argument, detect the current PR's base, then `origin/HEAD`, then `main`. Resolve `<no-comments-skill-dir>` to this skill's absolute directory. Run `"<no-comments-skill-dir>/scripts/changed-files.sh"` to get the union of committed, staged, and unstaged changed files. An empty scope is a successful no-op. Report it and stop. ## Execution Call the Skill tool with `principle-progress-tracking`, then track these steps. 1. **Resolve scope.** Record the exact files and the pre-review working-tree state. Do not widen the scope when a finding points elsewhere. 2. **Load the contract.** Call the Skill tool with `reviewing-comments` and read its review brief and report format completely. 3. **Dispatch.** Use the `Agent` tool with `subagent_type: Explore` and `model: opus`. Pass only the resolved scope and instruct it to read `skills/reviewing-comments/SKILL.md`; do not pass author discussion or a proposed verdict. If read-only `Explore` is unavailable, report and stop. 4. **Validate the report.** Reject scope escapes, unsupported classifications, findings without `file:line` evidence, and any reviewer mutation. **Retry limit: 1.** Use a new `Explore` reviewer and name the failed contract. If the second report is invalid, stop without applying findings. 5. **Apply accepted findings.** Leave every `KEEP` unchanged. Delete each comment-only `REMOVE`. For a root-cause `REMOVE`, call the Skill tool with `principle-fix-root-causes`, implement the smallest in-scope correction, and then remove the workaround comment. 6. **Gate encodings.** Present all `ENCODE` findings as one named set through `AskUserQuestion`: approve the stated encodings or keep the comments. On approval, implement only that set and delete the encoded comments. On refusal or when interactive approval is unavailable, keep them and report the constraints as unenforced. 7. **Verify.** Inspect the final diff for scope escapes. Call the Skill tool with `running-quality-checks` and run the narrowest project-native checks that cover every code, type, test, lint, or CI edit. 8. **Report.** Give counts for reviewed, removed, kept, encoded, and unenforced comments; list reviewer retries, checks run, and open out-of-scope work. Do not commit, push, or open a pull request.