Finishing a Development Branch
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
根据 Git 提交时间分析团队工作时段与 996 指标;用于用户要求的工作强度报告. An agent skill from hellodigua/code996.
$ npx skills add hellodigua/code996 --skill code996 -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install hellodigua/code996 code996 --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/hellodigua/code996.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/code996 .claude/skills/code996 && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "code996" agent skill from https://github.com/hellodigua/code996/tree/main/skills/code996 into .claude/skills/code996/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code996", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/hellodigua/code996/tree/main/skills/code996Type this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add hellodigua/code996 --skill code996 -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install hellodigua/code996 code996 --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hellodigua/code996.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/code996 .agents/skills/code996 && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "code996" agent skill from https://github.com/hellodigua/code996/tree/main/skills/code996 into .agents/skills/code996/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code996", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add hellodigua/code996 --skill code996 -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install hellodigua/code996 code996 --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hellodigua/code996.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/code996 .cursor/skills/code996 && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "code996" agent skill from https://github.com/hellodigua/code996/tree/main/skills/code996 into .cursor/skills/code996/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code996", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/hellodigua/code996.git --path skills/code996--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add hellodigua/code996 --skill code996 -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install hellodigua/code996 code996 --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hellodigua/code996.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/code996 .gemini/skills/code996 && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "code996" agent skill from https://github.com/hellodigua/code996/tree/main/skills/code996 into .gemini/skills/code996/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code996", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install hellodigua/code996 code996Installs for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add hellodigua/code996 --skill code996 -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/hellodigua/code996.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/code996 .github/skills/code996 && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "code996" agent skill from https://github.com/hellodigua/code996/tree/main/skills/code996 into .github/skills/code996/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code996", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add hellodigua/code996 --skill code996 -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install hellodigua/code996 code996 --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hellodigua/code996.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/code996 .opencode/skills/code996 && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "code996" agent skill from https://github.com/hellodigua/code996/tree/main/skills/code996 into .opencode/skills/code996/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code996", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
code996根据 Git 提交时间分析团队工作时段与 996 指标;用于用户要求的工作强度报告. An agent skill from hellodigua/code996.
Code996 is an agent skill from hellodigua/code996. 根据 Git 提交时间分析团队工作时段与 996 指标;用于用户要求的工作强度报告。
Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/report-template.md`).
It sits in Development, covering Git workflow. It works with Git. The repository describes itself as: 统计 Git 项目的 commit 时间分布,进而推导出项目的编码工作强度。 Analyzes the commit time distribution of Git projects to infer coding work intensity. The licence is MIT.
Read from SKILL.md and the folder at commit 026954a. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npxgitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx and git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Code996 loads about 2.1k tokens when it runs, and up to ~3.4k if it reads all its reference files. Until then it costs about 13 tokens; SKILL.md has 503 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from hellodigua/code996 at commit 026954a, republished under its MIT licence (© hellodigua). 503 words, ~2,131 tokens.
.claude/skills/code996/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.根据用户请求,调用 code996 采集结构化数据,结合 git log 语义分析和用户口述背景,生成一份面向管理者/团队的叙事化工作强度报告。
从用户请求中提取可选参数,包括仓库路径、时间范围和输出格式。
find、sed、awk、head 等 POSIX 工具。若用户已明确提供一个或多个仓库路径,直接逐个验证。始终引用完整路径:
git -C "<path>" rev-parse --show-toplevel若用户未指定路径,运行 git rev-parse --show-toplevel 检测当前目录:
.git,并排除 node_modules 等依赖目录。根据扫描结果处理:
需要询问时只发送一条消息,并在其中同时收集必要的仓库选择和可选的团队背景。若宿主不支持连续对话且目标存在歧义,列出候选项并明确说明用户需要在下一次请求中指定目标,不要自行猜测或让命令等待输入。
示例询问:
在当前目录下发现多个 Git 仓库,请选择要分析的仓库(可多选或选择全部):
./repo-a./repo-b./repo-c如方便,也可以补充团队规模、是否弹性工作制和约定的每日工时;这些信息可跳过。
用户回复后,保留每个路径的完整文本并逐个验证。选择一个仓库时使用单仓库模式,选择多个或全部时使用多仓库聚合模式。
从用户请求或对话中提取,支持口述转换:
-y 2025-s <6个月前的 YYYY-MM-DD><shared-until>,再用宿主的日期能力向前推 365 天得到 <shared-since>:git -C "<path>" log --no-merges --format="%cd" --date=format:%Y-%m-%d --max-count=1多仓库的每次 code996 调用都必须传入相同的 -s <shared-since> -u <shared-until>。若某个仓库无法取得最后提交日期,记录原因并继续用其他仓库计算;全部失败时才告知用户无法确定共享区间。
从用户请求和既有对话中提取团队规模、是否弹性工作制、约定或法定的每日工时。这些信息用于校准结论,但不是执行分析的必要条件。
优先使用环境中已有且支持 --json 的 code996 命令。先检查命令是否存在,再通过 code996 --help 确认帮助中包含 --json;检查能力时不要读取用户仓库。
若命令不可用、不支持 --json、执行时拒绝该参数或 stdout 不是可解析的 JSON,才使用与本 Skill 对齐的固定版本 npx --yes code996@1.4.0。不要使用 @latest;更新 Skill 所适配的 CLI 版本时,必须同步更新本节全部 npx 命令。在下载或执行后备包之前:
下载等待超过 30 秒且宿主允许发送进度时,告诉用户当前仍在获取 npm 包;不要无提示地反复启动相同命令。网络失败后只报告失败,不连续重试。
不要把可执行命令和参数保存为依赖 shell 字符串拆分的变量。
根据对话语言直接传递 locale:中文使用 --lang zh-CN,英文使用 --lang en。下面以 npx 后备方式为例:
# 单仓库
npx --yes code996@1.4.0 "<path>" --json --lang zh-CN多仓库时,每条命令必须单独执行并立即解析该次 stdout,不要在同一个 shell 调用中连续执行而得到拼接的 JSON:
# 未指定时间时,第一次调用
npx --yes code996@1.4.0 "<path1>" --json --lang zh-CN -s "<shared-since>" -u "<shared-until>"# 未指定时间时,第二次调用
npx --yes code996@1.4.0 "<path2>" --json --lang zh-CN -s "<shared-since>" -u "<shared-until>"# 指定年份
npx --yes code996@1.4.0 "<path>" --json --lang zh-CN -y 2025若使用全局命令,将示例中的 npx --yes code996@1.4.0 替换为 code996。其他时间范围按步骤 1b 添加 -s、-u 或 -y 参数。
多仓库模式下不要在同一次 code996 调用中传入多个路径:当前 CLI 会进入交互式仓库选择并混入进度文本,不适合 Agent 的非交互式 JSON 采集。应为每个仓库分别执行单仓库命令、独立解析 JSON,再基于各仓库结果进行聚合比较。若某个仓库失败,记录失败原因并继续处理其他仓库。
解析 JSON 输出。npm 警告通常写入 stderr,不应混入 JSON;优先使用宿主分别提供的 stdout。若宿主合并 stdout/stderr,只有能无歧义提取出唯一一个完整顶层 JSON 对象时才继续,否则视为采集失败并使用上述后备规则。
提取以下字段用于后续分析:
| 字段 | 用途 |
|---|---|
meta.repos[] / meta.since / meta.until | 仓库路径与实际分析区间 |
core.index996 / core.rating / core.overTimeRatio | 核心指标 |
workTime.startHour / workTime.endHour | 推测上下班时间 |
hourlyDistribution[] | 24 小时提交分布 |
weekdayDistribution[] | 周一至周日分布 |
weekdayOvertime.monday 至 friday / peakCount | 各工作日下班后的提交数 |
weekdayOvertime.peakDay | 下班后提交数最多的星期 |
weekendOvertime.*Days | 周末或休息日活动天数 |
lateNight.evening / lateNight.lateNight | 下班后至 23:00 的活动天数 |
lateNight.midnight / lateNight.dawn | 23:00–05:59 的活动天数 |
lateNight.midnightRate / lateNight.midnightDays | 深夜活动天数占比 / 活动天数 |
trend.summary | 趋势(若有) |
team.contributors[] | 各贡献者加班占比 |
多个单仓库结果中的 core / team | 多仓库横向对比与聚合 |
使用全局 code996 失败时,先按上述规则使用固定版本 npx --yes code996@1.4.0 重试。只有固定版本后备命令仍执行失败(如提交数不足)时,才告知用户原因并停止;多仓库模式则记录该仓库的失败原因并继续其他仓库。
lateNight.evening、lateNight.lateNight、lateNight.midnight 和 lateNight.dawn 均按每天的最晚提交时间归类,单位是“活动天数”,不是提交数、小时数或人次。报告中不得写成“深夜提交 N 次”。
基于步骤 2 的 JSON 数据,识别加班高峰窗口,对同一仓库执行 git log 获取实际 commit message,归纳「加班都在干什么」。
对每个仓库获取 commit hash、带时区的 ISO 时间和 commit message。执行前必须从该仓库对应的 JSON 中读取 meta.since 和 meta.until,作为 code996 实际采用的有效区间;不要继续使用用户原始口述值或未赋值的占位符。
正常默认区间和自定义区间使用:
git -C "<path>" log --no-merges --after="<meta.since>" --before="<meta.until>" --format="%H|||%cI|||%s" --max-count=500若用户使用 --all-time,JSON 中的 meta.since 和 meta.until 会缺失,此时必须同时省略 --after、--before,不能传空字符串或保留字面占位符:
git -C "<path>" log --no-merges --format="%H|||%cI|||%s" --max-count=500始终引用仓库路径,不依赖 POSIX 管道。
--no-merges 必须保留,使定性样本与 code996 定量分析默认排除合并提交的口径一致。
根据 %cI 中保留的提交本地日期、时间和时区进行筛选。先判断本次分析是否启用了中国节假日模式:显式使用 --cn 时直接视为启用;否则优先读取 JSON 的 holidayMode。旧版 JSON 缺少该字段时,再按分析区间内的非合并提交统计时区,将 %cI 的 +08:00 等偏移统一规范化为 +0800 格式,当 +0800 占比不低于 50% 时视为自动启用。
holiday-calendar 数据。可靠意味着能够指出数据来源,并能区分数据中的 public_holiday 与 transfer_workday;会在失败时静默退回普通星期规则的 API 不算可靠。不要为了语义分析另行联网下载日历,除非用户明确同意。holidayMode: true 只表示模式已启用,不证明宿主已经取得可靠日历数据。若无法可靠取得日历:仍可分析不依赖日期类型的 23:00–05:59 样本;跳过工作日晚间与休息日日间语义归因,并在报告中明确说明该限制。不得把调休工作日当作周末加班,或声称已覆盖法定节假日样本。按上述日期类型筛选,使语义样本与 code996 使用的提交时间口径保持一致:
ceil(workTime.endHour) 起至 22:59,最多取最近 50 条。%H 按 commit hash 去重,并核对去重后的提交总数是否与 JSON 的 core.totalCommits 一致。若不一致,说明语义样本未完整覆盖,不要把样本占比表述为全量占比。多仓库时对每个仓库分别执行,再合并归纳。
根据 commit message 将加班内容分类(可能重叠):
给出各类占比估算(基于 message 数量),并列举 2-3 个典型 commit message 作为例证。
参照 references/report-template.md 的章节骨架,将以下数据整合为叙事化报告:
team.contributors[] 中各人加班活动占比,只判断活动是否集中于少数贡献者,不推断“被迫加班”或真实工时core、team 等字段进行横向对比(若适用)贡献者分析遵守以下边界:
--ignore-author。workingHours.isReliable 为 false 或置信度较低时,明确说明时间推测不可靠;不依据 intensityLevel 单独判断个人工作状态。多仓库聚合只使用成功返回的仓库:
core.index996。sum(core.totalCommits × core.overTimeRatio) / sum(core.totalCommits),结果标注为“按提交数加权的估算值”。由于单仓库比例已经四舍五入,该值不是 code996 官方聚合指标。报告风格:有结论(先给定性判断)、有数据支撑(引用具体数字)、有建议(可操作的改进方向)。
若用户已在请求或对话中指明输出格式,直接执行;否则默认在对话中展示完整报告,不再追问。
./code996-report-<日期>.md,日期格式 YYYY-MM-DD。./code996-report-<日期>.html。建议样式:白色背景、系统字体、最大宽度 800px、关键数字高亮显示。lateNight.midnightRate 为 0、weekdayOvertime 周一至周五的提交数合计为 0,且 weekendOvertime.realOvertimeDays 为 0 时,才跳过加班语义分析步骤,说明「未发现明显加班痕迹」。team 字段为 null(如开源项目或 --skip-user-analysis),跳过贡献者对比章节。multiRepo 字段。--lang 参数确保 code996 数据标签语言对齐。schemaVersion 暴露给用户——这是供报告渲染器校验兼容性的内部版本标识。© hellodigua, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in skills/code996 of hellodigua/code996.
Open the folder on GitHubat commit 026954a
Code996 next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Code996 this skillhellodigua/code996 | 2.1k | — | ~2.1k | Automated safety check: Pass | MIT | |
| Finishing a Development Branchobra/superpowers | 296k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Code Design Rationale Investigatorcursor/plugins | 10k | 9 repos | ~2.6k | Automated safety check: Pass | None | |
| Contributor-First PR MergeHKUDS/OpenHarness | 16k | 1 repos | ~847 | Automated safety check: Pass | MIT | |
| Migrate Internal Package into GhostTryGhost/Ghost | 55k | — | ~3.8k | Automated safety check: Pass | MIT | |
| Create Pull Requestcline/cline | 70k | 1 repos | ~1.6k | Automated safety check: Pass | Apache-2.0 |
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
cursor/plugins
Digs into why code is shaped the way it is by checking git history, pull requests and connected tools in parallel, then reporting a cited read on the tradeoffs.
HKUDS/OpenHarness
Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.
TryGhost/Ghost
Moves a package from another TryGhost repository into Ghost as an internal workspace package while keeping its Git history, with checkpoints for the steps that need an administrator.
cline/cline
Opens a GitHub pull request from your current branch with the gh CLI, after reviewing the commits and diff and gathering the details the PR needs.
tailcallhq/forgecode
Resolves Git merge conflicts with a plan-first workflow that keeps both sides' intent, regenerates lock files and backs up deleted-but-modified files.
Works with
Categories
根据 Git 提交时间分析团队工作时段与 996 指标;用于用户要求的工作强度报告. An agent skill from hellodigua/code996. Code996 is an agent skill from hellodigua/code996.
Code996 fits situations like: tasks that involve Git workflow.
Run `npx skills add hellodigua/code996 --skill code996 -a claude-code`. Or copy the skill folder (skills/code996 in hellodigua/code996) into .claude/skills/code996 in your project. Claude Code loads it when a task matches its description.
Run `npx skills add hellodigua/code996 --skill code996 -a codex`. Or copy the skill folder (skills/code996 in hellodigua/code996) into .agents/skills/code996 in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hellodigua/code996 --skill code996 -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/code996, .gemini/skills/code996, .github/skills/code996 and .opencode/skills/code996 in your project.
Going by SKILL.md and its folder, Code996 needs the command-line tools its instructions call (npx and git). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use npx and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Code996 is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.3k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Code996: Finishing a Development Branch (obra/superpowers, 296k stars), Code Design Rationale Investigator (cursor/plugins, 10k stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars) and Migrate Internal Package into Ghost (TryGhost/Ghost, 55k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
hellodigua (a GitHub user) maintains it in hellodigua/code996, which has 2,148 GitHub stars. The repository was last updated on September 12, 2026.
Source: hellodigua/code996 on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.