diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6fe5b34b..eb5bc3ba 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,4 +1,4 @@ -# HomeAgent 主仓 CI。 +# HologramAgent 主仓 CI。 # # 设计原则:**CI 里跑的每一条命令,都是本地已实测通过的命令**。 # 不写「应该有用来试试」的步骤 —— 未验证的 CI 步骤会把假红灯变成常态, @@ -235,11 +235,11 @@ jobs: # # 取值依据(实测 2026-10-21,直连不带代理,非推测): # https://gitcode.com/JianFeeeee/HologramAgent → 200 ← 当前用这个 - # https://gitcode.com/JianFeeeee/HomeAgent → 301 ← 旧名,跳转到上面 + # https://gitcode.com/JianFeeeee/HologramAgent → 301 ← 旧名,跳转到上面 # https://gitcode.com/JianFeeeee/hologramagentsdk → 200(SDK 仓,另一对象) # https://gitcode.com/JianFeeeee/homeagentsdk → 404 # - # 背景:gitcode 侧镜像仓已由 HomeAgent 改名为 HologramAgent(与 GitHub + # 背景:gitcode 侧镜像仓已由 HologramAgent 改名为 HologramAgent(与 GitHub # 主仓同名)。旧地址仍 301 跳转,跟随后也能到达,但走重定向 ⇒ 别再用它。 # 判定两仓同一对象:两地址 git ls-remote 的 refs 列表 md5 相同。 # @@ -263,7 +263,7 @@ jobs: with: # 必须取完整历史:镜像可能在任意旧提交上,快进需要共同祖先。 fetch-depth: 0 - # ★ 改名(HomeAgent → HologramAgent)后的必然过渡态:gitcode 上的镜像仓 + # ★ 改名(HologramAgent → HologramAgent)后的必然过渡态:gitcode 上的镜像仓 # 是**另一个账号下的独立仓库**,改 GitHub 仓名不会自动建出它。 # 若不在这里显式探测,缺少目标仓时只会得到 git 的原始报错 # ("repository not found" 混在 push 输出里),看不出是「仓没建」。 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3806e5b0..ccbfc63e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -308,7 +308,7 @@ jobs: [ "$PRE" = "true" ] && FLAGS+=(--prerelease) gh release create "$TAG" \ --title "$TAG" \ - --notes "HomeAgent $VERSION + --notes "HologramAgent $VERSION 产物清单与校验见 SHA256SUMS。 - \`hologramagent_${VERSION}_linux_amd64.tar.gz\` — 内核 + CLI + GUI 打包 @@ -361,11 +361,11 @@ jobs: # # 取值依据(实测 2026-10-21,直连不带代理,非推测): # https://gitcode.com/JianFeeeee/HologramAgent → 200 ← 当前用这个 - # https://gitcode.com/JianFeeeee/HomeAgent → 301 ← 旧名,跳转到上面 + # https://gitcode.com/JianFeeeee/HologramAgent → 301 ← 旧名,跳转到上面 # https://gitcode.com/JianFeeeee/hologramagentsdk → 200(SDK 仓,另一对象) # https://gitcode.com/JianFeeeee/homeagentsdk → 404 # - # 背景:gitcode 侧镜像仓已由 HomeAgent 改名为 HologramAgent(与 GitHub + # 背景:gitcode 侧镜像仓已由 HologramAgent 改名为 HologramAgent(与 GitHub # 主仓同名)。旧地址仍 301 跳转,跟随后也能到达,但走重定向 ⇒ 别再用它。 # 判定两仓同一对象:两地址 git ls-remote 的 refs 列表 md5 相同。 # @@ -390,7 +390,7 @@ jobs: name: linux-amd64 path: dist # ★ 前置检查:gitcode 镜像仓是否存在。 - # 改名(HomeAgent → HologramAgent)后 gitcode 目标仓需要**人工新建**, + # 改名(HologramAgent → HologramAgent)后 gitcode 目标仓需要**人工新建**, # 不探的话失败会埋在 push/curl 的原始输出里,看不出是「仓没建」。 # 语义:token 未配 = 可选项跳过(上一步);token 有但仓不存在 = 硬失败。 # diff --git a/assets/knowledge/homeagent_architecture/content.md b/assets/knowledge/homeagent_architecture/content.md index 62ec3d9a..b7c17a4b 100644 --- a/assets/knowledge/homeagent_architecture/content.md +++ b/assets/knowledge/homeagent_architecture/content.md @@ -1,8 +1,8 @@ -HomeAgent 是完全独立自研的新一代 Agent 框架。 +HologramAgent 是完全独立自研的新一代 Agent 框架。 ## 架构总览 -HomeAgent 采用内核 + 插件双层架构: +HologramAgent 采用内核 + 插件双层架构: ``` 外部输入(QQ/Web/CLI) diff --git a/assets/skills/commondev-discipline/SKILL.md b/assets/skills/commondev-discipline/SKILL.md index 952bff6f..ba5353e3 100644 --- a/assets/skills/commondev-discipline/SKILL.md +++ b/assets/skills/commondev-discipline/SKILL.md @@ -2,7 +2,7 @@ name: commondev-discipline description: commondev 主管式多仓库开发流水线的使用与开发纪律。当你要为某个工程开一条分支、把工程派给一个下属 agent、或用 pi 拉起执行 agent 干活时必读。核心动作:为每个工程对话新建驻留式子 agent 并把该工程的一对通道划给它(否则所有工程都挤在根 agent 上)。**git 托管平台的操作(Gitea/GitHub/GitLab)不在插件里,而在本文** —— 用 enc_shell + 保存的凭据调 curl/CLI 完成。也含 hmap 插件开发与部署纪律。 version: 2.0.0 -author: HomeAgent +author: HologramAgent --- # commondev 纪律(主管模式 · 工程对话 · 平台操作) @@ -176,7 +176,7 @@ enc_shell(command="curl -s -X POST -H \"Authorization: token @{t}\" -H 'Content- | 角色 | 是谁 | 干什么 | |---|---|---| | **人** | 老板 | 只与主管对接 | -| **主管** | 你(长期驻留的 HomeAgent 主 agent) | 拆任务、**定义判据**、复审、决定合入 | +| **主管** | 你(长期驻留的 HologramAgent 主 agent) | 拆任务、**定义判据**、复审、决定合入 | | **执行 agent** | 按工程拉起的一个 pi / dsh 实例 | 在某棵工作树里干活 | | **commondev 插件** | 外部独立插件 | 仓库/凭据/分支/PR/测试,全部机械化操作 | diff --git a/assets/skills/commondev-discipline/skill.json b/assets/skills/commondev-discipline/skill.json index 362a271c..5459d972 100644 --- a/assets/skills/commondev-discipline/skill.json +++ b/assets/skills/commondev-discipline/skill.json @@ -2,5 +2,5 @@ "name": "commondev-discipline", "description": "commondev 主管式多仓库开发流水线的使用与开发纪律:为每个工程对话新建驻留子并划入其通道、投递必须落同一 session、复核必须含变异阶段;以及 hmap 插件开发纪律(plg.json、SDK 版本、产物形态、Serial/ParallelSafe、外部插件能力边界、凭据与孤儿清理)", "version": "1.0.0", - "author": "HomeAgent" + "author": "HologramAgent" } diff --git a/assets/skills/knowledge-base/SKILL.md b/assets/skills/knowledge-base/SKILL.md index 993a29a8..8fa2c461 100644 --- a/assets/skills/knowledge-base/SKILL.md +++ b/assets/skills/knowledge-base/SKILL.md @@ -1,16 +1,16 @@ --- name: knowledge-base -description: 按分类树检索 HomeAgent 知识库。当需要查阅项目知识、架构约定、历史决策,或用户提到"知识库/knowledge/知识库有哪些/这个项目的约定是什么"时使用。支持树形导航、分类内检索、以图搜知识。 +description: 按分类树检索 HologramAgent 知识库。当需要查阅项目知识、架构约定、历史决策,或用户提到"知识库/knowledge/知识库有哪些/这个项目的约定是什么"时使用。支持树形导航、分类内检索、以图搜知识。 version: 1.1.0 -author: HomeAgent +author: HologramAgent --- ## Usage -先看树定位分类,再做定向检索。接口由 HomeAgent 的 `kbtree` 插件提供, +先看树定位分类,再做定向检索。接口由 HologramAgent 的 `kbtree` 插件提供, 只读、需 token。详见下方"接入"。 -HomeAgent 知识库按**分类树**组织(`tech/go/并发`、`life/sleep` …)。 +HologramAgent 知识库按**分类树**组织(`tech/go/并发`、`life/sleep` …)。 ### 何时用 @@ -102,7 +102,7 @@ curl -s -H "$AUTH" "$BASE/search?q=goroutine&limit=5" 若知识条目挂了图片,它在**多模态统一空间**里有向量,能被图片本身检索到。 前提是宿主已接入多模态向量 provider(否则只是记录了媒体,不参与召回)。 -判断是否就绪:HomeAgent 自身的知识库接口会返回稠密路状态 +判断是否就绪:HologramAgent 自身的知识库接口会返回稠密路状态 (`dense.enabled` / `dense.ready` / `dense.total`)。若为未启用, **不要承诺"能以图搜"**。 @@ -132,13 +132,13 @@ curl -s -H "$AUTH" "$BASE/search?q=goroutine&limit=5" - **分类不存在返回 404**,并在 `categories` 字段里附上现有分类 —— 用它自查 拼写。 - **`items=0` 只是不要正文**,`total_count` 仍准确,可用于判断规模。 -- **本服务只读**。写方法返回 405。要写知识请用 HomeAgent 主 agent 的 +- **本服务只读**。写方法返回 405。要写知识请用 HologramAgent 主 agent 的 `knowledge_create`(或 WebUI 界面),不要试图绕过它直接写这个接口。 - 知识名里不能有 `..`、空格(会被规范成 `_`)、点开头的段。 ### 写入 -本服务不提供写入。若你在 HomeAgent 主 agent 内部,写入用内核工具: +本服务不提供写入。若你在 HologramAgent 主 agent 内部,写入用内核工具: ``` knowledge_create name="tech/go/调度" content="正文..." diff --git a/assets/skills/knowledge-base/scripts/kb_tree.sh b/assets/skills/knowledge-base/scripts/kb_tree.sh index ddbdf845..43c4d44d 100755 --- a/assets/skills/knowledge-base/scripts/kb_tree.sh +++ b/assets/skills/knowledge-base/scripts/kb_tree.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# kbtree 客户端:按分类树检索 HomeAgent 知识库。 +# kbtree 客户端:按分类树检索 HologramAgent 知识库。 # # 由 knowledge-base skill 调用(agent 读 SKILL.md 后按需调本脚本)。 # 也可人工使用: @@ -88,7 +88,7 @@ if ! (exec 3<>"/dev/tcp/${HOSTPORT%%:*}/${HOSTPORT##*:}") 2>/dev/null; then cat >&2 < { parent: mainWindow, modal: true, autoHideMenuBar: true, - title: "HomeAgent - 网关联机登录", + title: "HologramAgent - 网关联机登录", webPreferences: { contextIsolation: true, nodeIntegration: false }, }); const u = encodeURIComponent(username || ""); @@ -1456,7 +1456,7 @@ async function connectDeviceBridgeOnce(cfg) { op: "hello", device: { device_id: deviceBridgeId, - name: "HomeAgent GUI", + name: "HologramAgent GUI", kind: "computer", authorized: authorized, caps: [ @@ -1986,8 +1986,8 @@ function executeHomeagentCmd(capability, reqId) { const h = Math.min(parseInt(area.height || 600, 10) - 40, 560); const html = /<\/?[a-z][\s\S]*>/i.test(raw) ? raw - : "

HomeAgent

" + - String(raw || "HomeAgent 远程屏幕提示").replace(/

HologramAgent

" + + String(raw || "HologramAgent 远程屏幕提示").replace(/

"; try { if (screensueWin && !screensueWin.isDestroyed()) screensueWin.destroy(); @@ -1999,7 +1999,7 @@ function executeHomeagentCmd(capability, reqId) { alwaysOnTop: true, frame: false, resizable: true, - title: "HomeAgent · screensue", + title: "HologramAgent · screensue", webPreferences: { nodeIntegration: false, contextIsolation: true }, }); screensueWin.setAlwaysOnTop(true, "screen-saver"); @@ -3223,7 +3223,7 @@ async function setDeviceAuthorized(authorized) { op: "hello", device: { device_id: deviceBridgeId, - name: "HomeAgent GUI", + name: "HologramAgent GUI", kind: "computer", authorized: !!authorized, caps: [ @@ -3291,7 +3291,7 @@ function buildTrayMenuTemplate() { const electron = require("electron"); const TMenu = electron.Menu; const tpl = []; - tpl.push({ label: "HomeAgent", enabled: true }); + tpl.push({ label: "HologramAgent", enabled: true }); tpl.push({ type: "separator" }); // 远程连接状态(缓存避免每次读文件) const connLabel = trayConnCache.connLabel || "未连接"; @@ -3404,7 +3404,7 @@ function initTray() { img = nImg.createEmpty(); } tray = new Tray(img); - tray.setToolTip("HomeAgent - 个人智能管家"); + tray.setToolTip("HologramAgent - 个人智能管家"); rebuildTrayMenu(); tray.on("double-click", () => showMainWindow()); console.log("[tray] READY: " + (tray ? "tray-created" : "null")); @@ -3525,7 +3525,7 @@ app.whenReady().then(async () => { // 「启动时不显示主窗口,驻留托盘后台运行」,但主进程从来没读过它 —— // whenReady 无条件 createWindow(),于是必然弹窗。 // - // 实测(本机,prefs.silentStart=true):窗口标题 HomeAgent 照样出现。 + // 实测(本机,prefs.silentStart=true):窗口标题 HologramAgent 照样出现。 // // 与 applyAutoLaunch 里的 openAsHidden 是两回事:那个是告诉 OS「开机自启 // 时如何启动」(仅 Windows/macOS 生效),这里是本进程自己决定要不要显示, @@ -3605,7 +3605,7 @@ let notifSeq = 0; ipcMain.handle("notify:show", (_, payload) => { try { const p = payload || {}; - const title = String(p.title || "HomeAgent"); + const title = String(p.title || "HologramAgent"); const body = String(p.body || ""); if (!body) return { ok: false, error: "empty body" }; if (!Notification.isSupported()) return { ok: false, error: "unsupported" }; @@ -3721,10 +3721,10 @@ function saveGuiPrefs(p) { } // Electron LoginItem 写入的注册表项名是「electron.app.」。 -// 产物改名过(HomeAgent.exe → homeagent-gui.exe)就会多出一条旧项, +// 产物改名过(HologramAgent.exe → homeagent-gui.exe)就会多出一条旧项, // 且 setLoginItemSettings 不会清理它们 ⇒ 开机启动两次同一个 exe。 // 实测本机 Run 键里确实同时存在: -// electron.app.HomeAgent = "E:\program\homeagent\...\homeagent-gui.exe" +// electron.app.HologramAgent = "E:\program\homeagent\...\homeagent-gui.exe" // electron.app.homeagent-gui = E:\program\homeagent\...\homeagent-gui.exe // 两条指向同一 exe,所以表面看是两个自启动,实际是同一份的重复。 // diff --git a/cmd/gui/package.json b/cmd/gui/package.json index 7059aa34..5c2c7077 100644 --- a/cmd/gui/package.json +++ b/cmd/gui/package.json @@ -3,7 +3,7 @@ "version": "1.4.0", "author": "JianFeeeee ", "homepage": "https://github.com/JianFeeeee/HologramAgent", - "description": "HomeAgent Desktop GUI - Multi-connection management dashboard", + "description": "HologramAgent Desktop GUI - Multi-connection management dashboard", "main": "main.js", "scripts": { "start": "electron . --no-sandbox", @@ -25,7 +25,7 @@ }, "build": { "appId": "com.homeagent.gui", - "productName": "HomeAgent", + "productName": "HologramAgent", "linux": { "target": [ "deb", diff --git a/cmd/gui/renderer/app.js b/cmd/gui/renderer/app.js index 11313c69..f4b45f2d 100644 --- a/cmd/gui/renderer/app.js +++ b/cmd/gui/renderer/app.js @@ -741,7 +741,7 @@ async function api(p, o) { // 从服务端发现设备网关地址(自动链接的权威来源)。 // -// 失败不报错:老版本 HomeAgent 没有这个端点,回退到本地推导即可 +// 失败不报错:老版本 HologramAgent 没有这个端点,回退到本地推导即可 // (见 renderDeviceChannel 里的 state.discoveredGateway || 旧口径)。 // // 优先 url_portal(门户同源形态):GUI 主进程连 WS 走系统解析器, @@ -1083,7 +1083,7 @@ async function refreshAll() { // 服务端列表未含本机(可能离线),仍展示本地状态 state.devices.push({ device_id: dbinfo.deviceId, - name: "HomeAgent GUI", + name: "HologramAgent GUI", kind: "computer", authorized: dbinfo.authorized, online: false, @@ -1555,7 +1555,7 @@ function renderOverview() { b.commit && b.commit !== "unknown" ? String(b.commit).slice(0, 7) : ""; return ( "v" + escHtml(v) + - '
' + escHtml(b.kernel_name || "HomeAgent") + + '
' + escHtml(b.kernel_name || "HologramAgent") + (sha ? " · " + escHtml(sha) : "") + "
" ); })(), @@ -1819,8 +1819,8 @@ function buildChatLayout() { "" + "

" + __( - "连接 HomeAgent 服务端后即可开始对话。请在设置中添加后端连接。", - "Connect to a HomeAgent server to start chatting. Add a backend connection in Settings.", + "连接 HologramAgent 服务端后即可开始对话。请在设置中添加后端连接。", + "Connect to a HologramAgent server to start chatting. Add a backend connection in Settings.", ) + "

" + '