Documentation
¶
Overview ¶
Package ningharness 是 Agent 宿主门面:Open / UseProject / Close(Store + Session + Job)。
层划分(扁平包,靠依赖方向表达架构):
- lifecycle:一轮怎么跑(步骤 + Bus + RunState);前馈见 RunState.Feedforward
- toolgateway / workspace:Gateway 与文件世界(turn* 为 RunState 投影)
- store / session / history / resource / task / job / goal / trace:Store
- skill / lesson / memory:Skill Slot + Memory 插槽(默认 Disk / Lesson)
- guest:Guest 插槽(Run;前馈经 guest.Wire)
- defaults:可选装配(Lifecycle Host + MCP + Eino + Memory + Skill);examples 为示例客户端
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Harness ¶
type Harness struct {
DB *sql.DB
Session *session.Store
Job *job.Manager
// contains filtered or unexported fields
}
Harness 地基句柄。
func (*Harness) UseProject ¶
UseProject 登记项目、打开项目迁移,并绑定 Job 到该根。 若 Open 时带了 DataDir,则库落在该目录(OpenProjectAt),避免嵌入方误写入家目录默认库。
type Opts ¶
type Opts struct {
// DataDir sqlite 下 desk.db 目录;也可作嵌入方工作区根。mysql 忽略库路径。
DataDir string
// Root 当前项目根;可空,之后 UseProject。
Root string
// Driver sqlite(默认)| mysql。
Driver string
// DSN mysql 连接串;与 DB 二选一。
DSN string
// DB 宿主注入的连接池(如与产品同实例);不由此 Close。
DB *sql.DB
// TablePrefix 表前缀;mysql 默认 nh_,与业务表隔离。
TablePrefix string
// ProjectKey 逻辑项目键;嵌入同库时建议设稳定键,避免本机路径当 id。
ProjectKey string
}
Opts Open 参数(通用宿主配置;不含业务域名)。
Directories
¶
| Path | Synopsis |
|---|---|
|
Package contextpatch 台面变更补丁:Go 确定性回执(summary + 小 delta + refs)。
|
Package contextpatch 台面变更补丁:Go 确定性回执(summary + 小 delta + refs)。 |
|
Package defaults 可选装配层:粘合 Harness + ToolGateway + MCP + Guest + Lifecycle Host。
|
Package defaults 可选装配层:粘合 Harness + ToolGateway + MCP + Guest + Lifecycle Host。 |
|
examples
|
|
|
chat
command
Complete demo: MCP core tools + Eino Guest + one user message.
|
Complete demo: MCP core tools + Eino Guest + one user message. |
|
Package guest 是 Guest 插槽:怎么想;工具须经 Gateway(本包不定义 Lifecycle)。
|
Package guest 是 Guest 插槽:怎么想;工具须经 Gateway(本包不定义 Lifecycle)。 |
|
eino
Package eino 可选默认 Guest:Eino ReAct + Gateway 工具。
|
Package eino 可选默认 Guest:Eino ReAct + Gateway 工具。 |
|
Package history 模型侧连贯上下文(history_message 表)。
|
Package history 模型侧连贯上下文(history_message 表)。 |
|
Package job Agent 队列:Job = 调度单元;执行台账见 ningharness/task。
|
Package job Agent 队列:Job = 调度单元;执行台账见 ningharness/task。 |
|
Package jsonparse 提供无业务语义的 JSON 解析(不修复、不校验 schema)。
|
Package jsonparse 提供无业务语义的 JSON 解析(不修复、不校验 schema)。 |
|
Package lifecycle 定义 Harness「一轮」怎么跑:固定领域步骤 + 事件打孔 + 管道上下文。
|
Package lifecycle 定义 Harness「一轮」怎么跑:固定领域步骤 + 事件打孔 + 管道上下文。 |
|
Package memory 是 Memory 插槽:在 assemble 时贡献前馈;可选 Ingest 回合后沉淀。
|
Package memory 是 Memory 插槽:在 assemble 时贡献前馈;可选 Ingest 回合后沉淀。 |
|
Package metadir 项目与家目录元数据路径(统一 .ningharness)。
|
Package metadir 项目与家目录元数据路径(统一 .ningharness)。 |
|
Package resource 外置正文索引:入库不截断,进模用 summary,按需召回。
|
Package resource 外置正文索引:入库不截断,进模用 summary,按需召回。 |
|
Package skill 项目级 Skill 磁盘契约与 Slot 插槽:system/skills/<id>/SKILL.md。
|
Package skill 项目级 Skill 磁盘契约与 Slot 插槽:system/skills/<id>/SKILL.md。 |
|
Package store 台面持久层:默认 SQLite(desk.db);可切换 MySQL(表前缀隔离,供嵌入方同实例共库)。
|
Package store 台面持久层:默认 SQLite(desk.db);可切换 MySQL(表前缀隔离,供嵌入方同实例共库)。 |
|
工具回执语义:失败 / 已落盘 / 已入队(未落盘)。
|
工具回执语义:失败 / 已落盘 / 已入队(未落盘)。 |
|
Package toolgateway 是工具网关(Gateway):注册 / 授权 / Invoke / MCP HTTP。
|
Package toolgateway 是工具网关(Gateway):注册 / 授权 / Invoke / MCP HTTP。 |
|
Package workspace includes path sorting helpers (names / rel paths).
|
Package workspace includes path sorting helpers (names / rel paths). |
Click to show internal directories.
Click to hide internal directories.