orq-retro
Skill2 starsChanged 43 days agoMITView on GitHub
Analyzes an `orq retro` round and proposes changes to the orq environment (checks, text, worker-routing calibration, skill triggers). Use in the weekly orq retro or when the user asks to learn from worker failures.
In this repository4 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- awaySkill
- worker-routingSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 12
Run orq retro --json (the weekly trigger adds --save, which also feeds the gap ledger.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
orq retro
The collector (orq retro) counts failure signals without an LLM. This skill reads the round and proposes changes to the environment, never to the product code. The analysis source is the collector; the steps for classifying and presenting are those of the retro skill (read it first).
Steps
- Run
orq retro --json(the weekly trigger adds--save, which also feeds the gap ledger; on demand it does not save). The default window is 7 days;--since YYYY-MM-DDchanges it. Then runorq retro gaps --json: the ledger remembers the gaps of earlier weeks. - For each signal with
n > 0, open the pointer of at least one case before claiming anything:sed -n <line>p <orq clone>/events.jsonl, the transcript line, the PR. A signal only becomes a proposal once the cause is read in the pointer. - Separate signal from noise: a dirty tree with the same count on every
liberado_sujoof the main checkout is dirt that was already there, not the worker's; a highentrada_sem_tratamentomeasures the coordinator's habit, not a bug; a steer from before the firststeer_endin the log predates the read proof. Noise cases go in a single line. - Give each proposal a cause and exactly one class.
- Cause (
causa): ask what led to the error, not what it looks like. Did the orq's briefing, preamble or command lead the worker astray? Thencausa: orq: the ticket goes to the orq Run (run_e9410bf401fb) and never becomes a line in the project's AGENTS.md. Otherwisecausa: projeto: the ticket goes to the project Run (run_e7566c12893b). - Class:
- check: mechanical error (fixed pattern, forbidden command, wrong place). It becomes a hook, test or guard in orq. A new
_retro_violationspattern goes here. - text: judgment error. It becomes a line in AGENTS.md, in the worker's default spec or in a memory. Say which file and the exact line.
- calibration: the model or effort missed by enough. It becomes a change to the
worker-routingtable, with thepor_modelotable as proof. - trigger (
gatilho): the worker did not know something a skill already holds. Do not copy the text: the change is the skill'sdescription:line (the condition of use). Name the skill and write the new line.
- Cause (
- Make the short list: at most 5 proposals, each a gap with
estadopropostaingaps --json(2 or more distinct sessions, in any weeks), or 1 case that lost work or broke orq. Arejeitadagap is not proposed again: it comes back by itself once it has more sessions than at the rejection. Order by severity. When a proposal is about a gap the ledger already has, cite itsid; do not invent another. - Write the page in Lavish (
.lavish/retro-YYYY-MM-DD.html, playbookinput): per proposal, the evidence with pointer, the cause (orq/projeto), the class, the concrete change and the collector metric that should drop the following week. Each proposal gets approve, reject or adjust. The page also lists the open gaps still under 2 sessions, in one line each. - In the report, also propose the matching edit to the prompt of the "Navegabilidade: retro das sessões de agente" automation (
orca automations edit, so tickets withcausa: orqstop going to the project Run). Write the command, do not run it; only with the user's ok. - Save the summary to
<orq clone>/plan/relatorios/retro-YYYY-MM-DD.md(ORQ_PLAN), runorq retro citacoes <that file>and fix every quote it reports as not matching (open the pointer again, quote the real text or drop the claim), then finish. The report lists the cause and class of each proposal and shows one example of eachcausavalue, or says there was no case. The round only ends with the page open, the report written and the command exiting 0.
After the ok
Nothing is applied without the user's ok on the page. When the user rejects a proposal on the page, run orq retro reject <id> --reason "<their reason>" right away. When they approve one and the ticket is created, run orq retro accept <id> --ticket <n> so the gap turns covered when the ticket closes. An approved check or calibration proposal becomes a ticket (orq ticket new) in the Run of its causa; a text one, an edit to the document, in a worker; a trigger one, an edit to the skill's description:.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

