Skip to content

Releases: jghiringhelli/codeseeker

v1.11.2 - Chocolatey Fix

03 Mar 23:40

Choose a tag to compare

Installation

# npm (recommended)
npm install -g codeseeker

# Homebrew
brew install jghiringhelli/codeseeker/codeseeker

# Chocolatey
choco install codeseeker

# Snap
sudo snap install codeseeker

v1.11.1 - Search quality benchmark + storage fix

03 Mar 19:56

Choose a tag to compare

Installation

# npm (recommended)
npm install -g codeseeker

# Homebrew
brew install jghiringhelli/codeseeker/codeseeker

# Chocolatey
choco install codeseeker

# Snap
sudo snap install codeseeker

v1.10.0 - RAPTOR Hierarchical Indexing

03 Mar 04:00

Choose a tag to compare

CodeSeeker v1.10.0 - RAPTOR Hierarchical Indexing

What's New

RAPTOR Hierarchical Indexing

CodeSeeker now builds a two-level summary tree on top of your indexed files, exploiting the natural directory → project hierarchy of source code.

How it works:

  • Directory summary nodes (L2): mean-pool embeddings of all chunks in a directory → one centroid vector per folder, zero extra LLM calls
  • Project root node (L3): mean of all L2 vectors, representing the entire codebase
  • All nodes live in the same vector pool as file chunks — no special routing needed

What this means for search:

  • Concrete query (find JWT refresh logic) → finds exact file chunks as before
  • Abstract query (what does the auth package do?) → naturally scores higher against directory summaries → instant package-level context

Smart incremental updates on sync:

  1. Structural hash of child file list (O(n log n), free) — skips if file set unchanged
  2. Cosine drift check against pooled child embeddings (threshold: 5%) — skips regeneration for minor edits
  3. Only regenerates when the directory semantics actually changed

Results surface with type: 'directory-summary' or type: 'root-summary' for traceability.

Search Weight Fix

Removed the PATH_WEIGHT flat 15% RRF bonus — it was added after RRF (corrupting rank scores) and double-counted what MiniSearch's boost: { filePath: 2 } already handles correctly inside BM25.

New weights: 50% vector / 50% text — cleaner scores, no double-counting.

New Storage Interface Methods

Four new methods on IVectorStore (implemented for both embedded SQLite and server PostgreSQL):

  • getById(id) — single document fetch
  • getFileEmbeddings(projectId, filePaths) — batch chunk embedding fetch for mean-pooling
  • getFilePathsForDir(projectId, dirPath) — directory-scoped file enumeration
  • deleteByFilePathPrefix(projectId, prefix) — prefix purge for clean reindex

Upgrade

\\�ash
/plugin uninstall codeseeker
/plugin install codeseeker@github:jghiringhelli/codeseeker#plugin
\\

Or via npm:

\\�ash
npm install -g codeseeker@1.10.0
\\


🤖 Generated with Claude Code

v1.9.0 - Consolidated 3-Tool MCP Architecture

02 Mar 20:53

Choose a tag to compare

Installation

# npm (recommended)
npm install -g codeseeker

# Homebrew
brew install jghiringhelli/codeseeker/codeseeker

# Chocolatey
choco install codeseeker

# Snap
sudo snap install codeseeker

v1.8.1

19 Feb 01:01

Choose a tag to compare

Installation

# npm (recommended)
npm install -g codeseeker

# Homebrew
brew install jghiringhelli/codeseeker/codeseeker

# Chocolatey
choco install codeseeker

# Snap
sudo snap install codeseeker

Full Changelog: v1.8.0...v1.8.1

v1.8.0 - Code Quality Tools & Project Detection Fix

16 Feb 20:24

Choose a tag to compare

CodeSeeker v1.8.0 - Code Quality Tools & Project Detection Fix

New MCP Tools

find_duplicates

Detect duplicate and similar code patterns across your codebase using semantic analysis.

find_duplicates({
  project: "/path/to/project",
  threshold: 0.8  // similarity threshold (0.0-1.0)
})

Returns:

  • Similarity scores between code chunks
  • File paths and line numbers
  • Duplicate detection using hash comparison and semantic similarity

find_dead_code

Identify unused code through knowledge graph analysis.

find_dead_code({
  project: "/path/to/project"
})

Detects:

  • Orphan functions/classes with no incoming references
  • God classes with too many methods
  • Returns confidence scores and suggested actions

Bug Fixes

Project Auto-Detection Fix

Fixed critical bug where CodeSeeker would search the wrong index when multiple projects are indexed.

Root cause: MCP servers cannot detect the client's working directory (process.cwd() returns the server's directory, not Claude's workspace).

Solution:

  • Now requires explicit project parameter when multiple projects exist
  • Returns clear error message listing available projects
  • Single-project scenarios still work with auto-detection

Added

  • MCP Registry support: CodeSeeker now listed in the official MCP Registry
  • GitHub Actions release workflow: Automated publishing to npm, Homebrew, Chocolatey, Snap, and MCP Registry

Changed

  • Snap confinement: Changed from classic to strict confinement for better security

Upgrade

# npm
npm update -g codeseeker

# Homebrew
brew upgrade jghiringhelli/codeseeker/codeseeker

# Chocolatey
choco upgrade codeseeker

# Snap
sudo snap refresh codeseeker

# Claude Code Plugin
/plugin uninstall codeseeker
/plugin install codeseeker@github:jghiringhelli/codeseeker#plugin

🤖 Generated with Claude Code

v1.7.2 - Fix npm Package Distribution

29 Jan 20:30

Choose a tag to compare

CodeSeeker v1.7.2 - Fix npm Package Distribution

Fixed

  • npm package: Include postinstall.js script in published package
  • Chocolatey: Fixes installation failure due to missing postinstall script
  • Package distribution: Ensure all required files are included in npm tarball

Technical Details

The v1.7.1 npm package was missing the scripts/postinstall.js file, causing installations via Chocolatey (and potentially other package managers) to fail. This release adds the script to the files array in package.json.

Upgrade

One-line install:

# macOS/Linux
curl -fsSL https://raw.githubusercontent.com/jghiringhelli/codeseeker/master/scripts/install.sh | sh

# Windows
irm https://raw.githubusercontent.com/jghiringhelli/codeseeker/master/scripts/install.ps1 | iex

Package managers:

npm update -g codeseeker
brew upgrade codeseeker
choco upgrade codeseeker  # After approval
snap refresh codeseeker   # After first publish

Claude Code plugin:

/plugin update codeseeker

🤖 Generated with Claude Code

v1.7.1 - npm postinstall for AI Assistant Configuration

20 Jan 21:50

Choose a tag to compare

CodeSeeker v1.7.1 - npm postinstall for AI Assistant Configuration

What's New

This release solves the chicken-and-egg problem: AI assistants won't use CodeSeeker MCP tools without explicit instructions, but users won't run codeseeker init without the AI suggesting it first.

Added

npm postinstall Script

When you install CodeSeeker via npm, it now automatically:

  • Searches for user-level AI assistant instruction files
  • Prompts for permission to add CodeSeeker MCP guidance
  • Falls back gracefully in CI/non-interactive environments

Supported AI Assistants:

  • Claude Code (~/.claude/CLAUDE.md)
  • Cursor (~/.cursor/rules, ~/.cursorrules)
  • GitHub Copilot (~/.github/copilot-instructions.md)
  • Windsurf (~/.windsurf/rules.md)
  • Google Gemini (~/.gemini/instructions.md)
  • xAI Grok (~/.grok/instructions.md)
  • Sourcegraph Cody (~/.sourcegraph/cody-instructions.md)
  • Amazon Q (~/.aws/q-instructions.md)
  • And more...

Changed

  • Renamed all remaining "CodeMind" references to "CodeSeeker" in documentation
  • Updated environment variable prefixes in docs to use CODESEEKER_ consistently

How It Works

$ npm install -g codeseeker

🔍 CodeSeeker Post-Install Setup

📝 Found 2 agent file(s) that can be updated:
   • Claude Code (no CodeSeeker guidance)
     /Users/you/.claude/CLAUDE.md
   • Cursor (global rules) (no CodeSeeker guidance)
     /Users/you/.cursor/rules

CodeSeeker needs to add instructions to your AI agent files.
This helps AI assistants use CodeSeeker's semantic search instead of grep/glob.

? Update 2 file(s) with CodeSeeker guidance? (Y/n): Y

   ✅ Updated Claude Code
   ✅ Updated Cursor (global rules)

✅ Updated 2 file(s) with CodeSeeker guidance!

🚀 CodeSeeker is ready!
   Run 'codeseeker --help' to see available commands.

CI/CD Support

In non-interactive environments (CI pipelines, Docker builds), the postinstall script automatically skips prompts:

🔍 CodeSeeker Post-Install Setup

⚠️  Running in non-interactive mode - skipping user prompts
   Set CODESEEKER_SKIP_POSTINSTALL=true to skip this message

💡 To enable CodeSeeker MCP tools in your AI assistant, run:
   codeseeker init (in your project directory)

Upgrade

npm update -g codeseeker

Or for Claude Code plugin:

/plugin uninstall codeseeker
/plugin install codeseeker@github:jghiringhelli/codeseeker#plugin

🤖 Generated with Claude Code

v1.7.0 - Performance & Reliability

12 Jan 22:23

Choose a tag to compare

CodeSeeker v1.7.0 - Performance & Reliability

Added

Query Result Caching

Search results are now cached using the existing ICacheStore interface:

  • Works with both LRU-cache (embedded mode) and Redis (server mode)
  • 5-minute TTL with automatic invalidation when files change
  • Cache indicator in search results shows when results were served from cache
  • Reduces repeated query latency from ~100ms to ~1ms

Encoding Detection

Safe file reading with automatic encoding detection for non-UTF8 files:

  • UTF-8 (default), UTF-8 BOM, UTF-16 LE/BE with BOM detection
  • Falls back to latin1 for legacy Windows/ANSI files
  • Binary detection: Automatically skips files with null bytes
  • No more crashes on files with unexpected encodings

Graph Incremental Deletion

New deleteByFilePaths() method enables proper incremental sync:

  • Previously, deleted files left orphan nodes in the graph until full reindex
  • Now graph nodes are properly cleaned up when individual files are removed
  • Implemented for both Graphology (embedded) and Neo4j (server)

Changed

Actionable Error Messages

All MCP tool errors now include troubleshooting steps:

  • File not found: Suggests checking path and permissions
  • Permission denied: Guidance on file system access
  • Timeout: Retry suggestions, background indexing tips
  • Connection errors: Server mode troubleshooting
  • Not indexed: Direct command to run (index({path: "..."}))
  • Out of memory: Guidance on excluding large directories

Upgrade

/plugin uninstall codeseeker
/plugin install codeseeker@github:jghiringhelli/codeseeker#plugin

🤖 Generated with Claude Code

v1.6.0 - Security Hardening & Stability

12 Jan 20:38

Choose a tag to compare

CodeSeeker v1.6.0 - Security Hardening & Stability

This release focuses on security hardening and stability improvements for production use.

Security Improvements

Sensitive Files Never Indexed

Files that could contain secrets are automatically excluded:

  • .env, .env.* (environment variables)
  • credentials.json, secrets.json, secrets.yaml
  • *.pem, *.key, *.p12, *.pfx, *.jks (certificates/keys)
  • id_rsa, id_dsa, id_ecdsa, id_ed25519 (SSH keys)
  • .npmrc, .pypirc, token.json (auth tokens)
  • AWS/GCP service account credentials

Path Traversal Protection

Dangerous paths are blocked from indexing:

  • System directories: /etc, /var, /usr, C:\Windows, C:\Program Files
  • Sensitive directories: .ssh, .gnupg, .aws, .azure
  • Paths containing .. are rejected

File Size Limit

Files larger than 5MB are automatically skipped to prevent memory issues.

Stability Improvements

Concurrent Indexing Protection

  • Added mutex to prevent race conditions when multiple index requests arrive simultaneously
  • Prevents data corruption from overlapping indexing operations

Memory Leak Prevention

  • Completed/failed indexing jobs are automatically cleaned up after 1 hour
  • Prevents memory growth in long-running MCP server sessions

Cancellation Support (Internal)

  • Added cancellation token infrastructure for future "cancel indexing" feature
  • Progress callbacks now check for cancellation

Upgrade

# Claude Code plugin
/plugin uninstall codeseeker
/plugin install codeseeker@github:jghiringhelli/codeseeker#plugin

# npm (for MCP server)
npm update -g codeseeker

🤖 Generated with Claude Code