Papercuts

作者 every-app89e5a00717cd无许可证22K 个星标收录于 2026年10月8日更新于 2026年10月8日仓库今天更新

Log genuine, recurring repository friction to .agents/PAPERCUTS.md — confusing setup, a flaky repo command or script, a misleading in-repo error, stale generated files, or a non-obvious gotcha that will cost the next contributor time. Also use to review, deduplicate, and resolve existing entries. Gate hard before logging: only friction the repository itself can fix counts. Never log the agent's own sandbox/permission errors, shell-scripting mistakes, transient flakiness, or third-party tool quirks the repo can't change.

AI 生成的概览

将反复出现且可由仓库修复的贡献者摩擦记录到 .agents/PAPERCUTS.md,并审查、去重或解决已有条目。

功能
把细小且反复出现的仓库摩擦——令人困惑的安装配置、不稳定的仓库命令、仓库内误导性报错、过期的生成文件、不易察觉的坑——以带时间戳的未勾选条目记录在 .agents/PAPERCUTS.md 的 Open 小节下。它采用两个问题的门槛(任何人可复现、仓库可修复),并排除沙箱、shell、偶发和第三方噪音。在被要求时,它还会审查、去重、排定优先级并解决条目,把已修复的移入 Resolved 小节。
适用场景
当贡献者遇到真实的仓库摩擦,且换一个人在全新检出上也会遇到、仓库本身又能修复时使用。当被要求审查、去重、排定优先级或清理现有 papercuts 日志时也使用。
运行要求
不含脚本,仅为说明。它读写仓库文件 .agents/PAPERCUTS.md,因此需要对工作仓库的文件访问权限。

Papercuts

Capture small friction in the moment without derailing the current task. Aggregated entries show where the repository needs sanding down — so the bar is that a different contributor would hit the same thing, and the repository can do something about it.

The two-question test

Log it only if both are true:

  1. Reproducible for anyone. A different person, on a fresh checkout, working in this repo would hit the same friction. It is not specific to your sandbox, shell config, machine, network, or a one-time hiccup.
  2. Fixable in the repo. A change to the repo's code, config, scripts, or docs would prevent or reduce it.

If either answer is "no," push through it and move on — do not log it.

Do NOT log

  • Your environment's failures. Sandbox EPERM / listen / IPC-socket errors, blocked network or fetch failed, permission denials, missing system tools. That is the runner, not the repo.
  • Your own shell mistakes. Reserved or special variable names (status, path), unquoted globs, a broken login-shell hook. Fix the command — there is nothing in the repo to sand down.
  • Transient flakiness. A command that succeeded on retry with no repo-side cause (a network blip, a hung push, a slow mirror).
  • Local state you corrupted. A partial node_modules after branch-switching, a stale dev-server port, a dirty cache. Re-run the install or cleanup.
  • Third-party or beta-tool limitations the repo can't change — unless the fix is a repo-side workaround worth writing down (then log that workaround).
  • Product or code correctness bugs (fix now or track as real work), and what you accomplished (that belongs in the task summary).
  • Secrets, credentials, personal data, raw customer payloads, or sensitive paths.

When something fails, first ask "is this the repo, or is this me/my environment?" Only the former is a papercut.

Log proactively

  1. Search .agents/PAPERCUTS.md for an equivalent entry and avoid duplicates.

  2. Append one unchecked item under ## Open using this format:

    markdown
    - [ ] `YYYY-MM-DDTHH:MM:SSZ` — `agent` — <friction, and the smallest useful fix or workaround>.
  3. Keep it to one or two sentences: a current example (command/error or affected path), who it blocks or what time it wastes, and the smallest useful repo-side fix. Lead with the friction, not with what you were doing.

  4. Continue the original task. Do not expand a papercut into unrelated work.

Use UTC timestamps and a short agent label (codex, claude, human). Add a PR or task identifier only when it helps future triage.

Review or resolve

Only mine a whole session or do a broad review when the user explicitly asks.

For a review or prioritization request, inspect and recommend; do not edit the log or implement fixes unless the user also asks for cleanup or implementation. Carry out an authorized cleanup using the same triage:

  1. Re-run the two-question test on every open entry; recommend removing entries that fail it (environment/shell/flake noise that slipped in).
  2. Deduplicate and group related entries.
  3. Check whether each surviving papercut still reproduces. Distinguish reproduced failures, source inspection, and historical reports you could not verify.
  4. Prioritize current impact against review and maintenance cost. Prefer an existing command or a short documentation fix over new helpers, dependencies, or setup hooks. Defer hypothetical improvements until a concrete need appears.
  5. For an authorized cleanup, remove noise, consolidate duplicates, and implement the agreed fixes. Move fixed items to ## Resolved, check them, and append the resolving date or commit. Keep deferred reports separate from actionable open work, with a reason and a concrete trigger to revisit. Route real bugs to normal issue/fix work; route recurring review-policy gaps to docs/maintainers/review-guidelines.md.

Preserve useful history for genuinely-resolved papercuts; do not delete them merely to make the file shorter. (Noise that never belonged — see step 1 — is different: remove it.)

来源与署名

来源:every-app/open-seo位于.agents/skills/papercuts提交89e5a00

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架