Skip to main content

Build intelligent context from codebases and URLs for LLMs

Project description

lmfetch

Effortlessly turn codebase into context for your LLMs.

lmfetch is a lightning-fast CLI tool that fetches, chunks, supports local files and remote GitHub repositories, and ranks code context. It's designed to fit the most relevant code into your token budget, so your LLM can understand the implementation details without the noise.

Install

Mac & Linux

curl -fsSL https://raw.githubusercontent.com/Abdulmumin1/lmfetch/main/install.sh | bash

Windows (PowerShell) Coming soon.

Usage

Fetch local code

lmfetch . "how does authentication work"

Fetch from GitHub

lmfetch https://github.com/vercel/ai "explain tool calling"

Common Options

# Set a token budget (default: 50k)
lmfetch . "query" -b 10k

# Force processing of large files
lmfetch . "query" --force-large

# Clear cache
lmfetch --clean-cache

# Output context to file
lmfetch . "query" -o context.md

How It Works

  1. Smart Chunking: Understands AST (classes, functions) for Python, TS, Go, Rust, and more.
  2. Hybrid Ranking: Combines keyword matching, vector embeddings, and dependency graph centrality.
  3. HyDE Reasoning: Generates hypothetical code to match your intent, not just your keywords.
  4. Privacy: Runs locally. Embeddings use your own API keys (OpenAI/Google).

Architecture

See ARCHITECTURE.md for a deep dive into the pipeline.

License

MIT

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

lmfetch-0.3.5.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

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

lmfetch-0.3.5-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file lmfetch-0.3.5.tar.gz.

File metadata

  • Download URL: lmfetch-0.3.5.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lmfetch-0.3.5.tar.gz
Algorithm Hash digest
SHA256 3d83cca9e42fe5ba28e248d26070534a16966cd898990a408315f4f6f8e82159
MD5 fb5fb80fb416014fca5e7843346f909e
BLAKE2b-256 33520de30877db0e975844ce333421a3f340ac2fb3bfd35f4c912cece60a46b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for lmfetch-0.3.5.tar.gz:

Publisher: release.yml on Abdulmumin1/lmfetch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lmfetch-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: lmfetch-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lmfetch-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 33630dc3d3dc841814ea95b8e41ff22a6f8369f9850de580beb6eb49675a3a1d
MD5 34f980791c99ade43f26748ad6cf933f
BLAKE2b-256 5d1feb89958c788021ef06ca2be3600dee726cad7b074af038ae1e3bff7eb195

See more details on using hashes here.

Provenance

The following attestation bundles were made for lmfetch-0.3.5-py3-none-any.whl:

Publisher: release.yml on Abdulmumin1/lmfetch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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