# flow-mind **Repository Path**: afeiComing/flow-mind ## Basic Information - **Project Name**: flow-mind - **Description**: 智能流程图,自然语言可以生成的 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-09 - **Last Updated**: 2026-08-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # flow-mind > 当前线上版本:`develop` · 线上入口: > > 历史需求、当前实现、线上数据和已知差异见 [`docs/requirements-reconciliation-2026-08.md`](docs/requirements-reconciliation-2026-08.md)。 `flow-mind` 是一个 AI 流程工作台,服务两类用户:业务用户用自然语言和业务 DSL 编排;专业用户直接使用流程图编排。它们共享一个应用、一个服务和一个数据库,但每种创作模式只有一个事实源。 业务 DSL 的基本语言是“人、装置和小组”:单个 Agent 以人形表达职责;收件、确认、交付等确定性步骤以物化对象表达;多个 Agent 协作时以可展开的部门或评审团表达,而不是一串难懂的技术节点。 ## 当前设计基线 ### 分支管理(重要) - **`master` 是生产分支,只用于发布,禁止直接在上面开发或改动代码。** - 所有开发、功能、修复都必须在 `develop` 分支上进行,完成后经测试与构建,再合并到 `master` 发布。 - 分析现状、判断缺口、修改代码时,一律以最新的 `develop` 分支为准,不要以 `master` 为准(`master` 可能落后于 `develop`)。 - 不要因为 `master` 落后就把它合并进 `develop`,以免回退 `develop` 已有的功能;需要合并时先确认方向。 ### 业务模式:DSL 是唯一事实源 业务用户在 DSL 画布和 DSL 助手中描述角色、业务能力、资料、参数、人工确认和治理。用户不能编辑流程图;系统将已确认的 DSL 编译为流程图,供查看、运行和排错。 若编译或运行发现流程图所需的参数缺失,助手必须回到 DSL 层追问。用户补充后,答案保存为新的 DSL revision,再自动重新编译。缺少必填参数时禁止发布和运行。 ### 专业模式:流程图是唯一事实源 专业用户直接在流程图画布和流程图助手中创建、编辑和运行 FlowSpec,不需要 DSL。该模式不反向生成或维护一份可编辑 DSL。 ### 联动查看 业务模式可打开“DSL + 流程图 + 助手”的联动查看视图:DSL 可编辑,流程图只读,助手解释节点映射、版本差异和运行轨迹。它不是第三种创作模式,也不创建第三份流程数据。 ## CLI 与 Skills - `dsl-cli` 与 DSL 操作 Skills 只处理 DSL 节点、文档节点、业务能力、参数、审批、治理、校验和 DSL revision。 - `flow-cli` 与流程图操作 Skills 只处理 FlowSpec 节点、端口、连线、布局、运行和 FlowSpec revision。 - CLI 是服务端的类型化命令适配层,不是任意 Shell 执行入口。Skill 封装命令细节、输入输出 Schema、权限和审计。 - 业务模式中,任何具有业务语义的流程图变更必须先转为并确认 DSL Patch;FlowSpec 不能被直接持久化覆盖 DSL。 ## 文档节点 DSL 的文档节点是非执行节点,且只能关联一个可执行 DSL 节点。它保存该节点的结构化配置、资料引用、说明、约束和参数来源,不拥有控制流边、端口或运行状态。编译器将已确认的配置写入对应执行节点;未确认配置会形成助手追问并阻止运行。 ## 工程边界 - `flow-mind` 是唯一产品仓库。co-agent 提供业务产品语义,flow-study 提供执行画布、节点语义和运行时基础。 - 一个 React Web 应用、一个 FastAPI 进程、一个数据库;不保留旧的跨服务投影、独立模式或第二套模型中心。 - Provider 密钥只在服务端加密保存,不能进入 DSL、FlowSpec、文档节点、聊天、运行事件或浏览器状态。 - 当前实现以本 README、MVP 文档和 `develop` 分支代码为准;每次改动都应完成后端测试、前端测试与构建,再进行目标环境验收。 详见 [MVP 产品文档](<多 Agent 组阁式业务流程平台-MVP产品文档.md>)、[MVP 技术文档](<多 Agent 组阁式业务流程平台-MVP技术文档.md>)、[MVP 实施规格](<多 Agent 组阁式业务流程平台-MVP实施规格.md>) 和 [运行手册](<多 Agent 组阁式业务流程平台-MVP落地状态与运行手册.md>)。 当前可直接访问: - 线上产品: - 线上健康检查: - 本地前端默认:`http://127.0.0.1:5173`(Vite 端口占用时以启动日志为准) - 本地 API 代理默认:`http://127.0.0.1:8080`,也可通过 `FLOWMIND_API` 指定后端地址 完整本地启动、线上部署和验收命令见[当前运行手册](<多 Agent 组阁式业务流程平台-MVP落地状态与运行手册.md>)。 业务模式的视觉与交互原则见 [DSL 画布概念设计](docs/dsl-canvas-concept.md)。 ## 部署 本项目预留阿里云公网端口 `9102`,由 Nginx 提供前端静态文件并代理到同机 `127.0.0.1:9103` 的 FastAPI。部署不使用 Docker;详细步骤、密钥边界、更新和回滚方法见 [阿里云部署说明](docs/aliyun-deployment.md)。 `.env`、SQLite 数据库、运行日志和真实 Provider 密钥均不进入 Git。首次部署必须在目标服务器上生成新的密钥并配置 Provider;已有数据库只能连同其原始加密密钥通过受控备份恢复,不能混入代码仓库。 本机依赖下载受限时,遵循[依赖下载回退流程](docs/dependency-bootstrap.md),使用已核验主机的临时 Python wheelhouse 或 npm cache 离线安装;不要复制远端项目数据或绕过 SSH 主机密钥校验。