mcpField
P
Project Status

Project Status

本地服务
github.com/Openly-Useful开发工具07 周前更新

关于 Project Status

StatusGlance 是面向团队和 Agent 的只读可见性工具集,用于检查仓库就绪度和观测到的本地活动。它将基于证据的就绪状态与活动信号区分开,并提供可选的有界 MCP 入口。

主要功能

  1. 01根据仓库清单评估就绪状态
  2. 02展示观测到的本地运行活动
  3. 03跟踪证据和验收差距
  4. 04呈现可配置的 RunGlance HUD 视图
  5. 05打包可移植技能和插件

适用场景

  1. 01依据现有证据审查交付就绪度
  2. 02不通过模型轮询检查本地任务活动
  3. 03核对里程碑验收差距
  4. 04通过 MCP 查看有界状态数据

MCP 相关

可选的只读 MCP 入口提供 Project Status 和 RunGlance 数据。RunGlance 入口提供状态、工作项、用量、锁和状态资源查询;它用于查询,不负责刷新 HUD。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"org-openlyuseful-project-status": {
"command": "npx",
"args": [
"-y",
"@openly-useful/project-status-mcp"
]
}
}
}
启动命令npx -y @openly-useful/project-status-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@openly-useful/project-status-mcp1.2.1

工具

8

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

StatusGlance

StatusGlance 是 Openly Useful 的可视化系列:StatusGlance / Readiness 将一个仓库内的清单转化为有证据支撑的交付就绪状态;StatusGlance / RunGlance 展示观测到的运行活动,无需模型轮询。两者均可用于 Claude、OpenAI/Codex 和通用 CLI,并可选用范围受限的只读 MCP 入口。

此兼容性优先的品牌发布保留了 project-status 和 runglance 插件 ID、npm/MCP 名称、命令、存储路径、仓库 URL 及 Apache-2.0 许可证。现有集成无需迁移重命名。状态请求只读取一次现有证据;不会启动工作、验证、监控或安装。

交付循环

Conductor Swarm 负责执行:观察变更 → 梳理连贯的工作 → 并行运行已就绪且互不依赖的工作流 → 在里程碑处验证并集成 → 调整 → 继续执行获授权的工作或结束。Pickup 修复缺失的上下文;Continuity 处理实际移交。这些是互补工具,并非必须增加的 Agent 或按顺序执行的阶段。Agent Workflow Swarms 定义了执行框架。

StatusGlance 观测这一循环。使用现有宿主事件、任务 ID 和里程碑证据。没有事件流,就表示活动未知。本地设置文件不能证明宿主已安装或已连接。反复修订意味着应在获授权的执行范围内改变方法,而不是无限延长审查循环。Operations Pulse 仍是可选的定期运营配套工具;Skill Feedback Engine 仅在收到请求时才提出可长期保留的改进建议。

Alpha、Beta 和 Live 就绪状态

可选的版本化 delivery extension 引用现有清单任务。按顺序排列的阶段范围会累积已验收的工作,每个阶段都会显示自己的分母、剩余任务和里程碑、下一个已集成的里程碑以及验收差距。范围为空时,状态仍为未知。当前阶段的验收需要符合条件的证据并清除各项关卡;实施进度和历史加权得分分别记录。

随附的仪表板是历史演示,不能作为任何用户当前产品就绪状态的证据。要声称已完成 Alpha、Beta 或 Live,请先配置并验证真实产品范围。

本仓库包含八项相关交付内容:

  • 位于 skill/project-status 的规范便携式技能;
  • 独立的 RunGlance 技能,位于 skill/runglance;
  • 无依赖的 RunGlance 运行时、宿主适配器、HUD 预设、验证运行器和最终收据;
  • packages/mcp 下可选的只读 Project Status 和 RunGlance MCP 入口;
  • plugins/ 下生成的 OpenAI/Codex 和 Claude 插件包装器;
  • 由 scripts/package-skill.mjs 和 scripts/package-runglance.mjs 生成的确定性 Project Status 和 RunGlance ZIP 分发包;
  • React/Vite 状态原型及其 OpenAI Sites worker 构建产物。

信任与安全模型

就绪状态、证据有效性、实时健康状况和交付活动是彼此独立的信号。浏览器刷新不计为监控。默认只读检查;编辑清单、安排任务、安装、发布、部署、提交和远程写入都需要单独明确执行。

活动还会分别跟踪上下文窗口容量、提供商配额、任务预算、货币成本、进度、心跳新鲜度和显式锁所有权。缺少宿主数据时,状态保持为 unknown;绝不会将其显示为零,也不会根据其他指标进行猜测。验证通过仅证明收据中记录的检查和任务结果,并不代表整个项目已就绪。

发布工具仅限在仓库内运行。它不会安装插件、更改个人市场、发布归档文件、创建版本发布、部署 Sites,也不会在所选产物目录之外写入文件。

规范技能与生成的包装器

skill/project-status 是唯一应编辑以修改技能行为的来源。两个插件包装器在 skills/project-status 中包含物理副本,因为市场安装程序会复制插件目录,无法安全依赖插件根目录之外的路径。

skill/runglance 是 RunGlance 对应的规范来源。其生成的包装器包含 skills/runglance、仅供 RunGlance 使用的 MCP 入口点,并且不包含就绪状态清单运行时。请勿将 RunGlance 的生命周期或 HUD 行为重新放回 Project Status 技能中。

更改规范技能或构建可选 MCP 服务后,请同步包装器:

node scripts/release-sync.mjs sync

CI 和本地预检使用只读漂移检查:

node scripts/release-sync.mjs check

同步操作会以确定性的方式管理包装器清单、包装器技能树、可选的捆绑 MCP 运行时,以及两个仓库市场目录。请勿手动编辑生成的包装器文件。

市场目录使用不同的宿主架构:

  • .agents/plugins/marketplace.json 是 OpenAI/Codex 仓库市场目录。
  • .claude-plugin/marketplace.json 是 Claude Code 市场目录。

OpenAI 插件始终包含 .codex-plugin/plugin.json。只有在 packages/mcp/dist/index.js 是经过验证的自包含捆绑包,且其锁定的构建元数据存在时,两个插件清单才会声明 mcpServers;否则会省略 MCP 组件,而不是指向无效路径。生成的包装器会打包该单一捆绑入口点和共享核心运行时,不包含 node_modules、软件包安装步骤、源映射或声明文件。

RunGlance 和 RunGlance HUD

RunGlance 需要 Node.js 20+,且不使用运行时依赖、网络调用、模型调用、API 密钥、远程存储或 Shell 求值。设置过程可检查,且仅涉及仓库本地内容:

node skill/runglance/scripts/runglance.mjs setup plan --json
node skill/runglance/scripts/runglance.mjs setup instructions --host codex
node skill/runglance/scripts/runglance.mjs setup instructions --host claude
node skill/runglance/scripts/runglance.mjs setup instructions --host generic

setup guided 仍为只读。setup apply --project-root <dir> --host <host> 只会在该仓库中写入 .runglance/setup.json;宿主级钩子或状态行设置仍需另行获得用户授权。

无需 MCP 即可直接运行,以启动、渲染、验证并结束:

node skill/runglance/scripts/runglance.mjs start --name "Release verification"
node skill/runglance/scripts/runglance.mjs watch --preset compact --interval 1000
node skill/runglance/scripts/runglance.mjs verify --name "Unit tests" -- npm run test:unit
node skill/runglance/scripts/runglance.mjs finish \
  --outcome complete \
  --summary "Activity stream verified" \
  --final-summary verified

默认的 compact RunGlance HUD 会显示最有用的关键上下文。standard 会展开 Running 和 Finished 工作,swarm 会纳入委派 Agent,diagnostic 则会显示故障排查详情。watch 只会在有用时每秒刷新一次本地快照,不消耗模型令牌或 MCP 调用。渲染器会在简单终端中降级为 ASCII,并在 stdout 不支持交互时输出静态内容。

适配器可接收来自 Codex hooks/App Server、Claude hooks/status line 或任何严格通用生产者的规范化事件。每项指标都会保留其 exact、derived、estimated 或 unknown 真实性分类。运行时状态受到权限限制、有界且经过脱敏,并排除提示词、转录内容、环境变量、原始工具参数、凭据和源文件。

最终摘要可配置为 off、concise 或 verified。已验证回执包含修复内容、记录的检查、安全的本地重跑命令、剩余工作、经过时间和 Agent 数量。公共活动 API 和 MCP 投影不会公开重跑参数和命令输出;这些仅属于受信任的本地 CLI 界面。

可选的 runglance-mcp 入口点仅公开 runglance_get_status、runglance_list_work、runglance_get_usage、runglance_get_locks 和 runglance://status。它是查询辅助工具,并非 HUD 刷新引擎:

npm run build --prefix packages/mcp
RUNGLANCE_RUNTIME_DIR=/absolute/runtime/path node packages/mcp/dist/runglance-index.js

生成的 OpenAI 和 Claude RunGlance 插件包含标准 .mcp.json 描述文件。因此,安装时可使用各宿主的常规连接授权界面;无需 API 密钥、订阅、远程账户或付费服务。

开发与验证

CI 使用 Node.js 22。安装根应用依赖,在可选 MCP 包存在时构建该包,同步生成的封装,构建 Sites 输出,并运行完整测试套件:

npm ci
npm ci --prefix packages/mcp
npm run build --prefix packages/mcp
node scripts/release-sync.mjs sync
npm run build
node --test tests/*.test.mjs
node scripts/release-check.mjs

仅当存在可选包时,才运行 packages/mcp 命令。npm run build 会生成 Sites 交付文件:

  • dist/client/index.html
  • dist/server/index.js
  • dist/.openai/hosting.json

scripts/release-check.mjs 会验证封装是否存在偏差、版本是否一致、特定主机的 marketplace 和清单结构、MCP 捆绑包边界、包安全性、更新日志覆盖情况、确定性归档计划、包标识、命名空间、公开政策文件,以及创始人发布授权。两个可发布的 MCP 包都会在 prepublishOnly 阶段运行 scripts/assert-publish-ready.mjs。在 LLC 注册完成之前,npm 发布需经创始人授权;实际发布请求仍由注册表执行账户身份验证,而提供方 marketplace 审核属于独立工作流,不会阻止 npm 发布。测试套件还会将两个插件归档解压到隔离的临时目录中,并执行固定版本的 MCP 握手,以及就绪状态和活动工具调用,无需安装依赖。

第三方声明根据固定版本的运行时依赖图生成,而非完整的开发工具链:

npm run notices:plan
node scripts/third-party-notices.mjs build
npm run notices:verify

生成器涵盖站点运行时和捆绑的 MCP 运行时,保留每份不同的上游许可证文本,并以确定性方式生成 THIRD_PARTY_NOTICES.md。打包时,如果仓库缺少 LICENSE、隐私、条款、安全、支持和声明文件,则不会生成发布归档;每个 ZIP 都会包含这些文件。

构建确定性分发包

检查包计划,但不写入文件:

node scripts/package-skill.mjs plan

构建到默认的忽略/本地制品目录,或选择其他目录:

node scripts/package-skill.mjs build
node scripts/package-skill.mjs build --output /tmp/project-status-artifacts

现有输出不会被隐式替换。仅在确实需要替换时使用 --replace。使用以下命令,根据全新的确定性计划验证先前构建的文件:

node scripts/package-skill.mjs verify --output /tmp/project-status-artifacts

输出文件集如下:

  • project-status-portable-claude-skill.zip
  • project-status-openai-plugin.zip
  • project-status-claude-plugin.zip
  • checksums.json

每个 ZIP 都包含 MANIFEST.sha256。构建器会拒绝符号链接、路径遍历、绝对路径、测试文件、依赖树、.env 文件、嵌入的用户主目录路径,以及常见的机密格式。归档条目顺序、元数据、模式、JSON 格式和文件字节都是确定性的。

RunGlance 具有相同的计划/构建/验证约定:

node scripts/package-runglance.mjs plan
node scripts/package-runglance.mjs build
node scripts/package-runglance.mjs verify

其输出文件集为 runglance-portable-claude-skill.zip、runglance-openai-plugin.zip、runglance-claude-plugin.zip 和 checksums.json。

本地 marketplace 安装

安装会更改主机状态,因此有意与构建或验证此仓库分开。用户可以从可信的检出目录使用主机 CLI 选择加入。

对于 Codex:

codex plugin marketplace add .
codex plugin add project-status@project-status-initiative
codex plugin add runglance@project-status-initiative

对于 Claude Code:

claude plugin marketplace add .
claude plugin install project-status@project-status-initiative
claude plugin install runglance@project-status-initiative

安装前请检查生成的清单和技能内容。Marketplace 插件属于受信任代码,尤其是在包含可选本地 MCP 服务时。

版本管理与发布门槛

发行版本记录在 VERSION、两个规范组件元数据文件、生成的插件清单、Claude 市场条目、MCP 和监控配套包以及归档校验和中。node scripts/release-check.mjs 要求这些版本保持一致。发布版本 1.2.1 是一个与来源记录保持一致的补丁版本,涵盖在 v1.2.0 之后合并的、由创始人运营的发布门禁和规范化 npm CLI 清单;1.2.0 系列此前已取代未发布的 1.1.0 来源标识符,因为该标识符与缓存中一个存在实质差异的 Project Status 发行版本冲突。

publisher/publisher.json 是 https://openlyuseful.org/publisher/manifest.json 的仓库镜像/使用方。Openly Useful 是发布方/开发者品牌。Openly Useful LLC 是计划中的发布方、运营方和被许可方,但目前仍待完成设立,不得描述为已成立。.org 身份是规范的开源、发布方、政策、安全和支持入口;.com 是工作室/商业身份。组件元数据指向规范的公开 https://github.com/Openly-Useful/project-status 仓库和 https://openlyuseful.org/support。

RunGlance 仅由创始人编写,所有权也始终归创始人个人所有。目前,Openly Useful 由创始人个人运营;在 LLC 设立完成之前,创始人直接授权开源项目和 npm 包的发布。无需进行知识产权转让、所有权转移或所有权核验;未来成立的 LLC 可在有文件记录的创始人授权下发布、运营和许可 RunGlance,而无需成为版权所有者。

本地发行就绪状态与 npm 包就绪状态是两个独立信号。distributionReady 涵盖源代码、生成的封装、许可证/声明、政策、元数据和确定性软件包。publishReady 还要求:

  1. 在 LLC 设立待完成期间生效的创始人所有者直接授权;
  2. 精确的 npm 包和 MCP 命名空间约定;
  3. 规范的隐私、条款、安全和支持政策文件;
  4. 当前许可证、声明、生成的封装、测试和确定性软件包计划。

静态就绪状态结果不会虚构账户身份验证。实际发起注册表请求时,npm 会单独执行身份验证。

OpenAI/Claude 提供商审核、市场提交、MCP Registry 提交、部署和未来 LLC 运营均属于独立工作流。npm 就绪状态不会推定这些事项中的任何一项,提供商审核也不会阻碍 npm 发布。

仓库包含未经修改的 Apache License 2.0 文本和确定性的第三方声明包。Apache-2.0 不要求在许可证文本中加入项目专属的版权持有人/年份占位符。

请参阅 CHANGELOG.md 了解发布历史,并参阅 PROVENANCE.md 查看留存的源代码和所有权记录。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。