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.
npx agentmods add skills/objectstack-ai/objectstack/pm-dispatchnpx skills add objectstack-ai/objectstack --skill pm-dispatchgit clone --depth 1 https://github.com/objectstack-ai/objectstackWhat 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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00126 | $0.27900 |
| Opus 5 | $0.00063 | $0.13950 |
| Sonnet 5 | $0.00025 | $0.05580 |
| Haiku 4.5 | $0.00013 | $0.02790 |
Grade A, and why
pm-dispatch 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 2d 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.
How it starts
The opening of the file, as written. The whole thing — 948 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PM 派发循环
你(本会话)
是 PM 座位。PM 永不写代码 —— 代码全部由 os-dev 开发 agent(.claude/agents/os-dev.md)完成,
一单一 agent、一 agent 一 worktree。PM 的工作是循环:选卡 → 认领 → 派发 → 收集 → 复核
→ 报告 → 下一批。维护者只在两个点进入循环:轮次报告,和 needs-user-decision 决策卡。
本文只写原则、状态机与查表数据(维护者 2026-08-12 裁定:「现有的项目经理skills
应该大幅简化,只需要说原则,不需要写细节」;「处理 issue 时犯的错应该总结成经验,
保留 issue id没有意义」)。每条经验自含失效模式与边界,⛔ 操作文本不引用issue 编号,
不期待读者去翻原始 issue;裁决保留日期 + 原话;凡钩子 /门禁
/脚本已机械强制的只留一句原则,细节以脚本头为权威;按需查阅的事实表住在 references/。
入口与角色
/pm-dispatch [args] — 自由组合,全部可选:
| arg | 含义 | 默认 |
|---|---|---|
triage |
以分诊座位身份运行(只扫/分类/路由,永不认领) | — |
<domain>(如 spec、skills) |
以该 domain:* 车道的执行座位身份运行 |
— |
epic:#<n> |
以父单 #n 的 epic PM 身份运行(见「Epic 子树车道」) | — |
director |
以项目总监席身份运行(人工召唤;四职与章程见「升级与决策」与 references/lanes/director.md) |
— |
label:<name> |
backlog 过滤标签;label:all = 全部 open 未认领 |
pm:queue |
repo:<owner/name> |
扫哪个仓的 backlog(单 issue 的落地仓看它自己的 repo:* 标签) |
objectstack-ai/objectstack |
batch:<n> |
同时在飞的 dev 上限 | 3 |
rounds:<n> |
跑 N 轮后停 | 队列清空为止 |
mode:subagent | mode:cloud |
派发后端 | 按卡分流:S+M ⇒ subagent,cloud 只留 L/XL 等保留面(维护者 2026-08-12 裁定) |
#12 #34 … |
显式 issue 清单,整体覆盖标签查询 | — |
无角色参数时按执行姿态运行,车道由座位贴认定。 角色参数的意义:召唤/自排的 prompt 收敛成一行技能调用,座位行为全部版本化在 git, 升级走技能 PR。探针先行(启动第一动作):先发一次最便宜的车道盘点查询(整车道读法); 队列空 + 无在飞 + 无待复核 + 决策箱无新答复 ⇒ 自退, 不再读任何长文本 ——空转座位的成本上界就是这一次查询。
分诊席直连自排(维护者 2026-08-27 裁,
原话:「我觉得分诊也和普通项目经理一样走普通的session,然后需要高级别处理的任务走
fable 子agent,然后自己默认定时1小时,除非人工要求。」):
分诊 = 普通直连会话、整席 opus(机械三务至多 opus);达档职责(代裁、条款②/契约复审)
走显式传 model 的 fable 子代理,逐份裁决过转录核验采信(细则见 references/contract-review.md);
自排定时默认收班时挂、延时 ≤55 分钟(1 小时 prompt-cache TTL 减分钟级抖动,
整班守一条缓存链;用量超额 TTL 降至 5 分钟收益归零、compaction 轮照旧重写,皆不改默认),
维护者明示可改。开轮互斥读法(宁少跑,不让两个同座位会话并行写标签;维护者
2026-08-27 裁「落协议」:近期窗口只管未收班活动):fire 开始、首个写动作之前读四个读数,
未收班活动任一未满一个轮次 ⇒ 自退 —— 最近收班简报;晚于它的最新「开轮」
标记(轮中会话在座位贴上唯一的痕迹);本车道 pm:dispatched 卡最新非本
session 的 Claim: 评论(拼写见「认领」,车道盘点已取;只计认领本席车道派发的 ——
评审链/总监席落在车道卡上的笔迹是跨席作业不算占席,认领自带 session ID 与席位身份);
本车道 state=CLOSED 按 updated_at 降序第一张卡的 Claim: session ID —— 第四读免疫标签惯例:
不用 pm:dispatched 的会话对前三读隐形,与空席同形(实测:16 分钟前还在合并
PR 的会话被读作「清」)。收班简报 = 前任「不再写」的显式声明,是释放标记不是锁:
简报即最新事件 ⇒ 立即坐席,滞后标题是进场顺手修的半状态(⛔ 不是阻塞),
简报点名的留守尾巴作围栏(细则见 seat-post-protocol);维护者明示召唤是仲裁:
有简报径直坐席,无简报(前任或死在轮中)才走保守确认,确认终止即坐席。
标记可漏写,认领不可省;第三、四读数只增加自退、永不清座位;两读判「非本 session」
对 subagent dev 的同 ID 认领不自退,是特意保留的安全方向(同会话 dev 本非互斥对象,
甄别靠分支)。互斥清,先在座位贴留一行开轮标记(session ID + fire 时刻)再跑轮。
What ships with it
20 files 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.
- references/compile-surfaces.md 2.7 KB
- references/contract-review.md 4.3 KB
- references/decision-analysis.md 3.1 KB
- references/dispatch-runbook.md 21 KB
- references/landing-operations.md 6.3 KB
- references/lanes/cli.md 2.1 KB
- references/lanes/devx.md 2.6 KB
- references/lanes/director.md 6.1 KB
- references/lanes/engine.md 2.2 KB
- references/lanes/hotcrm.md 4.1 KB
- references/lanes/services.md 1.7 KB
- references/lanes/skills.md 2.0 KB
- references/lanes/spec.md 3.0 KB
- references/platform-readings.md 33 KB
- references/release-aftercare.md 4.0 KB
- references/rest-channel.md 7.2 KB
- references/review-checklist.md 8.0 KB
- references/seat-post-protocol.md 9.3 KB
- references/state-machine.md 3.6 KB
- references/true-green.md 2.2 KB
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.
- 2d ago First seen · 948 lines · 126 tokens per session scan A 2ec8585bbf9a
pm-dispatch is a skill published in the GitHub repository objectstack-ai/objectstack (45 stars, last pushed 2d ago), licensed Apache-2.0. It adds 126 tokens to every session and 27,900 once invoked, about $0.0006 per session on Opus 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-30.
Other skills, from other repositories
ontotect
Systematic ontology engineering for designing, constructing, reviewing, repairing, optimizing, refactoring, validating, documenting, and governing ontologies, vocabularies, taxonomies, knowledge graphs, semantic models, and mappings. Use for RDF/RDFS, OWL 2, SKOS, SHACL, SPARQL, OBO, Turtle, JSON-LD, RDF/XML…
mykg
Run mykg knowledge-graph commands inside Claude Code from one slash command /mykg. The user describes intent in natural language (extract, append, resume, approve, walkthrough, parse-docs, fetch-web, query); the skill parses intent, builds the right mykg CLI command from the live --help output, confirms, runs it, and…
mykg-github-pages
Set up and maintain the GitHub Pages site for the mykg repo (SenolIsci/mykg) — a purpose-built pages/ folder (landing page adapted from README.md, blog posts, diagrams), built by a GitHub Actions workflow that runs Jekyll and deploys the result to a gh-pages branch. Use whenever the user wants to publish project…
networkx
Build, analyze, and visualize networks and graphs using NetworkX (Python). Use this skill whenever the user wants to: create graphs or networks, analyze graph properties, compute centrality measures, find shortest paths, detect communities, run graph algorithms, convert graphs to/from matrices or dataframes, visualize…
design-architecture
Reviews the current codebase architecture and proposes improvements using four parallel specialist subagents: System Architect, Software Architect, Data Architect, and an Adversarial Architect that red-teams failure paths, LLM adversarial output scenarios, silent corruption risks, and invariant bypasses. Each subagent…
exchange-recovery
Accident Request (用户输入事故请求) ↓ Think (分析事故 → 决策恢复策略) ↓ Risk Evaluate (评估数据覆盖风险) ↓ Plan (列出Exchange服务器 → 查找备份时间点 → 浏览备份邮件 → 生成恢复任务) ↓ Act (执行恢复任务 → 产生恢复作业 → 验证Exchange可用性) ↓ Report (生成恢复报告:状态 + 数据统计 + 时效评估).