executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
lov-plane-cli用命令行读写 Plane 项目管理实例:查项目、工作项、周期、模块、状态、标签,创建和更新工作项与评论。 适用于“看看 Plane 上有哪些任务”“在 Plane 建个工作项”“同步 Plane 进度”。 Use when reading or writing a self-hosted or cloud Plane instance through its REST API v1.
Independent GitHub snapshot · Automated classification · Original documentation governs
通过 Plane REST API v1 读写 Plane 实例。命令表由随包的 cli/openapi.json 在启动时构建,覆盖 130 个操作 / 17 个资源分组,与实例导出的 schema 严格一致。
node --version 确认 Node.js 20+。$SKILL_DIR/cli/bin/lov-plane-cli.mjs。若已 npm link,可直接用 lov-plane-cli。cli/openapi.json 时报出相对路径并停止,不要凭记忆拼 URL 调用 API。实例地址按此顺序解析:--base-url → $PLANE_BASE_URL → ~/.config/lov-plane-cli/config.json 的 baseUrl → http://localhost。
凭据同理:--api-key → $PLANE_API_KEY → 配置文件 apiKey。
export PLANE_BASE_URL=http://localhost
export PLANE_API_KEY=<api token>
获取 token:登录 Plane → 右上角头像 → Settings → API tokens → Add API token。
凭据只经环境变量或用户自有配置文件传入。 不要把 token 写进生成文件、示例、日志或 Profile 记录,也不要在回复里回显完整 token。
缺凭据时 CLI 以退出码 2 停止并打印获取指引——把该指引转达用户,不要伪造响应。
先看命令表,再执行;不要凭记忆拼 operationId:
lov-plane-cli help # 130 个命令,按资源分组
lov-plane-cli <command> --help # 单命令的路径参数与查询参数
lov-plane-cli <command> ... --dry-run # 只打印请求,不发出
常用工作流:
lov-plane-cli list-projects -w <workspace-slug>
lov-plane-cli list-work-items -w <slug> -p <project-id> --per-page 50
lov-plane-cli list-states -w <slug> -p <project-id> # 建工作项前取状态字典
lov-plane-cli list-labels -w <slug> -p <project-id> # 取标签字典
lov-plane-cli create-work-item -w <slug> -p <project-id> --data '{"name":"新任务"}'
lov-plane-cli list-work-item-comments -w <slug> -p <pid> --issue-id <issue-id>
参数写法:路径参数可按顺序作为位置参数,也可用同名选项;-w/-p/--id 分别是 slug/project_id/pk 的别名。请求体用 --data '<json>' 或 --data @file.json。未知参数会直接报错,不会被静默丢弃。
create-*、update-*、delete-*、archive-* 会改变用户的真实项目数据。
--dry-run 给用户看将要发出的请求。list-states / list-labels 的 id,不要猜 UUID。api-graph.json 记录资源层级:workspace slug → project id → 工作项 / 周期 / 模块 / 状态 / 标签 id。
写操作后回读对应资源确认结果,不把 2xx 当作最终验收。报告时区分成功、失败与部分完成。
常见状态码:401 未提供凭据;403 token 无效或无权访问该工作区/项目;404 slug 或 id 不存在。CLI 会原样保留 Plane 的错误体,把它转达给用户而不是改写。
| 分组 | 操作数 | 分组 | 操作数 |
|---|---|---|---|
| Work Items | 14 | Cycles | 14 |
| Members | 13 | Modules | 12 |
| Work Item Comments | 10 | Work Item Attachments | 10 |
| Work Item Links | 10 | Projects | 8 |
| Assets | 6 | workspaces | 6 |
| Intake | 5 | Labels | 5 |
| States | 5 | Stickies | 5 |
| Work Item Activity | 4 | Work Item Relations | 2 |
| Users | 1 |
OpenAPI 由 Plane 自托管实例内置的 drf-spectacular 导出,未人工改写路径或字段;仅修正 servers(容器内地址 → 对外地址)并补充证据标注。
每个操作带 x-observation:live-probe-401-403 表示端点经真实探测确认存在(17 个),vendor-generated-schema 表示仅有 schema 定义(113 个)。所有写操作从未在线执行过,字段语义以 Plane 官方文档为准。
Plane 升级后接口可能变化:重新导出 schema 覆盖 cli/openapi.json 即可同步,无需改代码。
cli/sdk/index.mjs 导出 PlaneClient,含常用入口与通用 request(method, path, {query, body})。凭据经构造参数或 PLANE_API_KEY 在内存中传入。