RLM-FORGE Hermes Meetup
Runtime-Hosted RLM
github.com/Q00/rlm-forge
Vol. I  ·  № 04
github.com/Q00/rlm-forge
RLM-FORGE — Frontier Recursion Lab
A Field Note · Hermes Meetup

RLM is not a new model.
It's an execution contract.

A contract that runs on top of Hermes,
deterministically enforced.
Ouroboros · Hermes · TraceGuard Recursive inference, made enforceable.
JQ Lee
§ 02 Architecture

Three layers carry control. Memory flows alongside.

Ouroboros outer scaffold
envelope
Hermes inner LM call
child evidence manifest
TraceGuard deterministic gate
Memory · 2 layers
layer 1
Hermes built-in MEMORY.md
layer 2
RLM-FORGE memory_priors
Both can guide behavior —
neither becomes evidence.
§ 03 Why Hermes

Hermes turns LLM calls into function calls.

OUROBOROS recursion · scheduling · trace
envelope in mode · context · evidence_handles
★ inference boundary
HERMES
one bounded call · structured JSON in / out
GLM-4.7 Opus-4.7 GPT-5.5
provider swap, same contract
envelope out verdict · result · evidence_references
OUROBOROS validate · commit · retry · terminate
What Hermes brings
1
Inference boundary
The single LLM call site every recursive call passes through
2
Bounded · 4 modes
decompose · execute_atomic · summarize · synthesize
3
Structured JSON RPC
envelope in / out — LLM becomes a callable function
4
Provider-swappable
hermes model swaps GLM · Opus · GPT in one line
5
Closed learning loop
MEMORY.md auto-injected before the envelope — part of Hermes' self-improving runtime
§ 04 Live Demo

Watch MEMORY.md rewrite itself.

demo · MEMORY.md closed loop · live capture
Run 1 writes an operational prior into MEMORY.md. Run 2 picks it up before our envelope arrives — behavior shifts, but TraceGuard still gates the answer.
Fig. — closed loop
Run 1 finishes — Hermes writes operational prior to MEMORY.md
writes
MEMORY.md persistent across runs — agent-curated, on_memory_write hook
auto-prepended to system prompt
Run 2 starts with prior already in system prompt, before our envelope
answer flows down
TraceGuard still gates — evidence must come from this run's fresh child manifest
§ 05 How TraceGuard Caught Our Paper

We fed our own paper as input — and caught a real bug.

1
input
Paper sections
paper key sections target
2
decompose
Ouroboros
→ 4 bounded chunks
c0
c1
c2
c3
3
Hermes children
4 child calls
→ child_result : 000..003
000
001
002
003
4
parent synthesis
cites child : 004
— does not exist
000 001 002 003 004
5 · TraceGuard REJECT
Raw parent rejected unsupported_fact_id · child_result : 004
0.0435
6 · Repair & retry ACCEPT
Handle ↦ fresh manifest cites only child_result : 000..003
0.0000
← / → RLM-FORGE 01 / 04