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.2.0.tar.gz (11.8 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.2.0-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for lmfetch-0.2.0.tar.gz
Algorithm Hash digest
SHA256 1e145248cce4f80254af9acea125fd2d8429053647c332022fa08750449ab59d
MD5 5eb38e047123e30a9a3678ca65b19da3
BLAKE2b-256 14f5807d5b48f00fa976097fbca3432177b0fb25968ccfd3b6301b3d29e015a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for lmfetch-0.2.0.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.2.0-py3-none-any.whl.

File metadata

  • Download URL: lmfetch-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 12.0 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e4eb02f79755e8537a34b21d93aa9334d50b99b0c05a5a77a429414ecc73ff28
MD5 d586db8877600ffecba76324c9e2088f
BLAKE2b-256 886cac1c3dbd26c4d77dd2d2afa5d9b38d0c7d8e76ebd1c10f8581aacaa0b631

See more details on using hashes here.

Provenance

The following attestation bundles were made for lmfetch-0.2.0-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