Processes large-context files using an iterative, recursive LLM approach.

Install

mkdir -p .claude/skills/rlm-jdubray && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12218" && unzip -o skill.zip -d .claude/skills/rlm-jdubray && rm skill.zip

Installs to .claude/skills/rlm-jdubray

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

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).
157 charsno explicit “when” trigger
Advanced

Key capabilities

  • Initialize a persistent Python REPL state
  • Scout context quickly by peeking at file content
  • Choose a chunking strategy for large context files
  • Materialize chunks as files for subagent processing
  • Invoke a subagent for chunk-level analysis
  • Synthesize a final answer from collected evidence

How it works

The skill initializes a Python REPL, chunks a large context file, delegates chunk analysis to a subagent, and then synthesizes the results into a final answer.

Inputs & outputs

You give it
A file path for the large context and a user query
You get back
A synthesized answer based on information extracted from the large context

When to use rlm

  • Process large documents
  • Extract information from logs
  • Analyze massive datasets

About this skill

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/.

When not to use it

  • When the context file is small and fits within chat context
  • When subagents are not available for chunk-level analysis
  • When the user query does not require iterative inspection or extraction

Prerequisites

python3rlm-subcall subagent

Limitations

  • Does not paste large raw chunks into the main chat context
  • Subagents cannot spawn other subagents
  • Scratch/state files must be kept under .claude/rlm_state/

How it compares

This skill processes large context files by iteratively chunking and analyzing them with a subagent, which differs from directly processing the entire file in a single chat context.

Compared to similar skills

rlm side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
rlm (this skill)06moReviewAdvanced
jupyter-notebook306moReviewIntermediate
obspy-data-api16moNo flagsIntermediate
source-coding17moReviewAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry