欢迎回来

登录 EAKE AI,继续您的智能之旅

忘记密码?
还没有账号?立即注册

代码库检查

代码库检查

使用 pygount 分析仓库的代码行数、语言分布、文件数量和代码/注释比率。

使用场景

  • 用户询问 LOC(代码行数)统计
  • 用户想要仓库的语言分布
  • 用户询问代码库大小或构成
  • 用户想要代码/注释比率
  • 一般性的"这个仓库有多大"问题

前置条件


pip install --break-system-packages pygount 2>/dev/null || pip install pygount

1. 基本摘要(最常用)

获取完整的语言分布,包括文件数量、代码行数和注释行数:


cd /path/to/repo
pygount --format=summary 
  --folders-to-skip=".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,.eggs,*.egg-info" 
  .

重要:始终使用 --folders-to-skip 排除依赖/构建目录,否则 pygount 会遍历它们,可能耗时很长或卡住。

2. 常用文件夹排除

根据项目类型调整:


# Python 项目
--folders-to-skip=".git,venv,.venv,__pycache__,.cache,dist,build,.tox,.eggs,.mypy_cache"

# JavaScript/TypeScript 项目
--folders-to-skip=".git,node_modules,dist,build,.next,.cache,.turbo,coverage"

# 通用兜底
--folders-to-skip=".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,vendor,third_party"

3. 按特定语言过滤


# 仅统计 Python 文件
pygount --suffix=py --format=summary .

# 仅统计 Python 和 YAML
pygount --suffix=py,yaml,yml --format=summary .

4. 详细的逐文件输出


# 默认格式显示每个文件的明细
pygount --folders-to-skip=".git,node_modules,venv" .

# 按代码行数排序(通过 sort 管道)
pygount --folders-to-skip=".git,node_modules,venv" . | sort -t$'t' -k1 -nr | head -20

5. 输出格式


# 摘要表格(默认推荐)
pygount --format=summary .

# JSON 输出(程序化使用)
pygount --format=json .

# 管道友好格式:语言、文件数、代码、文档、空行、字符串
pygount --format=summary . 2>/dev/null

6. 解读结果

摘要表格列含义:

  • Language——检测到的编程语言
  • Files——该语言的文件数量
  • Code——实际代码行数(可执行/声明式)
  • Comment——注释或文档行
  • %——占总量的百分比

特殊伪语言:

  • __empty__——空文件
  • __binary__——二进制文件(图片、编译产物等)
  • __generated__——自动生成的文件(启发式检测)
  • __duplicate__——内容完全相同的文件
  • __unknown__——无法识别的文件类型

注意事项

  • 始终排除 .git, node_modules, venv——不使用 --folders-to-skip,pygount 会遍历所有内容,大型依赖树可能耗时几分钟或卡住。
  • Markdown 显示 0 代码行——pygount 将所有 Markdown 内容归类为注释而非代码。这是预期行为。
  • JSON 文件显示较低的代码计数——pygount 对 JSON 行的计数可能偏保守。精确的 JSON 行数可直接用 wc -l
  • 大型 monorepo——对于非常大的仓库,考虑使用 --suffix 针对特定语言而非扫描全部。

安装指南

复制下方命令,在终端运行即可安装:

# 安装到当前项目
npx skills add codebase-inspection
# 全局安装 — 所有项目可用
npx skills add codebase-inspection -g

使用指南

安装完成后,在对话框中直接使用此技能。

基本信息
作者 Community 分类 coding 难度 Intermediate 时长 1 hour
🛠️ 安装命令
# 安装到当前项目
npx skills add codebase-inspection
# 全局安装
npx skills add codebase-inspection -g

发表评论