dream-rsi
Installation
SKILL.md
dream-rsi inference
Run this as a background subagent on the smallest available model. The subagent reads files and returns one JSON object. It does not edit files or dispatch verbs.
Inputs:
observations.jsonfiles:<repo>/.gm/dream-rsi/<session>/observations.json, each a JSON array of up to the newest 256 records withdispatch_id,verb,fingerprint,exit_code,gate_drift(bool),prd_open_count,mutable_open_count,quality(0..1),ts,reply_sha256, and optionallean_node. Orchestration verbs anddream-*dispatches are not recorded.- The gm graph:
skills/dream-rsi/gm-graph.json(nodes,edges; nodekindisprinciple,gate,tensionorterminal-- there is no phase node; edgekindisforwardorbackreference). A node is a book when itsbookis non-empty;book_indexnames each anchor book and the node that carries it. - Phase history:
.gm/turn-state.jsonphase_history. - Walk evidence:
.gm/lean-walk/<NODE>.json, one subagent record per node (node,applied,witness).
Part A: verb strategy
- Read every observation file. Count records. If there are fewer than
INSUFFICIENT_RECORD_THRESHOLDacross all sessions, return anInsufficientfor Part A. - Per verb, compute count, failure rate (
exit_code != 0), gate-drift rate, and meanquality. - Treat
qualitywith caution. Until the scoring fix in rs-plugkit lands,qualitymostly reflects the open PRD/mutable backlog rather than the dispatch outcome. Rank by failure rate weighted by count, not byquality. - Some non-zero exits are valid answers, not failures. A
grepexit 1 with no matches is a no-match result. The agent shall not propose a change for a verb until its failure exits are shown to be real errors. - For up to
MAX_PART_A_PROPOSALScandidates, write one proposal with the verb, the change, the counts and rates as evidence, and a measurable target on the same log.