跳到正文
cccskills
免费在 GitHub 公开

no-comments

Use when asked to audit comments in code files and propose structural replacements or deletions with per-candidate approval. Not for deterministic commented-out-code removal: use deslop.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(2)

  • SKILL.md5.7 KB
  • agents/openai.yaml189 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

No comments

Contract

FieldBound contract
TriggerAudit comments in code files and propose structural replacements or deletions with per-candidate approval.
AuthorityHuman-gated: asks per-candidate approval before modifying source files; otherwise reversible local: writes only the audit ledger and approved source edits; rollback is undo (revert each edited file to its captured pre-edit state). No remote mutation.
Side effectWrites an audit ledger. Applies accepted edits only after the user chooses an action for each candidate.
DoneA complete audit ledger with one decision per comment and no unprocessed candidates.

Inputs

Required:

  • Target file paths: one or more file paths or glob patterns identifying files to audit.
  • Comment-syntax catalog: the comment syntax families present in the target files. Supported syntaxes are //, /* */, ///, /** */ (C, JavaScript, TypeScript, Rust, Go, Java, Kotlin, Swift, C#), <!-- --> (HTML, XML, Markdown), # (Python, Ruby, shell, YAML, TOML), -- (SQL, Lua, Haskell), {- -} (Haskell). Files using unsupported syntax are reported and excluded.

Optional:

  • Veto list: specific comment lines, line ranges, or patterns to preserve regardless of category. If no veto list is supplied, every comment is subject to the audit criteria.

Procedure

  1. Receive and validate target file paths. Reject paths that escape the working directory or are not readable. Detect the comment syntax family for each file from its extension or content. Report and exclude files whose syntax is not in the supported catalog. Done when: all valid paths are accepted with their syntax family, and invalid or unsupported-syntax paths are rejected with a reason.

  2. Scan each target file for comments in its detected syntax family. Record line number, text content, and syntax form. Done when: every comment in every target file is recorded with line number, text, and form.

  3. Classify each comment into one of these categories:

    a. Legal or business rule: names a legal or business rule, cites a regulation or license term. Retained. b. API contract: documents a public API contract, parameter, return value, or thrown exception. Retained. c. Design decision: preserves a non-obvious design decision or cites a specification. Retained. d. Dead code: commented-out code or broken examples. Deletion candidate. e. Redundant: restates what the code already expresses without ambiguity. Deletion candidate. f. TODO marker: TODO, FIXME, HACK, XXX, or equivalent. Deletion candidate unless tied to an open issue in the same repository. g. Vague: contains indefinite words (soon, later, maybe, should, improve, optimize) without a concrete action or specification. Deletion candidate. h. Noise: empty comment, repeated punctuation, or whitespace. Deletion candidate.

    Done when: every comment has a category assignment.

  4. For each deletion candidate that would leave the code less readable, draft one structural alternative: rename a variable or function to make the comment redundant, extract a named function or constant to make the intent explicit, add an assertion or test that enforces the same constraint, or introduce a well-named guard clause. Each deletion candidate has either a structural alternative or a delete-only plan. Done when: every deletion candidate has a proposed action.

  5. Present the candidates to the user and require a choice for each one: delete the comment, accept the structural alternative, or retain the comment unchanged. Done when: the user has chosen an action for every deletion candidate.

  6. Write the audit ledger: one row per comment with file, line, text, category, proposed action, and user decision. Done when: the ledger is written with one decision per comment and no unprocessed candidates.

  7. Apply each accepted edit. Before applying an edit to a file, capture its current content in memory. If the edit fails or the result is syntactically invalid, revert that file to the captured content and record the failure in the ledger. Continue to the next file. Done when: all accepted edits are applied and verified, or failed edits are reverted and recorded.

Failure and recovery

Failure classConditionResult
invalid-pathA target path is outside the working directory or unreadableStop before scanning. Report the path.
unsupported-syntaxA file uses a comment syntax not in the supported catalogReport the file and exclude it. Continue with the remaining files.
edit-failureAn edit write or syntax check fails on a fileRevert that file to its captured pre-edit content. Record the failure in the ledger. Continue to the next file.
rollback-failureA revert cannot restore a file to its pre-edit stateStop. Report the file and the inability to recover. Do not continue to other files.
no-targetsNo valid target file paths were suppliedStop. Report the missing input.
ledger-write-failureThe audit ledger cannot be writtenReport the failure. The audit is complete but undelivered; the user has the chat output as a fallback.

Partial-result rule: if edits succeed on some files before a failure, the ledger records the edited set and the failed set separately. Files that were not yet processed are listed as remaining work.

Output

One audit ledger: file, line, text, category, proposed action, and user decision per comment, plus status and remaining work. Accepted edits are applied to source files; failed edits are reverted and recorded.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Use when explaining System V AMD64, ARM AAPCS, RISC-V psABI, stack frames, variadic calls, or FFI register rules. Not for the Rust FFI binding layer: use rust-ffi.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when configuring ADC sampling time, DMA-driven ADC, calibration, or DAC channel setup on bare-metal MCUs. Not for the DMA stream itself: use dma-baremetal.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

af-xdp

免费

Use when creating AF_XDP sockets, configuring UMEM and XSK rings, writing an XDP redirect program, or choosing copy versus zero-copy mode. Not for full kernel bypass: use dpdk.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use engineering-retrospective.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when a redacted, trimmed agent transcript must be appended to a GitHub PR or issue body, with human approval and preview. Not for automated or model-initiated insertion.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

agents-md

免费

Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or pruned. Not for remote, credential, publish, deploy, or irreversible changes.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

查看 OutlineDriven 的全部技能

报告此技能的问题