
task-harness
将需求拆解为结构化任务清单,生成长时运行 Agent 的任务管理系统(基于 Anthropic Effective harnesses 方法论)。当用户需要管理多会话开发任务、跟踪功能完成进度、或要求"拆解任务""任务管理""项目规划"时自动触发
- Installs
- 178
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/kangarooking/kangarooking-skills --skill task-harness- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads task-harness automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Task Harness — 结构化任务管理系统
将任意需求拆解为结构化任务清单,为长时运行的 Agent 建立可靠的任务追踪系统。
基于 Effective harnesses for long-running agents 方法论。
何时使用
- 大型需求需要拆解为多个子任务
- 项目需要跨多个 Agent 会话持续开发
- 需要跟踪功能完成进度(已完成 / 未完成)
- 用户说"拆解任务"、"任务管理"、"项目规划"、"创建任务清单"
核心流程
Step 1: 分析代码库
探索项目结构,理解:
- 技术栈(语言、框架、构建工具)
- 目录结构和架构模式
- 现有配置(package.json、go.mod 等)
- 关键入口文件
Step 2: 设计任务列表
根据用户需求,将工作拆解为具体的功能点(features)。每个功能点需要:
- 唯一的
id(如feat-01、v2-05) category分类(foundation、layout、components 等)priority优先级(数字越小越优先)description一句话描述file主要涉及的文件路径(可为 null)steps具体操作步骤数组(每步一个字符串)passes布尔值(初始为 false)verification验证条件
Step 3: 生成 4 个 Harness 文件
在项目根目录生成以下文件:
feature_list.json — 任务清单(唯一真相来源)
{
"project": "项目名称",
"description": "项目描述",
"features": [
{
"id": "feat-01",
"category": "foundation",
"priority": 1,
"description": "一句话描述要做什么",
"file": "path/to/main/file.js",
"steps": [
"具体步骤 1",
"具体步骤 2"
],
"passes": false,
"verification": "如何验证这个功能已完成"
}
]
}
完整模板见 references/templates/feature_list.json
为什么用 JSON 而不是 Markdown? 模型倾向于自由改写 Markdown 文件(改写措辞、重组结构、删除内容)。JSON 文件被模型更谨慎对待——更可能只修改特定字段。这对维护任务完整性至关重要。
progress.txt — 叙事性进度日志
记录每个会话的详细工作内容,供后续会话理解上下文。
完整模板见 references/templates/progress.txt
init.sh — 环境初始化脚本
每个新会话开始时运行,5 秒内恢复全部上下文。
完整模板见 references/templates/init.sh
task.json — 项目总览
记录里程碑、规则、文件清单等项目级信息。
完整模板见 references/templates/task.json
Step 4: 配置 AGENTS.md 规则
在项目的 AGENTS.md 文件中添加 Task Management System 章节,确保所有 Agent 会话遵循工作流。参考当前项目的 AGENTS.md 中的对应章节。
Step 5: 首次验证
运行 bash init.sh,确认:
- 脚本可正常执行
- feature_list.json 解析正确
- 进度统计准确显示
Step 6: 输出下一步指引
告诉用户:
- 已创建的文件列表
- 如何开始第一个任务
- 如何在新会话中恢复工作
Agent 工作流(每个会话)
1. bash init.sh ← 5 秒上下文恢复
2. Read progress.txt ← 理解之前做了什么、为什么
3. Read feature_list.json ← 找到优先级最高的未完成功能
4. Pick 1~2 features ← 不要贪多,增量推进是关键
5. Execute the feature's steps ← 严格按步骤执行
6. Verify ← 必须实际验证,不要假设
7. Update feature_list.json ← 只改 passes: false → true
8. git commit ← 一个功能一个 commit
9. git push ← 同步到远程
10. Append progress.txt ← 记录本次会话的工作
严格规则
- 只修改
passes字段:在 feature_list.json 中,只将passes从false改为true。永远不要删除功能、编辑描述、修改优先级或重组 JSON。 - 一次一个功能:除非功能非常小(例如改一个常量),否则每个会话只做一个功能。
- 必须 commit + push:每个功能完成后必须 git commit 和 push,确保进度永不丢失且可独立回滚。
- 必须验证后再标记完成:阅读代码、运行 dev server 或检查输出。不要信任假设。
- 必须更新 progress.txt:会话结束时更新进度日志,让下一个会话有完整上下文。
- 遇到阻塞时停止:在 progress.txt 中记录阻塞原因并停止。不要默默绕过问题。
文件间关系
init.sh ──读取──→ feature_list.json (任务状态)
│
└──提示──→ progress.txt (历史上下文)
task.json ────→ 项目总览(里程碑、规则、文件清单)
AGENTS.md ────→ Agent 行为规范(引用 harness 规则)
引用
- 方法论详解 — 为什么用 harness、常见问题、最佳实践
- 模板文件 — 所有 harness 文件的空白模板
FAQ
What does the task-harness skill do?
将需求拆解为结构化任务清单,生成长时运行 Agent 的任务管理系统(基于 Anthropic Effective harnesses 方法论)。当用户需要管理多会话开发任务、跟踪功能完成进度、或要求"拆解任务""任务管理""项目规划"时自动触发
How do I install task-harness?
Run npx skills add https://github.com/kangarooking/kangarooking-skills --skill task-harness in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/task-harness/ (personal) or .claude/skills/task-harness/ (project).
Which AI agents can use task-harness?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is task-harness safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains task-harness?
It is published by kangarooking in kangarooking/kangarooking-skills. It has 178 recorded installs.
More from kangarooking/kangarooking-skills
twitter-monitor
kangarooking/kangarooking-skills
Open the skill to read its SKILL.md instructions.
book-illustration-workflow
kangarooking/kangarooking-skills
Open the skill to read its SKILL.md instructions.
harness-engineering
kangarooking/kangarooking-skills
Open the skill to read its SKILL.md instructions.
multi-agent-image
kangarooking/kangarooking-skills
Open the skill to read its SKILL.md instructions.
reshape-your-life
kangarooking/kangarooking-skills
Open the skill to read its SKILL.md instructions.
video-downloader
kangarooking/kangarooking-skills
Open the skill to read its SKILL.md instructions.
Popular productivity & automation skills
agent-browser
vercel-labs/agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
lark-doc
open.feishu.cn
飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。
lark-base
open.feishu.cn
飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。
lark-drive
open.feishu.cn
飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。
lark-shared
open.feishu.cn
Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.
lark-im
open.feishu.cn
飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。