code-debt
Surface code-level debt — TODO/FIXME markers, deprecated APIs, dead code, oversized units, magic numbers. Use when reviewing a module, planning cleanup work, or before a release. Not a linter — observes patterns and assesses impact.
What this skill does
# Code Debt Surface code-level debt and understand what it's costing the project. ## Philosophy > "What does our code still owe us that we haven't paid?" Every TODO is a promise. Every deprecated call is a migration the team chose to defer. Every commented-out block is a decision someone hasn't made. Code-debt names those debts so the team can decide which to pay. Not a linter. A linter asks "does this match a rule?" This skill asks "what have we left unfinished, and what's it costing us?" ## Scope The user may specify a file path, glob pattern, or directory. If not specified, ask: *"Which path or module would you like to analyze?"* ## Config Integration Follow the migration preflight in `references/config-migration.md`. After preflight, read `.assistant-config.md` for: - **Debt Scope** overrides (`code-debt.max-function-lines`, etc.) - **Acknowledged Debt** entries for this dimension (skip these) - **Architecture Principles** (optional context for judgment) If no config exists, use heuristic defaults from `references/code-debt-patterns.md`. ## Stack Detection Glob for manifest files to infer language conventions: - `package.json` → JavaScript/TypeScript - `pyproject.toml` / `requirements.txt` → Python - `Gemfile` → Ruby - `go.mod` → Go - `Cargo.toml` → Rust Show detected stack in the output header. If unclear, proceed with language-agnostic patterns only. ## Process ### 1. Understand context Read a representative file or two from the scope to understand the codebase's style. Note whether the project already tracks debt in comments (e.g. `TODO(#1234)` with issue refs) — those are tracked items, not untracked debt. ### 2. Scan Use Grep for each pattern category. See `references/code-debt-patterns.md` for the full list. Collect raw findings with `file:line` locations. For **rename/identifier drift**, scan the whole project tree — not just source. Config files, `.gitignore`, agent definitions, CI configs, and docs commonly hold the old name after a source-only rename. The point of this check is the blast radius. ### 3. Group by location Organize findings by module/directory, not by pattern type. A file with a TODO, a deprecated import, and a magic number is one location with three findings — not three scattered items. ### 4. Assess impact For each location group, judge: - **Impact** (H/M/L): does this debt block changes, risk bugs, or just offend taste? - **Effort** (S/M/L): roughly how much work to pay it down? - **Priority** (P2/P3/P4): feed into triage via `/triage`. ## Reference - `references/code-debt-patterns.md` — what counts, what doesn't - `references/debt-output-format.md` — required output format - `references/config-migration.md` — config migration preflight ## Output format Follow `references/debt-output-format.md` exactly. The umbrella skill parses this format. ## What Makes This Different From a Linter A linter would flag every TODO as noise. This skill: 1. Sees patterns — one tracked TODO vs. ten untracked ones in the same file 2. Assesses impact — a magic number in a config is different from one in an auth check 3. Groups by location — three debts in one module is a hotspot, not three separate items 4. Produces triage-ready output — each location comes with suggested impact/effort/priority, ready for `/triage` or pasting into a tracker The value is **judgment**, not detection.
Related in Productivity
gitea-workflow
IncludedOrchestrate agile development workflows for Gitea repositories using the tea CLI. Use when working with Gitea-hosted repos and asking to 'run the workflow', 'continue working', 'what's next', 'complete the task cycle', 'start my day', 'end the sprint', 'implement the next task', or wanting guided step-by-step development assistance. Keywords: workflow, orchestrate, agile, task cycle, sprint, daily, implement, review, PR, standup, retrospective, gitea, tea.
microsoft-graph-gateway
IncludedRoute Microsoft Graph work in this workspace. Use when users want to read or write Outlook mail, calendar events, contacts, OneDrive or SharePoint files, Teams, Planner, To Do, users, groups, directory data, or arbitrary Microsoft Graph endpoints from VS Code. Prefer WorkIQ for common read scenarios. Use Microsoft Graph for write actions and gap-read scenarios that need exact Graph properties, filters, permissions, or endpoints.
copilotkit
IncludedUse when building with CopilotKit — setup, development, integrations, debugging, upgrading, or contributing. Routes to the appropriate specialized skill based on the task.
wordly-wisdom
IncludedProvides calibrated decision analysis using Charlie Munger-style multiple mental models, inversion, incentive mapping, circle-of-competence checks, misjudgment audits, second-order effects, and forecast updates. Use when the user asks for an oracle take, a hard call, a decision memo, a premortem, an outside view, a red-team, a sanity-check, what am I missing, think this through, or wants a strategy, hire, investment, plan, product, partnership, or major life choice analysed. Avoid for simple factual lookups or time-sensitive legal, medical, or market questions without fresh evidence.
swain-session
IncludedSession management and project status dashboard. Owns the full session lifecycle (start/work/close/resume), focus lane, bookmarks, worktree detection, and tab naming. Also serves as the project status dashboard — shows active epics, progress, actionable next steps, blocked items, tasks, GitHub issues, and recommendations. Worktree creation is deferred to swain-do task dispatch (SPEC-195). Triggers on: 'session', 'status', 'what's next', 'dashboard', 'overview', 'where are we', 'what should I work on', 'show me priorities', 'bookmark', 'focus on', 'session info'.
gandi
IncludedComprehensive Gandi domain registrar integration for domain and DNS management. Register and manage domains, create/update/delete DNS records (A, AAAA, CNAME, MX, TXT, SRV, and more), configure email forwarding and aliases, check SSL certificate status, create DNS snapshots for safe rollback, bulk update zone files, and monitor domain expiration. Supports multi-domain management, zone file import/export, and automated DNS backups. Includes both read-only and destructive operations with safety controls.