内容
# 计划台
**本地优先、可自行托管的计划工作空间** — 画布 + 节点文档 + 任务 + 看板 + MCP,用于产品团队和代理工作流。
计划台是一款图原生计划应用程序,您可以在本地计算机上运行:映射流程画布上的依赖关系,附加规格到节点,跟踪看板上的状态,并让 Claude Code 或 Codex 通过 MCP 读取和更新计划。数据存储在本地 SQLite 工作空间中;导出/导入保持项目可移植。
## 使用编码代理设置
让您的代理将计划台连接到当前仓库。从您的项目文件夹中,粘贴到 Claude Code(或 Codex):
```text
阅读 https://plandesk.asyncdot.com/start.md 然后为此项目设置计划台。
```
它安装了 CLI,启动本地服务器,创建或绑定项目,并验证 — 限定在您的文件夹中,无需提交机密。然后,从实时图谱开始一个新的会话进行规划和构建。演练:[从创意到开发与 Claude Code](https://plandesk.asyncdot.com/guides/idea-to-development/)。
## 文档
📖 **[plandesk.asyncdot.com](https://plandesk.asyncdot.com)** — 主机文档:快速入门,Docker 自行托管,MCP/代理设置,CLI 参考,API,架构和验证。
使用 Astro Starlight 在 [`apps/docs`](apps/docs/) 中构建:
```bash
pnpm --filter @plandesk/docs dev # http://localhost:4321
pnpm --filter @plandesk/docs build # 静态网站在 apps/docs/dist/
```
## 快速入门
```bash
npm i -g @plandesk/cli
plandesk init
plandesk serve
```
打开 [http://127.0.0.1:3847](http://127.0.0.1:3847)。
**从源码(贡献者):**
```bash
git clone https://github.com/asyncdotengineering/plandesk
cd plandesk
pnpm install && pnpm build
export PATH="$PWD/packages/plandesk-cli/bin:$PATH"
plandesk init
plandesk serve
```
## 开发
```bash
pnpm build # 编译所有软件包 + 网络资产 + 文档
pnpm test # 单元测试 + 集成测试
pnpm lint # ESLint + Prettier
pnpm validate # 实时健康 + MCP 烟雾测试
pnpm metrics # v1 性能目标
```
## 路线图
### 已发布 (`@plandesk/*` 0.4.0)
本地优先的计划工作空间:具有标记依赖边的流程画布,节点规格,卡板,看板,项目备注,27 个 MCP 工具(包括 `scaffold_project_from_plan`,`get_next_task`,文档注释),无损导出/导入,Docker 自行托管 — 以及下面的客户端协作层。
### 已发布 0.4.0 — 客户端协作
与外部客户端或另一个团队共享项目,并在不放弃本地优先创作的情况下进行双向协作。在 [`rfcs/client-collaboration-sync/`](rfcs/client-collaboration-sync/) 中有完整设计。**第 1-5 阶段发布完整的客户端 + 所有者 + 代理 + 实时循环:**
- **只读门户** — 访客打开共享链接并看到策划的 **允许列表** 投影(图谱 + 看板 + 共享文档)。内部数据在结构上不存在,从不过滤。
- **命名加入 + 身份** — 类似 Zoom 的“输入您的姓名”加入 → 有范围的、会话门控的视图;邀请范围限定或公共;追加活动/审计日志。
- **审核问题接收** — 访客将问题提交到 **提案收件箱**,该收件箱永远不会触及事实的源头;所有者拉取和分类。
- **拉取 → 分类 → 任务** — `plandesk pull` 将提交内容带入本地分类收件箱;**接受** 通过正常写入路径创建真实任务(因此代理可以 `get_next_task`);状态确认返回给访客。由 CLI(`publish`/`push`/`pull`/`sync --watch`/`share create`)和 5 个 MCP 工具驱动。
- **实时状态返回** — 所有者画布上的更改通过 SSE 在 ~2 秒内传播到访客的门户,无需重新加载。
- **代理辅助部署** — `plandesk deploy cloudflare | claude` 向编码代理提供托管的、接地的运行手册,该手册在 Cloudflare Workers + D1 + Pages 上建立自己的同步服务器。参见 [协作与同步](https://plandesk.asyncdot.com/reference/collaboration/)。
### 待办 — 第 6 阶段:多租户强化
将协作层转变为真正的多租户产品。**尚未构建** — 如果此处出错,则为跨租户数据泄漏(`tenant_isolation` 是一个无法发布的测试失败):
- **组织/租户模型** — 主机同步服务器上的 `orgs`、`org_members`、`project_members`。
- **关闭租户范围** — 每个主机查询都带有 `org_id` 或抛出;原始 DB 客户端在范围模块之外无法访问,因此“忘记 `WHERE org_id`”无法编译。
- **组织内项目隔离** — 成员资格 ACL,以便一个组织中的团队仅查看他们共享的项目。
- **每个受众的撤销/过期** — 撤销一个共享使其缓存的投影 + 打开的 SSE 无需触及兄弟节点。
(代理辅助自行部署在 0.4.0 中发布为 `plandesk deploy` — 一个主机连接器规范,代理运行,而不是捆绑的配置程序;参见 [RFC Delta 06](rfcs/client-collaboration-sync/06-c21-deploy-connector-delta.md).)
较小的后续工作:魔术链接邀请验证(当前邀请检查信任输入的电子邮件),跨实例 SSE 发布/订阅用于多副本部署,以及 `sync --watch` 自动重新连接。
## 许可证
私有 / 参见仓库所有者。