Merge pull request #15 from JianFeeeee/refactor/rename-batch5-docs-site

改名批 5-a:仓库内文档与站点改名 + 修 make install 真破损
This commit is contained in:
JianFeeeee
2026-10-21 17:11:09 +08:00
committed by GitHub
20 changed files with 62 additions and 62 deletions

View File

@ -20,7 +20,7 @@ TAG_ARGS = $(if $(HOMED_TAGS),-tags $(HOMED_TAGS),)
BINARY=homed BINARY=homed
CLI_BINARY=waiter CLI_BINARY=waiter
GUI_BINARY=homeagent-gui GUI_BINARY=hologram-gui
GO=go GO=go
GOCACHE=/tmp/gocache GOCACHE=/tmp/gocache
export GOPATH=/tmp/gopath export GOPATH=/tmp/gopath
@ -368,12 +368,12 @@ clean:
rm -rf $(BUILD_DIR) $(BINARY) $(CSRC_BUILD) rm -rf $(BUILD_DIR) $(BINARY) $(CSRC_BUILD)
install: build install: build
-systemctl stop homeagent 2>/dev/null -systemctl stop hologramagent 2>/dev/null
cp $(BUILD_DIR)/$(BINARY) /usr/local/bin/$(BINARY) cp $(BUILD_DIR)/$(BINARY) /usr/local/bin/$(BINARY)
mkdir -p /etc/homeagent /var/lib/homeagent mkdir -p /etc/hologram /var/lib/hologram
cp deploy/homeagent.service /etc/systemd/system/ cp deploy/hologramagent.service /etc/systemd/system/hologramagent.service
systemctl daemon-reload systemctl daemon-reload
@echo "Installed. Run: systemctl enable --now homeagent" @echo "Installed. Run: systemctl enable --now hologramagent"
# ⚠ internal/plugin/proc 的 grandchild 系列测试(fork 真进程 + syscall.Kill # ⚠ internal/plugin/proc 的 grandchild 系列测试(fork 真进程 + syscall.Kill
# 杀进程组)**本身不稳定**,与本次改动无关: # 杀进程组)**本身不稳定**,与本次改动无关:
@ -435,7 +435,7 @@ check-codec-cgo-only:
fi fi
run: build run: build
./$(BUILD_DIR)/$(BINARY) -data /tmp/homeagent ./$(BUILD_DIR)/$(BINARY) -data /tmp/hologram
fmt: fmt:
$(GO) fmt ./... $(GO) fmt ./...

View File

@ -1,6 +1,6 @@
> ⚠️ **AI 辅助编程声明**:本项目代码、文档及提交历史中,部分内容由 AI 辅助生成或修改。人工已审阅关键改动,但使用时请自行评估与验证。 > ⚠️ **AI 辅助编程声明**:本项目代码、文档及提交历史中,部分内容由 AI 辅助生成或修改。人工已审阅关键改动,但使用时请自行评估与验证。
# HomeAgent # HologramAgent
> **English**: [README_EN.md](./README_EN.md) > **English**: [README_EN.md](./README_EN.md)
@ -353,10 +353,10 @@ internal/
| --- | --- | --- | | --- | --- | --- |
| **full** | homed + waiter + 桌面 GUI + systemd unit | 单机全功能 | | **full** | homed + waiter + 桌面 GUI + systemd unit | 单机全功能 |
| **server** | homed + waiter + systemd unit | 服务器(无桌面环境) | | **server** | homed + waiter + systemd unit | 服务器(无桌面环境) |
| **client** | waiter + 桌面 GUI | 连接远程 HomeAgent | | **client** | waiter + 桌面 GUI | 连接远程 HologramAgent |
- Linux:`.deb`(amd64/arm64)、`.rpm`(x86_64)、`.tar.gz` - Linux:`.deb`(amd64/arm64)、`.rpm`(x86_64)、`.tar.gz`
- Windows:`HomeAgent_v1.2.0_{Full,Server,Client}_win64.exe`(NSIS 安装向导,含 AGPL 许可页)。自 v1.2.0 起因 `homed` 不再支持 Windows 原生(依赖 fd 继承与共享内存段内偏移解引用),安装器改为引导到 **WSL2**,并把 Linux 包送进发行版里按 Linux 方式安装。 - Windows:`HologramAgent_v1.2.0_{Full,Server,Client}_win64.exe`(NSIS 安装向导,含 AGPL 许可页)。自 v1.2.0 起因 `homed` 不再支持 Windows 原生(依赖 fd 继承与共享内存段内偏移解引用),安装器改为引导到 **WSL2**,并把 Linux 包送进发行版里按 Linux 方式安装。
- 免安装:`homeagent-bin-<os>_<arch>.tar.gz`(含 homed/waiter/initconfig) - 免安装:`homeagent-bin-<os>_<arch>.tar.gz`(含 homed/waiter/initconfig)
- 校验:`SHA256SUMS` - 校验:`SHA256SUMS`
@ -383,7 +383,7 @@ make install # 安装到系统
它是 GPL 家族里**传染性最强**的一档:不仅分发时须提供完整对应源码, 它是 GPL 家族里**传染性最强**的一档:不仅分发时须提供完整对应源码,
**通过网络提供服务时也要向使用者提供源码**(§13 Remote Network Interaction)。 **通过网络提供服务时也要向使用者提供源码**(§13 Remote Network Interaction)。
即:任何人把改过的 HomeAgent 对外提供网络服务,都必须让该服务的使用者拿到改动后的源码。 即:任何人把改过的 HologramAgent 对外提供网络服务,都必须让该服务的使用者拿到改动后的源码。
插件与本项目通过公开 [homeagent-sdk](https://github.com/JianFeeeee/homeagentsdk) 静态链接 插件与本项目通过公开 [homeagent-sdk](https://github.com/JianFeeeee/homeagentsdk) 静态链接
(SDK 源码会进入插件二进制),但那个仓**以 MIT 发布**——MIT 是宽松许可,拿到授权的代码不继承 (SDK 源码会进入插件二进制),但那个仓**以 MIT 发布**——MIT 是宽松许可,拿到授权的代码不继承
@ -398,10 +398,10 @@ make install # 安装到系统
| 组件 | 许可 | 位置 | | 组件 | 许可 | 位置 |
| --- | --- | --- | | --- | --- | --- |
| Chinese-CLIP ViT-B/16(ONNX 产物) | Apache-2.0 | `/usr/lib/homeagent/models/chinese-clip-vit-b16-onnx/` | | Chinese-CLIP ViT-B/16(ONNX 产物) | Apache-2.0 | `/usr/lib/hologram/models/chinese-clip-vit-b16-onnx/` |
| ONNX Runtime(`libonnxruntime.so`) | MIT | `/usr/lib/homeagent/onnxruntime/` | | ONNX Runtime(`libonnxruntime.so`) | MIT | `/usr/lib/hologram/onnxruntime/` |
| jieba 词库(内嵌进二进制) | MIT | 源码 `internal/memory/jiebadict/` | | jieba 词库(内嵌进二进制) | MIT | 源码 `internal/memory/jiebadict/` |
| Go 依赖(go-sqlite3、gojieba、bubbletea 等) | MIT / BSD-3 / Apache-2.0 | 均为宽松许可,与 AGPL-3.0 兼容 | | Go 依赖(go-sqlite3、gojieba、bubbletea 等) | MIT / BSD-3 / Apache-2.0 | 均为宽松许可,与 AGPL-3.0 兼容 |
这些组件**保持各自原有许可**,不在本项目的 AGPL 授权范围内;发行包把它们的许可全文放在 这些组件**保持各自原有许可**,不在本项目的 AGPL 授权范围内;发行包把它们的许可全文放在
`/usr/share/doc/homeagent/licenses/`,并在 dep/rpm 元数据里声明本包许可为 `AGPL-3.0-only`。 `/usr/share/doc/hologramagent/licenses/`,并在 dep/rpm 元数据里声明本包许可为 `AGPL-3.0-only`。

View File

@ -1,6 +1,6 @@
> ⚠️ **AI-Assisted Programming Notice**: Parts of this project's code, documentation, and commit history were generated or modified with AI assistance. Key changes have been human-reviewed, but please evaluate and verify before use. > ⚠️ **AI-Assisted Programming Notice**: Parts of this project's code, documentation, and commit history were generated or modified with AI assistance. Key changes have been human-reviewed, but please evaluate and verify before use.
# HomeAgent # HologramAgent
> **中文**: [README.md](./README.md) > **中文**: [README.md](./README.md)
@ -373,10 +373,10 @@ semantic memory; the blob is only a cache that capacity GC may evict.
| --- | --- | --- | | --- | --- | --- |
| **full** | homed + waiter + desktop GUI + systemd unit | Single-machine, everything | | **full** | homed + waiter + desktop GUI + systemd unit | Single-machine, everything |
| **server** | homed + waiter + systemd unit | Servers (no desktop environment) | | **server** | homed + waiter + systemd unit | Servers (no desktop environment) |
| **client** | waiter + desktop GUI | Connecting to a remote HomeAgent | | **client** | waiter + desktop GUI | Connecting to a remote HologramAgent |
- Linux: `.deb` (amd64/arm64), `.rpm` (x86_64), `.tar.gz` - Linux: `.deb` (amd64/arm64), `.rpm` (x86_64), `.tar.gz`
- Windows: `HomeAgent_v1.2.0_{Full,Server,Client}_win64.exe` (NSIS installer, includes the AGPL license page). Since v1.2.0 `homed` no longer supports native Windows (it relies on fd inheritance and in-segment offset dereferencing), so the installer bootstraps **WSL2** and installs the Linux packages inside the distribution the same way a Linux host would. - Windows: `HologramAgent_v1.2.0_{Full,Server,Client}_win64.exe` (NSIS installer, includes the AGPL license page). Since v1.2.0 `homed` no longer supports native Windows (it relies on fd inheritance and in-segment offset dereferencing), so the installer bootstraps **WSL2** and installs the Linux packages inside the distribution the same way a Linux host would.
- Portable: `homeagent-bin-<os>_<arch>.tar.gz` (homed/waiter/initconfig) - Portable: `homeagent-bin-<os>_<arch>.tar.gz` (homed/waiter/initconfig)
- Verification: `SHA256SUMS` - Verification: `SHA256SUMS`
@ -404,7 +404,7 @@ This project is released under the **GNU Affero General Public License, version
This is the strongest copyleft in the GPL family: besides shipping the complete corresponding This is the strongest copyleft in the GPL family: besides shipping the complete corresponding
source when you distribute the software, **you must also offer the source to users who interact source when you distribute the software, **you must also offer the source to users who interact
with it over a network** (§13, Remote Network Interaction). Anyone running a modified HomeAgent with it over a network** (§13, Remote Network Interaction). Anyone running a modified HologramAgent
as a network service therefore has to make the modified source available to that service's users. as a network service therefore has to make the modified source available to that service's users.
Plugins are **statically linked** against this project through the public Plugins are **statically linked** against this project through the public
@ -425,11 +425,11 @@ license is the linked SDK code itself, and that code is MIT.
| Component | License | Location | | Component | License | Location |
| --- | --- | --- | | --- | --- | --- |
| Chinese-CLIP ViT-B/16 (ONNX artifacts) | Apache-2.0 | `/usr/lib/homeagent/models/chinese-clip-vit-b16-onnx/` | | Chinese-CLIP ViT-B/16 (ONNX artifacts) | Apache-2.0 | `/usr/lib/hologram/models/chinese-clip-vit-b16-onnx/` |
| ONNX Runtime (`libonnxruntime.so`) | MIT | `/usr/lib/homeagent/onnxruntime/` | | ONNX Runtime (`libonnxruntime.so`) | MIT | `/usr/lib/hologram/onnxruntime/` |
| jieba dictionary (embedded in the binary) | MIT | `internal/memory/jiebadict/` | | jieba dictionary (embedded in the binary) | MIT | `internal/memory/jiebadict/` |
| Go dependencies (go-sqlite3, gojieba, bubbletea, …) | MIT / BSD-3 / Apache-2.0 | permissive, AGPL-3.0-compatible | | Go dependencies (go-sqlite3, gojieba, bubbletea, …) | MIT / BSD-3 / Apache-2.0 | permissive, AGPL-3.0-compatible |
These components keep their own licenses and are not relicensed by this project. Full texts are These components keep their own licenses and are not relicensed by this project. Full texts are
shipped in `/usr/share/doc/homeagent/licenses/`, and the package metadata declares this package shipped in `/usr/share/doc/hologramagent/licenses/`, and the package metadata declares this package
as `AGPL-3.0-only`. as `AGPL-3.0-only`.

View File

@ -6,7 +6,7 @@
|------|------| |------|------|
| 姓名 | 小宅 | | 姓名 | 小宅 |
| 英文 | Xiao Zhai / HΔ-chan | | 英文 | Xiao Zhai / HΔ-chan |
| 身份 | HomeAgent 看板娘 / 家政型 AI 助手 | | 身份 | HologramAgent 看板娘 / 家政型 AI 助手 |
| 型号 | HΔ-Kernel v0.8.0 | | 型号 | HΔ-Kernel v0.8.0 |
| motto | 「交给我吧~主人三年前说过的事我还记着呢!」 | | motto | 「交给我吧~主人三年前说过的事我还记着呢!」 |
| 画风参考 | VOCALOID 家族(洛天依/初音未来)风格 | | 画风参考 | VOCALOID 家族(洛天依/初音未来)风格 |
@ -139,7 +139,7 @@
### 胸口徽章 — H·核 标志 ### 胸口徽章 — H·核 标志
胸口佩戴 **HomeAgent H·核 标志**(缩放到约 3cm 直径),设计如下: 胸口佩戴 **HologramAgent H·核 标志**(缩放到约 3cm 直径),设计如下:
``` ```
外圈虚线环 ─ 银灰色虚线 外圈虚线环 ─ 银灰色虚线

View File

@ -1,10 +1,10 @@
**中文** | [English](../en/ARCHITECTURE.md) **中文** | [English](../en/ARCHITECTURE.md)
# HomeAgent Architecture # HologramAgent Architecture
## Architectural Principles ## Architectural Principles
HomeAgent's cognitive architecture consists of three subsystems: the event loop (eventLoop), the context window (RelevanceContext), and the stage pipeline (StageHost). Together they form the orchestration framework. Within this framework, the LLM serves as a scheduled reasoning unit; cognitive continuity is maintained by the event loop, context window, and stage pipeline. HologramAgent's cognitive architecture consists of three subsystems: the event loop (eventLoop), the context window (RelevanceContext), and the stage pipeline (StageHost). Together they form the orchestration framework. Within this framework, the LLM serves as a scheduled reasoning unit; cognitive continuity is maintained by the event loop, context window, and stage pipeline.
**The event loop (eventLoop)** is a three-way select: `a.io.InputChan()` receives external user input and dispatches to `processTextInput` / `processMediaInput`; `a.selfInputCh` receives internal system tasks (memory merges, distillation callbacks) routed through `processConsolidation` under the `_consolidation_` output channel; `a.ctx.Done()` accepts shutdown signals. A concurrently running `interceptLoop` goroutine independently reads `a.io.InputInterruptChan()` — on receiving a high-priority interrupt, it cancels the in-flight LLM HTTP request (`a.cancelLLM()`), then writes the event to `a.interceptCh`. This channel is drained non-blockingly by `drainInterrupts()` before each LLM call in `process()`, injecting interrupts as `[打断消息]` formatted entries into message history. The three interrupt delivery paths carry distinct semantics: `cancelLLM` terminates the current HTTP request, `interceptCh` injects text before the next LLM turn, and `InjectInput` triggers a new processing cycle when the event loop is idle. **The event loop (eventLoop)** is a three-way select: `a.io.InputChan()` receives external user input and dispatches to `processTextInput` / `processMediaInput`; `a.selfInputCh` receives internal system tasks (memory merges, distillation callbacks) routed through `processConsolidation` under the `_consolidation_` output channel; `a.ctx.Done()` accepts shutdown signals. A concurrently running `interceptLoop` goroutine independently reads `a.io.InputInterruptChan()` — on receiving a high-priority interrupt, it cancels the in-flight LLM HTTP request (`a.cancelLLM()`), then writes the event to `a.interceptCh`. This channel is drained non-blockingly by `drainInterrupts()` before each LLM call in `process()`, injecting interrupts as `[打断消息]` formatted entries into message history. The three interrupt delivery paths carry distinct semantics: `cancelLLM` terminates the current HTTP request, `interceptCh` injects text before the next LLM turn, and `InjectInput` triggers a new processing cycle when the event loop is idle.

View File

@ -1,10 +1,10 @@
**中文** | [English](../en/OVERVIEW.md) **中文** | [English](../en/OVERVIEW.md)
# HomeAgent — Project Overview # HologramAgent — Project Overview
## What Is This ## What Is This
HomeAgent is a continuously-running personal intelligent Agent framework. HologramAgent is a continuously-running personal intelligent Agent framework.
Core architecture: a long-running kernel process (`homed`) that connects to various IO channels (QQ, Web, CLI, etc.) through a plugin system. The kernel handles LLM orchestration, memory management, and knowledge retrieval; plugins handle all external IO — sending/receiving messages, file operations, web search, etc. Core architecture: a long-running kernel process (`homed`) that connects to various IO channels (QQ, Web, CLI, etc.) through a plugin system. The kernel handles LLM orchestration, memory management, and knowledge retrieval; plugins handle all external IO — sending/receiving messages, file operations, web search, etc.

View File

@ -1,12 +1,12 @@
**中文** | [English](../en/PLUGIN_DEV.md) **中文** | [English](../en/PLUGIN_DEV.md)
# HomeAgent Plugin Development Guide # HologramAgent Plugin Development Guide
<img src="../../branding/mascot-xiaozhai-avatar.webp" width="20" style="border-radius:50%;vertical-align:middle"> : <img src="../../branding/mascot-xiaozhai-avatar.webp" width="20" style="border-radius:50%;vertical-align:middle"> :
## Overview ## Overview
All external interaction capabilities of HomeAgent comes from plugins. Plugins interact with the kernel through `PluginSDK` (Go API). All external interaction capabilities of HologramAgent comes from plugins. Plugins interact with the kernel through `PluginSDK` (Go API).
**SDK Repository**: Plugin development tools, template code, and example plugins are hosted in the [homeagent-sdk](https://github.com/JianFeeeee/homeagentsdk) repository. **SDK Repository**: Plugin development tools, template code, and example plugins are hosted in the [homeagent-sdk](https://github.com/JianFeeeee/homeagentsdk) repository.
@ -30,7 +30,7 @@ type Plugin interface {
| Method | Use Case | Complexity | | Method | Use Case | Complexity |
|--------|----------|------------| |--------|----------|------------|
| **Subprocess plugin (recommended)** | Independently distributed third-party plugins | Medium, generated using `hmapdev` toolchain | | **Subprocess plugin (recommended)** | Independently distributed third-party plugins | Medium, generated using `hmapdev` toolchain |
| **Built-in plugin** | Released with HomeAgent | Simple, requires merging into main repo | | **Built-in plugin** | Released with HologramAgent | Simple, requires merging into main repo |
| **Lua script plugin** | Lightweight rapid prototyping | Simple, generated using `hmapdev init --lua` | | **Lua script plugin** | Lightweight rapid prototyping | Simple, generated using `hmapdev init --lua` |
--- ---

View File

@ -1,10 +1,10 @@
[English](../en/ARCHITECTURE.md) | **中文** [English](../en/ARCHITECTURE.md) | **中文**
# HomeAgent 架构 # HologramAgent 架构
## 体系结构原则 ## 体系结构原则
HomeAgent 的认知架构由三个核心子系统构成:事件循环(eventLoop)、上下文窗口(RelevanceContext)与阶段管道(StageHost)。三者共同组成编排框架。LLM 在其中作为可调度的推理执行单元运行;认知连续性由事件循环、上下文窗口与阶段管道维持。 HologramAgent 的认知架构由三个核心子系统构成:事件循环(eventLoop)、上下文窗口(RelevanceContext)与阶段管道(StageHost)。三者共同组成编排框架。LLM 在其中作为可调度的推理执行单元运行;认知连续性由事件循环、上下文窗口与阶段管道维持。
**事件循环(eventLoop)** 是一个三路 select 循环:`a.io.InputChan()` 接收外部用户输入并分发至 `processTextInput` / `processMediaInput`;`a.selfInputCh` 接收内部系统任务(如记忆合并、蒸馏回调),以 `_consolidation_` 输出通道标识区分,走 `processConsolidation` 路径;`a.ctx.Done()` 接受关闭信号。与之并行运行的 `interceptLoop` 协程独立监听 `a.io.InputInterruptChan()`,收到高优先级中断时先取消当前 LLM HTTP 请求(`a.cancelLLM()`),再将事件写入 `a.interceptCh`——该通道在 `process()` 每次 LLM 调用前由 `drainInterrupts()` 非阻塞排空,以 `[打断消息]` 格式注入消息历史。三条中断投递路径各具语义:`cancelLLM` 终结当前 HTTP 请求,`interceptCh` 在下一轮 LLM 调用前注入文本,`InjectInput` 在 eventLoop 空闲时触发新一轮处理。 **事件循环(eventLoop)** 是一个三路 select 循环:`a.io.InputChan()` 接收外部用户输入并分发至 `processTextInput` / `processMediaInput`;`a.selfInputCh` 接收内部系统任务(如记忆合并、蒸馏回调),以 `_consolidation_` 输出通道标识区分,走 `processConsolidation` 路径;`a.ctx.Done()` 接受关闭信号。与之并行运行的 `interceptLoop` 协程独立监听 `a.io.InputInterruptChan()`,收到高优先级中断时先取消当前 LLM HTTP 请求(`a.cancelLLM()`),再将事件写入 `a.interceptCh`——该通道在 `process()` 每次 LLM 调用前由 `drainInterrupts()` 非阻塞排空,以 `[打断消息]` 格式注入消息历史。三条中断投递路径各具语义:`cancelLLM` 终结当前 HTTP 请求,`interceptCh` 在下一轮 LLM 调用前注入文本,`InjectInput` 在 eventLoop 空闲时触发新一轮处理。

View File

@ -1,10 +1,10 @@
[English](../en/OVERVIEW.md) | **中文** [English](../en/OVERVIEW.md) | **中文**
# HomeAgent — 项目概览 # HologramAgent — 项目概览
## 这是什么 ## 这是什么
HomeAgent 是一个持续运行的个人智能 Agent 框架。 HologramAgent 是一个持续运行的个人智能 Agent 框架。
核心架构:一个长时间运行的内核进程(`homed`),通过插件系统接入各种 IO 通道(QQ、Web、命令行等)。内核负责 LLM 调用编排、记忆管理、知识检索;插件负责所有外部 IO——收发消息、执行文件操作、搜索网络等。 核心架构:一个长时间运行的内核进程(`homed`),通过插件系统接入各种 IO 通道(QQ、Web、命令行等)。内核负责 LLM 调用编排、记忆管理、知识检索;插件负责所有外部 IO——收发消息、执行文件操作、搜索网络等。

View File

@ -1,12 +1,12 @@
[English](../en/PLUGIN_DEV.md) | **中文** [English](../en/PLUGIN_DEV.md) | **中文**
# HomeAgent 插件开发指南 # HologramAgent 插件开发指南
<img src="../../branding/mascot-xiaozhai-avatar.webp" width="20" style="border-radius:50%;vertical-align:middle"> : <img src="../../branding/mascot-xiaozhai-avatar.webp" width="20" style="border-radius:50%;vertical-align:middle"> :
## 概述 ## 概述
HomeAgent 的所有外部交互能力都来自插件。插件通过 `PluginSDK`(Go API)与内核交互。 HologramAgent 的所有外部交互能力都来自插件。插件通过 `PluginSDK`(Go API)与内核交互。
**SDK 仓库**:插件开发工具、模板代码和示例插件统一托管在 **SDK 仓库**:插件开发工具、模板代码和示例插件统一托管在
[homeagent-sdk](https://github.com/JianFeeeee/homeagentsdk) 仓库。 [homeagent-sdk](https://github.com/JianFeeeee/homeagentsdk) 仓库。
@ -31,7 +31,7 @@ type Plugin interface {
| 方式 | 适用场景 | 复杂度 | | 方式 | 适用场景 | 复杂度 |
|------|---------|--------| |------|---------|--------|
| **子进程插件(推荐)** | 独立分发的第三方插件 | 中等,使用 `hmapdev` 工具链生成 | | **子进程插件(推荐)** | 独立分发的第三方插件 | 中等,使用 `hmapdev` 工具链生成 |
| **内置插件** | 随 HomeAgent 一起发布 | 简单,需合入主仓库 | | **内置插件** | 随 HologramAgent 一起发布 | 简单,需合入主仓库 |
| **Lua 脚本插件** | 轻量快速原型 | 简单,使用 `hmapdev init --lua` 生成 | | **Lua 脚本插件** | 轻量快速原型 | 简单,使用 `hmapdev init --lua` 生成 |
--- ---

View File

@ -1,7 +1,7 @@
# Git 分支管理规范 # Git 分支管理规范
> 生效:2026-08-31,2026-09-04 修订(三级发布通道 + 单条发布分支),2026-09-06 修订(SDK 仓版本语义与发版联动,见 §七),2026-09-13 修订(发布线路牌随 patch 推进 + 版本号不得固化落库)。 > 生效:2026-08-31,2026-09-04 修订(三级发布通道 + 单条发布分支),2026-09-06 修订(SDK 仓版本语义与发版联动,见 §七),2026-09-13 修订(发布线路牌随 patch 推进 + 版本号不得固化落库)。
> 适用:**本仓(TrueAgent/HomeAgent)与 third_party/homeagent-sdk(SDK 仓)**——两仓协作时分支策略必须一致,本规范两仓同用。 > 适用:**本仓(HologramAgent)与 third_party/homeagent-sdk(SDK 仓)**——两仓协作时分支策略必须一致,本规范两仓同用。
> 核心原则一句话:**main 唯一长命、永远可部署;一切新工作在特性分支;一个中版本一条发布分支,alpha/beta/正式由 tag 区分;hotfix 只进发布分支并 cherry-pick 回 main。** > 核心原则一句话:**main 唯一长命、永远可部署;一切新工作在特性分支;一个中版本一条发布分支,alpha/beta/正式由 tag 区分;hotfix 只进发布分支并 cherry-pick 回 main。**
--- ---
@ -180,7 +180,7 @@ git switch main && git cherry-pick <sha> # 遵守 §三:只 pick,不 merge
## 三、当前分支对齐(2026-09-13 更新) ## 三、当前分支对齐(2026-09-13 更新)
### 主仓(TrueAgent) ### 主仓(HologramAgent)
| 分支 | 状态 | 处理 | | 分支 | 状态 | 处理 |
|---|---|---| |---|---|---|
@ -396,7 +396,7 @@ git branch -d release/v1.0.x # tag 已保存历史,
**Windows 安装器(WSL 安装型)**:`homed` **不再装到 Windows**(插件体系依赖 fd 继承与 **Windows 安装器(WSL 安装型)**:`homed` **不再装到 Windows**(插件体系依赖 fd 继承与
共享内存区段内偏移解引用,Windows 句柄模型表达不了),安装器的职责是**引导 WSL2 并把 共享内存区段内偏移解引用,Windows 句柄模型表达不了),安装器的职责是**引导 WSL2 并把
Linux 包送进发行版里安装**。产物 `HomeAgent_v<版本>_{Server,Client,Full}_win64.exe`: Linux 包送进发行版里安装**。产物 `HologramAgent_v<版本>_{Server,Client,Full}_win64.exe`:
```bash ```bash
# 先有 Linux 包(安装器送进 WSL 的就是它),再打安装器 # 先有 Linux 包(安装器送进 WSL 的就是它),再打安装器

View File

@ -8,7 +8,7 @@
| 仓 | 位置 | 流水线 | 触发 | | 仓 | 位置 | 流水线 | 触发 |
| --- | --- | --- | --- | | --- | --- | --- | --- |
| 主仓 HomeAgent | `github.com/JianFeeeee/HomeAgent`(公开) | `ci.yml` + `release.yml` | push / PR、`release/**` push | | 主仓 HologramAgent | `github.com/JianFeeeee/HomeAgent`(公开) | `ci.yml` + `release.yml` | push / PR、`release/**` push |
| SDK 仓 homeagentsdk | `github.com/JianFeeeee/homeagentsdk`(公开) | `release.yml` | `release/**` push | | SDK 仓 homeagentsdk | `github.com/JianFeeeee/homeagentsdk`(公开) | `release.yml` | `release/**` push |
| gitcode 镜像 | 同名仓库 | 无(由主仓 Release 的 sync job 同步) | — | | gitcode 镜像 | 同名仓库 | 无(由主仓 Release 的 sync job 同步) | — |

View File

@ -678,9 +678,9 @@ commondev_pi_plugin_update source?, scope # ✅ 已实现(PI_CODING_A
--- ---
### 3.6 ★ LLM 源:默认用 HomeAgent 内部配置,支持添加与选默认 ### 3.6 ★ LLM 源:默认用 HologramAgent 内部配置,支持添加与选默认
[已定 2026-10-13 用户拍板]插件内置 pi **默认使用 HomeAgent 内部配置的 llms 源**, [已定 2026-10-13 用户拍板]插件内置 pi **默认使用 HologramAgent 内部配置的 llms 源**,
**支持添加其他源**,且**支持在插件中配置默认用哪个源**。 **支持添加其他源**,且**支持在插件中配置默认用哪个源**。
#### 3.6.1 源的真实位置 [已核] #### 3.6.1 源的真实位置 [已核]
@ -746,7 +746,7 @@ commondev_pi_source_add name, base_url, api_key, model, [adapter, context_w
commondev_pi_source_list [--with-key] # 列出来源(默认**不返回** key) commondev_pi_source_list [--with-key] # 列出来源(默认**不返回** key)
commondev_pi_source_remove name commondev_pi_source_remove name
commondev_pi_source_default name, [model] # 写 settings.json 的 defaultProvider/defaultModel commondev_pi_source_default name, [model] # 写 settings.json 的 defaultProvider/defaultModel
commondev_pi_source_import from_kernel # 把 HomeAgent 内部配置的源批量导入 commondev_pi_source_import from_kernel # 把 HologramAgent 内部配置的源批量导入
# —— 其他 pi 配置面(同一套纪律)—— # —— 其他 pi 配置面(同一套纪律)——
commondev_pi_config_get key, scope=plugin|project, workdir? commondev_pi_config_get key, scope=plugin|project, workdir?
@ -828,7 +828,7 @@ commondev_pi_mcp_add/remove/list # → mcp.json
| **U2** | 远端环境缺失时的**安装形态** | 默认只**输出可复制命令**供人去跑;由插件代装需显式授权(§3.4)。环境缺失时**先询问用户,不擅自安装** | | **U2** | 远端环境缺失时的**安装形态** | 默认只**输出可复制命令**供人去跑;由插件代装需显式授权(§3.4)。环境缺失时**先询问用户,不擅自安装** |
| **U3** | pi 进程**常驻保活** 还是**用完即弃**(靠 session-id 保连续) | ✅ **已定:常驻**(刀 1 已如此:sidecar 持续存活并复用同一会话,`branch_close` 才收) | | **U3** | pi 进程**常驻保活** 还是**用完即弃**(靠 session-id 保连续) | ✅ **已定:常驻**(刀 1 已如此:sidecar 持续存活并复用同一会话,`branch_close` 才收) |
| **U4** | steer 的**语义降级**取舍 | (i) 接受降级,但把"断点"写进台账供主管复查 | | **U4** | steer 的**语义降级**取舍 | (i) 接受降级,但把"断点"写进台账供主管复查 |
| **U5** | skill 的**分发目标** | 双投:主管侧(HomeAgent `<data_dir>/skills/`)+ 执行侧(工作区 `.pi/skills/`) | | **U5** | skill 的**分发目标** | 双投:主管侧(HologramAgent `<data_dir>/skills/`)+ 执行侧(工作区 `.pi/skills/`) |
| **U6** | 「工程对话」的**用户可寻址名** | ✅ 已实现:sidecar 接收 `--session-name`,agent_up 返回并记账 `session_name` | | **U6** | 「工程对话」的**用户可寻址名** | ✅ 已实现:sidecar 接收 `--session-name`,agent_up 返回并记账 `session_name` |
| **U7** | **独立 node/pi 的获取方式** | ✅ **已定:随包分发**(不首次下载、不依赖用户装) | | **U7** | **独立 node/pi 的获取方式** | ✅ **已定:随包分发**(不首次下载、不依赖用户装) |
| **U8** | 内层 pi 的**版本锁定** | 部分实现:`pi_version` 已从 sidecar 回显并记账;随包独立 pi 二进制的发布锁定仍待发布流程完成,解析不到时显式警告 | | **U8** | 内层 pi 的**版本锁定** | 部分实现:`pi_version` 已从 sidecar 回显并记账;随包独立 pi 二进制的发布锁定仍待发布流程完成,解析不到时显式警告 |

View File

@ -55,7 +55,7 @@
| 角色 | 是谁 | 职责 | | 角色 | 是谁 | 职责 |
|---|---|---| |---|---|---|
| **人(用户)** | 老板 | 只与「开发主管」对接,不直接指挥执行 agent | | **人(用户)** | 老板 | 只与「开发主管」对接,不直接指挥执行 agent |
| **开发主管** | 长期驻留的 HomeAgent 主 agent | 拆任务、**定义判据**、复审、决定合入 | | **开发主管** | 长期驻留的 HologramAgent 主 agent | 拆任务、**定义判据**、复审、决定合入 |
| **执行 agent** | 按任务拉起的编码 agent(pi / dsh) | 在某棵工作树里干活 | | **执行 agent** | 按任务拉起的编码 agent(pi / dsh) | 在某棵工作树里干活 |
| **commondev 插件** | 新增 Go 插件 | 仓库/凭据/分支/PR/测试执行,全部机械化操作 | | **commondev 插件** | 新增 Go 插件 | 仓库/凭据/分支/PR/测试执行,全部机械化操作 |
@ -255,7 +255,7 @@ commondev_agent_down 收尾(幂等全清,不留孤儿)
commondev_pi_plugin_install ★ 为内置 pi 装插件(scope=project 临时 / plugin 全局) commondev_pi_plugin_install ★ 为内置 pi 装插件(scope=project 临时 / plugin 全局)
commondev_pi_plugin_remove 卸载(同 scope 语义) commondev_pi_plugin_remove 卸载(同 scope 语义)
commondev_pi_plugin_list 列出已装(分 scope) commondev_pi_plugin_list 列出已装(分 scope)
commondev_pi_source_import ★ 把 HomeAgent 内部配置的 LLM 源导入内置 pi commondev_pi_source_import ★ 把 HologramAgent 内部配置的 LLM 源导入内置 pi
commondev_pi_source_add 添加一个源(直接写 pi 的 models.json/auth.json) commondev_pi_source_add 添加一个源(直接写 pi 的 models.json/auth.json)
commondev_pi_source_list 列出可用源(默认**不返回** api_key) commondev_pi_source_list 列出可用源(默认**不返回** api_key)
commondev_pi_source_default ★ 指定内置 pi 默认用哪个源(写 settings.json) commondev_pi_source_default ★ 指定内置 pi 默认用哪个源(写 settings.json)
@ -1078,7 +1078,7 @@ HA_E2E_LLM=1 HA_E2E_API_KEY="$K" HA_E2E_REAL_DB=/home/newqqagent/config.db \
- `commondev_test_run` / `commondev_test_mutate`:早期清单的两个单阶段入口已保留;`commondev_review_submit` 是两阶段一键入口。 - `commondev_test_run` / `commondev_test_mutate`:早期清单的两个单阶段入口已保留;`commondev_review_submit` 是两阶段一键入口。
- `commondev_pi_plugin_*` 与细化稿的 `commondev_pi_package_*`:两套命名均注册为兼容别名;底层调用同一套 `pi install/remove/list/update`。 - `commondev_pi_plugin_*` 与细化稿的 `commondev_pi_package_*`:两套命名均注册为兼容别名;底层调用同一套 `pi install/remove/list/update`。
- `commondev_project_open`:续篇早期别名已补,底层复用 `project_add`。 - `commondev_project_open`:续篇早期别名已补,底层复用 `project_add`。
- skill 双投不是运行时插件行为:主管侧 skill 由 HomeAgent 发布,执行侧 skill 由工作目录/发布包注入;插件不擅自把代码写进用户全局目录。 - skill 双投不是运行时插件行为:主管侧 skill 由 HologramAgent 发布,执行侧 skill 由工作目录/发布包注入;插件不擅自把代码写进用户全局目录。
### 14.3 仍明确未实现的设计项 ### 14.3 仍明确未实现的设计项

View File

@ -1,4 +1,4 @@
# HomeAgent 生产部署手册(homed / waiter) # HologramAgent 生产部署手册(homed / waiter)
> 适用范围:本机(`.60`)的 `homeagent.service`,以及两台设备桥宿主上的 > 适用范围:本机(`.60`)的 `homeagent.service`,以及两台设备桥宿主上的
> `waiter-remote.service`。 > `waiter-remote.service`。

View File

@ -1,4 +1,4 @@
# HomeAgent 遗留问题清单 # HologramAgent 遗留问题清单
> **本文定位(2026-09-25 重写)**:只写**仍未完成、且经源码/实测核实确属本仓库**的问题。 > **本文定位(2026-09-25 重写)**:只写**仍未完成、且经源码/实测核实确属本仓库**的问题。
> >

View File

@ -168,16 +168,16 @@ core.memory.multimodal_space.options.model_dir = ${HA_DATA}/models/chinese-clip-
| 内容 | 包内路径 | | 内容 | 包内路径 |
|---|---| |---|---|
| Chinese-CLIP 产物(754MB) | `/usr/lib/homeagent/models/chinese-clip-vit-b16-onnx/` | | Chinese-CLIP 产物(754MB) | `/usr/lib/hologram/models/chinese-clip-vit-b16-onnx/` |
| ONNX Runtime(24MB) | `/usr/lib/homeagent/onnxruntime/libonnxruntime.so` | | ONNX Runtime(24MB) | `/usr/lib/hologram/onnxruntime/libonnxruntime.so` |
| 许可证 | `/usr/share/doc/homeagent/licenses/`(Apache-2.0、MIT、ThirdPartyNotices、模型来源) | | 许可证 | `/usr/share/doc/hologramagent/licenses/`(Apache-2.0、MIT、ThirdPartyNotices、模型来源) |
- `deploy/packaging/package-linux.sh` 的 `stage_multimodal_assets()` 在打 server/full 前 - `deploy/packaging/package-linux.sh` 的 `stage_multimodal_assets()` 在打 server/full 前
会校验产物 `SHA256SUMS`、逐文件非空、运行库架构与目标一致;**缺一即失败**, 会校验产物 `SHA256SUMS`、逐文件非空、运行库架构与目标一致;**缺一即失败**,
不生成「默认启用但装完不能用」的假包。`client` 包不含(它不跑 homed)。 不生成「默认启用但装完不能用」的假包。`client` 包不含(它不跑 homed)。
- 安装时 `setup.sh` 把包内模型目录软链到 `<dataDir>/models/chinese-clip-vit-b16-onnx` - 安装时 `setup.sh` 把包内模型目录软链到 `<dataDir>/models/chinese-clip-vit-b16-onnx`
(既不复制 754MB,也保持 dataDir 可迁移;已存在的自定义目录绝不覆盖)。 (既不复制 754MB,也保持 dataDir 可迁移;已存在的自定义目录绝不覆盖)。
- 服务单元设 `Environment=ONNXRUNTIME_DIR=/usr/lib/homeagent/onnxruntime`; - 服务单元设 `Environment=ONNXRUNTIME_DIR=/usr/lib/hologram/onnxruntime`;
provider 的查找顺序是 `ONNXRUNTIME_DIR` → `ONNX_ML_DIR` → 包内路径 → provider 的查找顺序是 `ONNXRUNTIME_DIR` → `ONNX_ML_DIR` → 包内路径 →
`/opt/onnxruntime` → `/usr/local/lib` → `/usr/lib`。 `/opt/onnxruntime` → `/usr/local/lib` → `/usr/lib`。
- 构建机需自备产物:`build/model-assets/chinese-clip-vit-b16-onnx/` 与 - 构建机需自备产物:`build/model-assets/chinese-clip-vit-b16-onnx/` 与

View File

@ -2,7 +2,7 @@
**日期**:2026-10-04 **日期**:2026-10-04
**分支**:`feat/context-overflow-l4`(未 push) **分支**:`feat/context-overflow-l4`(未 push)
**状态**:HomeAgent 已停机(inactive + disabled) **状态**:HologramAgent 已停机(inactive + disabled)
--- ---

View File

@ -677,7 +677,7 @@ ha-c(运维域) 67 条 维度名 10 种 179 字段 只1次 4 (36%)
| 能跨域泛化? | **否**(域外零字段) | | 能跨域泛化? | **否**(域外零字段) |
| 实际可用性 | **运维域内可用;通用域不可用** | | 实际可用性 | **运维域内可用;通用域不可用** |
而 HomeAgent 是**通用 Agent** —— 生产库里 72% 是不属于任何单一"域"的叙述句。 而 HologramAgent 是**通用 Agent** —— 生产库里 72% 是不属于任何单一"域"的叙述句。
所以「按域训模型」这条路对它**不成立**:域划分不出来, 所以「按域训模型」这条路对它**不成立**:域划分不出来,
而混域会互相撕裂(0.918 → 0.637)。 而混域会互相撕裂(0.918 → 0.637)。
@ -717,7 +717,7 @@ ha-c(运维域) 67 条 维度名 10 种 179 字段 只1次 4 (36%)
这些是只有语义能区分的: 这些是只有语义能区分的:
``` ```
插件名称 = 从零开发 HomeAgent QQ 插件 插件名称 = 从零开发 HologramAgent QQ 插件
脚本路径 = ${REPO}/… 脚本路径 = ${REPO}/…
检测类型 = 末位数字检测、本福特定律、… 检测类型 = 末位数字检测、本福特定律、…
技能安装方式 = 本地安装 技能安装方式 = 本地安装

View File

@ -3,10 +3,10 @@
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>HomeAgent — 常驻型个人 Agent 框架</title> <title>HologramAgent — 常驻型个人 Agent 框架</title>
<meta name="description" content="HomeAgent 是一个持续运行的个人智能 Agent 框架:内核零 IO(所有 IO 由插件承载)、三层记忆(Context → Document → Graph)、输入调度(两类别 + 四级中断)与驻留式子 agent。" /> <meta name="description" content="HologramAgent 是一个持续运行的个人智能 Agent 框架:内核零 IO(所有 IO 由插件承载)、三层记忆(Context → Document → Graph)、输入调度(两类别 + 四级中断)与驻留式子 agent。" />
<link rel="icon" type="image/svg+xml" href="assets/logo.svg" /> <link rel="icon" type="image/svg+xml" href="assets/logo.svg" />
<meta property="og:title" content="HomeAgent — 常驻型个人 Agent 框架" /> <meta property="og:title" content="HologramAgent — 常驻型个人 Agent 框架" />
<meta property="og:description" content="内核零 IO · 三层记忆 · 四级中断调度 · 驻留式子 agent" /> <meta property="og:description" content="内核零 IO · 三层记忆 · 四级中断调度 · 驻留式子 agent" />
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<script> <script>
@ -1982,8 +1982,8 @@
<div class="wrap"> <div class="wrap">
<nav> <nav>
<span class="brand"> <span class="brand">
<img src="assets/logo.svg" alt="HomeAgent logo" /> <img src="assets/logo.svg" alt="HologramAgent logo" />
HomeAgent HologramAgent
</span> </span>
<a class="link hide-sm" href="#features">特性</a> <a class="link hide-sm" href="#features">特性</a>
<a class="link hide-sm" href="#memory">记忆</a> <a class="link hide-sm" href="#memory">记忆</a>
@ -2858,7 +2858,7 @@ echo <span class="s">"你好,记住我喜欢喝咖啡"</span> | ./build/waiter
</div> </div>
<div class="pcard" id="p-homeagent-mail-bridge"> <div class="pcard" id="p-homeagent-mail-bridge">
<div class="pcard-head"><code>homeagent-mail-bridge</code><span class="ver">v0.2.2</span></div> <div class="pcard-head"><code>homeagent-mail-bridge</code><span class="ver">v0.2.2</span></div>
<p>HomeAgent 接入 AgentMail:邮件驱动的多智能体协作</p> <p>HologramAgent 接入 AgentMail:邮件驱动的多智能体协作</p>
<a class="psrc" href="https://gitea.jianfgit.xyz/jianf/MailUI4Agents/src/branch/main/plugins/homeagent-mail-bridge" target="_blank" rel="noopener noreferrer" title="agentmail plugins/homeagent-mail-bridge"><span class="psrc-r">agentmail</span><span class="psrc-p">plugins/homeagent-mail-bridge</span><span class="psrc-out">↗</span></a> <a class="psrc" href="https://gitea.jianfgit.xyz/jianf/MailUI4Agents/src/branch/main/plugins/homeagent-mail-bridge" target="_blank" rel="noopener noreferrer" title="agentmail plugins/homeagent-mail-bridge"><span class="psrc-r">agentmail</span><span class="psrc-p">plugins/homeagent-mail-bridge</span><span class="psrc-out">↗</span></a>
</div> </div>
<div class="pcard" id="p-mc"> <div class="pcard" id="p-mc">