LyraZeta

个人站

十年寒窗无人问,一举成名天下知


阿丘科技——工作日志

阿丘科技实习工作日志,6.22周一入职

周报_W01

本周开发进度:

  1. 浏览学习钉钉的文件、知识库等,了解团队架构、熟悉团队项目;
  2. 完成 aqvision、aidi 的软件安装、授权获取,整理相关资料,梳理学习路径脉络;
  3. 学习 aqvison 中软件主界面操作、导入导出、用户权限管理、通信系统的系列视频并进行一些实操;为便于 examples 示例学习,转换教程中2.1版本的 aqvision 文件 .aqcfg 为 2.5 版本文件. aqproj 方便后续进行实操。

下周开发计划:

  1. 完成 aqvision 所有示例学习,完成 aidi 模型训练等重要部分学习;
  2. 调研熟悉 openhands 整体架构及其目前在项目中的完善进度;
  3. 接触目前 agent 构建目标和构建方案,同时上手一些 agent 开发工作。

周报_W02

请假

Thursday 2026.6.25

  1. 跟前任交接,了解项目(基于 openhands )整体框架,更细的还需要后续AI解读;
  2. 学习 AQVISION 教程视频。

Friday 2026.6.26

  1. 学习 AIDI 教程视频,包括分割、分类、检测、字符识别、定位、装配检查等模块的使用方法;
  2. VPN 账号通过审批,连接服务器大致查看项目文件,等待 git 权限审批。

Monday 2026.6.29

  1. 开会讨论工作交接;
  2. 获取授权,连接服务器梳理 OpenHands-AQV 文件项目大纲。

Tuesday 2026.6.30

  1. 构建项目文件树pdf文件,逐步细致地学习整个项目,梳理其构建状态。进一步熟悉 OpenHands-AQV 项目的整体目录结构,了解项目由 OpenHands 定制部署、AQV 运行时配置、知识库、用户上传工程目录和运行数据目录等部分组成。
  2. 交接工作中明确了后续接手时的主要推进点,涉及前任接入 MCP 尝试失败的情况与可能原因。

Wednesday 2026.7.1

  1. 更换电脑,迁移后续所需环境,学习前任解决问题的流程;
  2. 调研多 agent 架构在后续做 agent sdk 中的可行性。

周报_W03

上周任务目标:

  1. 在前期交接基础上继续熟悉 OpenHands-AQV 项目结构,降低后续排障和版本管理成本;
  2. 调研 OpenHands 工具能力扩展方向,重点关注 AQV 集成路径;

本周开发进度:

  1. 持续推进 OpenHands-AQV 项目问题修复与运行稳定性优化:梳理 git status --short 中大量未跟踪文件的来源,归类非源码运行产物并补充到 .gitignore
  2. 针对“用户询问 AIDI 等没有对应知识库的问题时,agent 出现幻觉”的问题,迭代了多版回答约束策略。从严格提示“未查到知识库闭环”,调整为输出更自然的证据状态,并在后续继续收紧依据知识库回答的限制,使回答边界更清晰;
  3. 实现 OpenHands 文生图能力;
  4. 解决服务端运行稳定性问题:针对服务器内存持续增长,增加不活跃 agent 清理机制,清理时限设置为 2 天;针对多个沙箱并发创建时可能抢占同一宿主机端口的问题,在沙箱创建关键步骤中增加锁,保证旧沙箱暂停检查、端口占用查询、端口分配和 Docker 容器创建过程串行执行;
  5. 持续熟悉项目工程链路与交接内容:学习 .ts.tsx 与构建后 .js 文件的关系,理解容器内热补丁的适用场景;阅读 CodeAgent 交接文档,完成代码 clone 和环境配置,初步明确 CodeAgent 通过维护 .aqvision 目录、打包发布并替换 AQVISION 安装目录文件,从而在 C# 脚本工具中增加“AI 代码助手”功能的整体流程。

下周开发计划:

  1. 继续维护 OpenHands 的问题;
  2. 深入阅读并运行 CodeAgent 项目,熟悉其打包发布、文件替换和 C# 脚本工具扩展机制,为后续功能维护或二次开发做准备;
  3. 继续推进 AQV 集成 OpenHands 的技术方案调研,包括codex的技术栈(本地运行方式和工具集成方式)、知识库的部署方案等。

Thursday 2026.7.2

请假

Friday 2026.7.3

  1. 理解并整理了 git status --short 中大量 ?? 的含义:?? 表示 Git 未跟踪文件,不代表正式源码被修改。本项目中这些文件主要包括部署配置备份、.bak-* 备份文件、前端 build 产物、日志、PID 文件和旧 workspace 备份等,多数来源于历史排障、部署回滚或运行过程。基于这次梳理,对 changes 中的非源码运行产物进行了筛选归类,并将这类不应进入版本管理的文件模式并入 .gitignore,有助于后续保持工作区干净,降低误判代码变更的风险。

  2. 修正问题:针对“用户询问AIDI等没有对应知识库的问题时,agent出现幻觉”的问题进行了约束,在Agent设定出增加了硬规则。第一版规则过于严格,会机械提示:未查到知识库闭环;第二版宽松一些依旧有幻觉;第三版考虑不再输出长免责声明,而是给出证据状态:能解释/回答……,不能确认……

  3. 后续考虑改服务端,普通代码的解释、撰写或者通用问题不需要风险提示,优点是:回答边界更统一、更稳定。

Saturday 2026.7.4

  1. 梳理了 .ts.tsx 和构建后 .js 文件的区别:.ts 主要承载 TypeScript 逻辑、类型定义和工具函数;.tsx 用于包含 React JSX 的页面或组件;浏览器最终执行的则是构建后生成的 .js chunk,例如 should-render-event-U_I5Oxvk.js。理解这条链路后,后续遇到前端线上报错时,可以更准确地从构建产物回溯到对应源码位置。

  2. 学习了“容器内热补丁”的作用模式:它是在不修改源码、不重建镜像的情况下,直接修改运行中容器里的构建产物,以便快速修复线上问题。这种方式适合紧急止血,但不适合作为长期方案,因为容器重建后会丢失,也不容易被 Git 追踪。后续项目中可以先使用热补丁快速看效果,达到预期再将修复沉淀到源码、构建流程和镜像发布链路中。

  3. 调研 openhands 无法进行文生图任务的原因:openhands没有注册“图片生成工具”,调用的模型虽然有图片生成能力,但是不能通过当前普通文本对话链路自动落成图片文件。目前正在增加此功能,初步构建解决路径: 用户说:生成图片 -> agent 调用 image_generation 工具 -> 工具使用当前会话的 base_url / api_key / gpt-5.5 -> 调用 Responses API 的 image_generation 能力 -> 拿到图片 base64 -> 保存到 /workspace/project/outputs/<conversation_id>/xxx.png -> 前端展示下载/预览路径 目前已经可以生成图像,但是只能给出路径……

Monday 2026.7.6

  1. 优化文生图功能:模型收到文生图指令后,会生成图片链接供用户下载。
  2. 调研AQV中集成 openhands 的技术路径。

Tuesday 2026.7.7

  1. 解决服务器内存增长问题:增加不活跃 agent 清理机制,清理时限2天。
  2. 熟悉 CodeAgent 交接文档,clone 代码并配置此项目需要的一些环境。

Wednesday 2026.7.8

  1. 并发竞争问题与修复:

    问题:不是“10 个沙箱不能同时运行”,而是“10 个沙箱同时创建时,可能抢到同一组宿主机端口”。

    修复:加了一把锁,让“创建沙箱的关键步骤”排队执行:

    (1)检查旧沙箱是否需要暂停 (2)查当前已占用端口 (3)分配新端口 (4)创建 Docker 容器

    这几个步骤现在不会被多个请求同时执行。

  2. 重新修复模型对AIDI问题的幻觉,收紧依据知识库回答限制。
  3. 学习CodeAgent 交接文档。

周报_W04

上周任务目标:

  1. 继续维护 OpenHands 项目,跟进运行过程中的问题;
  2. 深入阅读并运行 CodeAgent 项目,熟悉其打包发布、文件替换和 C# 脚本工具扩展机制;
  3. 推进 AQVision 集成 OpenHands 的技术方案调研,重点了解本地工具接入、MCP 通信和知识库部署方式。

本周开发进度:

  1. 围绕 AQVision Agent 集成开展技术调研和开源项目选型,初步确定保留 OpenHands 作为服务器侧主 Agent,并对 C# MCP SDK、FastMCP、MCP Python SDK 的职责及适用场景进行梳理;
  2. 部署并运行 C# MCP SDK 示例,跑通内存传输和 HTTP 通信案例,验证客户端与服务端握手、工具发现及工具调用流程;
  3. 对比中央 Agent 与本地 Agent 两种架构在编排方式、知识库管理、数据隐私、多用户管理、离线能力和运维成本等方面的差异,结合现有部署条件,决定优先通过 FastMCP 构建 AQVision 集成架构;
  4. 为了基于 FastMCP 跑通 AQVISION 日志获取 demo,完成了 OpenHands、服务器侧 MCP 服务和 AQVISION 电脑端之间的整体集成流程搭建。目前核心调用链路已基本形成,剩余问题主要集中在跨网络通信,SSH 隧道尚未跑通,正在尝试 SSH 隧道、调换客户端与服务端角色、使用 WebSocket 三种后续搭建方案。

下周开发计划:

  1. 优先解决服务器与 AQVISION 电脑端之间的跨网络通信问题,继续验证 SSH 隧道方案,并同步评估调换客户端与服务端角色、使用 WebSocket 的可行性;
  2. 完善 FastMCP 与 OpenHands 的集成实现,继续测试请求处理、工具注册、参数绑定、异常处理和连接恢复机制;
  3. 在日志获取 demo 的基础上调研接入更多 AQVISION 实际操作能力的方法。

Thursday 2026.7.9

  1. CodeAgent 项目的流程大概是:维护.\aqvision文件夹下的内容,修改后打包成.\CodeAgent-20260629的形式,发布。
  2. 项目的用途是:在AQVISION的安装目录替换打包后的文件(具体替换方式见\CodeAgent-20260629\更新说明.txt),AQVISION中的(如图)逻辑工具中的C#脚本就会添加“AI代码助手”功能。

IR_Materials IR_Materials

  1. C# 语法学习。
  2. CodeAgent 项目打包流程学习,重点学习项目打包脚本。

Friday 2026.7.10

  1. 围绕 AQVision Agent 集成方案进行了技术调研和开源项目选型。考虑继续保留 OpenHands 作为主 Agent,使用 csharp-sdk 构建 Windows 侧 MCP 接入能力,使用 FastMCP 和 MCP Python SDK 在服务器侧建设中央 MCP Gateway,并使用 MCP Inspector完成接口测试。

Saturday 2026.7.11

  1. 部署并运行 csharp-sdk ,熟悉 MCP 的启动机制,跑通内存传输、HTTP通信案例;验证客户端/服务端握手、工具发现及工具调用流程;后续需要继续测试 MCP 请求处理、工具注册与参数绑定机制。
  2. 撰写了一部分部署手册。

Monday 2026.7.13

  1. 对比fastmcpcsharp-sdk,决定通过 fastmcp构建集成架构。
  2. 对比表
对比项 中央 Agent 本地 Agent
Agent 编排 服务器 OpenHands AQVision 电脑
MCP 入口 服务器 FastMCP 本地 MCP C# SDK
AQVision Plugin 本地 本地
Edge Connector 本地轻量执行 本地完整服务
知识库 服务器统一管理 每台电脑同步
大模型 服务器调用 本地直接调用远程或本地模型
多用户管理 容易 需要单独建设
离线能力 较弱 较强
数据隐私 数据可能上传服务器 可完全留在现场
运维成本 较低 较高

Tuesday 2026.7.14

  1. 通过 fastmcp 的方案跑通一个demo,获取 AQVISION 的日志,正在进行……

Wednesday 2026.7.15

  1. 完成整个集成流程的搭建,ssh 隧道部分未跑通。完整流程如图:

IR_Materials

  1. 待验证的通信的3钟思路: (1) ssh 隧道做内网穿透; (2) 调换 client 和 server (目前是openhands作为client,PC端作为server); (3) 使用 websocket.

Thursday 2026.7.16

  • 最终目标:将 OpenHands 智能体直接集成进 AQVISION,用户通过软件内置对话框完成提问、日志分析、工具调用和操作确认。
  • 已完成验证:OpenHands 已能通过 FastMCP 和 SSH 隧道读取 Windows 上的 AQVISION 日志,并由 GPT 分析。
  • 旧方案问题:SSH 隧道、固定端口和 Linux TCP 代理只适合单机测试,难以支持大量用户和设备。
  • 正式技术路线:AQVISION 安装 Windows Connector,由其主动通过 WSS/443 连接企业服务器;服务器 MCP 网关按用户、组织、设备和会话将任务路由到正确客户端。
  • 保留能力:日志读取、MCP 工具定义、参数校验、脱敏、OpenHands 工具调用、GPT 分析及 Keycloak/Postgres/Redis。
  • 替换部分:SSH 隧道和 TCP 代理改为 WSS 长连接,Watchdog 改为 Windows 服务,OpenHands 网页入口改为 AQVISION 内置对话框。
  • 实施顺序:定义通信协议 → 开发设备连接网关 → 开发 C# Connector → 集成 AQVISION 对话框。

IR_Materials

Friday 2026.7.17

  1. 熟悉 CodeAgent 的内容,便于后续维护。可修补的问题:Csharp端不会把界面历史消息填入请求,即没有记忆。
  2. 解决 openhands 会话错误加载旧规则导致幻觉问题。