rohitg00/agentmemory · info
Hermes uses YAML config. Automated merge isn't implemented y
Error message
Hermes uses YAML config. Automated merge isn't implemented yet — manual install required.
What it means
agentmemory's connect command supports multiple agent CLIs. For Hermes, no automated config merge is implemented because Hermes uses YAML configuration (unlike the JSON files of other adapters), so the adapter's install() deliberately emits this warning plus a manual-instruction note and returns a skipped/manual result. It is expected behavior, not a bug.
Source
Thrown at src/cli/connect/hermes.ts:24
const HERMES_DIR = join(homedir(), ".hermes");
const HERMES_CONFIG = join(HERMES_DIR, "config.yaml");
const DOCS = "https://github.com/rohitg00/agentmemory/tree/main/integrations/hermes";
export const adapter: ConnectAdapter = {
name: "hermes",
displayName: "Hermes Agent",
category: "native",
docs: DOCS,
protocolNote:
"→ Using MCP. Hooks are also available — see https://github.com/rohitg00/agentmemory/tree/main/integrations/hermes.",
detect(): boolean {
return existsSync(HERMES_DIR);
},
async install(_opts: ConnectOptions): Promise<ConnectResult> {
p.log.warn(
"Hermes uses YAML config. Automated merge isn't implemented yet — manual install required.",
);
p.note(
[
`Add to ${HERMES_CONFIG}:`,
"",
" mcp_servers:",
" agentmemory:",
" command: npx",
' args: ["-y", "@agentmemory/mcp"]',
"",
" memory:",
" provider: agentmemory",
"",
`Full guide: ${DOCS}`,
].join("\n"),
"Hermes manual install",
);View on GitHub (pinned to e04ba88819)
Solutions
- Copy the YAML snippet shown in the p.note() output into your Hermes config file (path shown as HERMES_CONFIG in the note).
- Restart Hermes so it picks up the MCP server entry.
- Check agentmemory releases/changelog for a newer version that may have added automated Hermes YAML merge.
- If you maintain the repo, contribute a YAML merge implementation in src/cli/connect/hermes.ts modeled on the JSON adapters.
Example fix
# before (automated attempt fails to fully wire)
agentmemory connect hermes
# -> warning: manual install required
# after (manual edit of the printed path)
# add to ~/.hermes/config.yaml (path shown in the note):
mcp:
servers:
agentmemory:
command: agentmemory
args: ["mcp"] Defensive patterns
Strategy: fallback
Validate before calling
import { existsSync } from "node:fs";
const hermesDir = join(process.env.HOME ?? "", ".hermes");
if (!existsSync(hermesDir)) {
console.error("Hermes not detected; connect will only print manual instructions.");
} Type guard
type ConnectResult = { kind: "installed" } | { kind: "skipped"; reason: string } | { kind: "manual" };
function needsManualInstall(r: { kind: string }): boolean {
return r.kind !== "installed";
} Try / catch
const result = await runAdapter(hermesAdapter, opts);
if (result.kind !== "installed") {
console.log("Manual step required: copy the printed YAML snippet into your Hermes config, then restart Hermes.");
} Prevention
- Expect manual work for Hermes: the adapter only prints instructions; no automated YAML merge exists yet.
- Follow the exact config path shown in the CLI note (HERMES_CONFIG) when pasting the snippet.
- Watch agentmemory releases for automated Hermes YAML support before assuming it exists.
- Validate the edited YAML (e.g. with a YAML parser) before restarting Hermes.
When it happens
Trigger: Running `agentmemory connect hermes` (or selecting Hermes in the interactive connect flow) — install() always takes this path because automated YAML merging is not implemented; it fires regardless of config contents.
Common situations: Users on fresh setups or after Hermes config changes expecting `connect` to fully wire Hermes; it never will until automated YAML support is added. Users must copy the printed snippet into HERMES_CONFIG by hand.
Related errors
- POST ${url} failed: ${res.status} ${res.statusText}${suffix}
- agentmemory: could not locate bundled plugin/ directory (sea
- observe failed for ${obs.toolName}: ${res.status} ${res.stat
- EEXIST
- ${adapter.displayName}: guideline not written (${gerr instan
AI-assisted analysis of rohitg00/agentmemory@e04ba88819 (2026-08-30).
Data as JSON: /api/errors/2d5e0197ab76b7d0.
Report an issue: GitHub.