harness 与 hermes-agent 技术栈、构建与部署
2026/5/28 15:45:12 网站建设 项目流程

技术栈对比

维度HarnessHermes Agent
后端主语言GoPython
前端React 17、webpack、SCSSReact 19、Vite、Tailwind、Ink TUI
包管理Go modules、Yarnuv、pip/setuptools、npm
数据库SQLite/PostgreSQLSQLite
依赖注入Google WirePython runtime discovery / registry
APIREST + OpenAPI/SwaggerCLI、tool schema、Gateway adapter、ACP
容器Alpine/Golang/Node 多阶段构建Debian + uv + s6-overlay
部署单二进制、Docker、Helm/K8s本地安装、Docker、Nix/Homebrew、消息网关常驻

Harness 构建方式

Harness 的构建主线:

cdwebyarninstallyarnbuildcd..makebuild

关键文件:

  • harness/Makefile
  • harness/Dockerfile
  • harness/web/package.json
  • harness/go.mod
  • harness/web/dist.go

最终产物是gitness二进制。前端web/dist会嵌入到 Go 程序里。

Harness 启动方式

本地启动:

./gitness server .local.env

Windows PowerShell 下通常是:

.\gitness.exe server.local.env

Docker 启动:

dockerrun-d\-p3000:3000\-p3022:3022\-v/var/run/docker.sock:/var/run/docker.sock\-v/tmp/harness:/data\--nameharness\--restartalways\harness/harness

Hermes Agent 构建方式

Hermes Agent 的 Python 包入口在pyproject.toml

hermes = hermes_cli.main:main hermes-agent = run_agent:main hermes-acp = acp_adapter.entry:main

开发安装方式:

uv venv .venv--python3.11source.venv/bin/activate uv pipinstall-e".[all,dev]"

前端 dashboard:

cdwebnpminstallnpmrun build

TUI:

cdui-tuinpminstallnpmrun build

Hermes Agent 启动方式

常见入口:

hermes hermes model hermes tools hermes setup hermes gateway hermescronhermes doctor hermes acp

主配置目录默认在:

~/.hermes

主要文件:

  • ~/.hermes/config.yaml
  • ~/.hermes/.env
  • ~/.hermes/state.db
  • ~/.hermes/skills
  • ~/.hermes/plugins

容器部署差异

Harness 容器

Harness 容器目标是启动一个完整服务端平台:

  • HTTP 端口:默认3000
  • SSH 端口:默认3022
  • 数据卷:/data
  • SQLite 数据库和 Git/Registry 文件可放在 volume

Hermes Agent 容器

Hermes Agent 容器目标是启动一个可交互/常驻 agent:

  • 使用s6-overlay管理主进程、dashboard、gateway
  • 数据目录:/opt/data
  • 需要 API key、消息平台 token、provider 配置
  • 可能需要浏览器、Node、ffmpeg、Docker CLI 等工具

构建理念差异

Harness 追求“一个平台二进制/镜像可提供完整服务”。

Hermes Agent 追求“一个 agent runtime 可接入多种模型、工具和消息平台”。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询