# Hermes Changes to Review — 2026-08-09 (Session 41 close trigger)

**Trigger:** You said "now we close the session." Per your directive from this session, surfacing all flagged changes before terminating.

## Five items to triage

### 1. Session-open discipline (codify in macro-mentor skill)

**What:** 3-step session-open rule instead of current ~8 redundant reads.

**Why:** Session 41 took 5+ min to launch (vs <1 min usual). Cause: redundant verification across 4 parallel sources of truth + full skill loads.

**Proposed rule:**
1. Read `_session-state/<DATE>-resume.md`
2. Read block file `## Plan` section only
3. Probe

No Anki port check, no skill reload, no current-block.md re-read, no full pre-reads.md.

**Status:** pending — your call to codify or not.

### 2. macro-mentor SKILL.md trim (queue as session-of-its-own)

**What:** Trim SKILL.md from 110KB to index-level; move detail to references/.

**Why:** Loading SKILL.md is a wall-time tax even when I don't read it. The skill has grown to load-bearing weight across 100+ process rules + 49 references.

**Status:** pending — requires its own session, not a quick patch.

### 3. Vault single-source-of-truth (structural decision)

**What:** Pick one source for "what's the next block" / "what's the state of this block."

**Why:** Four parallel sources (pre-reads.md / blocks/NN-*.md / _meta/current-block.md / _session-state/DATE-resume.md) can drift. Session 40 already left pre-reads.md with duplicate `source_of_truth` lines from a patch.

**Proposed:** Resume file canonical. Block file `## Plan` becomes *input* to next session's resume. Pre-reads.md and current-block.md are *derived* (regenerated at session close).

**Status:** pending — structural decision, want your sign-off before touching.

### 4. TUI display truncation (config patch ready)

**What:** Three config knobs in `~/.hermes/config.yaml:282-343`.

**Why:** Long messages (>1500 chars) lose tail/head from view. Caused by `_OUTPUT_HISTORY = deque(maxlen=200)`, `display.user_message_preview.first/last_lines: 2/2`, and paste-collapse threshold. Data is intact in state.db — purely cosmetic.

**Proposed patch:**
```yaml
display:
  persistent_output_max_lines: 2000   # was 200
  user_message_preview:
    first_lines: 10                    # was 2
    last_lines: 10                     # was 2
```

**Alternative:** `display.interface: tui` (Ink TUI has 3000-5000 line scrollback). Tradeoff: different shell.

**Status:** ready to apply on your direction.

**Full diagnostic:** `/home/rpi/.hermes/cache/delegation/subagent-summary-0-20260809_220524_227705.txt`

### 5. Load macro-mechanism-direction-checks on FX-adjacent session-open

**What:** Auto-load `macro-mechanism-direction-checks` skill when current block is FX-adjacent.

**Why:** Pattern #17 (carry-direction pre-check) keeps firing on FX substrate. The dedicated skill is the cheat sheet; I keep slipping without it.

**Status:** pending — small change, no risk.

## Files for reference

- `/home/rpi/Obsidian-Macro/00-methodology/study-program/_session-state/2026-08-09-block-026-open-resume.md` — Session 41 close-out + directive for next session
- `/home/rpi/.hermes/cache/delegation/subagent-summary-0-20260809_220524_227705.txt` — TUI diagnostic full report (6.5KB)
- `/home/rpi/.hermes/cache/delegation/live/deleg_bfae8ce6/task-0.log` — live subagent transcript
