Workflow RLM

VérifiéSûr

Exécute une boucle de modèle de langage récursif pour des tâches à long contexte. Utilise un REPL Python persistant et un sous-agent.

Spar Skills Guide Bot
Data & IAIntermédiaire
0026/07/2026
Claude Code
#recursive-language-model#long-context#subagent#repl#chunking

Recommandé pour

Notre avis

Ce skill exécute une boucle de modèle de langage récursif pour analyser de grands documents en les découpant, en déléguant chaque morceau à un sous-agent, et en synthétisant les résultats.

Points forts

  • Gère des contextes trop volumineux pour la fenêtre de chat
  • Utilise un REPL Python persistant pour un état intermédiaire
  • Délègue l'analyse par morceaux à un sous-agent spécialisé
  • Permet une extraction itérative et structurée des informations

Limites

  • Nécessite l'installation préalable des scripts REPL
  • Ne fonctionne qu'avec Claude Code
  • L'orchestration complexe peut être lourde pour des tâches simples
Quand l'utiliser

Quand vous devez extraire des informations d'un fichier très long qui ne tient pas dans le contexte du chat.

Quand l'éviter

Pour des requêtes simples ou quand le document est suffisamment court pour être traité directement dans la conversation.

Analyse de sécurité

Sûr
Score qualité90/100

The skill uses Bash only to invoke its own local Python REPL script with controlled arguments, and all file operations stay under .claude/rlm_state/. There is no network activity, external command injection, or obfuscated code. The subagent delegation is internal and does not escalate privileges.

Aucun point d'attention détecté

Exemples

Extract errors from large log file
Run rlm with context=/var/log/app.log and query='Extract all error messages with timestamps and severity levels.'
Summarize long document
Use the rlm skill on the file 'report.md' and ask for a summary of key findings.

name: rlm description: Run a Recursive Language Model-style loop for long-context tasks. Uses a persistent local Python REPL and an rlm-subcall subagent as the sub-LLM (llm_query). allowed-tools:

  • Read
  • Write
  • Edit
  • Grep
  • Glob
  • Bash

rlm (Recursive Language Model workflow)

Use this Skill when:

  • The user provides (or references) a very large context file (docs, logs, transcripts, scraped webpages) that won't fit comfortably in chat context.
  • You need to iteratively inspect, search, chunk, and extract information from that context.
  • You can delegate chunk-level analysis to a subagent.

Mental model

  • Main Claude Code conversation = the root LM.
  • Persistent Python REPL (rlm_repl.py) = the external environment.
  • Subagent rlm-subcall = the sub-LM used like llm_query.

How to run

Inputs

This Skill reads $ARGUMENTS. Accept these patterns:

  • context=<path> (required): path to the file containing the large context.
  • query=<question> (required): what the user wants.
  • Optional: chunk_chars=<int> (default ~200000) and overlap_chars=<int> (default 0).

If the user didn't supply arguments, ask for:

  1. the context file path, and
  2. the query.

Step-by-step procedure

  1. Initialise the REPL state

    python3 .claude/skills/rlm/scripts/rlm_repl.py init <context_path>
    python3 .claude/skills/rlm/scripts/rlm_repl.py status
    
  2. Scout the context quickly

    python3 .claude/skills/rlm/scripts/rlm_repl.py exec -c "print(peek(0, 3000))"
    python3 .claude/skills/rlm/scripts/rlm_repl.py exec -c "print(peek(len(content)-3000, len(content)))"
    
  3. Choose a chunking strategy

    • Prefer semantic chunking if the format is clear (markdown headings, JSON objects, log timestamps).
    • Otherwise, chunk by characters (size around chunk_chars, optional overlap).
  4. Materialise chunks as files (so subagents can read them)

    python3 .claude/skills/rlm/scripts/rlm_repl.py exec <<'PY'
    paths = write_chunks('.claude/rlm_state/chunks', size=200000, overlap=0)
    print(len(paths))
    print(paths[:5])
    PY
    
  5. Subcall loop (delegate to rlm-subcall)

    • For each chunk file, invoke the rlm-subcall subagent with:
      • the user query,
      • the chunk file path,
      • and any specific extraction instructions.
    • Keep subagent outputs compact and structured (JSON preferred).
    • Append each subagent result to buffers (either manually in chat, or by pasting into a REPL add_buffer(...) call).
  6. Synthesis

    • Once enough evidence is collected, synthesise the final answer in the main conversation.
    • Optionally ask rlm-subcall once more to merge the collected buffers into a coherent draft.

Guardrails

  • Do not paste large raw chunks into the main chat context.
  • Use the REPL to locate exact excerpts; quote only what you need.
  • Subagents cannot spawn other subagents. Any orchestration stays in the main conversation.
  • Keep scratch/state files under .claude/rlm_state/.
Skills similaires