agentre

command module
v0.0.0-...-34a159a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 25, 2026 License: GPL-3.0 Imports: 5 Imported by: 0

README

English | 中文


Agentre

A local-first desktop workspace for coordinating Claude Code, Codex, and other AI coding agents across projects, sessions, and remote machines.

Go   React   Wails   Platform

About

AI coding work rarely fits inside one terminal tab anymore. A real workday may have one agent fixing backend behavior, another reviewing a frontend change, a third investigating a production log, and a fourth waiting for tool approval.

Agentre gives that workflow one desktop home. Each Agent has a role, avatar, system prompt, skills, and backend engine. Agents live inside Departments, work inside Projects, and run many Sessions in parallel. The app is built for quickly seeing what is running, what is waiting, and where to jump next.

If you find it useful, please give us a Star ⭐ — it means a lot!

What You Can Do

  • Run multiple coding agents side by side: keep frontend, backend, reviewer, release, or ops agents active at the same time without losing their individual context.
  • Choose the engine per agent: assign Claude Code, Codex, or a built-in engine to each agent while keeping the same chat workflow.
  • Organize work by project: group sessions, members, and agents around a codebase or initiative so recent work is easy to scan.
  • Switch fast with the command palette: use ⌘P to open chats, jump between sessions, change projects, and trigger agent actions from the keyboard.
  • Review tool activity in place: file edits, shell commands, MCP calls, permission prompts, and ask-user questions appear as explicit in-app cards.
  • Run sessions on another machine: pair a LAN agentred daemon and run agent work on a remote dev box while approvals stay in the desktop app.
  • Keep long tasks manageable: queued messages, active-session indicators, abort/resume controls, and waiting states make parallel work easier to supervise.

App Surfaces

Area What it is for
Chat Drive agent sessions, inspect tool calls, approve actions, queue follow-up messages, and resume interrupted work.
Board Track tasks across four columns, narrow the board to a project subtree, filter and edit in place; tasks record which agent, machine and model they are meant for.
Org Model agents as departments and sub-departments, with leads, colors, and role-specific profiles.
Hooks Route external triggers such as webhooks, notifications, timers, or messages into agent workflows.
Settings Configure agent backends, remote devices, project membership, and session permission modes.

Core Concepts

Concept What it means
Agent A role + avatar + system prompt + skills + backend engine. An agent can run many sessions.
Department A nested organizational container for agents, with an optional lead and theme color.
Session One conversation or task run, with states such as running, waiting, and idle.
Project A workspace scope for a codebase or initiative, bundling members, agents, and sessions.
Task A card on the board: one of four columns, optionally under a project, with labels and an intended agent, machine and model.
Hook An external event source that can dispatch work to agents through routing rules.

Remote Execution

Agentre uses agentred, a companion daemon for running sessions on another macOS, Linux, or Windows machine on your LAN. Check the GitHub Releases page for published assets.

To build agentred from this checkout and install it as a user service:

make agentred
build/bin/agentred --version
build/bin/agentred service install --start
build/bin/agentred service status

Then connect the daemon to the desktop app:

  1. Open Settings → Remote devices and pair the agentred daemon.
  2. Open Settings → Agent backends and create a backend whose run device is the paired machine.
  3. In Project → Settings → Members, add an agent that uses that backend and points to the working path on the remote machine.
  4. Start a chat from the command palette. The session runs remotely, and the desktop app still shows tool approvals, questions, status, and output.

Desktop Workflow

  • 56px icon rail for Chat, Board, Org, Hooks, and Settings.
  • Agent chat list with pinned agents, active-session dots, and inline session counts.
  • Project sessions view for scanning recent work by project instead of by agent.
  • Permission mode chooser before a session starts touching files or running tools.
  • Inline subagent/tool cards so shell, file, and MCP activity is inspectable without reading raw logs.
  • Keyboard-first navigation for moving across agents, projects, and sessions quickly.

Development

Prerequisites: Go 1.26+, Node.js 22+ with pnpm, and the Wails v2 CLI.

make install-deps    # Install frontend dependencies
make dev             # Development mode with hot reload
make test            # Backend Go tests + frontend Vitest
make build           # Production build for the current platform
make install         # Install the app bundle (macOS: /Applications/Agentre.app)

To target another macOS install location:

make install MACOS_APP_INSTALL_DIR="$HOME/Applications"

Contributing

Issues and pull requests are welcome. Start with the Contributing Guide (中文版) — it covers setup, the engineering ground rules, commit style, and the PR checklist.

License

Released under GPLv3.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
agentred command
Package main is the agentred binary entry point.
Package main is the agentred binary entry point.
agrctl command
Command agrctl is Agentre's companion CLI — a small standalone binary that owns the `claudecode` PostToolUse hook shim, `acp`, and the top-level control verbs (list / get / create / update / delete / help / send).
Command agrctl is Agentre's companion CLI — a small standalone binary that owns the `claudecode` PostToolUse hook shim, `acp`, and the top-level control verbs (list / get / create / update / delete / help / send).
e2e
app command
cmd/fake-peer command
composition
Package composition is the dedicated E2E composition root.
Package composition is the dedicated E2E composition root.
fakepeer
Package fakepeer implements the runner-owned loopback agentred protocol boundary.
Package fakepeer implements the runner-owned loopback agentred protocol boundary.
fakes
Package fakes provides deterministic composition reachable only from the dedicated E2E main.
Package fakes provides deterministic composition reachable only from the dedicated E2E main.
preflight
Package preflight validates the dedicated E2E entrypoint before any persistent bootstrap side effect occurs.
Package preflight validates the dedicated E2E entrypoint before any persistent bootstrap side effect occurs.
internal
app
Package app contains the Wails binding layer.
Package app contains the Wails binding layer.
cli/acpcmd
Package acpcmd implements "agrctl acp": agrctl running as an ACP v1 Agent on stdio, so an Agentre `acp` backend can drive it with `--acp-command agrctl --acp-args acp --agent <name>`.
Package acpcmd implements "agrctl acp": agrctl running as an ACP v1 Agent on stdio, so an Agentre `acp` backend can drive it with `--acp-command agrctl --acp-args acp --agent <name>`.
cli/claudecodecmd
Package claudecodecmd is the entry point for the "agrctl claudecode <…>" hook subcommands.
Package claudecodecmd is the entry point for the "agrctl claudecode <…>" hook subcommands.
cli/ctlcmd
Package ctlcmd implements agrctl's top-level control verbs — list / get / create / update / delete / help for Agentre's resources, and send — used to control a running desktop without booting the Wails app.
Package ctlcmd implements agrctl's top-level control verbs — list / get / create / update / delete / help for Agentre's resources, and send — used to control a running desktop without booting the Wails app.
daemon
Package daemon assembles the agentred daemon: state, gateway, rpc server, handlers, notifier.
Package daemon assembles the agentred daemon: state, gateway, rpc server, handlers, notifier.
daemon/enginesnapshot
Package enginesnapshot pulls the account engine subset needed by agentred.
Package enginesnapshot pulls the account engine subset needed by agentred.
daemon/handlers
Package handlers implements each daemon RPC method as a thin function.
Package handlers implements each daemon RPC method as a thin function.
daemon/handlers/mock_handlers
Package mock_handlers is a generated GoMock package.
Package mock_handlers is a generated GoMock package.
daemon/identity
Package identity owns protocol-neutral daemon identity derivation.
Package identity owns protocol-neutral daemon identity derivation.
daemon/lancert
Package lancert owns the self-signed certificate agentred serves on its LAN port when the operator configured none.
Package lancert owns the self-signed certificate agentred serves on its LAN port when the operator configured none.
daemon/migrations
Package migrations 汇总并执行 agentred 自己的 SQLite 数据库迁移。
Package migrations 汇总并执行 agentred 自己的 SQLite 数据库迁移。
daemon/pairing
Package pairing implements one-shot pairing-code generation, deviceToken minting, and per-IP rate-limiting for agentred's auth handshake.
Package pairing implements one-shot pairing-code generation, deviceToken minting, and per-IP rate-limiting for agentred's auth handshake.
daemon/portforward
Package portforward 是端口转发在**被访问的那台设备**上的判定面:这台机器允许把 哪些目标转出去(声明族),以及一次 open 该不该落地(授权闸门)。
Package portforward 是端口转发在**被访问的那台设备**上的判定面:这台机器允许把 哪些目标转出去(声明族),以及一次 open 该不该落地(授权闸门)。
daemon/remotefs
Package remotefs 是 agentred daemon 端 remotefs.* RPC 的 handler 实现。
Package remotefs 是 agentred daemon 端 remotefs.* RPC 的 handler 实现。
daemon/repository/session_repo
Package session_repo 提供 agentred 侧 daemon_sessions 表的持久化访问 —— 会话在这台 daemon 上的**身份与生命周期**:「这条会话是谁的、在跑什么、处于哪一步」。
Package session_repo 提供 agentred 侧 daemon_sessions 表的持久化访问 —— 会话在这台 daemon 上的**身份与生命周期**:「这条会话是谁的、在跑什么、处于哪一步」。
daemon/repository/session_repo/mock_session_repo
Package mock_session_repo is a generated GoMock package.
Package mock_session_repo is a generated GoMock package.
daemon/sessions
Package sessions owns the daemon-level ownership of in-flight runtime generations.
Package sessions owns the daemon-level ownership of in-flight runtime generations.
daemon/state
Package state owns agentred's single persistent JSON file.
Package state owns agentred's single persistent JSON file.
daemon/transcriptimport
Package transcriptimport 是 agentred daemon 端 transcriptimport.* RPC 的 handler 实现:发现候选、打开元信息、分页取回轮次(本文件),以及在本机执行一次导入 (execute.go —— 这一族里唯一写库的一条路径)。
Package transcriptimport 是 agentred daemon 端 transcriptimport.* RPC 的 handler 实现:发现候选、打开元信息、分页取回轮次(本文件),以及在本机执行一次导入 (execute.go —— 这一族里唯一写库的一条路径)。
daemon/workspacefs
Package workspacefs 是 agentred daemon 端 workspacefs.* RPC 的 handler 实现。
Package workspacefs 是 agentred daemon 端 workspacefs.* RPC 的 handler 实现。
desktop
Package desktop owns the production-neutral Wails desktop lifecycle shared by the production and dedicated E2E entrypoints.
Package desktop owns the production-neutral Wails desktop lifecycle shared by the production and dedicated E2E entrypoints.
desktop/channelidentity command
Command channelidentity exposes paths.Channel.Identity to build tooling, so scripts/channel-identity.sh (local make and CI) never keeps its own copy of the channel identity table.
Command channelidentity exposes paths.Channel.Identity to build tooling, so scripts/channel-identity.sh (local make and CI) never keeps its own copy of the channel identity table.
model/entity
Package entity 存放领域实体(充血模型)。
Package entity 存放领域实体(充血模型)。
model/entity/agent_backend_entity
Package agent_backend_entity 维护 Agent 后端的充血实体。
Package agent_backend_entity 维护 Agent 后端的充血实体。
model/entity/agent_entity
Package agent_entity 维护 Agent 的充血实体。
Package agent_entity 维护 Agent 的充血实体。
model/entity/app_setting_entity
Package app_setting_entity 维护 App 全局 key-value 设置项的充血实体。
Package app_setting_entity 维护 App 全局 key-value 设置项的充血实体。
model/entity/chat_entity
Package chat_entity 维护聊天会话 / 消息的充血实体。
Package chat_entity 维护聊天会话 / 消息的充血实体。
model/entity/department_entity
Package department_entity 维护部门的充血实体。
Package department_entity 维护部门的充血实体。
model/entity/hook_entity
Package hook_entity 是脚本驱动 Hook 与其产出事件的富模型。
Package hook_entity 是脚本驱动 Hook 与其产出事件的富模型。
model/entity/issue_entity
Package issue_entity 维护 Issue 的充血实体。
Package issue_entity 维护 Issue 的充血实体。
model/entity/llm_provider_entity
Package llm_provider_entity 维护 LLM 供应商的充血实体。
Package llm_provider_entity 维护 LLM 供应商的充血实体。
model/entity/llm_provider_model_entity
Package llm_provider_model_entity 维护 LLM 供应商下稳定模型(1 → N)的充血实体。
Package llm_provider_model_entity 维护 LLM 供应商下稳定模型(1 → N)的充血实体。
model/entity/paired_agentred_entity
Package paired_agentred_entity 维护桌面端 LAN 直连 agentred 的充血实体。
Package paired_agentred_entity 维护桌面端 LAN 直连 agentred 的充血实体。
model/entity/port_forward_entity
Package port_forward_entity 维护「设备端口转发映射」的实体:一条声明,即这台设备 允许把某个目标转出去(规格「映射的声明与生命周期」「映射与目标」)。
Package port_forward_entity 维护「设备端口转发映射」的实体:一条声明,即这台设备 允许把某个目标转出去(规格「映射的声明与生命周期」「映射与目标」)。
model/entity/project_entity
Package project_entity 维护 Project 的充血实体。
Package project_entity 维护 Project 的充血实体。
model/entity/project_location_entity
Package project_location_entity 维护 ProjectLocation 的充血实体。
Package project_location_entity 维护 ProjectLocation 的充血实体。
model/entity/server_state_entity
Package server_state_entity 维护桌面端与 Server 联机状态的单行实体。
Package server_state_entity 维护桌面端与 Server 联机状态的单行实体。
model/entity/sync_account_entity
Package sync_account_entity 维护「本机认得的账号」这张本地表。
Package sync_account_entity 维护「本机认得的账号」这张本地表。
model/entity/syncmeta_entity
Package syncmeta_entity 提供账号级表共用的同步元数据(R1、docs/specs/2026-08-07-workspace-sync.md 366 行)。
Package syncmeta_entity 提供账号级表共用的同步元数据(R1、docs/specs/2026-08-07-workspace-sync.md 366 行)。
model/entity/syncqueue_entity
Package syncqueue_entity 维护本地同步骨架的三张表(387-390 行):没能同步的 改动,以及分出站 / 入站两个方向的同步队列。
Package syncqueue_entity 维护本地同步骨架的三张表(387-390 行):没能同步的 改动,以及分出站 / 入站两个方向的同步队列。
model/entity/transcript_entity
Package transcript_entity 维护转录(消息 + 块)的充血实体:块拆分、CheckpointBlocks 差分、正文编解码。
Package transcript_entity 维护转录(消息 + 块)的充血实体:块拆分、CheckpointBlocks 差分、正文编解码。
peer
Package peer owns the desktop's inbound, session-level peer surface.
Package peer owns the desktop's inbound, session-level peer surface.
pkg/activityrollup
Package activityrollup 把一台机器上的会话压成「按天 × 维度」的计数。
Package activityrollup 把一台机器上的会话压成「按天 × 维度」的计数。
pkg/agentprovider
Package agentprovider 把项目内的 LLMProvider entity 映射成 cago provider.Provider。
Package agentprovider 把项目内的 LLMProvider entity 映射成 cago provider.Provider。
pkg/agentredipc
Package agentredipc owns the local daemon endpoint shared by agentred and its CLI.
Package agentredipc owns the local daemon endpoint shared by agentred and its CLI.
pkg/agentruntime
Package agentruntime 把"按 agent_backend.Type 跑一段对话"的差异封进 Runtime 接口, 由 runtimes/{builtin,claudecode,codex,piagent,openclaw} 子包各自 init() 注册到 RuntimeFor; remote 是桌面端按设备创建的代理,不通过全局注册表登记。
Package agentruntime 把"按 agent_backend.Type 跑一段对话"的差异封进 Runtime 接口, 由 runtimes/{builtin,claudecode,codex,piagent,openclaw} 子包各自 init() 注册到 RuntimeFor; remote 是桌面端按设备创建的代理,不通过全局注册表登记。
pkg/agentruntime/canonical
Package canonical 定义跨 runtime 的"特殊工具"统一抽象。
Package canonical 定义跨 runtime 的"特殊工具"统一抽象。
pkg/agentruntime/capability
Package capability 描述 runtime 支持哪些可选能力,前后端用 bool 集合做 UI gating, PermissionModeMeta 用结构化字段消除"每个 backend 各自维护 mode 白名单"的硬编码。
Package capability 描述 runtime 支持哪些可选能力,前后端用 bool 集合做 UI gating, PermissionModeMeta 用结构化字段消除"每个 backend 各自维护 mode 白名单"的硬编码。
pkg/agentruntime/mock_agentruntime
Package mock_agentruntime is a generated GoMock package.
Package mock_agentruntime is a generated GoMock package.
pkg/agentruntime/runtimes/acp
Package acp is the Agent Client Protocol runtime: Agentre acts as the ACP client, spawning one external ACP agent subprocess (stdio JSON-RPC, protocol v1) per chat session and translating its session stream into sealed agentruntime events.
Package acp is the Agent Client Protocol runtime: Agentre acts as the ACP client, spawning one external ACP agent subprocess (stdio JSON-RPC, protocol v1) per chat session and translating its session stream into sealed agentruntime events.
pkg/agentruntime/runtimes/builtin
Package builtin 是 in-process agent runtime,通过 cago agents/app/coding 跑工具 循环,emit sealed agentruntime.Event。
Package builtin 是 in-process agent runtime,通过 cago agents/app/coding 跑工具 循环,emit sealed agentruntime.Event。
pkg/agentruntime/runtimes/claudecode
Package claudecode 是 Anthropic Claude Code CLI 的 agent runtime,emit sealed agentruntime.Event。
Package claudecode 是 Anthropic Claude Code CLI 的 agent runtime,emit sealed agentruntime.Event。
pkg/agentruntime/runtimes/codex
Package codex 是 OpenAI Codex CLI 的 agent runtime,emit sealed agentruntime.Event。
Package codex 是 OpenAI Codex CLI 的 agent runtime,emit sealed agentruntime.Event。
pkg/agentruntime/runtimes/fake
Package fake 提供 e2e 专用的确定性 agent runtime:不起任何子进程,按 req.UserText 回显一段固定前缀文本后正常结束。
Package fake 提供 e2e 专用的确定性 agent runtime:不起任何子进程,按 req.UserText 回显一段固定前缀文本后正常结束。
pkg/agentruntime/runtimes/hermes
Package hermes drives a running Hermes Agent `serve` through its TUI-gateway JSON-RPC protocol (newline-delimited JSON over a WebSocket).
Package hermes drives a running Hermes Agent `serve` through its TUI-gateway JSON-RPC protocol (newline-delimited JSON over a WebSocket).
pkg/agentruntime/runtimes/hermes/hermesauth
Package hermesauth is the side-effect-free client of a gated `hermes serve`'s native auth endpoints (provider directory, PKCE password login, refresh and WebSocket tickets).
Package hermesauth is the side-effect-free client of a gated `hermes serve`'s native auth endpoints (provider directory, PKCE password login, refresh and WebSocket tickets).
pkg/agentruntime/runtimes/hermes/hermesgateway
Package hermesgateway is the side-effect-free transport handshake of a running `hermes serve`: it resolves how to authenticate (the loopback session token or a ws-ticket minted from a stored login), opens the WebSocket, classifies the failures, and probes a serve up to `gateway.ready`.
Package hermesgateway is the side-effect-free transport handshake of a running `hermes serve`: it resolves how to authenticate (the loopback session token or a ws-ticket minted from a stored login), opens the WebSocket, classifies the failures, and probes a serve up to `gateway.ready`.
pkg/agentruntime/runtimes/openclaw
Package openclaw implements the AgentRE runtime backed exclusively by the OpenClaw Gateway WebSocket RPC protocol.
Package openclaw implements the AgentRE runtime backed exclusively by the OpenClaw Gateway WebSocket RPC protocol.
pkg/agentruntime/runtimes/piagent
Package piagent wraps the Pi coding agent RPC mode and translates it to agentruntime.Event.
Package piagent wraps the Pi coding agent RPC mode and translates it to agentruntime.Event.
pkg/agentruntime/runtimes/piagent/mcpbridge
Package mcpbridge 把注入给 piagent 的 HTTP MCP server 转成一个 pi 扩展可读的 配置 + 一份内嵌的桥接扩展(bridge.mjs)。
Package mcpbridge 把注入给 piagent 的 HTTP MCP server 转成一个 pi 扩展可读的 配置 + 一份内嵌的桥接扩展(bridge.mjs)。
pkg/agentruntime/runtimes/remote
Package remote — catchup.go 是**桌面 App 重启后**的补齐入口。
Package remote — catchup.go 是**桌面 App 重启后**的补齐入口。
pkg/agentruntime/runtimes/remote/protowire
Package protowire owns the only conversion boundary between sealed agentruntime values and the generated Protobuf WebSocket protocol.
Package protowire owns the only conversion boundary between sealed agentruntime values and the generated Protobuf WebSocket protocol.
pkg/agentruntime/runtimes/remote/wire
Package wire 定义 agentre ↔ agentred RPC 协议的参数 / 结果 / 通知帧。
Package wire 定义 agentre ↔ agentred RPC 协议的参数 / 结果 / 通知帧。
pkg/agentskill
Package agentskill 维护 agent 技能包(= Claude Code plugin)目录:静态推荐 + 按 backend 的发现器注册表。
Package agentskill 维护 agent 技能包(= Claude Code plugin)目录:静态推荐 + 按 backend 的发现器注册表。
pkg/agentskill/claudeskill
Package claudeskill 用 `claude plugin list --json` 发现该安装的技能包。
Package claudeskill 用 `claude plugin list --json` 发现该安装的技能包。
pkg/agentskill/codexskill
Package codexskill 用 `codex plugin list --json` 发现该安装的插件技能包。
Package codexskill 用 `codex plugin list --json` 发现该安装的插件技能包。
pkg/agentskill/piagentskill
Package piagentskill discovers Pi skills through its RPC get_commands command.
Package piagentskill discovers Pi skills through its RPC get_commands command.
pkg/agenttool
Package agenttool 维护 agent 级内置工具注册表(静态元数据)。
Package agenttool 维护 agent 级内置工具注册表(静态元数据)。
pkg/agrctlinstall
Package agrctlinstall installs the companion `agrctl` CLI (which owns the `claudecode` hook shim and the `ctl` control commands) into a writable, deterministic location under AppDataDir, from the copy the desktop ships in its app bundle.
Package agrctlinstall installs the companion `agrctl` CLI (which owns the `claudecode` hook shim and the `ctl` control commands) into a writable, deterministic location under AppDataDir, from the copy the desktop ships in its app bundle.
pkg/backendcred
Package backendcred owns the device-local credentials of the network agent backends: the Hermes refresh-token store, the OpenClaw Gateway token slots and the OpenClaw device identity seed.
Package backendcred owns the device-local credentials of the network agent backends: the Hermes refresh-token store, the OpenClaw Gateway token slots and the OpenClaw device identity seed.
pkg/cagoenvelope
Package cagoenvelope 解 cago 的 {data: ...} 响应外壳。
Package cagoenvelope 解 cago 的 {data: ...} 响应外壳。
pkg/ccoauth
Package ccoauth 封装 Claude Code 内部 OAuth usage endpoint (GET https://api.anthropic.com/api/oauth/usage) 的读取,复用给桌面端 cc_usage_svc 和 agentred daemon 远端 RPC。
Package ccoauth 封装 Claude Code 内部 OAuth usage endpoint (GET https://api.anthropic.com/api/oauth/usage) 的读取,复用给桌面端 cc_usage_svc 和 agentred daemon 远端 RPC。
pkg/claudecodehook
Package claudecodehook implements the agrctl claudecode PostToolUse hook handler.
Package claudecodehook implements the agrctl claudecode PostToolUse hook handler.
pkg/clienv
Package clienv builds a desktop-app-safe environment for local CLI tools.
Package clienv builds a desktop-app-safe environment for local CLI tools.
pkg/cliprober
Package cliprober 把「按类型在 $PATH 中找 CLI binary」与「fork CLI 子进程跑一轮 ping」 抽到一个无 GORM、无 cago db、无 entity 依赖的纯函数包。
Package cliprober 把「按类型在 $PATH 中找 CLI binary」与「fork CLI 子进程跑一轮 ping」 抽到一个无 GORM、无 cago db、无 entity 依赖的纯函数包。
pkg/code
Package code 集中维护 Agentre 的业务错误码与 i18n 提示。
Package code 集中维护 Agentre 的业务错误码与 i18n 提示。
pkg/conversationid
Package conversationid 拥有 conversation_id —— 一条对话在桌面端、agentred 与 server 三套库以及线格式上的**唯一身份**。
Package conversationid 拥有 conversation_id —— 一条对话在桌面端、agentred 与 server 三套库以及线格式上的**唯一身份**。
pkg/ctlclient
Package ctlclient is the lightweight HTTP client for a running Agentre desktop's loopback control API (ctl_svc, mounted on the httpgateway under /ctl/).
Package ctlclient is the lightweight HTTP client for a running Agentre desktop's loopback control API (ctl_svc, mounted on the httpgateway under /ctl/).
pkg/ctlendpoint
Package ctlendpoint defines the on-disk handshake file that the running desktop writes and the `agrctl ctl` CLI reads to locate + authenticate against the desktop's local control endpoint (exposed on the httpgateway under /ctl/).
Package ctlendpoint defines the on-disk handshake file that the running desktop writes and the `agrctl ctl` CLI reads to locate + authenticate against the desktop's local control endpoint (exposed on the httpgateway under /ctl/).
pkg/ctlskill
Package ctlskill lays the `agrctl ctl` control channel down on disk as an agent skill, in the two shapes the hosts on this machine read:
Package ctlskill lays the `agrctl ctl` control channel down on disk as an agent skill, in the two shapes the hosts on this machine read:
pkg/deviceidentity
Package deviceidentity 是桌面端设备指纹的**唯一来源**:keychain 账号名,以及「读出或 铸出」的规则。
Package deviceidentity 是桌面端设备指纹的**唯一来源**:keychain 账号名,以及「读出或 铸出」的规则。
pkg/diff
Package diff 把 Edit / MultiEdit / Codex file_change 的 toolInput 规整成 前端可直接渲染的结构化 diff payload。
Package diff 把 Edit / MultiEdit / Codex file_change 的 toolInput 规整成 前端可直接渲染的结构化 diff payload。
pkg/hookexec
Package hookexec 按声明的解释器执行脚本 Hook:写临时文件后起子进程, 注入 env、限时限输出。
Package hookexec 按声明的解释器执行脚本 Hook:写临时文件后起子进程, 注入 env、限时限输出。
pkg/httpgateway
Package httpgateway 暴露一个本地 HTTP 转发服务:把 claude / codex CLI 子进程的 LLM 请求按 Bearer token 路由到目标 LLMProvider。
Package httpgateway 暴露一个本地 HTTP 转发服务:把 claude / codex CLI 子进程的 LLM 请求按 Bearer token 路由到目标 LLMProvider。
pkg/keychain
Package keychain 抽象一层 OS 级别的密钥存储。
Package keychain 抽象一层 OS 级别的密钥存储。
pkg/llmcatalog
Package llmcatalog 在 cago agents 内置目录 (provider/models) 之上提供宽容的模型元数据查询。
Package llmcatalog 在 cago agents 内置目录 (provider/models) 之上提供宽容的模型元数据查询。
pkg/llmurl
Package llmurl builds upstream LLM API endpoint URLs from user-configured provider base URLs.
Package llmurl builds upstream LLM API endpoint URLs from user-configured provider base URLs.
pkg/logfile
Package logfile 是 Agentre 落盘日志的唯一构造点:桌面端(agentre)与守护进程 (agentred)共用同一套 JSON 编码、lumberjack 轮转与保留策略,避免两个进程各写一份 会各自漂移的配置。
Package logfile 是 Agentre 落盘日志的唯一构造点:桌面端(agentre)与守护进程 (agentred)共用同一套 JSON 编码、lumberjack 轮转与保留策略,避免两个进程各写一份 会各自漂移的配置。
pkg/openclawgateway
Package openclawgateway implements the public OpenClaw Gateway WebSocket protocol used by external operator clients.
Package openclawgateway implements the public OpenClaw Gateway WebSocket protocol used by external operator clients.
pkg/orderedpipe
Package orderedpipe 提供一条**非阻塞**的有序投递管道:生产方 Push 永不阻塞 (缓冲无界),一个 pump goroutine 按序把缓冲里的元素送到 Out()。
Package orderedpipe 提供一条**非阻塞**的有序投递管道:生产方 Push 永不阻塞 (缓冲无界),一个 pump goroutine 按序把缓冲里的元素送到 Out()。
pkg/pathdepth
Package pathdepth 提供"路径遍历是否会走到根以上"的共享判据。
Package pathdepth 提供"路径遍历是否会走到根以上"的共享判据。
pkg/paths
Package paths 提供 Agentre 桌面端的根目录定位。
Package paths 提供 Agentre 桌面端的根目录定位。
pkg/portforward
Package portforward 是**桌面端**那一侧的端口转发入口:为一条端口映射在 `127.0.0.1:<随机端口>` 上绑一条专属监听,把打到它上面的 HTTP 请求经这台桌面端 已有的那条设备连接交给被访问的设备(规格「访问与鉴权」桌面端那一段)。
Package portforward 是**桌面端**那一侧的端口转发入口:为一条端口映射在 `127.0.0.1:<随机端口>` 上绑一条专属监听,把打到它上面的 HTTP 请求经这台桌面端 已有的那条设备连接交给被访问的设备(规格「访问与鉴权」桌面端那一段)。
pkg/protorpctest
Package protorpctest provides an in-memory typed RPC bridge for tests that still script the process-local DaemonClientPort boundary.
Package protorpctest provides an in-memory typed RPC bridge for tests that still script the process-local DaemonClientPort boundary.
pkg/pty
Package pty defines the abstract Handle/Backend types for the terminal integration.
Package pty defines the abstract Handle/Backend types for the terminal integration.
pkg/pty/local
Package local implements pty.Backend with github.com/creack/pty.
Package local implements pty.Backend with github.com/creack/pty.
pkg/pty/remote
Package remote implements pty.Backend by relaying ops over an agentred binary Protobuf RPC client on WebSocket.
Package remote implements pty.Backend by relaying ops over an agentred binary Protobuf RPC client on WebSocket.
pkg/remotefs/pathguard
Package pathguard 提供 remotefs 子系统的路径与名字合法性校验。
Package pathguard 提供 remotefs 子系统的路径与名字合法性校验。
pkg/remotefs/wire
Package wire 定义 agentre ↔ agentred 的 remotefs.* RPC 协议:参数 / 结果 / 错误 sentinel 与 typed RPC error code 的双向翻译。
Package wire 定义 agentre ↔ agentred 的 remotefs.* RPC 协议:参数 / 结果 / 错误 sentinel 与 typed RPC error code 的双向翻译。
pkg/svcerr
Package svcerr 提供 service 层共用的「通用失败 + 真实 cause」错误形状。
Package svcerr 提供 service 层共用的「通用失败 + 真实 cause」错误形状。
pkg/syncwire
Package syncwire 承载桌面端**本端**对工作区同步协议的那几样东西:业务码的客户端 表达(ErrResyncRequired / ErrCursorUnknown)与账号级实时通道的解码。
Package syncwire 承载桌面端**本端**对工作区同步协议的那几样东西:业务码的客户端 表达(ErrResyncRequired / ErrCursorUnknown)与账号级实时通道的解码。
pkg/sysnotify
Package sysnotify 基于 Wails 内置原生通知的系统通知实现(平台叶子,不反向依赖 service 层)。
Package sysnotify 基于 Wails 内置原生通知的系统通知实现(平台叶子,不反向依赖 service 层)。
pkg/transcript
Package transcript 是「事件 → 块」的累积与「块 → 帧」的投影这一层的唯一实现, 桌面端(chat_svc)与 agentred 共用一份(决策 2)。
Package transcript 是「事件 → 块」的累积与「块 → 帧」的投影这一层的唯一实现, 桌面端(chat_svc)与 agentred 共用一份(决策 2)。
pkg/transcript/blocks
Package blocks: NestedToolUseBlock / NestedToolResultBlock 与 cago.ToolUseBlock 形态相似, 但 Audience=ToUI(防 subagent 内部工具流泄漏给外层 LLM),并以 ParentToolCallID + 可选 SubagentRunID 保留父调用和 normalized run 分组。
Package blocks: NestedToolUseBlock / NestedToolResultBlock 与 cago.ToolUseBlock 形态相似, 但 Audience=ToUI(防 subagent 内部工具流泄漏给外层 LLM),并以 ParentToolCallID + 可选 SubagentRunID 保留父调用和 normalized run 分组。
pkg/transcript/handlers
Package handlers 一个 file 一个 agentruntime.Event 类型。
Package handlers 一个 file 一个 agentruntime.Event 类型。
pkg/transcript/turn
Package turn 管理一轮 chat turn 的 block 累积与事件 dispatch。
Package turn 管理一轮 chat turn 的 block 累积与事件 dispatch。
pkg/transcriptimport
Package transcriptimport 定义会话的后端无关导入契约:发现、打开和回放。
Package transcriptimport 定义会话的后端无关导入契约:发现、打开和回放。
pkg/transcriptimport/wire
Package wire 定义 agentre ↔ agentred 的 transcriptimport.* RPC 协议:方法名、 参数 / 结果、错误 sentinel 与 typed RPC error code 的双向翻译。
Package wire 定义 agentre ↔ agentred 的 transcriptimport.* RPC 协议:方法名、 参数 / 结果、错误 sentinel 与 typed RPC error code 的双向翻译。
pkg/tunnelheader
Package tunnelheader 是「哪些头不该跨隧道转发」这一条判据的唯一出处。
Package tunnelheader 是「哪些头不该跨隧道转发」这一条判据的唯一出处。
pkg/turnstats
Package turnstats 一轮 assistant 的计时口径:耗时、首 token、tok/s。
Package turnstats 一轮 assistant 的计时口径:耗时、首 token、tok/s。
pkg/wireversion
Package wireversion carries the agentre ↔ agentred wire protocol version this build speaks, and decides whether a peer's version is the same one.
Package wireversion carries the agentre ↔ agentred wire protocol version this build speaks, and decides whether a peer's version is the same one.
pkg/workspacefs
Package workspacefs 是会话工作目录浏览的叶子包:本机分支与 daemon 侧 handler(下个切片接入)共用同一份目录列举 / git 变动核心逻辑,避免两端 实现分叉。
Package workspacefs 是会话工作目录浏览的叶子包:本机分支与 daemon 侧 handler(下个切片接入)共用同一份目录列举 / git 变动核心逻辑,避免两端 实现分叉。
pkg/workspacefs/wire
Package wire 定义 agentre ↔ agentred 的 workspacefs.* RPC 协议:参数 / 结果 / 错误 sentinel 与 typed RPC error code 的双向翻译。
Package wire 定义 agentre ↔ agentred 的 workspacefs.* RPC 协议:参数 / 结果 / 错误 sentinel 与 typed RPC error code 的双向翻译。
repository
Package repository 汇总所有数据访问子包。
Package repository 汇总所有数据访问子包。
repository/agent_backend_repo
Package agent_backend_repo 提供 Agent 后端的持久化访问。
Package agent_backend_repo 提供 Agent 后端的持久化访问。
repository/agent_backend_repo/mock_agent_backend_repo
Package mock_agent_backend_repo is a generated GoMock package.
Package mock_agent_backend_repo is a generated GoMock package.
repository/agent_repo
Package agent_repo 提供 Agent 的持久化访问。
Package agent_repo 提供 Agent 的持久化访问。
repository/agent_repo/mock_agent_repo
Package mock_agent_repo is a generated GoMock package.
Package mock_agent_repo is a generated GoMock package.
repository/app_setting_repo
Package app_setting_repo 提供 App 全局 key-value 设置项的持久化访问。
Package app_setting_repo 提供 App 全局 key-value 设置项的持久化访问。
repository/app_setting_repo/mock_app_setting_repo
Package mock_app_setting_repo is a generated GoMock package.
Package mock_app_setting_repo is a generated GoMock package.
repository/chat_repo
Package chat_repo 提供 chat session 的持久化访问 —— **只有会话**。
Package chat_repo 提供 chat session 的持久化访问 —— **只有会话**。
repository/chat_repo/mock_chat_repo
Package mock_chat_repo is a generated GoMock package.
Package mock_chat_repo is a generated GoMock package.
repository/department_repo
Package department_repo 提供部门的持久化访问。
Package department_repo 提供部门的持久化访问。
repository/department_repo/mock_department_repo
Package mock_department_repo is a generated GoMock package.
Package mock_department_repo is a generated GoMock package.
repository/hook_repo
Package hook_repo 提供脚本 Hook 与产出事件的持久化访问。
Package hook_repo 提供脚本 Hook 与产出事件的持久化访问。
repository/hook_repo/mock_hook_repo
Package mock_hook_repo is a generated GoMock package.
Package mock_hook_repo is a generated GoMock package.
repository/issue_repo
Package issue_repo 提供 Issue / Label 的持久化访问。
Package issue_repo 提供 Issue / Label 的持久化访问。
repository/issue_repo/mock_issue_repo
Package mock_issue_repo is a generated GoMock package.
Package mock_issue_repo is a generated GoMock package.
repository/llm_provider_repo
Package llm_provider_repo 提供 LLM 供应商及其稳定模型的持久化访问。
Package llm_provider_repo 提供 LLM 供应商及其稳定模型的持久化访问。
repository/llm_provider_repo/mock_llm_provider_repo
Package mock_llm_provider_repo is a generated GoMock package.
Package mock_llm_provider_repo is a generated GoMock package.
repository/port_forward_repo
Package port_forward_repo 提供「设备端口转发映射」的持久化访问:新增、列举、 启停、删除,以及按目标的点查。
Package port_forward_repo 提供「设备端口转发映射」的持久化访问:新增、列举、 启停、删除,以及按目标的点查。
repository/port_forward_repo/mock_port_forward_repo
Package mock_port_forward_repo is a generated GoMock package.
Package mock_port_forward_repo is a generated GoMock package.
repository/project_location_repo
Package project_location_repo 提供 ProjectLocation 的持久化访问。
Package project_location_repo 提供 ProjectLocation 的持久化访问。
repository/project_location_repo/mock_project_location_repo
Package mock_project_location_repo is a generated GoMock package.
Package mock_project_location_repo is a generated GoMock package.
repository/project_repo
Package project_repo 提供 Project 的持久化访问。
Package project_repo 提供 Project 的持久化访问。
repository/project_repo/mock_project_repo
Package mock_project_repo is a generated GoMock package.
Package mock_project_repo is a generated GoMock package.
repository/remote_device_repo
Package remote_device_repo 提供 paired_agentreds 表的访问。
Package remote_device_repo 提供 paired_agentreds 表的访问。
repository/remote_device_repo/mock_remote_device_repo
Package mock_remote_device_repo is a generated GoMock package.
Package mock_remote_device_repo is a generated GoMock package.
repository/server_state_repo
Package server_state_repo 提供桌面端 server_state 单行表的访问。
Package server_state_repo 提供桌面端 server_state 单行表的访问。
repository/server_state_repo/mock_server_state_repo
Package mock_server_state_repo is a generated GoMock package.
Package mock_server_state_repo is a generated GoMock package.
repository/sync_account_repo
Package sync_account_repo 提供「本机认得的账号」表的访问。
Package sync_account_repo 提供「本机认得的账号」表的访问。
repository/sync_account_repo/mock_sync_account_repo
Package mock_sync_account_repo is a generated GoMock package.
Package mock_sync_account_repo is a generated GoMock package.
repository/syncqueue_repo
Package syncqueue_repo 提供本地同步骨架三张表的持久化访问:没能同步的改动 (LostChangeRepo),以及分出站 / 入站两个方向的同步队列(OutboundQueueRepo / InboundQueueRepo)。
Package syncqueue_repo 提供本地同步骨架三张表的持久化访问:没能同步的改动 (LostChangeRepo),以及分出站 / 入站两个方向的同步队列(OutboundQueueRepo / InboundQueueRepo)。
repository/syncqueue_repo/mock_syncqueue_repo
Package mock_syncqueue_repo is a generated GoMock package.
Package mock_syncqueue_repo is a generated GoMock package.
repository/syncstate_repo
Package syncstate_repo provides account-sync metadata access for identity tables and the per-device CLI overlay projection.
Package syncstate_repo provides account-sync metadata access for identity tables and the per-device CLI overlay projection.
repository/syncstate_repo/mock_syncstate_repo
Package mock_syncstate_repo is a generated GoMock package.
Package mock_syncstate_repo is a generated GoMock package.
repository/transcript_repo
Package transcript_repo 提供转录(消息 + 块)的持久化访问:写入、块拆分、 CheckpointBlocks 差分、按定位键与类型的点查、按筛选条件收窄的删除。
Package transcript_repo 提供转录(消息 + 块)的持久化访问:写入、块拆分、 CheckpointBlocks 差分、按定位键与类型的点查、按筛选条件收窄的删除。
repository/transcript_repo/mock_transcript_repo
Package mock_transcript_repo is a generated GoMock package.
Package mock_transcript_repo is a generated GoMock package.
service
Package service 汇总所有业务服务子包。
Package service 汇总所有业务服务子包。
service/agent_backend_svc
Package agent_backend_svc 暴露 Agent 后端的应用服务接口与请求/响应类型。
Package agent_backend_svc 暴露 Agent 后端的应用服务接口与请求/响应类型。
service/agent_svc
Package agent_svc 暴露 Agent 的应用服务接口与请求/响应类型。
Package agent_svc 暴露 Agent 的应用服务接口与请求/响应类型。
service/app_settings_svc
Package app_settings_svc 暴露 App 全局设置项 + 本地 HTTP 代理生命周期的应用服务。
Package app_settings_svc 暴露 App 全局设置项 + 本地 HTTP 代理生命周期的应用服务。
service/cc_usage_svc
Package cc_usage_svc 维护 per-device 的 Claude Code 5h/7d 配额状态, 桌面 chat composer 底栏的 QuotaMeter 通过 wails event "cc_usage:update" 订阅它的推送。
Package cc_usage_svc 维护 per-device 的 Claude Code 5h/7d 配额状态, 桌面 chat composer 底栏的 QuotaMeter 通过 wails event "cc_usage:update" 订阅它的推送。
service/chat_import_svc
Package chat_import_svc 把 CLI 留在磁盘上的会话读回 agentre:发现候选、预览一条、 把它落成一条 agentre 会话与逐轮消息。
Package chat_import_svc 把 CLI 留在磁盘上的会话读回 agentre:发现候选、预览一条、 把它落成一条 agentre 会话与逐轮消息。
service/chat_import_svc/mock_deps
Package mock_deps is a generated GoMock package.
Package mock_deps is a generated GoMock package.
service/chat_svc
Package chat_svc 提供聊天会话 / 消息的业务逻辑层。
Package chat_svc 提供聊天会话 / 消息的业务逻辑层。
service/chat_svc/goal
Package goal 持有 codex「目标」(agentruntime.GoalController 端口)的会话侧编排: 解析会话上下文 → 取控制器 → 读/写/清目标,以及「以一个目标开一条新会话」。
Package goal 持有 codex「目标」(agentruntime.GoalController 端口)的会话侧编排: 解析会话上下文 → 取控制器 → 读/写/清目标,以及「以一个目标开一条新会话」。
service/chat_svc/ipc
Package ipc 收纳 chat_svc 暴露给 Wails 前端的 IPC handler。
Package ipc 收纳 chat_svc 暴露给 Wails 前端的 IPC handler。
service/chat_svc/peerstream
Package peerstream 持有「把本机会话交给已鉴权的账号对端」这一套:只读的会话清单/ 计数投影,以及每条会话那一份**唯一有序的通知宇宙**(历史帧 + 订阅者 + 编号台账)。
Package peerstream 持有「把本机会话交给已鉴权的账号对端」这一套:只读的会话清单/ 计数投影,以及每条会话那一份**唯一有序的通知宇宙**(历史帧 + 订阅者 + 编号台账)。
service/chat_svc/projectsync
Package projectsync 解「本地项目 → 账号级同步标识」。
Package projectsync 解「本地项目 → 账号级同步标识」。
service/chat_svc/remotepool
Package remotepool 持有「一台配对 daemon 上共享的 *remote.Runtime + 它的池化租约」 这一套引用计数缓存。
Package remotepool 持有「一台配对 daemon 上共享的 *remote.Runtime + 它的池化租约」 这一套引用计数缓存。
service/chat_svc/transcriptfork
Package transcriptfork 持有「重发 / 编辑一轮时把转录回退到分叉点」这一套: 隐藏命名空间里的原行保全与恢复(Lifecycle)、失败回滚、成功收尾,以及各 backend 自家会话该从哪个锚点分叉(pi 的 fork anchor / codex 的 rollback anchor)。
Package transcriptfork 持有「重发 / 编辑一轮时把转录回退到分叉点」这一套: 隐藏命名空间里的原行保全与恢复(Lifecycle)、失败回滚、成功收尾,以及各 backend 自家会话该从哪个锚点分叉(pi 的 fork anchor / codex 的 rollback anchor)。
service/chat_svc/view
Package view 持有 chat_svc 的 canonical wire DTO:CanonicalDTO 及其构造函数 FromCanonical。
Package view 持有 chat_svc 的 canonical wire DTO:CanonicalDTO 及其构造函数 FromCanonical。
service/ctl_svc
Package ctl_svc exposes a loopback control API (mounted on the httpgateway under /ctl/) that the external `agrctl ctl` CLI drives to list agents / projects and dispatch a task to an agent by creating a chat session and starting a turn — the same primitives the in-turn subagent MCP uses, but reachable from outside a running turn so a human (or a plain shell command) can "@ an agent and hand it a task" without injecting an MCP server.
Package ctl_svc exposes a loopback control API (mounted on the httpgateway under /ctl/) that the external `agrctl ctl` CLI drives to list agents / projects and dispatch a task to an agent by creating a chat session and starting a turn — the same primitives the in-turn subagent MCP uses, but reachable from outside a running turn so a human (or a plain shell command) can "@ an agent and hand it a task" without injecting an MCP server.
service/ctl_svc/mock_ctl_svc
Package mock_ctl_svc is a generated GoMock package.
Package mock_ctl_svc is a generated GoMock package.
service/ctlskill_svc
Package ctlskill_svc wires the leaf ctl-skill installer (internal/pkg/ctlskill) to app lifecycle and app_settings: it owns the persisted "user declined" flag and the two startup skip gates, and exposes Status/Install/Uninstall for the Wails bindings.
Package ctlskill_svc wires the leaf ctl-skill installer (internal/pkg/ctlskill) to app lifecycle and app_settings: it owns the persisted "user declined" flag and the two startup skip gates, and exposes Status/Install/Uninstall for the Wails bindings.
service/data_svc
Package data_svc 数据导入导出 service。
Package data_svc 数据导入导出 service。
service/department_svc
Package department_svc 部门相关业务服务。
Package department_svc 部门相关业务服务。
service/department_svc/mock_deps
Package mock_deps is a generated GoMock package.
Package mock_deps is a generated GoMock package.
service/exec_target_svc
Package exec_target_svc 拥有「这条会话的活在哪儿干」这一个域: 按 R14/R15 顺序为 Agent 挑执行目标档、逐档判定可用性、把会话解析成 {设备, 工作目录} 作用域。
Package exec_target_svc 拥有「这条会话的活在哪儿干」这一个域: 按 R14/R15 顺序为 Agent 挑执行目标档、逐档判定可用性、把会话解析成 {设备, 工作目录} 作用域。
service/hook_svc
Package hook_svc 暴露脚本 Hook 的 CRUD / 试运行 / 调度服务契约给 Wails 绑定层。
Package hook_svc 暴露脚本 Hook 的 CRUD / 试运行 / 调度服务契约给 Wails 绑定层。
service/hooktool_svc
Package hooktool_svc 脚本 Hook 工具(agent 内置工具 key="hook")的 MCP 接入与审批编排。
Package hooktool_svc 脚本 Hook 工具(agent 内置工具 key="hook")的 MCP 接入与审批编排。
service/hooktool_svc/mock_hooktool_svc
Package mock_hooktool_svc is a generated GoMock package.
Package mock_hooktool_svc is a generated GoMock package.
service/issue_svc
Package issue_svc 提供 Issue 模块的应用服务。
Package issue_svc 提供 Issue 模块的应用服务。
service/llm_provider_svc
Package llm_provider_svc 暴露 LLM 供应商的应用服务实现。
Package llm_provider_svc 暴露 LLM 供应商的应用服务实现。
service/notification_svc
Package notification_svc 暴露应用级系统通知能力。
Package notification_svc 暴露应用级系统通知能力。
service/notification_svc/mock_notification_svc
Package mock_notification_svc is a generated GoMock package.
Package mock_notification_svc is a generated GoMock package.
service/orgtool_svc
Package orgtool_svc 组织架构工具(agent 内置工具 key="org")的 MCP 接入与审批编排。
Package orgtool_svc 组织架构工具(agent 内置工具 key="org")的 MCP 接入与审批编排。
service/orgtool_svc/mock_orgtool_svc
Package mock_orgtool_svc is a generated GoMock package.
Package mock_orgtool_svc is a generated GoMock package.
service/peer_svc
Package peer_svc 是桌面端**出站**对端(另一台桌面端)的会话级客户端(任务 10, R18/R19 的出站半边;入站半边在 internal/peer 的 Inbound)。
Package peer_svc 是桌面端**出站**对端(另一台桌面端)的会话级客户端(任务 10, R18/R19 的出站半边;入站半边在 internal/peer 的 Inbound)。
service/port_forward_svc
Package port_forward_svc 是端口转发**声明族**在桌面端这一侧的入口:列举 / 新增 / 启停 / 删除某台设备上的端口映射。
Package port_forward_svc 是端口转发**声明族**在桌面端这一侧的入口:列举 / 新增 / 启停 / 删除某台设备上的端口映射。
service/project_location_svc
Package project_location_svc 维护 project × agentred 指纹维度的工作目录配置。
Package project_location_svc 维护 project × agentred 指纹维度的工作目录配置。
service/project_svc
Package project_svc 提供 Project 模块的业务逻辑层。
Package project_svc 提供 Project 模块的业务逻辑层。
service/project_svc/mock_project_svc
Package mock_project_svc is a generated GoMock package.
Package mock_project_svc is a generated GoMock package.
service/remote_device_svc
internal/service/remote_device_svc/dial.go
internal/service/remote_device_svc/dial.go
service/remote_device_svc/mock_remote_device_svc
Package mock_remote_device_svc is a generated GoMock package.
Package mock_remote_device_svc is a generated GoMock package.
service/remote_device_watcher_svc
Package remote_device_watcher_svc 维护每台已配对 agentred 的长连状态机: 拨号 → 心跳 → 断开 → 退避重连;状态变更同步写 repo + emit 给前端。
Package remote_device_watcher_svc 维护每台已配对 agentred 的长连状态机: 拨号 → 心跳 → 断开 → 退避重连;状态变更同步写 repo + emit 给前端。
service/remote_device_watcher_svc/mock_remote_device_watcher_svc
Package mock_remote_device_watcher_svc is a generated GoMock package.
Package mock_remote_device_watcher_svc is a generated GoMock package.
service/remote_fs_svc
Package remote_fs_svc 是 host 侧 remotefs.* RPC 的薄业务封装。
Package remote_fs_svc 是 host 侧 remotefs.* RPC 的薄业务封装。
service/server_svc
Package server_svc 实现桌面端与 agentre 联机后端之间的接入。
Package server_svc 实现桌面端与 agentre 联机后端之间的接入。
service/skill_svc/mock_skill_svc
Package mock_skill_svc is a generated GoMock package.
Package mock_skill_svc is a generated GoMock package.
service/subagent_svc/mock_subagent_svc
Package mock_subagent_svc is a generated GoMock package.
Package mock_subagent_svc is a generated GoMock package.
service/sync_svc
Package sync_svc 是桌面端工作区多端同步的引擎:编辑当场上行、30 秒轮询下行、 按基版本判冲突、墓碑、乱序暂缓、离线队列、超窗口重同步 (docs/specs/2026-08-07-workspace-sync.md「双向同步的行为」)。
Package sync_svc 是桌面端工作区多端同步的引擎:编辑当场上行、30 秒轮询下行、 按基版本判冲突、墓碑、乱序暂缓、离线队列、超窗口重同步 (docs/specs/2026-08-07-workspace-sync.md「双向同步的行为」)。
service/terminal_svc/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
service/update_svc
Package update_svc 提供桌面端"检查更新 / 下载校验 / 跨平台安装"能力。
Package update_svc 提供桌面端"检查更新 / 下载校验 / 跨平台安装"能力。
service/workspace_fs_svc
Package workspace_fs_svc 是「文件」面板的目录 / Git 两个模式的后端入口: 按会话浏览工作目录、取 git 变动与分支清单。
Package workspace_fs_svc 是「文件」面板的目录 / Git 两个模式的后端入口: 按会话浏览工作目录、取 git 变动与分支清单。
Package migrations 汇总并执行 Agentre 桌面端 SQLite 数据库的全部迁移。
Package migrations 汇总并执行 Agentre 桌面端 SQLite 数据库的全部迁移。
pkg
claudecode
Package claudecode 是 agentre 自维护的 Anthropic Claude Code CLI 子进程封装。
Package claudecode 是 agentre 自维护的 Anthropic Claude Code CLI 子进程封装。
codex
Package codex is Agentre's local wrapper for the OpenAI Codex CLI app-server.
Package codex is Agentre's local wrapper for the OpenAI Codex CLI app-server.
syncwire module
wire module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL