AI Agents-driven project task CLI for initializing .agents task structure and skills.
Project description
zsc
zsc 是一个面向多 IDE/AI Coding 工具的命令行工具,用于在项目中初始化统一的 AI Agents 任务体系。
核心能力:
- 初始化
.agents任务目录结构:创建.agents/与.agents/tasks/,作为项目级任务闭环与 TODO 的统一入口。 - 为多种 AI Coding 工具安装
zsc-*技能:除zsc init外,每个子命令对应一个技能(如zsc-create-task对应zsc task new)。zsc init会在.cursor/skills/、.codex/skills/、.claudecode/skills/下按需安装这些技能,帮助各工具理解并维护任务体系。 - 幂等执行:重复运行不会破坏已有结构或覆盖用户已有的技能文件。
安装
你可以根据环境选择使用 pip 或 uv tool 安装 zsc:
# 使用 pip(适用于未安装 uv 或习惯用 pip 的环境)
pip install -U zsc
# 使用 uv tool 作为全局工具(推荐在已安装 uv 时)
uv tool install zsc # 首次安装
uv tool install zsc --upgrade # 升级到最新版本
在本仓库中开发调试时,可使用本地可编辑安装(示例):
uv pip install -e .[test]
以上命令仅为示例,请根据你的环境和
uv版本适当调整。
使用
在目标项目根目录中运行:
zsc init .
zsc init . 将会:
- 创建
.agents/与.agents/tasks/目录(若不存在)。 - 创建以下 AI 工具技能目录(若不存在):
.cursor/skills/.codex/skills/.claudecode/skills/
- 将打包在
zsc中的各zsc-*技能复制到上述各技能目录中对应子目录:.cursor/skills/zsc-help/SKILL.md(用法介绍,在 AI 环境中可触发如/zsc-help让 LLM 介绍 zsc 与各技能用法).cursor/skills/zsc-create-task/SKILL.md(对应zsc task new).cursor/skills/zsc-task-list/SKILL.md(对应zsc task list).cursor/skills/zsc-task-status/SKILL.md(对应zsc task status).codex/skills/、.claudecode/skills/下同样按技能名安装。- 仅在目标位置不存在该文件时才写入,避免覆盖用户已有定制。
再次运行 zsc init . 时:
- 已存在的目录将被检测并跳过。
- 已存在的
SKILL.md不会被覆盖,只会输出提示。
要查看当前安装的 zsc 版本,可运行:
zsc -V
# 或
zsc --version
使用 zsc -U 升级
在任意终端中,你可以通过:
zsc -U
来尝试将 zsc 升级到最新版本:
- 当检测到系统中已安装
uv且当前项目没有损坏的.venv时,zsc -U会优先调用uv tool install zsc --upgrade进行升级(与uv tool install zsc --upgrade等价)。 - 当检测到
.venv中的 Python 解释器是断裂的符号链接(例如.venv/bin/python3已失效)时,zsc -U会跳过基于 uv 的升级,直接回退为pip install -U zsc,并在输出中提示你考虑用uv venv或其他方式重建虚拟环境。 - 当 uv 可用但升级失败(包括 uv 报错
No virtual environment found; run \uv venv` to create an environment, or pass `--system` to install into a non-virtual environment这类情况)时,zsc -U会自动尝试一次pip install -U zsc作为兜底;若兜底仍失败,会在最后给出可复制的手动命令,方便你按需选择pip install -U zsc或uv tool install zsc --system`。 - 实际行为与使用的 Shell 类型(bash/zsh/fish 等)无关,关键在于各 Shell 的
PATH设置指向的是同一份zsc可执行文件。如果某个 Shell 命中的zsc是安装在虚拟环境中的另一份版本,其zsc -U行为会跟随该环境而变化。
任务管理命令
zsc 提供了一组围绕 .agents/tasks 的任务管理子命令:
zsc task list:列出.agents/tasks下的任务及其基本状态(open/completed)。zsc task new <feat_name> [path]:在指定项目根目录(默认为当前目录)下创建新的task_{no}_{feat_name}目录与同名文件task_{no}_{feat_name}.md模板(便于在编辑器中按名称快速打开)。zsc task status:汇总.agents/tasks中任务的数量与状态,给出项目级任务健康度摘要。
配合 zsc init .,你可以先在项目中初始化任务体系,然后通过 zsc task 系列命令持续维护和浏览任务闭环。
说明:
zsc task new创建任务目录与同名.md模板。在 AI Coding 工具中触发 zsc-create-task 技能(如 Cursor 中/zsc-create-task)时,若用户要求「创建新任务」,AI 会代为执行zsc task new <feat_name>或按模板创建目录与文件,并可根据需求意图帮你完善“闭环描述”和TODO_LIST。若你此前使用过旧版技能名zsc-new-task,请重新执行zsc init .以安装为zsc-create-task。
TODO 设计原则:让 TODO 可落地、可收口
- 每个 TODO 都应尽量是具体可执行的工程动作:能大致描述「谁在什么上下文里要做什么」,并适合作为 1–2 小时内可完成的子任务。
- 避免把长期观察/跟踪类事项或过于抽象的目标写进 TODO_LIST:例如「持续观察错误率」「保证系统长期稳定」更适合作为:
- 单独的任务(专门的监控/稳定性任务),或
- 记录在
task_records/log/、设计文档或运维文档中,而不是长期挂在某个任务的 TODO 列表里。
- 采用自底向上的拆解方式:优先写“下一步可以落地的具体动作”,子任务完成后再为下一步设计新的 TODO;当发现某个 TODO 过大或含糊时,优先拆分为多个更小、更具体的新 TODO 来替换它。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zsc-0.2.0.tar.gz.
File metadata
- Download URL: zsc-0.2.0.tar.gz
- Upload date:
- Size: 36.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
56a1a13ae8fb9e5644347a6d39eff586a0de070de32abc6f069d4175c846c908
|
|
| MD5 |
80e965cfb83ab0153dc2d05c3a90d75d
|
|
| BLAKE2b-256 |
6cb6d1f3bad0b9b2323d5dce62d5a8c916964c30f2d94954b4546f05ed38523b
|
File details
Details for the file zsc-0.2.0-py3-none-any.whl.
File metadata
- Download URL: zsc-0.2.0-py3-none-any.whl
- Upload date:
- Size: 39.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0bdaca1bde1d7ae792c59592673aaab3d4f0a66a461dce22ee909227ee59356c
|
|
| MD5 |
a8a078d6461804b4122f56d8c24fd404
|
|
| BLAKE2b-256 |
9271cb0a573205c99620c3310d1b623157c52488020d77b467e4b30376d6a55d
|