Token导航 LogoToken导航TokenDH.com
开发权限需确认github未标认证来源可访问许可证需确认审计异常

ai-code-statsai 代码统计

Agent Skill

ai-code-stats 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

245

周安装

10

GitHub Stars

公开资料未说明

下载量

79
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/angellofelf/agent-skill --skill ai-code-stats

简介

统计代码中 AI 生成内容的比例,支持多种提交范围与模式。

  • 可识别 AI 标记并生成个人报告,适用于代码溯源与质量管控。
  • 通过 /ai-stats 命令触发,兼容子命令与完整参数格式。
  • 需确认 Git 历史范围与用户名设置,避免误计非目标变更。
  • ai-code-stats 属于开发类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

技能描述

这是一个用于统计代码中 AI 生成比例的 skill。它支持多种统计模式(最新 commit、暂存区、指定 commit、commit 范围),能够识别 AI 生成的代码标记,并生成详细的个人报告。

触发命令: /ai-stats [command] [options]/aistats [command] [options]

命令用法

子命令模式(推荐)

/ai-stats                              # 默认:统计最新 commit
/ai-stats staged                       # 统计暂存区内容
/ai-stats commit <hash>                # 统计指定 commit
/ai-stats range <hash1>..<hash2>       # 统计 commit 范围

完整参数格式

/ai-stats [command] [commit-hash|range] [task-name] [git-username]

兼容模式(旧用法)

/ai-stats                              # 使用默认 commit message 和 Git 用户名
/ai-stats "用户管理模块"                # 指定需求名,使用默认 Git 用户名
/ai-stats "用户管理模块" aurorayang     # 指定需求名和用户名

子命令详解

1. 最新 Commit 统计(默认)

统计最近一次 commit 的代码变更。

# 基本用法
/ai-stats

# 指定需求名
/ai-stats "用户管理模块"

# 指定需求名和用户名
/ai-stats "用户管理模块" aurorayang

2. 暂存区统计

统计当前暂存区(staged)的代码变更。

# 基本用法
/ai-stats staged

# 指定需求名
/ai-stats staged "用户管理模块"

# 指定需求名和用户名
/ai-stats staged "用户管理模块" aurorayang

3. 指定 Commit 统计

统计特定 commit hash 的代码变更。

# 基本用法
/ai-stats commit abc1234

# 指定需求名
/ai-stats commit abc1234 "用户管理模块"

# 指定需求名和用户名
/ai-stats commit abc1234 "用户管理模块" aurorayang

4. Commit 范围统计

统计两个 commit 之间的所有代码变更。

# 基本用法
/ai-stats range abc1234..def5678

# 指定需求名
/ai-stats range abc1234..def5678 "用户管理模块"

# 指定需求名和用户名
/ai-stats range abc1234..def5678 "用户管理模块" aurorayang

参数说明

参数位置说明默认值
command第1个子命令:stagedcommitrange 或省略省略=最新 commit
commit-hash第2个当 command 为 commit 时的目标 hash-
range第2个当 command 为 range 时的范围,格式 hash1..hash2-
task-name倒数第2个需求/任务名称当前 commit message
git-username最后1个Git 用户名git config user.name

报告命名规则

  • 有需求名:ai-code-report-YYYY-MM-DD-需求名.md
  • 无需求名:ai-code-report-YYYY-MM-DD-HHmmss.md

重复需求处理

  • 相同需求名的报告会自动更新,而不是创建新文件
  • 更新时会保留原文件,更新内容和统计信息

功能特性

  • 多模式支持:最新 commit、暂存区、指定 commit、commit 范围
  • 自动检测代码变更
  • 识别 AI 生成代码标记(@ai-generated@ai-generated-start/end
  • 统计 AI 生成代码与人工编写代码的比例
  • 生成个人专属报告(按登录用户名分类存储)
  • 支持多种文件类型(.ts,.tsx,.js,.jsx,.mpx,.vue 等)

执行流程

1. 解析命令参数

  • 识别子命令(staged/commit/range)
  • 提取 commit hash 或范围
  • 获取需求名和用户名

2. 获取用户信息

  • 通过 git config user.name 获取当前 Git 用户名
  • 作为报告存储目录名称

3. 收集代码变更

根据模式选择不同的 Git 命令:

  • 最新 commit: git show --numstat HEAD
  • 暂存区: git diff --cached --numstat
  • 指定 commit: git show --numstat <hash>
  • Commit 范围: git diff --numstat <range>

4. 识别 AI 生成代码

  • 扫描文件头部的 @ai-generated 标记
  • 扫描文件中的 @ai-generated-start@ai-generated-end 标记
  • 统计 AI 生成的代码行数

5. 计算统计数据

  • 总变更文件数
  • 总新增行数 / 总删除行数
  • AI 生成文件数 / AI 生成行数
  • AI 代码占比(按文件数和行数分别计算)

6. 生成个人报告

  • 报告路径: {project-root}/AI-Generate/{username}/
  • 文件名格式: ai-code-report-{YYYY-MM-DD-需求名}.md
  • 内容包含:

- 本次提交统计摘要 - AI 生成代码详细清单 - 文件级别统计 - 历史累计统计(如存在历史报告)

报告内容结构

# AI 代码生成统计报告

**生成时间**: YYYY-MM-DD HH:mm:ss
**统计人**: {username}
**提交哈希**: {commit-hash}
**提交信息**: {commit-message}

---

## 统计摘要

| 指标 | 数值 |
|------|------|
| 变更文件总数 | {n} |
| 新增代码行数 | {n} |
| 删除代码行数 | {n} |
| AI 生成文件数 | {n} |
| AI 生成代码行数 | {n} |
| **AI 代码占比** | **{x}%** |

---

## AI 生成文件清单

### 新增文件(AI 生成)

| 序号 | 文件路径 | 类型 | AI 生成行数 |
|------|----------|------|-------------|
| 1 | `src/...` | TypeScript | 150 |

### 修改文件(含 AI 生成部分)

| 序号 | 文件路径 | AI 生成行数 | 修改说明 |
|------|----------|-------------|----------|
| 1 | `src/...` | 45 | 新增函数 |

---

## 文件详细统计

### {文件路径}
- 文件类型: {type}
- 新增行数: {n}
- 删除行数: {n}
- AI 生成行数: {n}
- AI 占比: {x}%

---

## 历史累计统计

| 指标 | 本次 | 累计 | 总计 |
|------|------|------|------|
| 提交次数 | 1 | {n} | {n} |
| AI 生成文件数 | {n} | {n} | {n} |
| AI 生成代码行数 | {n} | {n} | {n} |

---

*报告由 AI Code Stats Skill 自动生成*

使用方法

手动触发

# 默认:统计最新 commit
/ai-stats

# 统计暂存区
/ai-stats staged

# 统计指定 commit
/ai-stats commit abc1234

# 统计 commit 范围
/ai-stats range abc1234..def5678

# 指定需求名和用户名
/ai-stats commit abc1234 "用户管理模块" aurorayang

作为 pre-commit hook

可以在 .git/hooks/pre-commit 中添加:

#!/bin/bash
# 调用 AI 代码统计
echo "正在统计 AI 生成代码..."
node .lingma/skills/ai-code-stats/ai-code-stats.js staged

直接运行脚本

# 最新 commit
node .lingma/skills/ai-code-stats/ai-code-stats.js

# 暂存区
node .lingma/skills/ai-code-stats/ai-code-stats.js staged

# 指定 commit
node .lingma/skills/ai-code-stats/ai-code-stats.js commit abc1234

# commit 范围
node .lingma/skills/ai-code-stats/ai-code-stats.js range abc1234..def5678

# 完整参数示例
node .lingma/skills/ai-code-stats/ai-code-stats.js commit abc1234 "用户管理模块" aurorayang

AI 代码标记识别规则

1. 完整 AI 生成文件标记

/**
 * @ai-generated
 * @date 2024-01-15
 * @description 用户管理模块
 */

2. 部分 AI 生成代码标记

// @ai-generated-start
// 这部分代码由 AI 生成
function autoGenerated() {
  // ...
}
// @ai-generated-end

输出示例

控制台输出

🔍 AI 代码统计
================
统计人: zhangsan
需求名称: 用户管理模块 (命令行指定)

📋 模式: 指定 Commit 检查 (abc1234)
变更文件: 5 个
新增行数: 320 行
删除行数: 45 行

🤖 AI 生成统计
================
AI 生成文件: 2 个
AI 生成行数: 180 行
AI 代码占比: 56.3%

📄 报告已生成
================
模式: 新建报告
路径: AI-Generate/zhangsan/ai-code-report-2024-01-15-用户管理模块.md

报告存储结构

{project-root}/
└── AI-Generate/
    ├── zhangsan/
    │   ├── ai-code-report-2024-01-15-143022.md
    │   ├── ai-code-report-2024-01-16-092145.md
    │   └── summary.md (累计统计)
    ├── lisi/
    │   └── ai-code-report-2024-01-15-161530.md
    └── ...

技术实现

使用的 Git 命令

最新 Commit 模式

git show --numstat --format= HEAD
git show HEAD -- "{file}"

暂存区模式

git diff --cached --numstat
git diff --cached -- "{file}"

指定 Commit 模式

git show --numstat --format= {hash}
git show {hash} -- "{file}"

Commit 范围模式

git diff --numstat {hash1}..{hash2}
git diff {hash1}..{hash2} -- "{file}"

通用命令

# 获取当前用户名
git config user.name

# 获取即将提交的 commit 信息
git log -1 --pretty=format:%s HEAD

# 获取暂存区 tree hash
git write-tree

文件检测逻辑

  1. 根据模式选择对应的 Git 命令获取变更
  2. 读取每个变更文件的内容
  3. 检查文件头部是否包含 @ai-generated 标记
  4. 扫描文件内容中的 @ai-generated-start@ai-generated-end 标记对
  5. 计算标记范围内的代码行数
  6. 累加得到 AI 生成代码总行数

配置选项

支持的文件类型

  • .ts - TypeScript
  • .tsx - TypeScript React
  • .js - JavaScript
  • .jsx - JavaScript React
  • .mpx - MPX 小程序框架
  • .vue - Vue 单文件组件
  • .less / .scss / .css - 样式文件
  • .json - JSON 文件
  • .md - Markdown 文件

排除路径

以下路径的文件会被自动排除:

  • node_modules/
  • dist/
  • build/
  • .git/
  • .lingma/
  • AI-Generate/(避免自引用)

注意事项

  1. 模式选择

- staged 模式检查暂存区内容,适合 pre-commit 场景 - commit 模式检查已提交的特定 commit - range 模式适合统计一个功能分支的所有变更

  1. 确保 Git 配置正确:需要正确设置 user.name 才能生成个人报告
  2. 标记必须规范:AI 生成代码需要按照规范添加标记才能被正确识别
  3. 报告不会自动提交:生成的报告文件需要手动添加到暂存区
  4. 重复统计防护

- 相同 commit hash 不会重复生成报告 - 相同文件内容(blob hash)不会重复统计

版本历史

v1.2.0

  • 新增子命令支持:stagedcommitrange
  • 支持统计指定 commit 的代码
  • 支持统计 commit 范围的代码
  • 优化参数解析逻辑,兼容旧用法

v1.1.0

  • 新增用户名参数支持
  • 支持 /ai-stats [task-name] [username] 格式
  • 不传参数时默认使用 Git 用户名

v1.0.0

  • 初始版本
  • 支持暂存区 AI 代码统计
  • 生成个人专属报告
  • 支持历史累计统计

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

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

平台分布

Codex

37.84%
按下载量换算30

Claude

26.2%
按下载量换算21

Cursor

17.35%
按下载量换算14

Gemini CLI

8.72%
按下载量换算7

安全审计

Gen Agent Trust Hub

未通过

Socket

通过

Snyk

通过

权限和风险

权限需确认

当前来源未能明确判断权限范围,默认进入异常复核队列。

安装前确认

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

来源信息

继续浏览同类 Skills