为了让你能直接拿着这份需求去和开发团队(或 AI 编码工具)沟通,我将需求分为了三个核心模块:基础工具架 、可视化工作流看板 、AI Agent 调度引擎。
1. 项目概览与技术需求 (Prompt for Developers)
项目名称 : GeoFlow-AI (三维地理空间智能处理平台)
核心目标: 打造一个支持 Web 和 Windows 桌面 (EXE) 的 GIS 处理应用,将离散的 OSGB 处理工具串联为可自动执行的工作流。
技术栈选型建议:
- 前端: React + Ant Design + Zustand (状态管理)
- 跨端: Electron (负责打包 EXE 并调用本地 C++/Python 算法)
- 可视化: Reactflow (用于工作流连线编排)
- 通信 : Node.js
child_process(用于驱动本地 GIS 命令行工具)
2. 模块一:多端合一的工具箱 (Tool-Box UI)
设计目标: 继承 OSGBLab 的功能,但采用更现代的侧边栏导航逻辑。
- 侧边导航: 按照流程图分为
- 功能面板: 点击导航后,右侧平铺对应的功能卡片。
- 交互逻辑 : 点击卡片弹出 Modal(弹窗),包含:
Input Path: 选择metadata.xml或文件夹。Params: 步长、阈值等参数配置。Execution: 点击后在下方显示实时日志(Log Console)。
3. 模块二:工作流编排界面 (Workflow Orchestrator)
设计目标: 允许用户像"连连看"一样组合工具。
- 节点设计: 每一个工具都是一个节点,有输入端和输出端。
- 逻辑流:
- 保存与复用 : 编排好的链路可以保存为
.json格式的工作流模版。
4. 模块三:Agent 自动调用界面 (AI Agent Engine)
设计目标: 用户输入一句话,Agent 自动拆解任务并执行。
- 对话窗口: 类似于 Chat 界面。
- 能力映射: Agent 拥有对"工具箱"内所有函数的调用权(Function Calling)。
- 执行逻辑 :
- 用户指令: ""
- 计划生成: Agent 展示任务链。
- 自动填充参数: Agent 根据数据元数据自动推断坐标系、分辨率等参数。
- 进度追踪: 每一个阶段执行时,界面上的节点会高亮显示进度。
5. 详细功能需求说明书 (可以直接喂给 AI)
需求 1:路径管理与跨端适配
应用需在 Web 端模拟文件上传,在桌面端(Electron)调用
dialog.showOpenDialog获取本地绝对路径。需支持拖拽文件夹到界面自动识别 OSGB 结构。
需求 2:动态表单生成
每个 GIS 工具(如 I-CSF)的参数各不相同,需设计一个
ParameterSchema。点击不同工具时,UI 自动根据 JSON 配置渲染对应的输入框、下拉框和滑动条。
需求 3:本地进程调度 (Agent 核心)
所有的工具实质上是调用外部
.exe或.py。需实现一个任务队列管理器(Job Queue),支持多任务并发执行,并能实时抓取标准输出(Stdout)返回给前端显示。
6. 开发者启动提示词 (Recommended System Prompt)
如果你现在要让其他 AI 帮你写代码,可以复制以下提示词:
Prompt: "请基于 React 和 Electron 开发一个名为 GeoFlow-AI 的 GIS 桌面应用。
- 界面布局: 左侧菜单分为。右侧为功能卡片展示区,参考 OSGBLab 的工具箱风格但需扁平化。
- 核心功能: 实现一个通用的弹窗组件,用于设置工具的输入路径、输出路径和参数。
- 工作流模式: 集成 Reactflow,允许用户通过连线的方式编排的顺序。
- 跨端实现: 请确保代码结构支持条件编译,在 Electron 环境下可以调用本地命令,在浏览器环境下显示 Mock 结果。
- Agent 接口: 预留一个右侧抽屉式对话框,用于未来接入大模型进行任务拆解和自动参数填充。"