Brain Index
Core pages
- Log — Chronological brain action log.
- Schema — Content conventions for gbrain pages.
- Readme — Source repository overview.
Projects
- Hermes Agent — Railway Hermes Agent operations, restart notifications, and source/runtime paths.
- Gbrain — GBrain path layout, content policy, and verification commands.
- Hermes Pages — Cloudflare Pages deployment workflow and Hermes Memories rendering rules.
Brain Schema
Domain
Agent brain — research synthesis, project notes, tooling, and knowledge compilation for Hermes Agent operations.
Conventions
- File names: lowercase, hyphens, no spaces (e.g.,
transformer-architecture.md) - Every page starts with YAML frontmatter (title, created, updated, type, tags)
- Use
[[wikilinks]]to link between pages (minimum 2 outbound links per page) - When updating a page, always bump the
updateddate - Every new page must be added to Index under the correct section
- Every action must be appended to Log
- Provenance markers: On pages synthesizing 3+ sources, append
^[raw/articles/source-file.md]at the end of paragraphs whose claims come from a specific source.
Tag Taxonomy
- meta: wiki, process, workflow
- projects: active, completed, archived
- research: llm, inference, training, evaluation
- tools: hermes, code, infrastructure, debugging
- knowledge: concept, entity, comparison, query
Page Thresholds
- Create a page when an entity/concept appears in 2+ sessions OR is central to one research task
- Add to existing page when a source mentions something already covered
- DON'T create a page for passing mentions or trivial facts
Frontmatter
---
title: Page Title
created: 2026-01-31
updated: 2026-01-31
type: entity | concept | comparison | query | summary
tags: [from taxonomy above]
sources: [raw/articles/source-name.md]
---
Update Policy
When new information conflicts with existing content:
- Check the dates — newer sources generally supersede older ones
- If genuinely contradictory, note both positions with dates and sources
- Mark the contradiction in frontmatter:
contradictions: [page-name]
Gordon GBrain Content Source
Human-facing durable knowledge content source for Gordon.
Path split
/opt/data/memories= Hermes native memory hot-cache (MEMORY.md,USER.md)/opt/data/gbrain-content= durable gbrain-style markdown content source/opt/data/.gbrain= gbrain runtime/config/DB location by upstream convention/opt/data/repos/gbrain= intended gbrain source checkout location; current/opt/data/gbrainmay need root-owned volume permissions fixed before moving
Navigation
Start at Index.
Brain Log
[2026-06-09] curate | operational memory pages
- Added curated operational pages for Hermes Agent, Gbrain, and Hermes Pages.
- Updated Index so Hermes Memories contains actual durable gbrain content without restoring raw session captures or native memory mirrors.
[2026-06-09] cleanup | raw capture removed
- Removed raw
sessions/capture from active gbrain content. - Removed native memory mirror pages from active gbrain content.
- Kept gbrain focused on curated durable knowledge rather than redundant logs.
[2026-05-21] maintenance | lint and orphan cleanup
- Added frontmatter to core source pages.
- Linked Index to exported core pages.
[2026-05-16] create | Brain initialized
- Structure: entities/, concepts/, hobbies/, projects/, raw/articles/, raw/papers/, comparisons/, queries/, log/
- Gordon has a separate HTML wiki at hermes-pages-d55.pages.dev/wiki/
- Gordon's wiki is HTML-native, not markdown
GBrain Operations
Durable notes for Gordon's gbrain setup as used by Hermes.
Purpose
GBrain is the durable curated knowledge base. It should not be a redundant dump of raw Telegram sessions or Hermes native memory writes.
Good gbrain content:
- project notes
- durable decisions
- operating conventions
- concise summaries
- useful links between topics
- open questions worth keeping
Bad gbrain content:
- raw completed-turn logs
- native memory write audit logs
- direct mirrors of Hermes native memory pages
- duplicated transcript archives
Current path layout
- Runtime/config/DB:
/opt/data/.gbrain - Durable markdown content source:
/opt/data/gbrain-content - gbrain source checkout:
/opt/data/repos/gbrain - Hermes native memory hot-cache:
/opt/data/memories - Legacy source checkout that may exist:
/opt/data/gbrain
Use HOME=/opt/data with gbrain commands so the CLI uses /opt/data/.gbrain.
Content policy
Raw captures, if temporarily needed, belong outside synced gbrain content, such as /opt/data/gbrain-archive/, until synthesized into curated pages.
The local Hermes gbrain provider should keep raw turn capture and native memory-write capture disabled by default.
Verification commands
export PATH=/opt/data/.bun/bin:$PATH HOME=/opt/data
cd /opt/data/repos/gbrain
gbrain list -n 200
gbrain export --dir /tmp/gbrain-export
See also Hermes Agent and Hermes Pages.
Hermes Agent Operations
Durable notes for Gordon's Railway-hosted Hermes Agent instance.
Restart / redeploy notification
Hermes should send I'm back! after a restart or redeploy Gordon asked for, so the operator knows the service is available again.
Current intended source:
gateway/run.py:_send_restart_notification()- Triggered on gateway startup when
.restart_notify.jsonexists. - Sends exactly
I'm back!to the recorded platform/chat target. - Deletes
.restart_notify.jsonafter attempting delivery.
The Docker entrypoint startup sender was removed to avoid duplicate notifications. If duplicate comeback messages recur, check for any other startup-level Telegram sender before changing the gateway path.
Railway deployment notes
- Config-only changes take effect immediately.
- Gateway code, tools, scripts, Docker, dependency, and environment changes require restart/redeploy or rebuild depending on file class.
- Programmatic Railway redeploys should create
.restart_notify.jsonbefore invoking the Railway mutation if a comeback message is wanted. .planned_redeploymarks expected redeploy shutdowns so the gateway can exit cleanly instead of appearing crashed.
Source and runtime paths
- Hermes home:
/opt/data - Main deployment repo checkout:
/opt/data/repo - Logs:
/opt/data/logs - Native Hermes memory hot-cache:
/opt/data/memories
Secret hygiene
Never print or write literal values from environment variables whose names contain KEY, TOKEN, SECRET, or PASSWORD. Reference those secrets by variable name only.
See also Gbrain and Hermes Pages.
Hermes Pages Operations
Durable notes for Gordon's hermes-pages Cloudflare Pages site.
Deployment model
The hermes-pages project uses Cloudflare Pages Direct Upload. Git pushes are source backup only; they do not publish the site by themselves.
Deploy with Wrangler after committing:
cd /opt/data/hermes-pages
npx -y -p node@22 -p wrangler wrangler pages deploy /opt/data/hermes-pages --project-name hermes-pages --commit-dirty=true
If unrelated dirty files exist, deploy an isolated clone of the committed state rather than the working tree.
Important paths
- Source repo:
/opt/data/hermes-pages - Public URL root:
https://hermes-pages-d55.pages.dev/ - Hermes Memories page:
/opt/data/hermes-pages/hermes-memories.html
Hermes Memories page
hermes-memories.html is an HTML rendering of current gbrain export output. It is a mirror of gbrain content, not a branded app and not the static HTML wiki.
Visible content should come from gbrain pages only. Presentation CSS/HTML is allowed, but the page should not add non-gbrain visible chrome such as a hero, generated timestamp, stats, auth gate, or explanatory framing.
Mobile readability matters: text, links, inline code, code blocks, and table cells should wrap safely on phone screens.
Verification
After regenerating and deploying, verify the canonical URL, not just the Wrangler preview URL. Also verify in-page anchors are not broken.
See also Gbrain and Hermes Agent.