InPlan 交互式规划编辑器
先与编码智能体共同定稿可审查的 Markdown 计划,再开始实现。
- Star 数
- ★ 24
- 最近更新
- 3 天前
- License
- AGPL-3.0
- 主语言
- TypeScript
- FA 评分
- 64/100 · 存在缺口
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台Claude CodeCodex(部分支持)
- 费用
- 有免费版,另有付费云服务
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 准备重写认证系统的开发者,可先让编码智能体起草需求、迁移边界和待确认问题,再逐项审阅后实施。
- 不适合
- 需要完全离线、不能安装 agent 技能或钩子的团队
- 在 Windows 上依赖稳定体验的用户(主要只在 macOS 测试)
- 不愿接受 AGPL 传染性条款的闭源或 SaaS 团队
- 源码审查
- 64/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
InPlan 是一个面向人类与编码智能体协作的 Markdown 规划工作区,目标是在写代码之前把模糊需求收敛为版本化规格。仓库由 @inplan/core、@inplan/cli 和 @inplan/app 三部分组成,分别提供可嵌入的编辑及计划格式逻辑、智能体侧命令,以及面向人的 Electron 桌面编辑器。编码智能体通过随包安装的 skill 和 inplan open、inplan wait、inplan signal 等命令驱动协作循环;用户则在编辑器中回复行内评论、选择答案或直接修改正文。最终产物是普通 Markdown 文件,其中评论保存在一个尾部 HTML 注释内的 JSON 数组中,因此可由 Git 跟踪并在代码审查中查看差异。项目提供可自行运行的开放核心以及托管版 inplan.ai,但当前主要在 macOS、轮次模式和 Claude Code 组合上开发与测试。
智能体先创建 <name>.plan.md,在 Markdown 正文中编写需求结构,并用形如 [文本](#cmt-id) 的链接标记评论范围;评论、回复、文档级评论和选择题数据统一存入文件末尾的 <!--inplan ... --> JSON 块。随后它运行 inplan open <file> 打开桌面编辑器并等待用户操作。用户可以回复评论、选择选项或直接编辑计划,并选择 Auto-accept 或 Review、Turn 或 Instant 工作方式。智能体读取这些修改,修订计划并继续讨论;inplan wait <file> 用于等待下一次操作,inplan signal <file> --done 用于建议计划已就绪,但最终决定仍由用户作出。编辑器把控制日志、规范基线和备份存放在 ~/.inplan/sidecars/<key>,而可提交、审阅和传递给实现阶段的输出仍是 Markdown 计划文件。
- 准备重写认证系统的开发者,可先让编码智能体起草需求、迁移边界和待确认问题,再逐项审阅后实施。
- 需求仍有歧义的工程团队,可在同一份 Markdown 计划中通过行内评论记录答案、理由和后续修订。
- 需要控制智能体改动的资深工程师,可启用 Review 和 Turn 模式,在每轮计划变更后检查差异。
- 希望提高快速原型可追溯性的个人开发者,可把临时对话转化为能够进入 Git、长期保留的版本化规格。
- 产品经理、开发者与架构师需要共享实施依据时,可围绕同一计划分别补充需求、实现细节和架构决策。
- 受限网络、隔离环境或源码开发场景中的团队,可运行开放核心,并通过环境变量文档调整启动与 sidecar 路径。
如何安装或部署这个 Agent?
前提是 Node.js 22 或更高版本。常规安装:npm install -g inplan,然后运行 inplan --version 验证。该安装会提供 inplan 命令、由 inplan open 启动的桌面编辑器,并尝试为检测到的 Claude Code、Pi 和 Codex 安装 agent skill;如需跳过自动安装,可设置 INPLAN_NO_SKILL_INSTALL=1,之后运行 inplan install-skill。从源码开发时执行:git clone https://github.com/melly-lgtm/inplan.git,cd inplan,npm install,npm run build。源码检出环境可用 INPLAN_APP_CMD 指向构建后的 @inplan/app,或通过 npm run dev -w @inplan/app 单独运行编辑器。
如何使用这个 Agent?
安装后,用自然语言要求受支持的编码智能体规划具体工作,例如“Plan the auth rewrite with me.”。skill 会让智能体创建 <name>.plan.md,调用 inplan open <file> 并在文档中提出行内问题。你在桌面编辑器中回复评论、选择 choice chip 或直接修改文本,然后审阅智能体下一轮修订。底层命令包括 inplan open <file>、inplan wait <file> 和 inplan signal <file> --done。如果没有自动检测到智能体,可让它读取随包提供的 skill/SKILL.md,前提是该智能体能够执行 inplan CLI。
这个 Agent 有哪些优点和局限?
- 计划、评论和决策记录保存在同一个可读的 Markdown 文件中,可由 Git 版本化并像代码变更一样审阅差异。
- 同时提供自动接受与逐项审阅、轮次与即时模式,可按风险选择不同的人类监督强度。
@inplan/core、CLI 和 Electron 应用边界明确,既能使用打包桌面体验,也为嵌入或源码运行提供基础。- 通过 skill 和 CLI 串联 Claude Code、Codex 与 Pi,而不是把规划流程绑定到单一模型提供商。
- 需要 Node.js 22 或更高版本,并依赖本地 shell、文件系统和能够执行 CLI 的编码智能体。
- 目前主要开发和测试组合是 macOS、Turn 模式和 Claude Code;Windows、Instant、Codex 与 Pi 仅轻度验证,可能存在粗糙环节。
- 评论采用专用的 Markdown 链接及尾部 JSON 注释格式;其他编辑器虽然能显示正文和差异,但未必理解其交互语义。
- 采用 AGPL-3.0-or-later 开源许可;希望用于专有产品或不受 AGPL copyleft 约束的 SaaS 团队需要另行取得商业许可。
- 安装过程会检测并写入编码智能体的 skill 与 hooks;不希望自动修改这些环境的用户需要设置
INPLAN_NO_SKILL_INSTALL=1。
这个 Agent 与同类方案有什么区别?
相较于只依赖线性聊天记录的编码流程,InPlan 把需求、问题、回答和修订集中到一份可版本化的 Markdown 规格中,并提供类似文档评论与代码审查的差异确认机制。它并非代码生成模型的替代品,而是位于人类与现有编码智能体之间的规划和决策层。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| InPlan 交互式规划编辑器 当前 | 64 · 存在缺口 | 命令行工具免费版 + 付费版 | ★ 24 | 3 天前 | TypeScript | Claude Code |
| Pilot Shell | 70 · 存在缺口 | 命令行工具付费 | ★ 2.1k | 今天 | Shell | Claude Code |
| Aegis 方法包 | 74 · 存在缺口 | Agent 插件 / 技能免费 + 模型费 | ★ 1.4k | 4 天前 | Python | Codex |
| JS Mastery 工程工作流技能包 | 71 · 存在缺口 | Agent 插件 / 技能免费 + 模型费 | ★ 1.6k | 3 个月前 | JavaScript | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
技能把自动批准限定在 plan 文件、~/.inplan sidecars 与 inplan CLI,并让人通过编辑器检查计划变更;云登录明确要求由用户在浏览器完成,遥测测试片段也显示需 opt-in、使用临时 ID 且不含 PII,支持一定的确认和隐私处理。扣分原因是权限仍包含 Bash(inplan *) 和自动安装 npm 包,技能还会编辑 sidecars;包安装会部署技能到检测到的 agent,外部云请求和 Electron 下载也有影响,但材料未完整说明全部数据流、凭据存储与恢复路径。依赖风险有锁文件检查和 CI 信息,但没有依赖审计证据。发布者身份未知,且 CLA/贡献流程虽有提及,未给出可核实的维护责任人。
README、技能和包脚本对 CLI、桌面编辑器与云端工作流的描述大体连贯;技能对 Electron 缺失、离线模式和登录超时给出处理指引,测试片段也覆盖若干状态。扣分原因是 README 承认 Windows、即时模式及 Codex/Pi 仅轻度验证,且来源包未包含完整源码、完整测试结果或执行证据;因此普通故障处理有支持但不能评为全面。
材料明确面向使用编码代理共同撰写计划的个人和团队,也列出 Claude Code、Codex、Pi、macOS/Windows 及不同协作节奏。技能将用途界定为共同开发规格,并区分已达成规格后的任务拆解。扣分原因是“任何规划请求”都会触发,覆盖面宽;支持范围虽有说明,但较少描述不适用场景,且环境支持在不同组合上的成熟度不一。
README 提供清晰的信息结构、安装和 Node.js 版本要求、快速开始、格式示例、快捷键及环境变量文档入口,并明确列出已知支持限制。AGPL-3.0-or-later 与商业许可安排有说明,LICENSE 文件呈现 AGPL 文本。扣分原因是给定材料未提供发布变更日志或版本维护政策;发布者身份未知,贡献和 CLA 说明也不足以确认持续维护责任。
产品输出是可在普通 Markdown 工具中查看和 diff 的计划文档,内联评论、问题选项及审阅式变更流程对协作有直接用途。扣分原因是收益主要由 README 描述,材料不足以独立支持其关于正确性提升的效果主张;额外桌面应用、安装和协作步骤也增加使用成本。
README、技能、包脚本和测试片段对若干安装、隐私、会话及构建行为提供了具体线索,部分测试意图可追溯到代码行为。扣分原因是证据包是抽样且截断的,测试仅作为源文件呈现而非运行结果;博客中的量化效果主张在所给材料中没有配套数据或方法细节。文件明确标注的支持成熟度和 opt-in 遥测可与推断区分,但整体交叉佐证仍有限。
- 技能允许代理自动安装 inplan(npm install -g)并在计划工作流中修改限定目录;检查执行代理的命令策略和全局 npm 安装权限。
- 遥测测试片段描述了 opt-in 匿名事件,但当前包未包含完整遥测实现或配置说明;使用前应核对实际构建配置。
- README 表示 Windows、即时模式及 Codex/Pi 支持仅经轻度验证;这些组合可能存在粗糙边缘。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
v0.3.0 v0.3.0 — an agent can put an image in a cloud doc
发布说明摘录
Minor. Adds a capability agents didn't have, and changes what the skill tells them to do. asset-upload reaches the docs agents actually attach to (#114) It resolved its doc id from the status sidecar — which only a promoted local file has. A doc attached by wait --remote <docId> has no status file, and --remote wasn't a recognized route either: it fell through to the generic remote handler and ran a *sync* instead of an upload. …在 GitHub 查看 ↗ -
v0.2.2 v0.2.2 — a switched tab is no longer a crashed editor
发布说明摘录
Patch release. Fixes a bug in the loop the CLI exists for — everyone on 0.2.1 is affected. A switched tab was reported as a crashed editor inplan wait --remote returned closed / crashed_or_killed right after a normal review-mode accept, while the same response's own entries showed the turn completing cleanly. Reconnecting closed again immediately, appending one agent_revised per attempt instead of blocking for the human — so the collaboration loop ended itself and then spun. …在 GitHub 查看 ↗ -
v0.2.1 v0.2.1 — sign-in stops reporting success it hasn't verified
发布说明摘录
Patch release. No interface changes, and no older-CLI-versus-current-host incompatibility — unlike 0.2.0, where upgrading was required against row-backed hosts. inplan login now proves the credential it stores The rendezvous handoff carries a single-use refresh token, and the sign-in page rotates the session it just sealed — so the token can arrive already spent. The only code that would have noticed was persistCloudIdentity, whose catch {} swallowed it. Login printed {"status":"logged_in"} and the failure resurfaced later as an unexplained "not logged in" on an unrelated command. …在 GitHub 查看 ↗
常见问题
它可以完全在本地运行吗?
是否必须使用 Claude Code?
inplan CLI 的智能体参与。不过 Claude Code 是主要开发和测试目标,Codex 与 Pi 目前仅轻度验证。计划和评论存在哪里?
.plan.md 文件中;评论数据是尾部 HTML 注释中的 JSON 数组。控制日志、规范基线和备份则集中存放在 ~/.inplan/sidecars/<key>。商业或 SaaS 产品能否直接采用?
如果桌面编辑器无法启动会怎样?
INPLAN_APP_CMD 指向构建后的 @inplan/app;否则 CLI 会以 headless 方式运行。也可执行 npm run dev -w @inplan/app 单独启动编辑器。谢谢反馈,我们会据此改进页面。