Skip to main content

Make codex, gemini-cli, or any other coding agent into an RLM.

Project description

npm PyPI License: MIT

coderlm

Make codex, gemini-cli, or any other coding agent into an RLM.

Install

# npm / bun
bunx coderlm@latest
npx coderlm@latest

# pypi
uvx coderlm
pipx run coderlm

Or install globally:

npm i -g coderlm    # npm
uv tool install coderlm  # pypi

Usage

coderlm <agent> --prompt "<task>" [--max-depth N] [--allowedTools TOOLS]

Examples

# Codex
coderlm codex --prompt "Find all TODO comments in src/"
coderlm codex --prompt "Find dead code in src/, lib/, and test/"
coderlm codex --prompt "Summarize the codebase" --max-depth 2

# Gemini
coderlm "bunx --bun @google/gemini-cli" --prompt "Review **/*.py for security issues"
coderlm "bunx --bun @google/gemini-cli" --prompt "Architecture overview of src/"

# Claude (non-recursive only — Claude cannot spawn nested Claude sessions)
coderlm claude --prompt "Fix type errors in src/" --allowedTools "Bash,Edit"

How It Works

  1. Build a system prompt with RLM instructions (discover, explore, decompose, aggregate)
  2. Inject context guards via BASH_ENV so every bash subshell the agent spawns has output truncation active
  3. Launch the agent with agent-specific flags for non-interactive execution

The agent starts with no file contents in context. It uses shell tools (fd, rg, cat, head, jq, etc.) to discover and inspect files as needed. For large file sets (>20 files), it spawns recursive sub-agents on subsets.

Context Guards (bundled)

bashrlm.sh is bundled and auto-activates for every agent run. It wraps high-output commands (cat, grep, rg, jq, find, ls, curl, etc.) with automatic truncation, preventing the agent from flooding its own context window with oversized output.

Truncation uses head+tail mode — the agent sees the start and end of any large output, with the middle omitted:

[TRUNCATED — showing 2000 of 15000 chars, first and last 1000]

Guards are redirect-aware: piping to a file (> /tmp/out.txt) bypasses truncation, so multi-step processing works naturally. The agent's system prompt includes instructions for this pattern.

Supported Agents

Agent Command Notes
OpenAI Codex codex Recommended — supports recursive sub-agents
Google Gemini bunx --bun @google/gemini-cli Supports recursive sub-agents
Claude Code claude Non-recursive only — cannot spawn nested Claude sessions
Any CLI my-agent Combined prompt passed as single argument

When to Use

  • Many files to analyze (>10)
  • Task benefits from divide-and-conquer
  • Total content exceeds a comfortable context window
  • You want the agent to explore strategically rather than read everything upfront

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

coderlm-0.2.1.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

coderlm-0.2.1-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file coderlm-0.2.1.tar.gz.

File metadata

  • Download URL: coderlm-0.2.1.tar.gz
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for coderlm-0.2.1.tar.gz
Algorithm Hash digest
SHA256 7ae13f3c794d79fce05146385a128de0d4c4f00e15a0794d2908b2a4823ffd07
MD5 3047199f7a587ed8fdce28f7457f5ce5
BLAKE2b-256 2f602cef15e4cbdef6573c7da7ce5fd53bd1b4a37c1c08d5f7aed5e34c8c0c43

See more details on using hashes here.

File details

Details for the file coderlm-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: coderlm-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for coderlm-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 502197f394ef3d8cd3051d9f797a8ddba7211957c99c085a67de518c442c06fc
MD5 33edb6eb061f932ef2a4d848f5382635
BLAKE2b-256 190ec5d059eb3d9dfbccdae4c99b091a65985c7c7267993bfbf7b5c61bf087cc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page