Hermes operating map | corrected plan

Hermes Decision 1: What changes next

Decision 1 is still paused. No settings, protected instructions, providers or gateway processes have changed. This page shows the corrected design and the exact approvals Boyd can copy when ready.

Decision paused No settings changed Local brief only

The short version

The plan is no longer a broad rewrite. It is a narrow repair of how the three active default instruction files are changed, plus a separately approved fallback test.

What stays paused

Decision 1. Nothing writes until Boyd uses the approval wording below. Opening this page does nothing.

What gets protected

Only the active default SOUL, USER and MEMORY files. Profile files and every file merely sharing a basename are outside this narrow gate.

What Boyd does

First approve the write-protection redesign. Separately log in to OpenCode Go. Approve a fallback smoke only after login is confirmed.

Bottom line: approve the safety redesign without a gateway restart. Authentication and fallback testing remain separate decisions.

Decisions Boyd has already made

These are settled requirements, not questions being reopened.

Use official routing guidance

Hermes model and provider routing should follow official Hermes guidance, not a hand-written guess.

Protect only active default files

The protected instruction scope is the default SOUL.md, USER.md and active memories/MEMORY.md.

Draft before staging

Run five compression and intent-preservation passes before native memory staging. Staging is not approval.

Keep narrowed v3 for root SOUL

The v3 hook remains for the root default SOUL.md, but loses basename-wide and profile-wide reach.

Remove Dropbox from always-loaded memory

Dropbox is not an always-loaded runtime fact. Its disabled or future state belongs in configuration and evidence, not permanent memory.

Call publishing Web Vault

The human name is Web Vault. The local technical root remains ~/.hermes/vault.

Keep Context7

It has recent, completed use. There is no evidence-based reason to remove it.

Add a real fallback

Boyd wants a fallback, but only through a verified logged-in route and only after a bounded smoke test.

Write protection: corrected design

A protected change must be made smaller and checked for lost intent before Hermes can even stage it for Boyd.

Five-pass draft
Native stage
/memory pending
Approve or reject
Write
Exact targetProtection routeAllowed resultExplicitly outside scope
~/.hermes/SOUL.mdFive-pass draft, then narrowed memory-gate v3 approvalOne exact root SOUL edit after approvalProfile SOUL files and same-basename files
~/.hermes/memories/USER.mdFive-pass draft, native stage, /memory pendingApprove or reject the staged USER changeUSER files in profiles, projects or backups
~/.hermes/memories/MEMORY.mdFive-pass draft, native stage, /memory pendingApprove or reject the staged MEMORY changeOther MEMORY files, archives and snapshots
AGENTS.md and all other filesNot covered by this Decision 1 gateExisting owner, config and safety rules still applyNo basename-wide protection and no hidden expansion
Current v3 problem

The gate is blocking everything instead of protecting the right things

29v3 records
29blocked
0allowed

The failure has two causes. Trusted Telegram instructions arrive with a system-added [BB] prefix that the current parser does not recognise as Boyd's approval. The file matcher also treats AGENTS.md by basename, so unrelated AGENTS files fall into the protected scope.

Repair: recognise only the trusted Telegram [BB] prefix, match exact default-file paths, preserve backups, and prove the result with harmless live tests. Do not weaken the gate for arbitrary message text.

Fallback truth

A model name existing in a catalogue does not mean Hermes can use it now.

Exists, auth blocked

OpenCode Go

DeepSeek V4 Flash and MiniMax M3 exist on OpenCode Go. The current route returns CreditsError 401 and reports logged out, so neither is a working fallback yet.

Do not use as fallback

Sonnet 5 native Hermes OAuth

This is paid extra usage and may rotate to an Anthropic API key. It is not a subscription-safe automatic fallback and should not be added to the chain.

Remains available

Manual local Claude Code

The existing local Claude Code Sonnet route remains a manual lane for suitable work. It is separate from Hermes' automatic global fallback chain.

Order matters: authenticate OpenCode Go first. Only after hermes auth reports logged in should Boyd use the fallback approval wording.

Context7 stays

Context7 retrieves current library and product documentation. Its recent activity is completed usage, not dead configuration.

23completed calls
14sessions
23 Auglatest completed use
Decision: keep Context7. No removal, disablement or replacement is justified by the current evidence.

Web Vault standard

One name for Boyd, one technical root for Hermes, and one stable public address when a page is approved for publishing.

Human nameWeb Vault
Local root~/.hermes/vault
Stable URLhttps://hermes-vault.pages.dev
Categoriesbriefs/, research/, holidays/, plus deliberately added categories
Index ruleEvery durable published page is indexed on the Web Vault home page. No orphaned durable pages.
Sensitive materialExcluded until an access gate exists and is approved. noindex is not an access gate.
Visual standardA shared design system comes later. It is not required to settle Decision 1.
This page is not deployed. Its future route would be https://hermes-vault.pages.dev/briefs/hermes-operating-map/decision-1-current-plan/ only after an approved Web Vault publish.

What Boyd must do next

There are two decisions and one authentication prerequisite. Use them in this order.

A | Approve the write-protection repair

This authorises the narrow redesign, backups and harmless tests

This does not approve a gateway restart, provider change, model fallback or Web Vault deployment.

B | OpenCode prerequisite

Run this locally and complete the login flow

Do not paste an API key, token or login secret into chat. Complete authentication in the local flow. Stop if it asks you to expose a credential here.

C | Approve fallback only after login

Use this only when OpenCode Go reports logged in

Do not use this approval while OpenCode Go is logged out. One DeepSeek smoke comes first. MiniMax is added second only if the smoke passes.

Phased implementation checklist

Each phase has a stop point. A green check in one phase does not silently authorise the next.

Phase 1

Back up and measure

Back up exact targets, preserve the 29-record v3 baseline, record hashes, and make no live behaviour change yet.

Phase 2

Repair the narrow gate

Add exact default-file matching, trusted Telegram [BB] prefix handling, and native USER/MEMORY pending approval. Keep root SOUL on narrowed v3.

Phase 3

Run harmless write tests

Test approve and reject paths against harmless temporary wording, verify backups and rollback, then restore the intended content. No gateway restart.

Phase 4

Authenticate OpenCode Go

Boyd runs hermes auth add opencode-go locally. Continue only when the route reports logged in. Do not transmit credentials in chat.

Phase 5

Smoke then add fallback

After separate approval, run one DeepSeek V4 Flash smoke. If it passes, add DeepSeek V4 Flash first and MiniMax M3 second, then verify the reported chain.

Hard boundaries

  • No gateway restart.
  • No Sonnet 5 native Hermes OAuth fallback.
  • No key, token or secret pasted into chat.
  • No profile-wide or basename-wide protected scope.
  • No Web Vault deployment from this brief.
  • No sensitive Web Vault publication without an approved access gate.
  • No fallback test before OpenCode Go reports logged in.

Evidence and official references

Expanded paths and links are kept here so the decision surface stays readable.

Local sources and exact technical paths
Active default behaviour~/.hermes/SOUL.md
Active Boyd preferences~/.hermes/memories/USER.md
Active stable memory~/.hermes/memories/MEMORY.md
Hermes configuration and provider state~/.hermes/config.yaml
Memory-gate hook implementation and records~/.hermes/hooks/memory-gate/
Hermes session evidence~/.hermes/sessions/
Web Vault publishing root~/.hermes/vault/
Earlier Decision 1 packet~/.hermes/vault/briefs/hermes-operating-map/decision-1-approval.html
This corrected local source~/.hermes/vault/briefs/hermes-operating-map/decision-1-current-plan/index.html
Official URLs
Status claims captured in this corrected plan
  • Decision 1 paused and no settings changed.
  • Memory-gate v3 baseline: 29 records, 29 blocked, zero allowed.
  • OpenCode Go currently logged out with CreditsError 401.
  • Context7: 23 completed calls across 14 sessions, latest completed use 23 August 2026.
  • This artifact is local only. No deployment was performed.