MIT License Node.js 20+ Git 原生 面向智能体优化 11 种事项类型 TOON 格式 v2026.8.10 93 个操作

项目管理
就住在你的仓库里

面向人类与 AI 智能体的 git 原生项目管理 —— 零配置、仅追加的审计日志、节省 token 的 TOON 输出、9 种扩展能力、完全可扩展。

$
$ npm install -g @unbrained/pm-cli
快速开始

30 秒即可上手

四条命令。安装 pm-cli 并开始记录你的第一项任务只需这些。

$ npm install -g @unbrained/pm-cli
added 1 package, audited 1 package in 3s
$ pm init
✓ initialized .agents/pm/ — ready to track work
$ pm create --type Task --title "My first task"
id: pm-tsk-abc123 type: Task status: open
$ pm list
pm-tsk-abc123TaskopenMy first task
$
完整快速入门指南 浏览全部 119 条命令
生命周期

六种状态,确定性转换

每个事项都遵循相同的生命周期。智能体和人类共享一台可预测的状态机,并带有完整审计轨迹。

draft
open
in_progress
blocked
closed
canceled

start-task 认领并转为 in_progress · pause-task 释放并回到 open · close-task 关闭并释放认领

功能

所需即所得,多余全无

专为现代团队 —— 以及他们的 AI 智能体 —— 的实际工作方式而设计。11 种事项类型、10 个命令族、9 种扩展能力。

🌿

Git 原生存储

事项就存放在你仓库里的 .agents/pm/ 中。像审阅、对比、合并代码一样处理项目事项。无需外部数据库。

.agents/pm/
🤖

面向智能体优化的 TOON 输出

TOON 格式只输出已变更的字段 —— 稀疏、节省 token 的输出,在保持完全机器可读的同时让 LLM 的上下文窗口保持精简。

TOON format
📋

仅追加的 JSONL 历史

每次变更都记录在带有 RFC6902 补丁、内容哈希和从创建到关闭完整溯源的 JSONL 审计日志中。

RFC6902 patches
🔌

9 种扩展能力

commands, renderers, hooks, schema, importers, search, parser, preflight, services。通过扩展生命周期管理器发布你自己的扩展。

extensible

零配置启动

一条命令 —— pm init —— 用智能默认值完成一切设置。不到十秒即可开始记录工作。

pm init
🔍

混合搜索

关键词搜索始终可用。搭配兼容 OpenAI 或 Ollama 的提供者以及 Qdrant 或 LanceDB 向量存储,即可加入语义或混合搜索。

semantic search
🧪

关联测试与验证

用断言元数据将测试命令绑定到工作事项。用 pm test --run 运行,在历史中追踪结果、后台测试运行、沙箱安全测试。

pm test
📅

时间感知的规划

内置 Events、Reminders、Milestones 和 Meetings 将日程元数据与你的工作放在一起。通过当前的 list、search、context 和 item-detail 命令筛选并查看它们。

events / reminders
🔒

Claim / Release 生命周期

认领事项以防止重复工作。使用 start-taskpause-taskclose-task 别名进行安全的状态转换。

pm claim / release
🔗

丰富的元数据模型

为 sprint、release、estimate、risk、confidence、acceptance criteria、definition of ready、blocked-by、severity 等提供丰富的元数据。

metadata-rich
🔄

批量操作

pm update-many 一次性更新多个事项。 试运行计划和回滚检查点让大范围的变更保持可审阅。

update-many
🌐

机器契约

通过 pm contracts --json 获取机器可读契约。通过 config 和扩展自定义事项类型。

JSON schema
事项类型

11 种内置事项类型

还可通过 config 和扩展自定义类型。每种类型都有自己的选项策略 —— 必填字段、禁用字段和智能默认值。

🔧 Chore
⚖️ Decision
🏔️ Epic
🎪 Event
Feature
🐛 Issue
📅 Meeting
🏁 Milestone
📐 Plan
Reminder
Task

通过 pm config 或扩展自定义类型 —— 定义你自己的模式、字段和工作流。

命令

119 条命令,10 个逻辑族

从引导到生命周期,每条命令都同时为人类和智能体而设计。浏览完整参考 →

🚀

Bootstrap

config, extension, health, init, install, package, packages, schema, upgrade

🔍

Triage

aggregate, context, ctx, get, list, list-all, list-blocked, list-canceled, list-closed, list-draft, list-in-progress, list-open, search

Lifecycle

append, claim, close, close-task, create, delete, pause-task, release, restore, start-task, update, update-many

📐

Planning

plan

📝

Logs

comments, learnings, notes

🔗

Links

deps, docs, files

🧪

Verification

gc, test, test-all, validate

📜

History

activity, history, stats

🤖

Machines

contracts

⚙️

Other

close-many, copy, duplicates, eval, event, events, extension activate, extension adopt, extension adopt-all, extension catalog, extension deactivate, extension describe, extension doctor, extension explore, extension init, extension install, extension manage, extension migrate, extension reload, extension uninstall, focus, graph, history-author-acknowledge, history-compact, history-redact, history-repair, item, item complete, item mutate, meet, merge, next, package activate, package adopt, package adopt-all, package catalog, package deactivate, package describe, package doctor, package explore, package init, package install, package manage, package migrate, package reload, package uninstall, packages activate, packages adopt, packages adopt-all, packages catalog, packages deactivate, packages describe, packages doctor, packages explore, packages init, packages install, packages manage, packages migrate, packages reload, packages uninstall, profile, remind, telemetry, workspace, workspace snapshot, workspace snapshot create, workspace snapshot delete, workspace snapshot inspect, workspace snapshot list, workspace snapshot restore

交互式演示

看看 pm-cli 的实际效果

点击任意标签查看真实工作流。输出逐行动画呈现 —— 就像你的终端一样。

面向智能体优化

什么是 TOON?

Token-Optimized Object Notation 只输出已变更的字段 —— 一种稀疏、机器可读的格式,旨在让 LLM 的上下文窗口保持精简。

稀疏、节省 token 的输出

传统 JSON API 每次读取都返回完整对象。TOON 只返回变更的字段 —— 在智能体紧密循环工作时大幅降低 token 消耗。

为智能体而生

  • 渐进式上下文 —— 无需大范围列表扫描的精简智能体快照
  • 机器契约 —— 每条命令的 JSON Schema
  • 仅追加历史 —— 用于状态回放的 RFC6902 补丁
  • Claim/Release —— 防止智能体间的重复工作
  • 后台测试 + 沙箱模式
# After: pm create --title "Add SSO" --type Feature
id: pm-fea-7x9k2m
type: Feature
title: Add SSO
status: open
priority: 2
created: 2026-05-04T10:30:00Z
createdBy: agent

# After: pm update pm-fea-7x9k2m --status in_progress
id: pm-fea-7x9k2m
status: in_progress ← only changed field
updated: 2026-05-04T11:15:00Z

# History entry (JSONL)
{
  "op": "update",
  "id": "pm-fea-7x9k2m",
  "patch": [
    {"op":"replace","path":"/status","value":"in_progress"}
  ],
  "ts": "2026-05-04T11:15:00Z"
}
用例

为每种工作流而生

无论你是独立开发者、团队负责人、AI 智能体还是开源维护者 —— pm-cli 都能适应你的工作方式。

👨‍💻

独立开发者

个人项目跟踪

与代码一起跟踪待办、功能和缺陷。没有额外开销,没有同步问题 —— 一切都住在 git 里。

pm init pm create --title "Add auth flow" --type Feature --priority 1 pm start-task auth-01 pm close-task auth-01 "Auth shipped with tests"
🤖

AI 编程智能体

自主任务执行

智能体在紧密循环中使用 TOON 输出和 JSON 契约进行确定性、节省 token 的项目管理。

pm context --depth brief --json pm claim bug-42 pm test-all --json | jq '.ok' pm close-task bug-42 "Fixed: added null check"
👥

团队冲刺

协作规划

使用 software-sprint 预设,实现带认领/释放、关联文件和结构化评审的基于冲刺的工作流。

pm init bash presets/software-sprint/setup.sh pm create --type Task --sprint S3 --estimate 120 --assignee alice pm list-all --sprint S3 pm stats
🌐

开源维护者

议题分诊与发布

导入 GitHub 议题,通过搜索和聚合进行分诊、跟踪里程碑并管理发布 —— 全部在 CLI 中完成。

pm install npm:pm-github pm search regression auth pm create --type Milestone --title "v2.0 Release" pm aggregate --group-by type
最新版本

v2026.8.10 有什么新功能

从当前 pm CLI 更新日志生成。v2026.8.10 (2026-08-10) 包含 29 项已跟踪变更,涵盖 Added, Fixed, Other。

查看完整更新日志 →

Added

  • GH-472: create error for missing required custom fields lists the field names (pm-4bzq)
  • Provenance records distinguish unavailable configuration from resolver failures (pm-lu6sca)
v2026.8.10 · 2026-08-10
🛠️

Fixed

  • GH-959 recurrence: snapshot restore planning races lease-expiry fixture cleanup (pm-usq49n)
  • GH-960: structured diagnostic notices preserve machine-readable JSON envelopes (pm-embm6t)
  • GH-956: lossless acceptance-criteria replacement and unmatched-removal failure contract (pm-lppm6y)
  • GH-954: fail-fast dependency target validation with explicit forward-reference intent (pm-x3dq0l)

更新日志中还有 +21 项

v2026.8.10 · 2026-08-10
📦

Other

  • Refresh pinned GitHub Actions for PR #958 with exact-head compatibility proof (pm-obh6lo)
  • The measurement ratchet floors only aggregate graph totals, so converting typed semantic edges to untyped ones passes every declaration (pm-70jyvw)
v2026.8.10 · 2026-08-10
为什么选 pm-cli

不是又一个项目管理工具

pm-cli 与 SaaS 工具有本质不同。你的数据归你所有,你的工作流在 git 中,而智能体是一等公民。

pm-cliJiraLinearNotion
住在 git 仓库里
面向智能体优化的输出(TOON)
离线优先
仅追加审计日志(RFC6902)部分支持部分支持
零配置
免费且开源
CI/CD 集成APIAPIAPI
可扩展插件(9 种能力类型)市场
关联测试执行
日历与排程部分支持
语义 / 混合搜索
机器可读契约
带回滚的批量操作
节省 token 的输出格式
预设

预配置的 PM 工作区

将预设放入任意已初始化的项目,即可获得合适的设置、模板和治理规则。

包商店

可即装的 pm 包

33 个官方与社区包:Web 应用、图同步、导入器、渲染器、集成、脚手架以及预配置的工作区预设。

pm-beads official

Beads JSONL importer extension for pm-cli

commandsimportersschema
pm-brief official

Token-budgeted agent briefs and next-work plans for pm workspaces

commandsrenderersschema
pm-calendar official

Show agenda, day, week, and month views for deadlines, reminders, and scheduled events.

commands
pm-changelog official

Generate CHANGELOG.md and release notes from completed pm items for local releases, GitHub Actions, runners, and scripts. Can run as a standalone CLI/API package or as `pm changelog generate`.

commandsimportersrenderersschema
开始使用

几秒即可上手

全局安装、初始化任意仓库、开始记录。就这样。适用于任何语言、任何技术栈、任何团队规模。