Skip to content

A set of tools to use while coding using the Claude code cli. "smartgrep" is a grep-like tool that uses a semantic index of the codebase to provide Claudes with information tailored for how they think. Claudes love it! A "codebase-curator" Claude to assist the "developer" Claude in his coding tasks, together they implement fully integrated code.

License

Notifications You must be signed in to change notification settings

RLabs-Inc/codebase-curator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

33 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Codebase Curator

🎁 Give your Claude the gift of deep codebase understanding

Because your Claude deserves a codebase expert by its side

License: MIT Claude Code Compatible

What is Codebase Curator?

Codebase Curator transforms how Claude understands your code. Instead of treating each question as isolated, it gives Claude a persistent, intelligent companion that deeply understands your entire codebase.

The Problem

When you ask Claude about your codebase, it starts from scratch every time:

  • πŸ”„ Repetitive exploration of the same files
  • ⏰ Slow responses as it re-discovers your architecture
  • 🎯 Inconsistent understanding between questions
  • πŸ˜• Generic suggestions that don't fit your patterns

The Solution: Two-Claude Architecture

Codebase Curator spawns a dedicated "Curator Claude" that becomes an expert on YOUR specific codebase:

You (Coding Claude) β†’ "How do I add authentication?"
         ↓
Codebase Curator β†’ Spawns Curator Claude
         ↓
Curator Claude β†’ Deeply analyzes your codebase
         ↓
You get β†’ Specific guidance that fits YOUR patterns

✨ Key Features

πŸ€– Two-Claude Architecture

  • Curator Claude: A dedicated AI that becomes an expert on YOUR codebase
  • Persistent Sessions: Remembers context between questions
  • Instant Follow-ups: First question takes 2 minutes, rest are instant

πŸ” Smart Grep - Semantic Search That Understands Code

πŸš€ NEW: Compact Mode for Claudes (90% Less Context Usage!)

Smart Grep now defaults to a compact summary mode that's optimized for AI assistants:

# Default: Compact summary (perfect for Claudes)
smartgrep "authService"

══════════════════════════════════════════════════════════════════════
πŸ” SMARTGREP: "authService" (17 results in 4 files)

πŸ“ DEFINITION: auth/service.ts:42 (CLASS)
   export class AuthService {
   constructor(db: Database, cache: Cache)

πŸ”₯ TOP USAGE:
   β€’ api/routes.ts:
     - Line 15: authService.authenticate(username, password)
     - Line 23: authService.validateToken(token)
   β€’ middleware/auth.ts:12 - if (!authService.isValid(token))

⚑ BREAKING CHANGES (if you modify this):
   β€’ LoginController.handleLogin() - calls authenticate()
   β€’ AuthMiddleware.verify() - calls validateToken()

πŸ’‘ PATTERNS DETECTED:
   β€’ Always async/await calls
   β€’ Throws: AuthenticationError, TokenExpiredError

🎯 NEXT: smartgrep refs "authService" | smartgrep "authenticate"
══════════════════════════════════════════════════════════════════════

# Need full details? Use --full flag
smartgrep "authService" --full    # Complete analysis with all matches

Why This Matters for Claudes:

  • Before: Each search consumed 2000-3000 tokens
  • Now: Only 200-300 tokens per search
  • Result: 10x more searches before hitting context limits!

Core Features

# Don't just search - understand!
smartgrep "handleAuth"          # Shows where it's used + usage count
smartgrep refs "apiClient"      # Full impact analysis - see all references
smartgrep group auth            # Search ALL auth patterns at once
smartgrep changes               # Analyze your uncommitted changes impact
smartgrep changes --compact     # Quick risk assessment before committing
smartgrep "func NewAuth"       # Go functions
smartgrep "impl Auth"          # Rust implementations
smartgrep "protocol Auth"      # Swift protocols
smartgrep "function deploy"    # Shell scripts

# Returns organized results with usage counts:
# β†’ Functions: authenticate() (12 uses), validateUser() (5 uses)
# β†’ Classes: AuthService, AuthMiddleware  
# β†’ Config: JWT_SECRET, AUTH_URL, oauth settings
# β†’ Cross-references: Shows actual calling code with file:line locations

# Advanced patterns
smartgrep "error&handler"       # AND search
smartgrep "login|signin|auth"   # OR search
smartgrep "!test" --type function # Exclude tests

# Custom concept groups for your project
smartgrep group add payments charge,bill,invoice,transaction
smartgrep group payments --type function  # Search your custom group

🌐 Language Support - Now 14 Languages + Frameworks!

Programming Languages:

  • TypeScript/JavaScript - Full AST parsing, JSX/TSX, ES6+, decorators
  • Python - Classes, decorators, async, type hints, docstrings, dataclasses
  • Go - Interfaces, goroutines, channels, embedded types, generics
  • Rust - Traits, macros, lifetimes, async, unsafe blocks, derive
  • Swift - Protocols, SwiftUI, extensions, property wrappers, actors
  • Shell - Functions, aliases, exports, heredocs, arrays

Framework Files (NEW!):

  • Svelte (.svelte) - Runes ($state, $derived), stores, lifecycle hooks, directives
  • Vue (.vue) - Composition API, SFC, directives (v-if, v-for), defineProps
  • Astro (.astro) - Props interface, client directives, Astro.props
  • MDX (.mdx) - Markdown with JSX components, imports, exports

Configuration Files:

  • JSON - package.json, tsconfig.json, hierarchical parsing
  • YAML - CI/CD pipelines, Docker Compose, Kubernetes manifests
  • TOML - Cargo.toml, pyproject.toml, structured configs
  • Environment - .env files with secure value masking

🎯 Live Monitoring Dashboard

# Watch your codebase evolve in real-time
bun run monitor watch --overview

# See:
# β†’ Live code distribution by type
# β†’ File changes as they happen
# β†’ Most complex files by declaration count
# β†’ Automatic reindexing on changes

🧠 Persistent Understanding

  • First question: Curator Claude explores and learns your codebase
  • Every question after: Builds on that understanding
  • Result: Faster, more accurate, context-aware responses

πŸš€ Real Examples

# Overview - The foundation (takes ~2 minutes)
"Give me an overview of this codebase"
β†’ Curator explores everything, understands patterns

# Follow-up questions are instant and accurate
"How does authentication work?"
β†’ Immediate response with YOUR specific implementation

"Where should I add a payment feature?"
β†’ Knows your patterns, suggests the right location

πŸ“¦ Installation

Prerequisites

  • Claude Code with active subscription
  • Bun runtime (faster than Node.js)

Quick Start

  1. Clone and install globally
git clone https://github.com/RLabs-Inc/codebase-curator.git
cd codebase-curator
bun install
bun link  # Makes commands available globally

Now you can use these commands from anywhere:

  • smartgrep - Semantic code search
  • curator-monitor - Live monitoring
  • codebase-curator - Interactive CLI

πŸ“š Full Installation Guide - Detailed instructions and troubleshooting

  1. Configure Claude Code MCP Add to your claude_code_config.json:
{
  "mcpServers": {
    "codebase-curator": {
      "command": "bun",
      "args": ["run", "/path/to/codebase-curator/src/mcp-servers/codebase-curator/server.ts"]
    }
  }
}
  1. Restart Claude Code The Codebase Curator tools will appear in Claude's tool panel.

🎯 Usage

In Claude Code

  1. Set your project
Use the set_project_path tool:
Path: /path/to/your/project
  1. Get an overview (do this first!)
Use the get_codebase_overview tool
  1. Ask questions
Use ask_curator: "How does the payment system work?"
Use add_new_feature: "Add user notifications"
Use implement_change: "Fix the login timeout bug"

Smart Grep CLI - Semantic Search Made Simple

# After installation with bun link, use from anywhere:

# Concept groups - search semantic patterns
smartgrep group auth           # ALL auth patterns (login, jwt, token...)
smartgrep group error          # ALL error patterns (exception, fail...)
smartgrep group api            # ALL API patterns (endpoint, route...)
smartgrep group list           # See all 20+ concept groups

# NEW: Analyze your changes before committing!
smartgrep changes              # Full impact analysis of uncommitted changes
smartgrep changes --compact    # Quick risk assessment (one line)

# Advanced search patterns
smartgrep "user|auth"          # OR search
smartgrep "async&function"      # AND search  
smartgrep "!test" --type function  # Exclude tests
smartgrep refs "PaymentService"    # Find all usages

# Custom groups for your project
smartgrep group add payments charge,bill,invoice,transaction
smartgrep group payments       # Use your custom group

# Type filters for precision
smartgrep "auth" --type function      # Only functions
smartgrep "error" --type string       # Only string literals
smartgrep group api --type class      # Only API classes

# Sort and format options
smartgrep group service --sort usage  # Most used first
smartgrep "user" --compact           # One line per result
smartgrep "api" --json               # Machine-readable output

πŸ—οΈ Architecture

Monorepo Structure

src/
β”œβ”€β”€ packages/               # Distributable packages
β”‚   β”œβ”€β”€ semantic-core/      # Core indexing engine
β”‚   β”œβ”€β”€ smartgrep/          # Semantic search CLI
β”‚   └── codebase-curator/   # Full suite
β”œβ”€β”€ services/               # Shared business logic
β”œβ”€β”€ tools/                  # CLI interfaces
β”œβ”€β”€ mcp-servers/            # AI interfaces
└── shared/                 # Common utilities

Two-Claude System

  • Coding Claude: You, working in Claude Code
  • Curator Claude: Your dedicated codebase expert
  • Communication: Via MCP (Model Context Protocol)

Smart Components

  • Session Persistence: Maintains context between questions with --resume
  • Dynamic Timeouts: Adapts to different operations (Task: 10min, Bash: 5min)
  • Semantic Indexing: Understands code structure with 20+ concept groups
  • Incremental Indexing: Only reprocesses changed files with debouncing
  • Live Monitoring: Real-time dashboard shows code evolution as you work
  • Cross-References: Shows not just where code is defined, but who uses it
  • Streaming Architecture: Handles massive codebases efficiently
  • Package Distribution: Each tool can be installed independently

🀝 Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Development

# Install workspace dependencies
bun install

# Run tests
bun test

# Run MCP server locally
bun run mcp

# Run CLI tools
bun run start                     # Curator CLI
bun run smartgrep [query]         # Smart grep
bun run monitor watch --overview  # Live monitoring

# Build semantic index
bun run smartgrep --index

# Analyze your changes
bun run smartgrep changes         # Full impact analysis
bun run smartgrep changes -c      # Quick risk check

# Work with packages
cd src/packages/smartgrep
bun run build                     # Build for distribution
bun run build:binary              # Create standalone binary

MCP Tools Available

  • get_codebase_overview - Deep analysis of your codebase
  • ask_curator - Ask questions about the code
  • add_new_feature - Get guidance for new features
  • implement_change - Get help with specific changes
  • list_project_special_tools - Discover AI-optimized tools
  • remind_about_smartgrep - Get smart-grep usage examples

πŸ“„ License

MIT - see LICENSE

πŸ™ Acknowledgments

Built with ❀️ by RLabs Inc. and Claude

Special thanks to the Claude Code team for making this integration possible.


Remember: Your Claude works hard to help you code. Give it the superpower it deserves! πŸš€

πŸ“š Documentation

πŸŽ† What's New

v4.0 - Git Impact Analysis & Custom Groups

  • Git Changes Analysis: smartgrep changes analyzes uncommitted changes impact
  • Custom Concept Groups: Create project-specific semantic patterns
  • Performance: 37x faster than standalone tools (1s vs 37.5s)
  • Risk Assessment: One-line safety check before committing
  • 10 Language Support: Added Swift and Shell script support

v3.0 - Smart Grep Revolution

  • Concept Groups: smartgrep group auth searches semantic patterns
  • Advanced Search: AND/OR/NOT patterns, regex support
  • Type Filters: Search only functions, classes, variables, etc.
  • Live Monitoring: Real-time codebase overview dashboard
  • MCP Discovery: Tools help Claudes discover smart-grep features

v2.3 - Incremental Indexing

  • Hash Tree: Bun.hash() for instant file change detection
  • Smart Debouncing: Handles duplicate save events gracefully
  • Silent Mode: Clean output for live monitoring
  • Unique File Tracking: Shows real changes, not event counts

About

A set of tools to use while coding using the Claude code cli. "smartgrep" is a grep-like tool that uses a semantic index of the codebase to provide Claudes with information tailored for how they think. Claudes love it! A "codebase-curator" Claude to assist the "developer" Claude in his coding tasks, together they implement fully integrated code.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy