Skip to Content
UpdatesRelease Notes

Updates

What’s new in dev-agent. We ship improvements regularly to help AI assistants understand your code better.


v0.8.5 — Enhanced Pattern Analysis & Performance

December 14, 2025

Refactored dev_inspect with 5-10x faster pattern analysis and comprehensive code comparison.

What’s Changed

🔄 Simplified dev_inspect Tool

The action parameter has been streamlined. dev_inspect is now a single-purpose tool that automatically:

  • Finds similar files using semantic search
  • Analyzes and compares 5 pattern categories
# Before (v0.8.4) dev_inspect { action: "compare", query: "src/auth.ts" } # After (v0.8.5) - Simpler! dev_inspect { query: "src/auth.ts" }

What’s New

🔍 Comprehensive Pattern Analysis

dev_inspect now analyzes 5 pattern categories automatically:

  1. Import Style — ESM, CJS, mixed, or unknown
  2. Error Handling — throw, result types, callbacks, or unknown
  3. Type Coverage — full, partial, or none (TypeScript only)
  4. Testing — Detects co-located test files
  5. File Size — Lines vs similar files

Example output:

## File Inspection: src/auth/middleware.ts ### Similar Files (5 analyzed) 1. `src/auth/session.ts` (78%) 2. `src/middleware/logger.ts` (72%) 3. `src/api/auth-handler.ts` (68%) ### Pattern Analysis **Import Style:** Your file uses `esm`, matching 100% of similar files. **Error Handling:** Your file uses `throw`, but 60% use `result`. **Type Coverage:** Your file has `full` coverage (80% match). **Testing:** No test file found. 40% of similar files have tests. **Size:** 234 lines (smaller than average of 312 lines)

⚡ Performance Improvements

  • 5-10x faster pattern analysis via batch scanning
  • 500-1000ms analysis time (down from 2-3 seconds)
  • One ts-morph initialization vs 6 separate scans
  • Embedding-based similarity (no more false matches)

🎯 Accuracy Improvements

  • Extension filtering — Only compares files with same extension
  • Semantic similarity — Uses document embeddings instead of file paths
  • No duplicates — Fixed search to return unique results
  • Relevant comparisons.ts files only compare with .ts files

Bug Fixes

Vector Store & Indexing

  • Fixed findSimilar to use document embeddings instead of path strings
  • Fixed --force flag to properly clear old vector data
  • Fixed race condition in LanceDB table creation during concurrent operations
  • Added searchByDocumentId() for embedding-based similarity search

MCP Protocol Compliance

  • Removed outputSchema from all 9 MCP adapters
  • Fixed Cursor/Claude compatibility issues (MCP error -32600)
  • All tools now return plain markdown text wrapped in content blocks

New Features

Core Utilities

  • Created test-utils.ts in @lytics/dev-agent-core/utils
  • isTestFile() — Check if a file is a test file
  • findTestFile() — Find co-located test files
  • Reusable across services

Vector Store Enhancements

  • clear() — Delete all documents (used by --force)
  • searchByDocumentId() — Find similar documents by embedding
  • Better race condition handling in table creation

Architecture Improvements

PatternAnalysisService

  • Dedicated service in @lytics/dev-agent-core
  • 5 pattern extractors with comprehensive tests
  • Batch scanning optimization for performance
  • Comparison logic with statistical analysis

Service Refactoring

  • Extracted test utilities to core/utils (DRY principle)
  • PatternAnalysisService uses shared utilities
  • Cleaner separation of concerns

Documentation

  • Complete rewrite of dev-inspect.mdx
  • Updated README.md with pattern categories
  • Updated CLAUDE.md with new descriptions
  • Migration guide from dev_explore to dev_inspect

Testing

  • All 1100+ tests passing
  • Added 10 new test-utils tests
  • Pattern analysis service fully tested
  • Integration tests for InspectAdapter

Migration Guide

API Simplification:

// Old (v0.8.4) - Had action parameter dev_inspect({ action: "compare", query: "src/auth.ts" }) // New (v0.8.5) - Streamlined! dev_inspect({ query: "src/auth.ts" })

The tool now does both similarity search AND pattern analysis automatically. Existing usage will continue to work.

Re-index Recommended:

For best results with the improved semantic search:

dev index . --force

This clears old data and rebuilds with the improved embedding-based search.


v0.8.4 — Refocus on Semantic Value

December 14, 2025

Removed git analytics commands to refocus on dev-agent’s unique semantic capabilities.

What Changed

🗑️ Removed Features

Eliminated CLI commands that duplicate git/GitHub functionality:

  • dev owners — Use git log --format="%ae" <path> | sort | uniq -c | sort -rn or GitHub Contributors
  • dev activity — Use git log --since="1 month" --name-only | sort | uniq -c | sort -rn

Impact: -1,006 lines removed, cleaner codebase focused on unique semantic value.

Why This Matters

Dev-agent’s unique value is semantic understanding:

  • Semantic code search (dev_search) — Find code by meaning, not keywords
  • Semantic commit search (dev_history) — Search git history by concept
  • Code structure analysis (dev_map, dev_inspect) — AST + embeddings
  • GitHub context (dev_plan, dev_gh) — Cross-reference issues with code

Git analytics (ownership, activity) are better served by existing tools:

  • Git CLI has excellent built-in analytics
  • GitHub provides rich contributor visualizations
  • No need to duplicate what already works

What’s Kept

Core semantic tools remain:

  • dev_search — Semantic code search
  • dev_history — Semantic commit search
  • dev_map — Codebase structure with change frequency
  • dev_plan — GitHub issue context assembly
  • dev_inspect — File analysis (similarity + pattern checking)
  • dev_gh — GitHub semantic search

Supporting infrastructure:

  • code_metadata table — Introspection of indexed code (LOC, functions, imports)
  • calculateChangeFrequency — Powers dev_map change frequency display

Migration Guide

For git analytics, use standard tools:

# Ownership by contributor git log --format="%ae" packages/core/ | sort | uniq -c | sort -rn # Recent activity git log --since="1 month" --name-only | sort | uniq -c | sort -rn # GitHub visualization # Visit: https://github.com/{org}/{repo}/graphs/contributors

Philosophy

Dev-agent is an MCP context provider, not a CLI analytics dashboard.

Focus on what AI assistants can’t get elsewhere:

  • Semantic search over code and commits
  • AST-powered code structure analysis
  • Cross-referencing multiple data sources
  • Contextual code understanding

Leverage existing tools for what they do best:

  • Git for commit/author analytics
  • GitHub for contributor visualization
  • Dev-agent for semantic understanding

v0.8.2 — Massive Indexing Performance & UX Improvements

December 13, 2025

184% faster indexing with zero silent gaps and context-aware developer insights.

What’s New

⚡ Performance Improvements (184% Faster)

Eliminated performance bottlenecks throughout the indexing pipeline:

  • 63x faster metadata collection — Single batched git command replaces 863 individual calls
  • Removed storage size calculation — Deferred to on-demand in dev stats (saves 1-3s)
  • Simplified ownership tracking — Author contributions calculated on-demand (1s vs pre-indexing overhead)
  • Total speedup — Indexing completes in ~33s vs ~95s (61s improvement!)

🎨 Section-Based Progress Display

No more silent gaps during indexing. Clean, informative output inspired by Homebrew and Cargo:

dev index . Scanning Repository (3.2s) 433 files 2,525 components Embedding Vectors (20.7s) 2,525 documents Git History (4.4s) 252 commits GitHub Issues/PRs (7.8s) 163 documents Repository indexed successfully! Indexed: 433 files 2,525 components 252 commits 163 GitHub docs Duration: 33.5s 💡 Next steps: dev map Explore codebase structure

Applied to 4 commands: dev index, dev update, dev git index, dev github index

  • Git root detection — Works from any subdirectory

Architecture Simplifications

This release removes unnecessary complexity while improving performance:

  • Removed file_authors SQLite table — On-demand calculation is fast enough (1s)
  • Removed appendFileAuthors() and getFileAuthors() from MetricsStore
  • Removed authorContributions from IndexUpdatedEvent
  • Cleaner separation — Metrics for analytics, ownership for developer insights

UX Improvements

More frequent progress updates:

  • Scanner logs every 2 batches or 10 seconds (was every 50 files)
  • Debug logs for slow file processing (>5s)
  • Maximum 1-second gaps between progress updates

Better grouping in dev owners:

  • Groups by GitHub handle instead of email (merges multiple emails per developer)
  • Monorepo-aware directory grouping (2 levels for packages/, apps/)

Graceful degradation:

  • Verbose mode and non-TTY environments show traditional logs
  • TTY detection for CI/CD compatibility

Before & After

Before:

[14:27:37] typescript 3450/3730 (92%) ← 3 MINUTES OF SILENCE [14:30:09] typescript 3600/3730 (97%) ← EMBEDDING COMPLETES ← 63 SECONDS OF SILENCE [14:31:12] Starting git extraction

After:

✓ Scanning Repository (3.2s) 433 files → 2,525 components ✓ Embedding Vectors (20.7s) 2,525 documents ✓ Git History (4.4s) 252 commits

Migration

No breaking changes for end users. Internal APIs changed:

  • IndexUpdatedEvent no longer includes authorContributions
  • MetricsStore ownership methods removed (use on-demand calculation)

No re-index required. Changes take effect immediately.


v0.8.0 — Developer Insights & Performance

December 13, 2025

⚠️ Deprecation Notice: dev owners and dev activity were removed in v0.8.4. Use git log or GitHub for contributor analytics. Dev-agent now focuses on semantic search and code understanding.

New developer activity and ownership commands with 35x faster queries via indexed author contributions.

What’s New

🗺️ New Command: dev map

Visualize your codebase structure with component counts, exports, and hot paths:

dev map --depth 2 --change-frequency packages/ ├── 🔥 core/ (45 components, 12 exports) — 12 commits in 30d ├── scanner/ (18 components, 3 exports) └── vector/ (12 components, 5 exports) ├── ✏️ cli/ (28 components, 8 exports) — 3 commits in 30d └── mcp-server/ (35 components, 9 exports)

224x performance improvement (103s → 0.46s) through optimized scanning and lazy embedder initialization.

📊 Developer Insight Commands

Two new top-level commands for understanding codebase activity:

# See most active files with commit counts and complexity dev activity # See developer specializations and file ownership dev owners

Example Output:

$ dev owners 👥 Developer Contributions Developer Files Commits Last Active ─────────────────────────────────────────────────────── jane@example.com 147 523 2 hours ago john@example.com 89 312 1 day ago alice@example.com 64 201 3 days ago Summary: 305 files analyzed across 3 developers Most active: jane@example.com (147 files) Average 3.5 commits per file

💾 Persistent Metrics with SQLite

New MetricsStore tracks code analytics over time:

  • File-level metrics (lines, complexity, change frequency)
  • Author contributions per file
  • Historical snapshots for trend analysis
  • Foundation for future analytics commands (dev trends, dev health)

⚡ Performance Improvements

Multiple commands received dramatic speedups:

  • dev map: 224x faster (103s → 0.46s) via optimized scanning
  • dev owners: 35x faster (17.5s → 0.5s) via indexed author data
  • dev stats: 10x faster via direct JSON reads
  • Offline capability: Indexed data works without git access

🎨 CLI Enhancements

  • Modernized output with compact, scannable tables
  • Factual summaries instead of verbose recommendations
  • Visual indicators for activity (🔥 hot, ✏️ active, 📝 recent)
  • GitHub handle resolution for developer identification
  • Comprehensive help text with examples across all commands

🏗️ Architecture & Quality

This release includes significant internal improvements that improve reliability and enable future features:

  • Service layer architecture — 7 services with dependency injection for better testability
  • Complete Zod validation — All 9 MCP adapters validated at runtime
  • SearchService refactor — Shared search logic across tools reduces duplication
  • Enhanced error handling — Clearer messages and proper logging throughout
  • Batched git operations — Reduced overhead from O(N files) to O(1)
  • 1,918 tests passing — Comprehensive test coverage for all new features

These improvements make dev-agent more stable, easier to extend, and ready for upcoming analytics features.

Migration Notes

Breaking Changes:

  • dev metrics activitydev activity (top-level command)
  • dev metrics ownershipdev owners (top-level command)
  • dev metrics size removed (redundant with dev stats)

What You Get:

The dev metrics namespace is now reserved for future analytical commands like trends, health, and complexity. The simpler top-level commands provide better discoverability and UX.

Re-index Required

To populate author contribution data, re-index your repository:

dev index .

This is a one-time operation. Future updates via dev update will maintain the author data automatically.


v0.7.0 — UX & TypeScript Performance Improvements

December 11, 2025

Enhanced user experience and configurable TypeScript performance optimizations.

What’s New

🎯 Improved User Experience

  • Idempotent MCP installdev mcp install now shows positive messaging when server already exists instead of erroring
  • Seamless workflowdev index automatically uses sensible defaults when no config exists (no manual dev init required)

⚡ TypeScript Performance Optimization

New default exclusions provide 10-15% indexing performance improvement for TypeScript projects:

{ "repository": { "excludePatterns": [ // Standard exclusions "**/node_modules/**", "**/dist/**", "**/.git/**", "**/coverage/**", // TypeScript performance exclusions (new!) "**/*.mock.ts", "**/*.mock.tsx", "**/mocks/**", "**/*.d.ts", "**/test-utils/**", "**/testing/**" ] } }

🛠️ Full Configurability

  • Smart defaults — New users get performance benefits automatically
  • Complete control — Fully customizable via .dev-agent/config.json
  • Semantic value preserved — Stories files kept (contain valuable component documentation)

Customization Examples

Include type definition files:

{ "repository": { "excludePatterns": [ "**/node_modules/**", "**/dist/**", "**/.git/**", "**/coverage/**", "**/*.mock.ts", "**/*.mock.tsx", "**/mocks/**", "**/test-utils/**", "**/testing/**" // Removed "**/*.d.ts" to include type definitions in search ] } }

Add project-specific patterns:

{ "repository": { "excludePatterns": [ // Default patterns... "**/vendor/**", "**/*.generated.ts", "**/legacy/**" ] } }

Migration

No breaking changes. All improvements are backward compatible.


v0.6.1 — Reliability & Performance Improvements

December 11, 2025

Enhanced reliability, performance configuration, and better documentation for the Go support released in v0.6.0.

What’s New

⚡ Performance Configuration

Fine-tune scanning and indexing performance with environment variables:

# High-performance systems (8GB+ RAM, 8+ cores) export DEV_AGENT_TYPESCRIPT_CONCURRENCY=30 export DEV_AGENT_INDEXER_CONCURRENCY=8 # Memory-conservative systems (under 4GB RAM) export DEV_AGENT_CONCURRENCY=5 export DEV_AGENT_INDEXER_CONCURRENCY=2 dev index . # Uses your custom settings

Auto-detection: If no variables are set, dev-agent automatically detects optimal settings based on your CPU and memory.

🛠️ Enhanced Reliability

  • Runtime WASM validation — Go scanner now validates tree-sitter WASM availability before parsing
  • Build script improvements — Prevent silent failures that could break Go support
  • Better error handling — Clearer error messages and proper logging levels across all scanners

📚 Documentation Improvements

  • Document missing dev update command for fast incremental indexing
  • Add timing expectations: initial indexing takes 5-10 minutes for large codebases (4k+ files)
  • Enhanced troubleshooting guide with performance tuning recommendations
  • New performance tuning section in configuration docs

🧪 Testing & Architecture

  • 57 new tests covering utility functions and edge cases
  • Dependency injection for testable file system operations
  • Extracted reusable modules for WASM resolution, concurrency calculation, and file validation

Migration

No breaking changes. All improvements are backward compatible.

Environment Variables

VariableDescriptionAuto-Detected Default
DEV_AGENT_CONCURRENCYGlobal concurrency settingBased on CPU/memory
DEV_AGENT_TYPESCRIPT_CONCURRENCYTypeScript file processingBased on system resources
DEV_AGENT_INDEXER_CONCURRENCYVector embedding batchesBased on available memory
DEV_AGENT_GO_CONCURRENCYGo file processingBased on system resources

v0.6.0 — Go Language Support

December 10, 2025

Full Go language support with tree-sitter. Index Go codebases with the same quality as TypeScript — functions, methods, structs, interfaces, and generics.

What’s New

🐹 Go Scanner

dev-agent now fully supports Go codebases:

// All of these are now indexed and searchable: func NewServer(cfg Config) *Server { ... } func (s *Server) Start(ctx context.Context) error { ... } type Config struct { Host string; Port int } type Handler interface { Handle(ctx context.Context) error } type Stack[T any] struct { items []T } // Generics!

Features:

  • Functions and methods with receiver information
  • Structs, interfaces, and type aliases
  • Go 1.18+ generics support
  • Go doc comment extraction
  • Exported symbol detection (capital letter convention)

📋 Progress Logging

New --verbose flag shows detailed progress:

dev index . --verbose [scanner] Found 4338 go files {language: "go", files: 4338} Embedding 4480/49151 documents (9%) [indexer] Embedding complete {documentsIndexed: 49151}

🚫 Smart Exclusions

Generated files are automatically skipped:

  • *.pb.go — Protobuf
  • *.gen.go, *_gen.go — Code generators
  • *.pb.gw.go — gRPC gateway
  • mock_*.go, mocks/ — Mock files
  • testdata/ — Test fixtures

Why This Matters

Go teams can now use dev-agent for semantic code search across their entire codebase. Search for “authentication middleware” and find your Go handlers, not just TypeScript files.

Tested on: Large Go codebase (~4k files, 49k documents) ✅

Technical Details

Go parsing uses tree-sitter WASM — the same parser used by GitHub, Neovim, and other tools. This provides:

  • Fast, incremental parsing
  • No Go installation required
  • Portable across platforms
  • Foundation for future Python/Rust support

v0.5.2 — GitHub Indexing for Large Repositories

December 6, 2025

Fixed ENOBUFS errors when indexing repositories with many GitHub issues/PRs. Large active repositories can now be fully indexed without buffer overflow issues.

What’s Fixed

🐛 Buffer Overflow Resolution

The GitHub indexing phase would fail with ENOBUFS (No buffer space available) on repositories with extensive GitHub activity:

# This would fail before: dev index Failed to index repository [03:09:07] ERROR Failed to fetch issues: spawnSync /bin/sh ENOBUFS

Solution:

  • Increased buffer capacity from 1MB to 50MB for GitHub API responses
  • Reduced default fetch limit from 1000 to 500 items (per type)
  • Added --gh-limit flag for custom limits

What’s New

⚙️ Configurable Limits

# Default (works for most repos) dev index # Large repos (200+ issues/PRs) dev index --gh-limit 200 # Very active repos (500+ issues/PRs) dev index --gh-limit 100

💬 Better Error Messages

If buffer issues occur, you now get actionable guidance:

Failed to fetch issues: Output too large. Try using --gh-limit with a lower value (e.g., --gh-limit 100)

Why This Matters

Many production repositories have hundreds or thousands of GitHub issues/PRs. Without this fix, dev index would fail completely on these repos, preventing AI tools from understanding project context.

Now it just works — and if you hit limits, the CLI tells you exactly how to fix it.

Tested on: 6,989 file repository with 1,000 GitHub issues/PRs ✅


v0.5.1 — Incremental Indexing

December 3, 2025

dev update now actually works. Only re-index files that changed — no more waiting for full re-scans.

What’s New

⚡ Fast Updates

dev index . # First run: full index dev update # Fast! Only processes changes

🔍 Smart Change Detection

  • Detects modified files via content hash
  • Finds new files added since last index
  • Cleans up documents for deleted files
  • Removes orphaned symbols when code changes

Why This Matters

Before: Every dev index . re-scanned your entire codebase. On a 10k file repo, that’s 5+ minutes.

Now: dev update detects what changed and only processes those files. Same result, fraction of the time.


v0.5.0 — Modern JavaScript Support

December 2, 2025

Better coverage for how developers actually write code today.

Modern JavaScript and TypeScript codebases look very different from traditional OOP. React hooks, arrow functions, and configuration objects are the primary APIs — and dev-agent now understands them.

What’s New

🎯 Arrow Functions

// Now indexed! AI can find these via semantic search export const useAuth = () => { ... } const validateEmail = (email: string) => email.includes('@')

⚛️ React Hooks Detection

Hooks are automatically detected by the use* naming pattern. When you search for “authentication hook”, dev-agent knows useAuth is a hook — not just a function.

📦 Exported Constants

Configuration objects, context providers, and factory-created values are now searchable:

export const API_CONFIG = { baseUrl: '/api', timeout: 5000 } export const ThemeContext = createContext({ dark: false }) export const SUPPORTED_LANGUAGES = ['typescript', 'javascript']

Why This Matters

Before v0.5.0, searching for “API configuration” wouldn’t find export const API_CONFIG = {...}. Now it does. This means:

  • Better search results for modern React/TypeScript codebases
  • More context for AI assistants to understand your code
  • Fewer “I couldn’t find…” moments when asking about hooks or configs

v0.4.4 — Test File Discovery

December 1, 2025

Search results now show related test files automatically.

When dev_search returns source files, it checks for matching test files (*.test.ts, *.spec.ts) and includes them in the response:

1. [89%] function: authenticate (src/auth.ts:15) 2. [84%] class: AuthMiddleware (src/middleware.ts:5) --- Related test files: • src/auth.test.ts • src/middleware.test.ts

This helps AI assistants find both implementation and tests without extra searches — useful when fixing bugs or understanding expected behavior.


v0.4.0 — Intelligent Git History

November 27, 2025

Semantic search over your commit history.

Ever tried to find “when did we add rate limiting?” by scrolling through git log? Now you can just ask:

New Tool: dev_history

Search commits by meaning, not just keywords:

> "Find commits related to authentication changes" 1. [92%] fix(auth): resolve token refresh race condition Author: jane@example.com | 3 days ago Files: src/auth/refresh.ts, src/auth/token.ts 2. [87%] feat(auth): add OAuth2 provider support Author: john@example.com | 2 weeks ago Files: src/auth/oauth.ts, src/auth/providers/

Change Frequency in dev_map

See which parts of your codebase are actively changing:

packages/ ├── 🔥 core/ (45 components) — 12 commits in 30d ├── ✏️ mcp-server/ (28 components) — 3 commits in 30d ├── 📝 cli/ (15 components) — 2 commits in 90d └── subagents/ (35 components)
  • 🔥 Hot — 10+ commits in last 30 days
  • ✏️ Active — 3-9 commits in last 30 days
  • 📝 Recent — Any commits in last 90 days

Context Assembly Improvements

dev_plan now includes related commits when assembling context for GitHub issues. AI assistants can see both what the issue asks for and how similar changes were made before.


v0.3.0 — Code Relationships

November 26, 2025

Understand how your code connects.

New Tool: dev_refs

Find what calls what — and what’s called by what:

> "What functions call validateUser?" Callers of validateUser: 1. AuthMiddleware.authenticate (src/middleware.ts:45) 2. LoginController.handleLogin (src/controllers/login.ts:23) 3. SessionManager.validateSession (src/session.ts:67)

Essential for impact analysis before refactoring.

Hot Paths in dev_map

See the most-referenced files in your codebase:

Hot Paths (most referenced): 🔥 src/utils/logger.ts (47 references) 🔥 src/types/index.ts (34 references) 🔥 src/config.ts (28 references)

Smarter Context Assembly

dev_plan was refactored from generating task breakdowns to assembling rich context. Instead of making assumptions about how to implement something, it now gives AI assistants the context they need to figure it out themselves.


v0.1.0 — Initial Release

November 26, 2025

The foundation: local-first code understanding for AI tools.

Core Features

  • Semantic Search — Find code by meaning, not keywords
  • MCP Integration — Works with Cursor, Claude Code, and any MCP client
  • Multi-language — TypeScript, JavaScript, Go, Python, Rust, Markdown
  • 100% Local — No cloud, no telemetry, all processing on your machine

Five Tools at Launch

ToolPurpose
dev_searchSemantic code search
dev_planContext assembly for issues
dev_inspectFile analysis & pattern discovery
dev_ghGitHub issue/PR search
dev_statusRepository health

Note: dev_inspect was originally named dev_explore at launch. It was renamed and enhanced in v0.8.5 with comprehensive pattern analysis.

Installation

One command to index, one command to install:

npm install -g dev-agent dev index . dev mcp install --cursor

What’s Next?

We’re working on:

  • Python support — Using tree-sitter infrastructure from Go scanner
  • Rust support — Structs, traits, impl blocks
  • Parallel search — Query multiple repos simultaneously

Have ideas? Open an issue  or join the discussion.

Last updated on