Skip to main content

Smart context manager for AI coding assistants — saves millions of tokens by building a local memory of your project

Project description

smartctx 🧠

Save millions of tokens per day by giving AI coding assistants smart, curated context instead of your whole codebase.

The Problem

Every time you start a Claude Code / Cursor / Copilot session, it reads your entire project — hundreds of files, thousands of lines. That's hundreds of thousands of tokens, every single session.

The Solution

smartctx builds a local memory of your project once, then gives AI tools only the files relevant to your current task.

Without smartctx:  Claude reads 500 files = ~800,000 tokens per session 😬
With smartctx:     Claude reads 8 files   = ~12,000 tokens per session  ✅

Savings: ~98% token reduction

Install

# npm
npm install -g smartctx

# pip
pip install smartctx

# Homebrew (macOS/Linux)
brew tap Abdullahbutt-143/smartctx
brew install smartctx

# Scoop (Windows)
scoop bucket add smartctx https://github.com/Abdullahbutt-143/scoop-smartctx
scoop install smartctx

Quick Start

# 1. Set your API key (one time, saved globally)
smartctx config --api-key sk-ant-xxxxx

# 2. Initialize your project (one-time scan)
cd your-project
smartctx init

# 3. Before each AI session, query for your task
smartctx query "add authentication middleware"
# → generates CLAUDE.md with only the relevant files

# 4. Start Claude Code — it reads the lean CLAUDE.md
claude

Commands

Command Description
smartctx init First-time setup — scans and summarizes all files
smartctx sync Refresh changed files only (run daily/weekly)
smartctx query "task" Generate lean context file for your task
smartctx status Show index stats
smartctx config View/set configuration

Multi-AI Support

smartctx query "add auth" --for claude    # → CLAUDE.md
smartctx query "add auth" --for cursor    # → .cursorrules
smartctx query "add auth" --for copilot  # → .github/copilot-instructions.md
smartctx query "add auth" --for codex    # → AGENTS.md

How It Works

  1. init — Scans your project, calls Claude Haiku (cheapest model) once per file to generate a summary. Saves everything to .smartctx/index.json locally.

  2. sync — Detects changed files (by modification time) and only re-summarizes those. Free for unchanged files.

  3. query — Runs a local keyword search (zero API cost) over your summaries. Finds the top 10 most relevant files. Generates a lean context file.

  4. AI Session — Your AI tool reads a 5-15k token context file instead of your 500k+ codebase.

Cost

  • Init: ~$0.0004 per file (Claude Haiku pricing) — a 100-file project costs ~$0.04 total
  • Sync: Only pays for changed files — usually free
  • Query: $0.00 — runs locally
  • Daily use: $0.00

Works With

  • ✅ Node.js / TypeScript projects
  • ✅ Python projects
  • ✅ Go, Rust, Java, any language
  • ✅ Any file-based project

Configuration

smartctx config --api-key sk-ant-xxxxx    # Set API key
smartctx config --target cursor           # Default output format
smartctx config --schedule weekly         # Reminder schedule

.gitignore

Add .smartctx/ to your .gitignore (it's project-specific local data):

.smartctx/
CLAUDE.md

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

smartctx-0.2.0.tar.gz (581.9 kB view details)

Uploaded Source

Built Distribution

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

smartctx-0.2.0-py3-none-any.whl (593.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: smartctx-0.2.0.tar.gz
  • Upload date:
  • Size: 581.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for smartctx-0.2.0.tar.gz
Algorithm Hash digest
SHA256 cca978adffb21943c2292bde6939676f02eee78fd74d98001621301b39699b96
MD5 456ad242cccc1cabcd7c83b06bf1c037
BLAKE2b-256 2a0a6f906bfd5f4ded7dc739fac35a43682d24dea9596a5a381afe3cddfbf57b

See more details on using hashes here.

File details

Details for the file smartctx-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: smartctx-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 593.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for smartctx-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f25f8e66d4328ff418742e7595b36ae25ba575c9f29d8e4a47977b76e61e75f5
MD5 957610b24c48694fa950493ddeb84f6b
BLAKE2b-256 f34e9484388bb06fe0979a31c248d6a3e82125a0fafbc6876669acf08c0f0d23

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