feature-done

feature-done is a skill for Codex from midFang/ai-agent-skills-workflow. It costs 127 tokens per session (1,097 once invoked), scanned A, original, MIT.

A workflow for completing a feature after a user has manually confirmed that it works. A feature is a distinct piece of product functionality, and a branch is a separate line of Git work.

In plain words
What is it for?
It is for marking a feature verified, merging its branch, building and installing the resulting Android APK, recording post-merge verification, and removing the worktree.
Why use it?
It organizes the handoff from manual testing through merging, rebuilding, installing, and final verification. It also prevents merging without a clearly chosen target branch.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: $skill-name invocation.

Good fit It is for marking a feature verified, merging its branch, building and installing the resulting Android APK, recording post-merge verification, and removing the worktree.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/midfang/ai-agent-skills-workflow/feature-done
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add midFang/ai-agent-skills-workflow --skill feature-done
Clone the repo
git clone --depth 1 https://github.com/midFang/ai-agent-skills-workflow

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for feature-done

README.md
[![agentmods](https://agentmods.dev/badge/skills/midfang/ai-agent-skills-workflow/feature-done/github.svg)](https://agentmods.dev/skills/midfang/ai-agent-skills-workflow/feature-done)
Your own site
<a href="https://agentmods.dev/skills/midfang/ai-agent-skills-workflow/feature-done"><img src="https://agentmods.dev/badge/skills/midfang/ai-agent-skills-workflow/feature-done/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for feature-done

Your own site · 80×15
<a href="https://agentmods.dev/skills/midfang/ai-agent-skills-workflow/feature-done"><img src="https://agentmods.dev/badge/skills/midfang/ai-agent-skills-workflow/feature-done.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 127 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,097 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00127 $0.01097
Opus 5.5 $0.00051 $0.00439
Sonnet 5.5 $0.00025 $0.00219
Haiku 4.5 $0.00013 $0.00110

Measured 1mo ago against content hash 7b1bb053c3f0, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

feature-done scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

feature-done/SKILL.md · 108 lines

How it starts

The opening of the file, as written. The whole thing — 108 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Feature Done

目的

处理 feature 开发后半段:

用户人工验证通过(或用户触发 `$feature-done` 并明确给出 feature 与目标分支)
-> 标记 human_verified
-> 合并到用户指定目标分支
-> 标记 merged
-> 构建并安装目标分支 APK
-> 等用户做合并后验证
-> 标记 integration_verified
-> 删除 worktree
-> 标记 worktree_removed

阶段 A:验证通过并合并

若用户触发 $feature-done 并明确给出 feature 与目标分支,即视为该 feature 的待验证 APK 已人工验证通过,不再额外要求用户回复“验证通过”。

触发示例:

$feature-done FEAT-001 验证通过,合并到 main

如果用户没说目标分支,必须先问:

要把 FEAT-001 合并到哪个目标分支?

步骤:

  1. 读取 features/<版本>/feature_list.json 中的 feature。
  2. 更新:
    • status=human_verified
  3. 更新 TASK 的用户验证记录。
  4. 合并前检查:
    • feature worktree 没有未提交改动
    • 目标分支由用户明确给出
    • 执行合并的仓库不能有业务代码/配置类未提交改动
    • issues/**/*.md、issues/**/*.csv、features/**/*.md、features/**/*.csv、features/**/*.json 这类流程文件允许有改动
  5. 切到目标分支。
  6. 默认执行:
    • merge commit message 使用:Merge <feature_id> feat: <中文需求描述或实现内容>
    • 中文描述优先取 spec 的“目标”,其次取 feature list 的 title / name / description。
    • 示例:git merge --no-ff -m "Merge FEAT-001 feat: 增加沉浸式写作模式" <feature-branch>
  7. 合并成功后:
    • status=merged
    • 记录 merge commit
  8. 构建目标分支 APK,复制到:
    • features/<版本>/apks/<feature_id>-merged.apk
  9. 自动安装到手机:
    • 多设备时询问 serial
    • adb install -r <merged-apk>
  10. TASK 记录合并、构建、安装结果。
  11. 不删除 worktree,等待用户做合并后验证。

阶段 B:合并后验证通过并清理

触发示例:

$feature-done FEAT-001 合并后验证通过,可以清理 worktree

步骤:

  1. 确认当前状态是 merged,或用户明确说明合并后验证通过。
  2. 更新:
    • status=integration_verified
  3. 检查 feature worktree 没有未提交改动。
  4. 删除 worktree:
    • git worktree remove <worktree_path>
  5. 默认尝试安全删除本地 feature 分支:
    • git branch -d <feature-branch>
  6. 更新:
    • status=worktree_removed
  7. TASK 记录清理结果。

安全规则

  • 没有目标分支,不合并,先问用户。
  • 未经用户人工验证通过,不合并;但用户触发 $feature-done 并明确给出 feature 与目标分支时,视为已完成待验证 APK 的人工验证。
  • 合并成功后自动构建并安装目标分支 APK,等待用户做合并后验证。
  • 合并后未经用户确认,不删除 worktree。
  • 执行合并的仓库允许存在 issues/**/*.md、issues/**/*.csv、features/**/*.md、features/**/*.csv、features/**/*.json 流程文件改动;其它未提交改动会阻止合并。
  • 不使用 git branch -D、git reset --hard 等破坏性命令,除非用户明确要求。

Read the full file on GitHub · 108 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 108 lines · 127 tokens per session scan A 7b1bb053c3f0

Subscribe to this mod's changes

feature-done is a skill published in the GitHub repository midFang/ai-agent-skills-workflow (2 stars, last pushed 4mo ago), licensed MIT. It adds 127 tokens to every session and 1,097 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

axiom-shipping

Use when preparing an app for App Store submission, handling rejections or appeals, managing App Store Connect and Xcode Cloud, or triaging TestFlight/Sentry crash corpora. Covers checklists, metadata, privacy manifests, age ratings, export compliance.

CharlesWiltgen/Axiom · 56 tokens

mobiai-create-pr

YOU MUST use this before ANY git push, branch push to remote, merge, or PR creation — regardless of phrasing or language. Covers all irreversible integration actions (committing, pushing, opening a PR, shipping finished work). Also triggers proactively after a fix when the user signals completion (still ask before…

ArisGuimera/MobiAI-Core · 75 tokens

mobiai-mobile-worktrees

You MUST use this before starting mobile work that needs isolation from the current workspace — new feature branches, parallel efforts, or any plan execution that should not contaminate the active tree. Do not create worktrees ad hoc; this skill enforces safe directory selection and verification.

ArisGuimera/MobiAI-Core · 60 tokens

mobiai-mobile-finishing-branch

You MUST use this once mobile implementation is finished and you are about to integrate the work — merging, pushing, opening a PR, or cleaning up the branch. Do not improvise the wrap-up; this skill gates verification, presents integration options, and handles cleanup.

ArisGuimera/MobiAI-Core · 61 tokens

release-new-version

Use when the user wants to release a new Zafiro version — drafting bilingual release notes, deciding the next version number, bumping app/build.gradle.kts, tagging, and publishing to GitHub (main repo, optionally the Xposed repo).

niki914/zafiro · 54 tokens

asc-ad-hoc-distribution

Prepare, publish, resume, and verify private iOS release-testing installs with asc distribute. Use when distributing an IPA to registered devices outside TestFlight, reconciling ad hoc profiles, publishing through caller-owned S3-compatible storage, or diagnosing a resumable private distribution run.

rorkai/app-store-connect-cli-skills · 62 tokens