RLM — Prompt Files (Verbatim Excerpts)
Excerpt 1: /rlm-parallel Skill — Map Phase Prompt
Source: templates/skills/rlm-parallel/skill.md
Prompting technique: Few-shot parallel dispatch with explicit step decomposition + Map-Reduce pattern from MIT RLM paper arXiv:2512.24601. The skill specifies that exactly 3 Task tools must be launched in a single message to achieve true parallelism.
### Etape 3 : Analyse parallele (CRITIQUE)
Lancer **exactement 3 Task tools dans un seul message** pour execution parallele :
Task #1 : subagent_type="Explore", model="sonnet"
→ Analyse chunk 1 avec la question
Task #2 : subagent_type="Explore", model="sonnet"
→ Analyse chunk 2 avec la question
Task #3 : subagent_type="Explore", model="sonnet"
→ Analyse chunk 3 avec la question
**Prompt pour chaque sub-agent** :
---
Tu es un assistant d'analyse. Reponds a la question basee UNIQUEMENT sur ce chunk.
### Question
{question}
### Chunk {chunk_id}
{contenu du chunk}
### Instructions
- Extrais les informations pertinentes a la question
- Cite les passages cles entre guillemets si utile
- Si rien de pertinent, reponds "Pas d'information pertinente dans ce chunk"
- Sois concis (max 200 mots)
---
Excerpt 2: /rlm-parallel Skill — Merge Phase Prompt
Source: templates/skills/rlm-parallel/skill.md
Prompting technique: Hierarchical reduction (Merger subagent synthesizes 3 partial answers) with explicit contradiction detection and source attribution. Implements the "Reduce" step of Map-Reduce.
### Etape 5 : Fusion (Merger)
Lancer un Task final pour synthetiser :
Task Merger : subagent_type="Explore", model="sonnet"
**Prompt Merger** :
---
Tu es un synthetiseur. Combine ces analyses partielles en une reponse coherente.
### Question originale
{question}
### Analyses partielles
**Chunk {chunk_id_1}** :
{reponse_1}
**Chunk {chunk_id_2}** :
{reponse_2}
**Chunk {chunk_id_3}** :
{reponse_3}
### Instructions
- Synthetise les insights sans repetition
- Si des analyses se contredisent, signale-le : "Contradiction : ..."
- Cite les sources : [chunk_id] pour chaque fait
- Structure la reponse avec des bullet points si utile
- Max 400 mots
---
Excerpt 3: PreCompact Hook — Blocking System Message
Source: hooks/pre_compact_chunk.py
Prompting technique: Hook-injected systemMessage that creates a mandatory gate. The message is i18n-aware (French by default, English optional) and includes live context window percentage.
message = (
f"[🔄 {t('compact_title')}]{ctx_info}\n"
f"━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n"
f"{t('compact_body')}"
)
result = {"systemMessage": message}
print(json.dumps(result))
The compact_body translation key expands to instructions requiring the user to run rlm_chunk before compaction proceeds, along with the current context percentage displayed as (ctx: N%).
Excerpt 4: /rlm-analyze Skill — Single-Chunk Analysis Prompt
Source: templates/skills/rlm-analyze/skill.md
Prompting technique: Constrained-context subagent pattern — subagent is given only the chunk content and forbidden from making assumptions beyond it.
**Etape 3** : Lance un subagent Task avec le contexte suivant :
---
Tu es un assistant d'analyse. Reponds a la question basee UNIQUEMENT sur le contexte fourni.
### Question
{La question de l'utilisateur}
### Contexte (Chunk {chunk_id})
{Contenu du chunk charge via rlm_peek}
### Instructions
- Reponds de maniere concise et precise
- Cite des passages pertinents si utile
- Si l'information n'est pas dans le contexte, dis-le clairement
- Ne fais pas de suppositions au-dela du contexte
---