Reverse-engineer, Intent-extract, Specify, Export — a creative-oriented methodology for understanding and generating code architectures through structural tension dynamics.
RISE builds on SpecLang’s core insight: specifications are “prose code” — natural language representations of computation that still require you to think like a programmer.
One phase per letter, and each phase leaves a named file in the rispecs/ folder of the
repository it describes.
| Phase | The question it answers | What it leaves in rispecs/<topic>/ |
|---|---|---|
| 1 · R Reverse-engineer | What does the prototype do, and what do people love in it? | 01-reverse-engineer.md |
| 2 · I Intent-extract | What did its creator want to bring into being, and what is it in relationship with? | 02-intent.md, the kin file <topic>.kin.md |
| 3 · S Specify | What is to be built, in prose another LLM can implement? | SPEC.md + NN-<part>.spec.md |
| 4 · E Export | Who takes it up, and where is it remembered? | NN-export.md, a row in rispecs/README.md, the episode’s rispecs: entry |
| ↺ Return | What has the code done since the spec was written? | STATUS.md, specs brought up to date |
Creative Archaeology: extracting what exists with respect for what was created.
Uncovering creative vision: what the creator wanted to bring into being.
<topic>.kin.md): who and what the spec is in relationship with, and what each relationship asks of us (llms-rispecs-kinship.md; what relationship means: llms-relationality.md)SpecLang prose-code: writing specifications that capture desired outcomes.
The specification leaves its author: it lands where its readers find it, is written for the next builder, and is recorded where the work is remembered.
rispecs/, with a row in the roadmap READMEepisode.yamlImplementation follows Export. Building from the specification is not a fifth letter.
Keeping specifications alive: a RISE pass run on what changed since the specification was
written. Git history dates the spec against the code, commit messages carry the intent, the
specs take the change, and STATUS.md records what is built.
rispecs/
├── README.md roadmap: one row per topic folder
└── <topic>/ one folder per surface
├── README.md outcome, files in reading order, status
├── 01-reverse-engineer.md R
├── 02-intent.md I
├── SPEC.md S master: the whole surface, how the parts compose
├── <topic>.kin.md I the kin file, always: relatives, and what each asks
├── 03-<part>.spec.md S a part
├── 04-export.md E
└── STATUS.md ↺ what is built
Ask “whose part is this?” and put the file in that surface’s folder. Number prefixes are reading order, and reading order follows the phases. Moving a misplaced spec changes its folder, never its file name. Full layout and checker: llms-rispecs-layout.md.
RISE changes how reverse engineering is practiced:
| Reactive Approach | RISE Approach |
|---|---|
| Find bugs and fix them | Discover creative intent and honor it |
| Document what’s broken | Specify what’s desired |
| Patch problems | Advance toward the vision |
| Technical debt analysis | Creative archaeology |
rispecs/ tree, its names, and how to move a misplaced spec