configure-dead-code
Dead-code detection: Knip, Vulture, cargo-machete, deadcode. Use when setting up unused-code scanning, migrating tools, or adding dead-code CI checks.
What this skill does
# /configure:dead-code Check and configure dead code detection tools. ## When to Use This Skill | Use this skill when... | Use another approach when... | |------------------------|------------------------------| | Setting up dead code detection for a new project | Running an existing dead code scan (`knip`, `vulture`) | | Auditing whether Knip, Vulture, or cargo-machete is configured correctly | Manually removing specific unused exports or imports | | Migrating between dead code detection tools | Debugging why a specific file is flagged as unused | | Adding dead code checks to CI/CD pipelines | Reviewing dead code findings one by one | | Standardizing dead code detection across a monorepo | Configuring linting rules (`/configure:linting` instead) | ## Context - Project root: !`pwd` - Package files: !`find . -maxdepth 1 \( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' \)` - Knip config: !`find . -maxdepth 1 \( -name 'knip.json' -o -name 'knip.config.*' \)` - Vulture config: !`find . -maxdepth 1 \( -name '.vulture' -o -name 'vulture.ini' \)` - Pre-commit: !`find . -maxdepth 1 -name '.pre-commit-config.yaml'` - Project standards: !`find . -maxdepth 1 -name '.project-standards.yaml'` ## Parameters Parse from command arguments: - `--check-only`: Report compliance status without modifications (CI/CD mode) - `--fix`: Apply fixes automatically without prompting - `--tool <knip|vulture|deadcode|machete>`: Override tool detection **Dead code detection tools:** - **JavaScript/TypeScript**: Knip (finds unused files, exports, dependencies) - **Python**: Vulture or deadcode (finds unused code) - **Rust**: cargo-machete (finds unused dependencies) ## Execution Execute this dead code detection compliance check: ### Step 1: Detect project language and existing tools Check for language and tool indicators: | Indicator | Language | Tool | |-----------|----------|------| | `knip.json` or `knip.config.*` | JavaScript/TypeScript | Knip | | `package.json` with knip | JavaScript/TypeScript | Knip | | `pyproject.toml` [tool.vulture] | Python | Vulture | | `.vulture` or `vulture.ini` | Python | Vulture | | `Cargo.toml` | Rust | cargo-machete | Use WebSearch or WebFetch to verify latest versions before configuring. ### Step 2: Analyze current configuration For the detected tool, check configuration completeness: **Knip:** - [ ] Config file exists (`knip.json` or `knip.config.*`) - [ ] Entry points configured - [ ] Ignore patterns set - [ ] Plugin configurations - [ ] Workspace support (monorepo) - [ ] CI integration **Vulture:** - [ ] Configuration file exists - [ ] Minimum confidence set - [ ] Paths configured - [ ] Ignore patterns - [ ] Allowlist file (if needed) **cargo-machete:** - [ ] Installed as cargo subcommand - [ ] Workspace configuration - [ ] CI integration ### Step 3: Generate compliance report Print a formatted compliance report: ``` Dead Code Detection Compliance Report ====================================== Project: [name] Language: [TypeScript | Python | Rust] Tool: [Knip 5.x | Vulture 2.x | cargo-machete 0.6.x] Configuration: Config file knip.json [EXISTS | MISSING] Entry points configured [CONFIGURED | AUTO-DETECTED] Ignore patterns node_modules, dist [CONFIGURED | INCOMPLETE] Plugin support enabled [ENABLED | N/A] Detection Scope: Unused files enabled [ENABLED | DISABLED] Unused exports enabled [ENABLED | DISABLED] Unused dependencies enabled [ENABLED | DISABLED] Unused types enabled [ENABLED | DISABLED] Scripts: dead-code command package.json scripts [CONFIGURED | MISSING] Integration: Pre-commit hook .pre-commit-config.yaml [OPTIONAL | MISSING] CI/CD check .github/workflows/ [CONFIGURED | MISSING] Overall: [X issues found] ``` If `--check-only`, stop here. ### Step 4: Configure dead code detection (if --fix or user confirms) Apply configuration based on detected language. Use templates from [REFERENCE.md](REFERENCE.md): 1. **Install tool** (e.g., `bun add --dev knip`, `uv add --group dev vulture`) 2. **Create config file** with entry points, exclusions, and plugins 3. **Add scripts** to package.json or create run commands 4. **Add CI workflow step** (warning mode, not blocking) ### Step 5: Update standards tracking Update `.project-standards.yaml`: ```yaml standards_version: "2025.1" last_configured: "[timestamp]" components: dead_code: "2025.1" dead_code_tool: "[knip|vulture|deadcode|machete]" dead_code_ci: true ``` ### Step 6: Print final report Print a summary of changes applied, run an initial scan if possible, and provide next steps for reviewing findings. For detailed configuration templates and usage examples, see [REFERENCE.md](REFERENCE.md). ## Agentic Optimizations | Context | Command | |---------|---------| | Quick compliance check | `/configure:dead-code --check-only` | | Auto-fix all issues | `/configure:dead-code --fix` | | Run Knip scan (JS/TS) | `npx knip --reporter compact` | | Run Vulture scan (Python) | `vulture . --min-confidence 80` | | Run cargo-machete (Rust) | `cargo machete` | | CI mode (JSON output) | `npx knip --reporter json` | ## Flags | Flag | Description | |------|-------------| | `--check-only` | Report status without offering fixes | | `--fix` | Apply all fixes automatically without prompting | | `--tool <tool>` | Override tool detection (knip, vulture, deadcode, machete) | ## Examples ```bash # Check compliance and offer fixes /configure:dead-code # Check only, no modifications /configure:dead-code --check-only # Auto-fix with Knip /configure:dead-code --fix --tool knip ``` ## Error Handling - **No language detected**: Cannot determine appropriate tool, error - **Tool installation fails**: Report error, suggest manual installation - **Configuration conflicts**: Warn about multiple tools, suggest consolidation - **High number of findings**: Suggest starting with allowlist ## See Also - `/configure:linting` - Configure linting tools - `/configure:all` - Run all compliance checks - **Knip documentation**: https://knip.dev - **Vulture documentation**: https://github.com/jendrikseipp/vulture - **cargo-machete documentation**: https://github.com/bnjbvr/cargo-machete
Related in Cloud & DevOps
appbuilder-action-scaffolder
IncludedCreate, implement, deploy, and debug Adobe Runtime actions with consistent layout, validation, and error handling. Use this skill whenever the user needs to add actions to an App Builder project, understand action structure (params, response format, web/raw actions), configure actions in the manifest, use App Builder SDKs (State, Files, Events, database), deploy and invoke actions via CLI, debug action issues, or implement patterns such as webhook receivers, custom event providers, journaling consumers, large payload redirects, action sequence pipelines, and Asset Compute workers. Also trigger when users mention serverless functions in Adobe context, action logging, IMS authentication for actions, or cron-style scheduled actions.
orchestrating-datacloud
IncludedSalesforce Data Cloud product orchestrator for connect→prepare→harmonize→segment→act workflows. Use this skill when the user needs a multi-step Data Cloud pipeline, cross-phase troubleshooting, or data space and data kit management. TRIGGER when: user needs a multi-step Data Cloud pipeline, asks to set up or troubleshoot Data Cloud across phases, manages data spaces or data kits, or wants a cross-phase sf data360 workflow. DO NOT TRIGGER when: work is isolated to a single phase (use the matching phase-specific skill), the task is STDM/session tracing/parquet telemetry (use observing-agentforce), standard CRM SOQL (use querying-soql), or Apex implementation (use generating-apex).
github-project-automation
IncludedAutomate GitHub repository setup with CI/CD workflows, issue templates, Dependabot, and CodeQL security scanning. Includes 12 production-tested workflows and prevents 18 errors: YAML syntax, action pinning, and configuration. Use when: setting up GitHub Actions CI/CD, creating issue/PR templates, enabling Dependabot or CodeQL scanning, deploying to Cloudflare Workers, implementing matrix testing, or troubleshooting YAML indentation, action version pinning, secrets syntax, runner versions, or CodeQL configuration. Keywords: github actions, github workflow, ci/cd, issue templates, pull request templates, dependabot, codeql, security scanning, yaml syntax, github automation, repository setup, workflow templates, github actions matrix, secrets management, branch protection, codeowners, github projects, continuous integration, continuous deployment, workflow syntax error, action version pinning, runner version, github context, yaml indentation error
sf-datacloud
IncludedSalesforce Data Cloud product orchestrator for connect→prepare→harmonize→segment→act workflows. TRIGGER when: user needs a multi-step Data Cloud pipeline, asks to set up or troubleshoot Data Cloud across phases, manages data spaces or data kits, or wants a cross-phase `sf data360` workflow. DO NOT TRIGGER when: work is isolated to a single phase (use the matching sf-datacloud-* skill), the task is STDM/session tracing/parquet telemetry (use sf-ai-agentforce-observability), standard CRM SOQL (use sf-soql), or Apex implementation (use sf-apex).
fabric-cli
IncludedUse this skill for Fabric.so CLI workflows with the `fabric` terminal command: diagnose/install/login, search or browse a Fabric library, save notes/links/files, create folders, ask the Fabric AI assistant, manage tasks/workspaces, generate shell completion, check subscription usage, produce JSON output, and use Fabric as persistent agent memory. Do not use for Microsoft Fabric/Azure/Power BI `fab`, Daniel Miessler's Fabric framework, Python Fabric SSH, Fabric.js, or textile/fashion fabric.
lark
IncludedLark/Feishu CLI skills: lark-cli operations for docs, markdown, sheets, base, calendar, im, mail, task, okr, drive, wiki, slides, whiteboard, apps, approval, attendance, contact, vc, minutes, event. Use when the user needs to operate Lark/Feishu resources via lark-cli, send messages, manage documents, spreadsheets, calendars, tasks, OKRs, deploy web pages, or any Feishu/Lark workspace operations.