软件基本设计书:智能行为克隆与执行系统
- 系统概述
本软件旨在通过“演示-标注-克隆”的流程,让计算机自动学习人类在特定软件中的操作逻辑。它不依赖底层代码注入,而是像人类一样通过“看屏幕”和“动鼠标”来完成任务,属于 AI Agent 的典型应用场景 [1]。 - 模块详细设计
模块一:程序资源管理器 (Program Explorer)
功能描述:满足需求“浏览操作系统所有程序”。
设计逻辑:
文件遍历引擎:启动时扫描操作系统特定目录(如 `Program Files`, `/Applications`)或用户指定路径。
过滤器:仅筛选可执行文件格式(如 `.exe`, `.com`, `.bat`, `.app`)。
UI呈现:采用树状结构或图标网格展示,包含程序名称、图标及路径,支持搜索功能。
模块二:进程追踪与窗口控制器 (Process Tracker & Window Manager)
功能描述:满足需求“点击执行后跟踪画面并最大化”。
设计逻辑:
执行器:用户点击图标后,系统调用系统 API(如 Windows `CreateProcess`)启动目标应用。
句柄捕获:通过进程 ID (PID) 轮询查找其主窗口句柄 (HWND)。
窗口操作:一旦检测到窗口创建,立即发送系统指令(如 `SW_MAXIMIZE`)将其强制最大化,确保视觉识别区域一致。
模块三:多模态行为录制器 (Multimodal Recorder)
功能描述:满足需求“定时与事件触发截屏存盘”。
设计逻辑:
双触发机制:
- 时间触发:后台线程每 1000ms 执行一次全屏/窗口截屏。
- 事件触发:通过系统钩子(Global Hooks)监听鼠标(点击、按下、释放)和键盘事件。一旦检测到动作,立即触发截屏(建议截取动作发生前一帧和后一帧),确保捕捉因果关系。
数据存储结构:建立时序数据库,存储格式为 `(Timestamp, Screenshot_Path, Event_Type, Mouse_Coordinates, Key_Value)`。
模块四:交互式标注工作台 (Interactive Annotation Workbench)
功能描述:满足需求“记录步骤并由人标注目的与意义”。
设计逻辑:
回放界面:以时间轴形式展示录制的“屏幕-动作”流。
标注输入:在关键动作帧旁边提供文本框,要求用户输入:
意图 (Intent):这一步是为了做什么?(例如:“点击文件菜单”)
推理 (Reasoning):为什么要这么做?(例如:“因为需要保存当前文档”)
数据清洗:系统自动剔除无效的静止画面或误操作,生成高质量的 `<State(屏幕), Action(动作), Instruction(指令)>` 训练数据集。
模块五:AI 模拟执行 Agent (AI Simulation Agent)
功能描述:满足需求“模拟学习后跟随执行”。
核心架构:基于 AI Agent 的 Plan-and-Execute(规划与执行) 模式 [1] 设计。
工作流程:
-
感知 (Perception):系统实时截取当前屏幕,传递给多模态大模型(VLM)
-
暂不考虑,也不外包 ++
规划 (Thinking):模型结合用户的标注数据(记忆库),使用 CoT(思维链) [1] 进行推理。++
思考过程:“我现在看到了主界面,根据之前的学习,下一步应该是打开文件菜单。” -
行动 (Action):
系统将推理结果转化为具体的 工具调用。
参考 MCP (Model Context Protocol) 协议 [1] 的思想,将“鼠标点击”、“键盘输入”封装为标准化工具接口,由 Agent 调度执行。 -
反馈循环:执行动作后,再次截屏确认界面变化(例如确认菜单是否弹出),如果失败则触发重试或修正逻辑。
-
推荐技术栈
UI/框架:Python (PyQt 或 Electron)
系统控制:PyAutoGUI (模拟操作), pywin32 (窗口管理), pynput (事件监听)
AI/模型:OpenAI GPT-4o 或开源 LLaVA (图像理解), LangChain (Agent 编排) -
总结
该设计不仅仅是一个自动化脚本,而是一个具备推理能力的智能体。通过模块四的人工标注,您实际上是在为 Agent 构建“经验记忆”;模块五则利用这些记忆,配合 Agent 的规划能力(Plan-and-Execute),实现对复杂操作的稳健模仿和泛化执行。


8


操作系统有指定吗?windows和mac下还是有区别
win跟mac,linux
fara-7b
分开来开发