Automated summary
This skill runs a recursive language model loop to analyze large documents by chunking, delegating each chunk to a subagent, and synthesizing the results.
Strengths
- Handles contexts too large for the chat window
- Uses a persistent Python REPL for intermediate state
- Delegates chunk-level analysis to a specialized subagent
- Enables iterative and structured information extraction
Limitations
- Requires prior setup of REPL scripts
- Only works with Claude Code
- Complex orchestration can be overkill for simple tasks
When you need to extract information from a very long file that does not fit in the chat context.
For simple queries or when the document is short enough to be processed directly in the conversation.
Security analysis
SafeThe 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.
No concerns found
How this analysis is madeExamples
Run rlm with context=/var/log/app.log and query='Extract all error messages with timestamps and severity levels.'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 likellm_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) andoverlap_chars=<int>(default 0).
If the user didn't supply arguments, ask for:
- the context file path, and
- the query.
Step-by-step procedure
-
Initialise the REPL state
python3 .claude/skills/rlm/scripts/rlm_repl.py init <context_path> python3 .claude/skills/rlm/scripts/rlm_repl.py status -
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)))" -
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).
-
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 -
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).
- For each chunk file, invoke the rlm-subcall subagent with:
-
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/.
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/rlm-workflow-ms1aw3hq/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/rlm-workflow-ms1aw3hq' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/rlm-workflow-ms1aw3hq/download' --output '.skill-downloads/rlm-workflow-ms1aw3hq/SKILL.md.part' && mv '.skill-downloads/rlm-workflow-ms1aw3hq/SKILL.md.part' '.skill-downloads/rlm-workflow-ms1aw3hq/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/rlm-workflow-ms1aw3hq/SKILL.md' && test -s '.skill-downloads/rlm-workflow-ms1aw3hq/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/rlm' && cp -R '.skill-downloads/rlm-workflow-ms1aw3hq' '.claude/skills/rlm'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/rlm-workflow-ms1aw3hq'openskills read 'rlm-workflow-ms1aw3hq'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/rlm-workflow-ms1aw3hq/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
Create Interactive Maps with kepler.gl
Data & AI
Create interactive map visualizations and export standalone HTML using the keplergl Python package. Use to plot geospatial data from DataFrames, GeoJSON, or CSV.
Agent-Driven Parameter Optimization
Data & AI
Guide for optimizing configurable systems with a measurable objective, using bounded trials and evidence-based recommendations.
ICP Visitor Outreach
Data & AI
Identify signed-up users matching the ideal customer profile but stalled, and draft personalized outreach to re-engage them.