원클릭으로
papercuts
Scan codebase for small code hygiene wins — TODOs, dead code, naming issues. General-purpose tool for any project.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Scan codebase for small code hygiene wins — TODOs, dead code, naming issues. General-purpose tool for any project.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
SwiftUI iOS/macOS 27 delta reference (WWDC 2026) — Apple-authored references vendored from Xcode 27's exported agent skills, plus Cal SDK-verified extras. Use for any SwiftUI work targeting SDK 27. Use when a SwiftUI view using @State fails to compile with "used before being initialized", "invalid redeclaration of synthesized property", or "extraneous argument label" errors after an SDK update (@State became a macro in SDK 27 — the obvious fix of reordering init assignments is WRONG; consult references/state-macro.md first); when @ViewBuilder/@ContentBuilder code hits ambiguous overloads in overlay/background or type-check regressions; when adding drag-to-reorder to any container via reorderable()/reorderContainer; when working with AsyncImage caching or AsyncImage(request:); when adding swipe actions to rows outside List via swipeActionsContainer(); when controlling toolbar overflow (visibilityPriority, ToolbarOverflowMenu, toolbarMinimizeBehavior); when presenting alert/confirmationDialog from an optional i
iOS/macOS/iPadOS 27 framework reference (WWDC 2026). Corrects stale model knowledge about App Intents, App Schemas, Foundation Models, and Siri AI. Invoke when building or reviewing iOS 27 / WWDC 2026 features, or when a model assumes iOS 26 / SiriKit is current.
Apple Liquid Glass (iOS 26, refined in 27) design system reference. Invoke when building UI, reviewing visual design, or implementing glass effects, background extension, tab bar minimize, typography, spacing, animations, or accessibility.
Advance the pipeline - find and execute next step
Project setup - scan codebase, create Cal structure, generate or improve CLAUDE.md
Context preservation - route learnings to cal.md (permanent) or memories/ (ephemeral)
| name | papercuts |
| description | Scan codebase for small code hygiene wins — TODOs, dead code, naming issues. General-purpose tool for any project. |
Purpose: Find and optionally fix small code quality issues that individually aren't worth a ticket but collectively degrade the codebase.
| Mode | Command | Behavior |
|---|---|---|
| Scan (default) | /cal:papercuts | Report findings only |
| Fix | /cal:papercuts fix | Auto-fix with per-item approval |
Papercuts scans for code hygiene only — safe, language-agnostic patterns:
Search for unresolved markers:
Grep: TODO|FIXME|HACK|XXX|TEMP|WORKAROUND
Report: file, line, full comment text.
Search for common dead code patterns:
Grep: // unused|// deprecated|// old|// remove|// delete
Grep: #if false|#if 0
For languages with import analysis:
import statements for unused frameworksLook for naming pattern violations within each file:
btn and button in the same scope)Grep: catch\s*\{?\s*\}|catch\s*\(\s*_|// swallow|// ignore
*.swift, *.ts, *.py, etc.)## Papercuts Report
**Project:** [directory name]
**Scanned:** [N files across M categories]
**Findings:** [total count]
### TODOs / FIXMEs ([count])
| File | Line | Text |
|------|------|------|
| [path] | [line] | [comment text] |
### Dead Code ([count])
| File | Line | Indicator |
|------|------|-----------|
| [path] | [line] | [what suggests it's dead] |
### Naming Issues ([count])
| File | Line | Issue |
|------|------|-------|
| [path] | [line] | [what's inconsistent] |
### Error Swallowing ([count])
| File | Line | Pattern |
|------|------|---------|
| [path] | [line] | [what's swallowed] |
When invoked with fix:
[Category] [file:line]
[description]
Fix? (yes / no / skip all in category)
cal/memories/papercuts-fixed.md to avoid re-reportingFix mode requires per-item approval. Papercuts never auto-fixes without asking. This is architectural, not aspirational — the scan/fix separation enforces it.
Papercuts scans the current project directory (the codebase Cal is managing), not Cal's own files. It's a general-purpose tool that works on any project.