Gormes

Hermes/Honcho To Gormes Go Runtime Plan

Hermes/Honcho To Gormes Go Runtime Plan

This is the canonical implementation plan for making Gormes a Go-native runtime for the useful Hermes-Agent and Honcho surfaces.

It reconciles the feature map, upstream coverage ledger, swarm audit, and progress.json. It is not a side backlog. Any implementation work named here must be represented by a progress row before a builder agent starts coding.

This page answers the mapping question, not the implementation-complete question. After the 2026-04-28 two-wave swarm pass, every broad Hermes/Honcho surface is classified as mapped-by-symbol, mapped-by-contract, owned, excluded, or still row-backed; no subsystem-level unknown/gap remains.

Evidence Corpus

SourceRole
../hermes-agent/run_agent.py, ../hermes-agent/agent/**, ../hermes-agent/tools/**, ../hermes-agent/gateway/**, ../hermes-agent/hermes_cli/**Hermes runtime, providers, tools, gateway, CLI, config, packaging, and operational behavior.
../hermes-agent/acp_adapter/**, ../hermes-agent/mcp_serve.py, ../hermes-agent/plugins/**, ../hermes-agent/skills/**, ../hermes-agent/optional-skills/**Hermes extension, ACP, MCP, plugin, and skill behavior.
../honcho/src/**, ../honcho/migrations/**, ../honcho/docs/v3/openapi.json, ../honcho/tests/**Honcho API, persistence, queue, dialectic, dream, telemetry, webhook, and behavior fixtures.
../honcho/sdks/python/src/**, ../honcho/sdks/typescript/src/**, ../honcho/sdks/typescript/__tests__/**, ../honcho/mcp/src/tools/**, ../honcho/honcho-cli/src/honcho_cli/**Honcho client, SDK, MCP, and CLI compatibility contracts.
cmd/**, internal/**, docs/content/building-gormes/architecture_plan/progress.jsonCurrent Gormes implementation evidence and the only executable backlog.
docs/content/building-gormes/architecture_plan/hermes-honcho-feature-map.md, upstream-coverage-ledger.md, swarm-feature-parity-audit.md, docs/upstream_coverage_test.goCurrent planning, coverage, and test gates.

Classification Vocabulary

ClassMeaning
ownedGormes intentionally diverges with a Go-native contract and a stated replacement proof.
mapped-by-symbolExact upstream symbols/files have a Gormes target and row/test evidence.
mapped-by-contractA large upstream surface is mapped by public behavior, fixtures, and progress rows rather than one symbol at a time.
excludedThe upstream surface is repo hygiene, generated output, hosted-service deployment detail, or intentionally unsupported behavior.
still row-backedThe feature is mapped and has a progress row, but implementation is not complete.
unknown/gapNo acceptable mapping exists. This class must not survive a planner pass; convert it to one of the classes above with rationale.

Current status: no broad Hermes/Honcho surface should remain unknown/gap. Large surfaces are either mapped-by-contract, still row-backed, owned, or excluded. The remaining work is implementation and row splitting, not rediscovery.

Hermes Feature Map

Hermes surfaceUpstream evidenceGo implementation targetClassificationProgress/register owner
Normal agent loop, turn lifecycle, interrupts, trajectoryrun_agent.py, environments/agent_loop.py, hermes_state.py, trajectory_compressor.py, tests/run_agent/**internal/kernel, internal/hermes, internal/transcript, internal/audit, future internal/e2estill row-backedPhase 4.I, 4.E, 4.H
Provider transport layeragent/transports/base.py, agent/transports/types.py, agent/transports/chat_completions.py, agent/transports/codex.py, agent/transports/anthropic.py, agent/transports/bedrock.py, tests/agent/transports/**internal/hermes.ProviderTransport, provider request builders, and fake transcript fixturesmapped-by-symbol for the shared transport/fixture contract; remaining live provider auth/routing/error work stays row-backed under adapter rowsPhase 4.A
Provider adapters and model familiesagent/anthropic_adapter.py, agent/bedrock_adapter.py, agent/gemini_native_adapter.py, agent/gemini_cloudcode_adapter.py, agent/codex_responses_adapter.py, agent/moonshot_schema.py, agent/model_metadata.pyinternal/hermes, internal/config, internal/clistill row-backedPhase 4.A, 4.D
Credentials, auth, OAuth, rate, cache, errorsagent/credential_pool.py, agent/credential_sources.py, agent/google_oauth.py, agent/retry_utils.py, agent/rate_limit_tracker.py, agent/prompt_caching.py, agent/error_classifier.py, hermes_cli/auth*.pyinternal/config, internal/cli, internal/hermes, internal/telemetrystill row-backedPhase 4.G, 4.H, 5.O
Prompt/context/compressionagent/prompt_builder.py, agent/context_engine.py, agent/context_compressor.py, agent/context_references.py, agent/manual_compression_feedback.py, agent/subdirectory_hints.pyinternal/hermes, internal/kernel, internal/transcript, internal/skillsstill row-backedPhase 4.B, 4.C
Tool registry and toolsetstools/registry.py, model_tools.py, toolsets.py, toolset_distributions.py, tests/agent/test_*tool*.pyinternal/tools, internal/doctor, internal/climapped-by-symbol for current manifest; still row-backed for remaining handlersPhase 2.A, 5.A
Tool execution, files, checkpoints, terminalstools/code_execution_tool.py, tools/file_operations.py, tools/file_tools.py, tools/checkpoint_manager.py, tools/process_registry.py, tools/terminal_tool.pyinternal/tools, internal/cmdrunner, internal/transcript, internal/auditstill row-backedPhase 5.K, 5.L
Sandbox/environmentstools/environments/{base,local,docker,ssh,managed_modal,modal,daytona,singularity,file_sync}.py, environments/**internal/tools, internal/cmdrunner, internal/configmapped-by-contractPhase 5.B
Browser, web, media, voice, imagetools/browser_*.py, tools/browser_providers/**, tools/web_tools.py, tools/vision_tools.py, tools/image_generation_tool.py, tools/tts_tool.py, tools/transcription_tools.py, tools/voice_mode.pyinternal/tools, future browser/media packages, internal/hermes content partsmapped-by-contractPhase 5.C, 5.D, 5.E
Security and approvalstools/approval.py, tools/path_security.py, tools/url_safety.py, tools/tirith_security.py, tools/website_policy.py, tools/osv_check.py, agent/redact.pyinternal/tools, internal/doctor, internal/config, internal/auditstill row-backedPhase 5.J, 4.E
Operator toolstools/todo_tool.py, tools/clarify_tool.py, tools/send_message_tool.py, tools/session_search_tool.py, tools/debug_helpers.py, tools/interrupt.py, tools/memory_tool.pyinternal/tools, internal/sessionsearchtool, internal/gateway, internal/subagentstill row-backedPhase 5.N
Subagents/delegationtools/delegate_tool.py, agent/test_subagent_*.pyinternal/subagent, internal/tools, internal/auditmapped-by-symbol for deterministic runtime; still row-backed for policy polishPhase 2.E, 5.J
MCP, managed tool gateway, ACPmcp_serve.py, tools/mcp_tool.py, tools/managed_tool_gateway.py, tools/mcp_oauth*.py, acp_adapter/{auth,entry,events,permissions,server,session,tools}.py, acp_registry/agent.json, tests/acp/**internal/plugins, future internal/acp, internal/tools, internal/apiservermapped-by-contractPhase 5.G, 5.H
Plugins and memory pluginsplugins/**, especially plugins/memory/honcho/**, plugins/google_meet/**, plugins/image_gen/**, plugins/disk-cleanup/**internal/plugins, internal/tools, internal/goncho, internal/gonchotoolsmapped-by-contract; Goncho memory is ownedPhase 3.G, 5.I
Skills and optional skillsskills/**, optional-skills/**, agent/skill_*.py, tools/skill*_tool.pyinternal/skills, docs/development-skills, cmd/gormes, internal/hermesmapped-by-contractPhase 5.F, 6.C
Gateway runtime and channelsgateway/run.py, gateway/config.py, gateway/session*.py, gateway/delivery.py, gateway/stream_consumer.py, gateway/platforms/**, tests/gateway/**internal/gateway, internal/channels/*, internal/store, internal/tuigatewaystill row-backedPhase 2.B-2.F, 7
Cron/schedulingcron/scheduler.py, cron/jobs.py, tools/cronjob_tools.py, tests/cron/**internal/cron, internal/gateway, internal/toolsmapped-by-symbol for current scheduler core; still row-backed for API/tool parityPhase 2.D, 5.N
API, TUI, dashboardgateway/platforms/api_server.py, tui_gateway/**, ui-tui/**, web/**, website/**, hermes_cli/curses_ui.pyinternal/apiserver, internal/tui, internal/tuigateway, www.gormes.ai, cmd/gormesstill row-backedPhase 5.Q, Phase 1
CLI/config/status/doctor/backupcli.py, hermes, hermes_cli/**, tests/cli/**cmd/gormes, internal/cli, internal/config, internal/doctorstill row-backedPhase 5.O
Packaging/release/installDockerfile, docker/**, docker-compose.yml, packaging/**, flake.*, scripts/**, setup-hermes.sh, release notesinstallers, service units, OCI image, Makefile, cmd/gormes, www.gormes.aistill row-backed; hosted Python install pieces excluded from final runtimePhase 5.P
Research/batch/RL/datagen modesbatch_runner.py, mini_swe_runner.py, rl_cli.py, datagen-config-examples/**future research packages, internal/subagent, internal/toolsmapped-by-contract; not core production gatePhase 5.M, 5.O

Honcho Feature Map

Honcho surfaceUpstream evidenceGo implementation targetClassificationProgress/register owner
Data model, migrations, CRUD invariantssrc/models.py, src/schemas/**, src/crud/{workspace,peer,peer_card,session,message,representation,document,webhook}.py, migrations/**, tests/crud/**internal/goncho, internal/store, internal/memory, internal/sessionstill row-backedPhase 3.F, 3.G
Workspaces and API keyssrc/routers/workspaces.py, src/routers/keys.py, src/security.py, docs/v3/openapi.json, tests/routes/test_workspaces.py, tests/routes/test_keys.pyinternal/goncho, internal/config, optional internal/apiserver adapterstill row-backed; hosted auth is owned local replacementPhase 3.G, 5.Q
Peers, sessions, messages, filessrc/routers/peers.py, src/routers/sessions.py, src/routers/messages.py, src/utils/files.py, tests/routes/test_{peers,sessions,messages,files}.pyinternal/goncho, internal/gonchotools, internal/session, internal/memorystill row-backedPhase 3.F, 3.G
Conclusions, observations, representationssrc/routers/conclusions.py, src/crud/representation.py, src/crud/deriver.py, tests/routes/test_conclusions.py, tests/deriver/**internal/goncho, internal/memory, internal/gonchotoolsstill row-backedPhase 3.F, 6
Filter/search/context/summariessrc/utils/filter.py, src/utils/search.py, src/utils/summarizer.py, src/utils/representation.py, tests/test_search.py, tests/test_advanced_filters.pyinternal/goncho, internal/memory, internal/hermesstill row-backedPhase 3.F, 4.C
Queue/deriver/reconciler lifecyclesrc/deriver/**, src/reconciler/**, tests/deriver/**, tests/reconciler/**, tests/routes/test_queue_status.pyinternal/goncho, internal/cron, internal/doctor, internal/memorystill row-backedPhase 3.F, 6
Dialectic chat and tool loopsrc/dialectic/**, src/llm/tool_loop.py, tests/dialectic/**, tests/llm/**internal/goncho, internal/kernel, internal/hermesmapped-by-contractPhase 3.F, 3.G
Dreamingsrc/dreamer/**, tests/dreamer/**, tests/unified/test_cases/dream_*.jsoninternal/goncho, internal/cron, internal/memorystill row-backedPhase 3.F, 6
Vector stores and embeddingssrc/vector_store/{lancedb,turbopuffer}.py, src/reconciler/sync_vectors.py, src/embedding_client.py, tests/integration/test_message_embeddings.pyinternal/memory.VectorStoreDivergenceRows, internal/memory.semanticSeeds, SQLite entity_embeddingsowned with divergence contract; external LanceDB/Turbopuffer adapters and sync-vector reconciler are explicit excluded rows in Phase 3.F Vector store + reconciler divergence proofPhase 3.D, 3.G
Telemetry, reasoning, metricssrc/telemetry/**, tests/telemetry/**, tests/integration/test_telemetry.pyinternal/telemetry, internal/audit, internal/gonchomapped-by-contractPhase 3.F, 4.E
Webhooks and keyssrc/routers/{webhooks,keys}.py, src/security.py, src/crud/webhook.py, src/webhooks/**, tests/routes/test_{webhooks,keys}.pyinternal/goncho.{CreateScopedKey,VerifyScopedKey,GetOrCreateWebhookEndpoint,ListWebhookEndpoints,DeleteWebhookEndpoint,NewTestWebhookEvent,SignWebhookPayload}complete for local compatibility surface; route binding, queue publishing, outbound delivery, retries, and OpenAPI/SDK parity remain row-backedPhase 3.G, 5.Q
Python SDKsdks/python/src/honcho/{client,aio,base,peer,session,message,conclusions,session_context,pagination,types}.py, tests/sdk/**Go SDK-style compatibility harness under internal/goncho/internal/gonchotoolsmapped-by-contractPhase 3.G
TypeScript SDKsdks/typescript/src/**, sdks/typescript/__tests__/**, tests/sdk_typescript/**Go fixture harness for SDK request/response behaviormapped-by-contractPhase 3.G
Honcho MCPmcp/src/tools/{workspace,peers,sessions,conclusions,system}.ts, mcp/src/server.ts, mcp/instructions.mdinternal/goncho, internal/plugins, internal/toolsmapped-by-contractPhase 3.G, 5.G
Honcho CLIhoncho-cli/src/honcho_cli/{main,commands,config,common,validation,output}.py, honcho-cli/tests/**Phase 3.G complete row Goncho CLI command-tree parity in cmd/gormes/goncho_cli_parity.go; functional command execution, config preservation, exact JSON/table output, destructive confirms, validation, exit codes, and SDK/API binding remain row-backedmapped-by-contractPhase 3.G, 5.O
Hosted deploy/config.env.template, config.toml.example, Dockerfile, docker/**, docker-compose.yml.example, fly.toml, database/init.sql, alembic.inilocal embedded Goncho config, doctor, and release docsowned/excluded by surfacePhase 3.G, 5.P
Docs/examples/unified testsdocs/v1/**, docs/v2/**, docs/v3/**, examples/**, tests/unified/**, tests/bench/**, tests/live_llm/**compatibility fixture donors and docs referencesmapped-by-contract; benchmarks are evidence-only unless a row promotes them; live-provider execution under tests/live_llm/** is excluded except as a source for fake/local LLM contract rowsPhase 3.G, 6

Go Implementation Order

OrderGateImplementation package targetWhy it comes here
1Normal Go turn harnessinternal/kernel, internal/hermes, internal/tools, internal/session, internal/memoryProves Gormes is replacing Hermes runtime behavior rather than routing around it.
2Provider transport contractinternal/hermes, internal/configGives every provider row one stream/event/error vocabulary.
3Goncho SDK-style harnessinternal/goncho, internal/gonchotools, internal/memoryProves Honcho compatibility against local storage before normal turns depend on it.
4Prompt/context/compression spineinternal/hermes, internal/kernel, internal/transcript, internal/skillsPrevents provider/tool rows from inventing their own prompt assembly.
5Descriptor-first tool surfaceinternal/tools, internal/doctor, internal/auditLets every handler expose schema, trust, availability, and audit evidence uniformly.
6Gateway/API/TUI consumersinternal/gateway, internal/apiserver, internal/tui, internal/tuigateway, internal/channels/*UI and channels consume typed events instead of owning agent logic.
7CLI/release/packagingcmd/gormes, internal/cli, installers, www.gormes.aiPublic install and operations promises should follow proven runtime behavior.
8Learning/research modesinternal/skills, internal/subagent, future research packagesHigher-level automation depends on stable turns, tools, memory, and release flow.

Nested Feature-Level Coverage Matrix

TestNestedUpstreamFeatureCoverage protects these representative nested feature paths. It must skip cleanly when sibling upstream repos are absent and fail with nested_feature_unmapped when an upstream path exists but no plan, map, audit, ledger, or progress evidence mentions it.

LaneUpstream nested pathsRequired evidence
Hermes runtime/providersagent/transports/base.py, agent/transports/chat_completions.py, agent/transports/codex.py, agent/transports/bedrock.py, agent/anthropic_adapter.py, agent/gemini_native_adapter.py, agent/gemini_cloudcode_adapter.py, agent/codex_responses_adapter.py, agent/moonshot_schema.py, agent/context_compressor.py, agent/prompt_builder.py, trajectory_compressor.py, tests/agent/transports/test_transport.pyFeature map provider/context rows, this plan, swarm audit, Phase 4 rows.
Hermes tools/security/pluginstools/registry.py, tools/environments/local.py, tools/environments/ssh.py, tools/yuanbao_tools.py, tools/mcp_tool.py, tools/managed_tool_gateway.py, tools/approval.py, tools/url_safety.py, tools/browser_providers/firecrawl.py, tools/browser_providers/browserbase.py, tools/browser_providers/browser_use.py, plugins/memory/honcho/client.py, plugins/google_meet/tools.py, skills/yuanbao/SKILL.md, optional-skills/mcp/DESCRIPTION.mdTool/plugin/skill map rows, swarm audit gaps, Phase 5 rows.
Hermes gateway/CLI/releasegateway/run.py, gateway/channel_directory.py, gateway/stream_consumer.py, gateway/platforms/api_server.py, gateway/platforms/telegram.py, gateway/platforms/discord.py, cron/scheduler.py, hermes_cli/main.py, hermes_cli/auth.py, hermes_cli/web_server.py, scripts/release.py, Dockerfile, flake.nixGateway/CLI/release map rows, Phase 2/5/7 rows, release divergence notes.
Hermes ACP/MCP extensionsacp_adapter/server.py, acp_adapter/session.py, acp_adapter/tools.py, acp_adapter/permissions.py, acp_registry/agent.json, mcp_serve.pyACP/MCP map rows, swarm audit rows, Phase 5.G/5.H rows.
Honcho core/Gonchosrc/models.py, src/routers/workspaces.py, src/routers/messages.py, src/crud/session.py, src/crud/representation.py, src/deriver/queue_manager.py, src/dialectic/chat.py, src/dreamer/dream_scheduler.py, src/dreamer/specialists.py, src/dreamer/orchestrator.py, src/webhooks/webhook_delivery.py, src/telemetry/reasoning_traces.py, src/vector_store/lancedb.py, database/init.sqlHoncho feature rows, Goncho plan rows, owned divergence rows.
Honcho SDK/MCP/CLI/deploy/testsdocs/v3/openapi.json, sdks/python/src/honcho/client.py, sdks/typescript/src/client.ts, sdks/typescript/__tests__/streaming.test.ts, mcp/src/tools/sessions.ts, mcp/src/tools/conclusions.ts, honcho-cli/src/honcho_cli/main.py, honcho-cli/tests/test_commands.py, tests/sdk/test_client.py, tests/routes/test_webhooks.py, tests/live_llm/README.md, Dockerfile, fly.tomlSDK/MCP/CLI/deploy rows, compatibility harness rows, owned hosted-service divergence, and explicit tests/live_llm exclusion for live-provider-only execution.

Swarm Gap Matrix

Gap classClassificationRequired implementation plan
Provider transport, provider-specific schemas, OAuth, credential/rate/cache/error helpersstill row-backedSplit Phase 4.A/4.G/4.H into transcript-backed transport, auth, and error rows before broad provider ports.
Context compression, prompt builder, skill prompt injectionstill row-backedSplit Phase 4.B/4.C rows into budget, protected context, references, manual feedback, project-instruction, and skill-snapshot fixtures.
Tool handlers, sandbox adapters, browser/media/security/operator toolsmapped-by-contract, still row-backedKeep descriptor/trust/audit registry first, then implement category handlers with fake backends and path/URL/approval tests.
ACP/MCP/plugin/skill catalogsmapped-by-contractAdd explicit descriptor/catalog rows before live adapters; Goncho memory plugin is an owned in-process replacement.
Gateway/channel/bootstrap/cron/API/TUIstill row-backedKeep kernel event stream authoritative; port channel bootstrap and CLI/API management as consumers with fake adapters.
CLI/config/doctor/install/releasestill row-backedSplit command groups by side effect and preserve noninteractive safety, profile/auth/config, status/log/backup, service/release proofs, and explicit Hermes/OpenClaw migration commands.
Honcho CRUD/API/OpenAPI/SDK/MCP/CLImapped-by-contract, still row-backedUse SDK/OpenAPI/route fixtures to prove local Goncho compatibility; unsupported hosted fields require explicit evidence.
Honcho vector/deploy divergenceowned/excludedSQLite/FTS/graph local memory replaces hosted vector stores unless a row proves adapter need; FastAPI/Postgres/Redis/Fly/Alembic deployment is excluded from the local runtime.

Row Split Candidates From Swarm

These candidates are not a parallel queue. They are the row-splitting checklist for existing phase anchors when a planner or builder pass needs to make a broad row executable.

Candidate rowSource refsGo targetParent anchor
Provider transport abstraction../hermes-agent/agent/transports/{base,types,chat_completions,anthropic,bedrock,codex}.py, ../hermes-agent/tests/agent/transports/**internal/hermes.ProviderTransport, normalized stream/event fixtures for Chat-Completions, Anthropic Messages, Bedrock Converse, and Codex ResponsesPhase 4.A
Moonshot/Kimi schema sanitizer../hermes-agent/agent/moonshot_schema.py, ../hermes-agent/tests/agent/test_moonshot_schema.py, ../hermes-agent/tests/agent/transports/test_chat_completions.pyinternal/hermes.{IsMoonshotModel,SanitizeToolSchemaForModel,SanitizeMoonshotToolParameters,SanitizeMoonshotToolDescriptors} plus OpenAI-compatible request-builder wiringPhase 4.A complete row Moonshot/Kimi tool-schema sanitizer
Provider fallback chain contract../hermes-agent/agent/retry_utils.py, agent/error_classifier.py, agent/rate_limit_tracker.py, tests/agent/test_unsupported_parameter_retry.pyinternal/kernel, internal/hermesPhase 4.H
Token vault and credential-source precedence../hermes-agent/agent/credential_pool.py, agent/credential_sources.py, hermes_cli/auth.pyinternal/config, internal/hermes, internal/cliPhase 4.G, 5.O
Prompt cache and rate guard evidence../hermes-agent/agent/prompt_caching.py, agent/nous_rate_guard.py, tests/agent/test_prompt_caching.pyinternal/hermes, internal/telemetryPhase 4.H
Context references stable-handle store../hermes-agent/agent/context_references.py, ../hermes-agent/tests/agent/test_context_references.pyinternal/hermes.ParseContextReferences, internal/hermes.AttachContextReferenceHandles, internal/contextrefs.Store, internal/transcript aliasesPhase 4.B complete row Context references stable-handle store; live file/folder/git/url expansion remains row-backed
Context compression internals../hermes-agent/agent/context_compressor.py, manual_compression_feedback.py, context_references.pyinternal/hermes, internal/kernel, internal/transcriptPhase 4.B still row-backed for file/folder/git/url expansion, injection budget warnings, manual feedback, and remaining compression behavior
Prompt builder and skill prompt snapshots../hermes-agent/agent/prompt_builder.py, skill_preprocessing.py, skill_commands.pyinternal/hermes, internal/skills, internal/cliPhase 4.C, 5.F
Telegram fallback network transport parity../hermes-agent/gateway/platforms/telegram_network.pyinternal/channels/telegram, internal/configPhase 2.B/7
Yuanbao tool parity manifest refresh../hermes-agent/tools/yuanbao_tools.py, ../hermes-agent/toolsets.py, ../hermes-agent/gateway/platforms/yuanbao*.pyinternal/tools/testdata/upstream_tool_parity_manifest.json, internal/channels/yuanbaoPhase 5.A, 7.E
Raw tool-call parser fixture matrix../hermes-agent/environments/tool_call_parsers/*.pyinternal/hermes parser/repair fixtures or a dedicated parser packagePhase 4.A/5.M
ACP server/session/tools/permissions matrix../hermes-agent/acp_adapter/{auth,entry,events,permissions,server,session,tools}.py, ../hermes-agent/tests/acp/**future internal/acp, internal/plugins, internal/apiserverPhase 5.H
MCP bridge/runtime matrix../hermes-agent/mcp_serve.py, tools/mcp_tool.py, tools/managed_tool_gateway.py, tools/mcp_oauth*.pyinternal/tools, internal/plugins, internal/apiserverPhase 5.G
Provider endpoint/API-key root flags + runtime resolutioncmd/gormes/main.go, internal/config/config.go, ../hermes-agent/hermes_cli/config.py, ../hermes-agent/tests/hermes_cli/test_set_config_value.pycmd/gormes, internal/configPhase 5.O new row Provider endpoint/API-key root flags + runtime resolution
Gormes config command surface../hermes-agent/hermes_cli/config.py, ../hermes-agent/tests/hermes_cli/test_set_config_value.py, ../hermes-agent/tests/hermes_cli/test_config_env_expansion.py, internal/config/config.go, internal/config/dotenv.gocmd/gormes config, internal/config writer helpersPhase 5.O new row Gormes config command surface
Hermes state/config migration command../hermes-agent/hermes_constants.py, hermes_state.py, hermes_cli/config.py, tests/hermes_cli/test_config*.pycmd/gormes migrate hermes, internal/migrate/hermes, internal/config, internal/session, internal/memoryPhase 5.O new rows Hermes config migration dry-run manifest and Hermes config migration writer
OpenClaw migration command../hermes-agent/hermes_cli/claw.py, ../hermes-agent/optional-skills/migration/openclaw-migration/scripts/openclaw_to_hermes.py, ../hermes-agent/website/docs/guides/migrate-from-openclaw.mdcmd/gormes migrate openclaw, internal/migrate/openclaw, internal/config, internal/skills, internal/memoryPhase 5.O new rows OpenClaw migration dry-run manifest and OpenClaw migration writer and cleanup command
Product gateway service lifecycle../hermes-agent/gateway/status.py, gateway/restart.py, hermes_cli/service-style command behaviorcmd/gormes, internal/gateway, internal/cliPhase 2.F, 5.O, 5.P
Gormes logs command and failure envelope../hermes-agent/hermes_logging.py, hermes_cli/logs.py, CLI testscmd/gormes, internal/cli, internal/auditPhase 5.O
Trajectory compressor core and compressed evidence lineage../hermes-agent/trajectory_compressor.py, ../hermes-agent/tests/test_trajectory_compressor.pyinternal/transcript, internal/auditPhase 4.E complete row Trajectory compressor + compressed-evidence lineage
Release packaging divergence matrix../hermes-agent/scripts/release.py, Dockerfile, docker/**, packaging/**, flake.*, .github/workflows/**installers, service units, OCI/Homebrew/Nix docs, cmd/repoctlPhase 5.P
Supply-chain and skills-index workflow parity../hermes-agent/.github/workflows/supply-chain-audit.yml, skills-index.ymldocs/CI contract or cmd/repoctlPhase 5.P, 6
Goncho OpenAPI v3 route manifest and unsupported-route contract../honcho/docs/v3/openapi.json, ../honcho/src/routers/*.py, ../honcho/tests/routes/**Phase 3.G complete row Goncho HTTP route parity over OpenAPI v3 in internal/goncho/http; handler binding, auth, validation, pagination, response envelopes, status codes, and SDK route e2e remain row-backedPhase 3.G, 5.Q
Goncho Honcho CRUD lifecycle invariant matrix../honcho/src/crud/{workspace,peer,session,message,document}.py, ../honcho/tests/crud/**, ../honcho/tests/routes/**internal/goncho.Service.{CreateMessages,DeleteSession,DeleteWorkspace} plus local SQLite lifecycle metadata; remaining document/API/SDK fixtures stay row-backedPhase 3.F complete row Goncho CRUD lifecycle invariants, Phase 3.G for route/SDK compatibility
Honcho API validation limits and metadata sanitizer../honcho/src/schemas/api.py, ../honcho/tests/test_schema_validations.pyinternal/goncho/compat, internal/configPhase 3.G
Goncho effective config hierarchy fixtures../honcho/src/schemas/configuration.py, ../honcho/tests/unified/test_cases/config_*.jsoninternal/config.GonchoCfg, internal/goncho.ConfigPhase 3.F, 3.G
Goncho deriver queue lifecycle and ownership contract../honcho/src/deriver/{queue_manager,enqueue,consumer,deriver}.py, ../honcho/tests/deriver/**internal/goncho.WorkQueue, internal/doctorPhase 3.F, 6
Goncho observation document tree semantics../honcho/src/crud/document.py, ../honcho/src/dreamer/trees/*.py, ../honcho/tests/unified/test_cases/observation_*.jsoninternal/goncho.ConclusionStore, internal/memoryPhase 3.F
Goncho model config and provider bridge contract../honcho/src/llm/**, ../honcho/tests/llm/**internal/goncho, internal/hermes bridge or owned deterministic local enginePhase 3.G, 4.A
Goncho dialectic and dream fake-provider execution../honcho/src/dialectic/**, ../honcho/src/dreamer/**, ../honcho/tests/dialectic/**, ../honcho/tests/dreamer/**internal/goncho.ChatEngine, internal/goncho.DreamRunner, internal/cronPhase 3.F, 6
Goncho MCP catalog parity matrix../honcho/mcp/src/tools/{workspace,peers,sessions,conclusions,system}.ts, ../honcho/mcp/README.mdinternal/gonchotools.HonchoMCPToolCatalog plus existing Goncho descriptors and field-level partial compatibility evidencePhase 5.G complete row Goncho MCP tool catalog
Python and TypeScript SDK compatibility fixture matrices../honcho/sdks/python/src/honcho/**, ../honcho/sdks/typescript/src/**, ../honcho/tests/sdk/**, ../honcho/tests/sdk_typescript/**, ../honcho/sdks/typescript/__tests__/**internal/goncho/compat/testdataPhase 3.G
Goncho Honcho CLI compatibility matrix../honcho/honcho-cli/src/honcho_cli/**, ../honcho/honcho-cli/tests/**Phase 3.G complete row Goncho CLI command-tree parity covers command paths, global flags, and shared scope flags; execution rows remain for JSON/table output, config persistence, confirms, validation, exit codes, and SDK/API actionsPhase 3.G, 5.O
Honcho webhooks, keys, telemetry, and deploy divergence matrices../honcho/src/routers/{webhooks,keys}.py, ../honcho/src/{webhooks,telemetry}/**, ../honcho/docker-compose.yml.example, ../honcho/migrations/**, ../honcho/fly.tomlPhase 3.G complete row Goncho keys + webhooks compatibility surface covers scoped JWTs, webhook endpoint CRUD, test events, and HMAC signatures; route binding, queue delivery, telemetry, and deploy divergence stay row-backedPhase 3.G, 5.Q, 5.P
Honcho integration guide and example fixture import../honcho/docs/v3/guides/**, ../honcho/examples/**, ../honcho/tests/unified/**internal/goncho/compat/testdata, docs examplesPhase 3.G, 6
GBrain progress-json and abort contract../gbrain/docs/progress-events.md, ../gbrain/src/core/backoff.ts, ../gbrain/src/core/minions/queue.ts, ../gbrain/src/core/errors.tscmd/gormes, internal/audit, internal/doctorPhase 2.E, 5.O, 6

Progress Register Actions

ActionStatus
Keep Hermes and Honcho feature parity map to Go implementation plan as the parent planning row, with this document added as the canonical fixture.complete
Promote Nested feature-level coverage test matrix for swarm gaps from draft to validated once TestNestedUpstreamFeatureCoverage lands.complete
Keep feature implementation gaps in existing Phase 2/3/4/5/6/7 rows; split only when a builder selects the surface or a row lacks source refs, write scope, tests, acceptance, or done signal.ongoing
Add no private TODO files. Any newly discovered runtime gap must update progress.json, the feature map, the swarm audit, and the nested coverage test in the same planner pass.standing rule

Gormes-Native Owned Surfaces

The 2026-04-27 runtime auditor pass produced a small register of Go packages that have no upstream parallel. They are owned-by-design and must not appear as unknown/gap again. Each entry names the replacement evidence.

Gormes pathReplacement evidenceWhy owned
internal/builderloop/**internal/builderloop/{audit,backend,claims,companions,config,failures,ledger,lifecycle,promote,run_health,runner,ship_ratio,speculative,watchdog,worktree}_test.goSkill-driven delivery infrastructure replaces the deleted autonomous loop binary; AGENTS.md ratifies it.
internal/plannerloop/**internal/plannerloop/{lifecycle,service,health_preservation,divergence_lifecycle}_test.goSame; planner orchestration library used by skills.
internal/plannertriggers/**internal/plannertriggers/{triggers,triggers_concurrent}_test.goTrigger event journal feeding the planner library.
internal/progress/**, internal/progressctl/**, cmd/progressinternal/progress/{progress,validate,health,markers,derive}_test.goprogress.json schema, validators, derived stats; cmd/progress write/validate is the supported entrypoint.
internal/repoctl/**, cmd/repoctlinternal/repoctl/{bench,makefile,readme}_test.goRepo bench/README hygiene CLI.
internal/store/**internal/store/{store,recording}_test.goCommand/ack replay store backing kernel + gateway durability.
internal/audit/jsonl.gointernal/audit/jsonl_test.goJSONL audit recorder; broader prompt-visible redaction (per agent/redact.py) is a still row-backed split target captured in this plan and the swarm audit.

Gormes-Native Pending Decisions

The same auditor pass surfaced two surfaces that need an explicit owned-or-deleted decision in the next planner pass:

SurfaceSymptomRequired decision
internal/discord and internal/channels/discordBoth packages target gateway/platforms/discord.py (legacy bot vs chassis). The feature map only references one.Pick one canonical Discord package and either delete the other or rename it as an owned divergence (legacy adapter retained for transition).
internal/pybridgeDormant Python-interop seam with NoRuntime placeholder; not invoked anywhere. AGENTS.md says Gormes is complete only when it is Hermes in Go.Mark explicitly excluded with rationale or delete the package.

These are recorded so they cannot quietly survive future audits as unknown/gap.

Hermes Hidden-Risk Register (2026-04-27)

The Hermes mapper pass listed eleven hidden risks worth pinning into the plan so subsequent planner passes preserve them:

Hidden riskWhy it mattersWhere it lives
tinker-atropos/ empty submodule placeholderWires future RL training upstream via .gitmodules; skipping it skips RL parity.Phase 5.M owned/excluded; ledger row records it.
environments/ (repo root) RL/eval framework with 9 tool_call_parsers, 3 benchmarks, 2 env subdirsDistinct from tools/environments/ (sandboxes). Easy name collision; both are feature-bearing.Phase 5.M; runtime plan order #8 (research modes).
gateway/builtin_hooks/boot_md.pyAlways-on agent-spawning hook keyed on ~/.hermes/BOOT.md; not just config glue.Phase 2.F hooks/boot rows.
gateway/restart.py exit code 75 conventionsystemd, NixOS modules rely on exit 75 for graceful restart.Phase 2.F restart rows; internal/gateway/restart.go already encodes this.
gateway/whatsapp_identity.py JID collapseCollapses @lid and @s.whatsapp.net; required for WhatsApp parity.Phase 2.B.4 WhatsApp rows; internal/channels/whatsapp/identity.go already encodes this.
cli-config.yaml.example (51 KB) canonical config schemaSpec of record for hermes_cli/config.py; ledger now records it.Phase 5.O; ledger row records it.
RELEASE_v0.11.0.md (43 KB recent feature deltas)Most recent upgrade notes; should be diffed against any partial Gormes coverage.Phase 5.P; existing RELEASE_* ignored by source-class test (intentional release-note exclusion).
acp_registry/agent.json public ACP discovery manifestWithout porting it Gormes cannot register itself in editor ACP catalogs.Phase 5.H ACP rows.
docker/entrypoint.sh PID-1 reapingTested upstream; container parity depends on it.Phase 5.P packaging rows.
plugins/example-dashboard/ and plugins/strike-freedom-cockpit/ pre-built dashboard JSweb/src/plugins/registry.ts mounts them; non-trivial plugin SPA contract.Phase 5.I plugin rows.
skills/index-cache/*.json (anthropics_skills, claude_marketplace, lobehub, openai_skills)Skill discovery requires either these or live equivalents.Phase 5.F skills hub rows.