Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

tl-knip特尔克尼普

Agent Skill

tl-knip 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

259

周安装

11

GitHub Stars

公开资料未说明

下载量

91
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:tl-knip(特尔克尼普)
来源仓库:https://github.com/toddlevy/tl-agent-skills
仓库路径:skills/tl-knip
安装命令:
npx skills add https://github.com/toddlevy/tl-agent-skills --skill tl-knip
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/toddlevy/tl-agent-skills --skill tl-knip

简介

tl-knip 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。

  • 适用于研究检索类任务,可结合来源仓库和原始 README 核验具体用法。
  • 通过 npx skills add 命令从 GitHub 安装,支持主流 AI 宿主环境。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • tl-knip 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Knip: Dead Code Detection & Removal

Knip finds unused files, dependencies, and exports across TypeScript and JavaScript projects. It understands your project's entry points, plugin ecosystem, and module graph — reporting only real dead code, not false positives.

What Knip detects:

  • Unused files (not imported anywhere in the module graph)
  • Unused npm dependencies and devDependencies
  • Unused exports, types, enum members, and class members
  • Barrel file re-exports that are never consumed externally
  • Duplicate exports across files

Suite

This is a standalone skill with no related suite members.

When to Use

Agent triggers — activate this skill when the user says:

  • "Find dead code in this project"
  • "Clean up unused dependencies"
  • "Why is this export showing as unused?"
  • "Set up Knip for this monorepo"
  • "Add Knip to CI"
  • "Our barrel files are causing false positives"
  • "How do I ignore this export?"
  • Anything about unused imports, orphaned files, or dependency hygiene

Resources

Load these on demand when the user's question goes deeper than SKILL.md covers:


Quick Commands

npx knip                              # Full analysis
npx knip --production                 # Production code only (excludes tests/devDeps)
npx knip --dependencies               # Only unused deps — fastest CI check
npx knip --exports                    # Only unused exports
npx knip --files                      # Only unused files
npx knip --fix                        # Auto-remove safe issues
npx knip --fix --allow-remove-files   # Auto-remove including file deletion
npx knip --reporter json              # JSON output for tooling/CI
npx knip --reporter compact           # Compact human-readable output
npx knip --workspace packages/api     # Specific monorepo workspace only

Debug commands:

npx knip --debug                           # Full config resolution + entry point trace
npx knip --trace-file src/utils.ts         # Why is this file included/excluded?
npx knip --trace-export myFunction         # Why is this export flagged?

Configuration-First Workflow

Always configure before acting on reported issues. Cleaning up issues before fixing configuration causes churn — removed items may be re-flagged or real issues masked.

Step 1 — Understand the project

  • Check package.json for frameworks, test runners, build tools
  • Look for existing Knip config: knip.json, knip.jsonc, knip.ts, or "knip" key in package.json
  • Review existing config for problems before running

Step 2 — Run and read configuration hints first

npx knip

Configuration hints appear at the top of output before issue lists. Address these first — they identify missing entry points, unrecognized plugins, and path alias gaps that cause false positives.

Step 3 — Adjust config to eliminate false positives

Common adjustments:

SymptomFix
Config file flagged as unused (e.g. vite.config.ts)Explicitly enable/disable that plugin
Exported types flagged despite being usedAdd ignoreExportsUsedInFile: {interface: true, type: true}
Path aliases unresolvedAdd paths matching tsconfig.json
Test files flagging prod importsUse --production instead of ignore patterns
Barrel file exports all flaggedSee references/barrel-files.md

Step 4 — Repeat until hints are resolved

Re-run after each config change. Only address reported issues once hints are gone and false positives are minimal.

Step 5 — Address issues in priority order

  1. Unused files — tackle first; removing files exposes newly-unused exports downstream
  2. Unused dependencies — remove from package.json
  3. Unused devDependencies — remove from package.json
  4. Unused exports — remove export keyword or delete the item
  5. Unused types/interfaces — remove or add ignoreExportsUsedInFile

Step 6 — Re-run and repeat

Each cleanup pass exposes more dead code. Repeat until output is clean or only intentionally-ignored items remain.


Minimal Working Config

{
  "$schema": "https://unpkg.com/knip@latest/schema.json",
  "entry": ["src/index.ts", "src/cli.ts", "scripts/**/*.ts"],
  "project": ["src/**/*.{ts,tsx}", "scripts/**/*.ts"],
  "ignoreDependencies": ["@types/*", "typescript", "tslib"],
  "ignoreExportsUsedInFile": {
    "interface": true,
    "type": true
  }
}

Critical rules:

RuleWhy
Never use ignore patternsHides real issues. Use ignoreDependencies, ignoreExportsUsedInFile, or plugin settings instead
Never exclude test files via ignoreUse --production flag
Don't repeat .gitignore patternsKnip already respects .gitignore
Disable/enable plugins explicitly when neededClearer than ignoring the config file

See references/configuration.md for all options.


Barrel Files

Barrel files (index.ts files that re-export from multiple modules) are the most common source of Knip false positives. Knip tracks whether re-exported items are actually consumed outside the barrel — if nothing imports them externally, they're flagged.

Barrel file patterns and fixes — see references/barrel-files.md.

Quick reference:

{
  "ignoreExportsUsedInFile": true,
  "includeEntryExports": true
}

Tag intentional public API exports with JSDoc:

/** @public */
export const myPublicFunction = () => {};

Agent Cleanup Guidance

When executing a Knip cleanup as an agent, categorize before acting.

Auto-delete without asking

  • Unused internal exports (not in index.ts, lib/, sdk/, or api/ paths)
  • Unused exported types and interfaces
  • Unused npm dependencies (run npm uninstall <pkg>)
  • Clearly orphaned files with no dynamic import possibility

Ask before acting

  • Files that could be entry points or dynamically imported
  • Exports in index.ts, lib/, sdk/, api/, or public/ paths
  • Dependencies that might be used as CLI tools or peer dependencies
  • Anything the user has previously mentioned keeping

Batch all clarifying questions into a single prompt — never ask one at a time.

Re-run loop

Run → Categorize → Auto-delete safe → Ask about uncertain → Re-run → Repeat

Stop when output is clean or only intentional suppressions remain.


CI Integration

name: Knip
on: [push, pull_request]

jobs:
  knip:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 20 }
      - run: npm ci
      - name: Unused dependencies
        run: npx knip --dependencies --max-issues 0
      - name: Unused exports (PRs only)
        if: github.event_name == 'pull_request'
        run: npx knip --exports
CheckWhenRationale
--dependencies --max-issues 0Every pushHigh value, fast, no false positives
--exportsPRsPrevents API surface bloat
--productionPre-releaseFull dead code audit

Issue Type Reference

Issue TypeMeaningAction
Unused fileNot reachable from any entry pointDelete or add to entry
Unused dependencyIn package.json but never importednpm uninstall
Unused exportExported but never imported outside this fileRemove export keyword
Unused typeExported type/interface unused elsewhereRemove or ignoreExportsUsedInFile
Unused enum memberEnum variant never referencedRemove member
Duplicate exportSame name exported from multiple filesConsolidate

References

First-Party Documentation

Related Tools

  • ts-prune — TypeScript-specific unused export finder
  • depcheck — Unused dependency checker
  • unimported — Find unimported files

Pre-commit Integration

# .husky/pre-commit
npx knip --dependencies --max-issues 0

Attribution

Knip (the tool)

This skill documents Knip by webpro-nl.

Knip is © webpro-nl and contributors, licensed under the ISC License. This skill is independent documentation and is not affiliated with or endorsed by the Knip project.

Source skills

This skill synthesizes content from 5 community Knip skills:

SourceAuthorContribution
brianlovin/claude-configBrian LovinConfiguration-first workflow order (configure before acting), the "never use ignore patterns" discipline, and the false-positive symptom/fix table
laurigates/claude-pluginsLauri GatesPlugin ecosystem tables, CI YAML examples, and the troubleshooting structure (false positives → performance → monorepo issues)
artivilla/agents-configArtivillaAgent cleanup guidance: the auto-delete vs ask-first categorization and the re-run loop pattern
knoopx/piknoopxQuick command reference table and the --trace-file / --trace-export debug commands
pproenca/dot-skillsP. ProençaIssue type reference table with Meaning and Action columns

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

32.71%
按下载量换算30

Claude

32.52%
按下载量换算30

Cursor

20.83%
按下载量换算19

Gemini CLI

8.91%
按下载量换算8

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills