Skip to content

Releases: bgauryy/octocode-mcp

9.1.1

15 Dec 20:10
9e72c77

Choose a tag to compare

What's Changed

Full Changelog: 9.1.0...9.1.1

9.1.0

15 Dec 19:03
3c911f2

Choose a tag to compare

Changelog - PR #236: Build System Modernization

[Unreleased]

version: "9.1.0"

Added

  • Standalone Binary Distribution - Pre-compiled binaries for all major platforms without Node.js dependency
    • macOS (Apple Silicon & Intel)
    • Linux (x64, ARM64, Alpine/musl)
    • Windows (x64)
  • One-line Installer Script - curl -fsSL https://raw.githubusercontent.com/bgauryy/octocode-mcp/main/install/install.sh | sh
  • Bun Build Scripts - Cross-compilation support via bun build --compile
    • build:bin - Build for current platform
    • build:bin:all - Build for all platforms
    • build:bin:darwin-arm64, build:bin:darwin-x64, build:bin:linux-x64, etc.
  • tsup Configuration - Modern esbuild-based bundler replacing Rollup
  • Type Export - FileContentQuery type now explicitly exported from schema

Changed

  • Build System - Migrated from Rollup to tsup (esbuild)
    • Faster builds with esbuild
    • Simpler configuration via tsup.config.ts
    • Tree-shaking enabled by default
  • Schema Validation - FileContentQuerySchema refactored to use superRefine()
    • Better error messages with specific paths (['fullContent'], ['startLine'])
    • Can report multiple validation failures simultaneously
  • Package Search Schema - Refactored to use flat field definitions avoiding deep type inference
  • Dependencies Upgraded
    • @typescript-eslint/*: 6.x → 8.x
    • zod: 3.23.8 → 3.24.0
    • typescript: 5.9.2 → 5.9.3
    • Added: tsup, tslib, eslint-config-prettier, eslint-plugin-prettier
  • Error Handling - Empty catch blocks replace unused error variables (ESLint v8 compliance)

Removed

  • Rollup Configuration - rollup.config.js and rollup-plugin-string dependency
  • Separate TypeScript Build Config - tsconfig.build.json (tsup handles compilation)
  • Type Declarations from Package - .d.ts files no longer published (binary-focused distribution)

Breaking Changes

  • GitHubReposSearch Validation - Now requires at least one of keywordsToSearch or topicsToSearch
    • Queries with only owner filter will fail validation
    • Error message: "At least one of 'keywordsToSearch' or 'topicsToSearch' is required"

Fixed

  • Formatting Consistency - Standardized conditional expression formatting across codebase
  • Type Safety - Improved generic constraints in createSuccessResult<T extends Record<string, unknown>>

Migration Guide

For Binary Users (New!)

# Install standalone binary (no Node.js required)
curl -fsSL https://raw.githubusercontent.com/bgauryy/octocode-mcp/main/install/install.sh | sh

# Configure MCP client
{
  "mcpServers": {
    "octocode": {
      "command": "~/.local/bin/octocode-mcp"
    }
  }
}

For npm Users

No changes required - npx octocode-mcp continues to work.

For API Consumers

If you're using githubSearchRepositories with owner-only queries:

// Before (now fails validation)
{ owner: "microsoft", limit: 10 }

// After (add keywords or topics)
{ owner: "microsoft", keywordsToSearch: ["*"], limit: 10 }
// or
{ owner: "microsoft", topicsToSearch: ["typescript"], limit: 10 }

Files Changed Summary

Category Files Lines Added Lines Removed
Build Config 4 46 58
Schema 3 50 33
Source 10 27 30
Tests 12 152 217
Dependencies 4 507 312
Documentation 2 243 1
Total 36 1043 709

Related Links

  • PR: #236
  • Branch: build

8.0.0

26 Nov 17:27
a1c7802

Choose a tag to compare

CHANGELOG - Octocode MCP v8.0.0

TL;DR: Major release introducing local filesystem research capabilities, new license model, and enhanced prompt commands.

🚀 New Features

Local Filesystem Research (octocode-mcp-local v1.0.1)

New MCP server package for local codebase exploration using native Unix tools.

  • local_ripgrep - Fast pattern search with regex, context lines, and pagination
  • local_view_structure - Directory tree with file sizes and filtering
  • local_find_files - File discovery by metadata (time, size, permissions)
  • local_fetch_content - Read files or extract sections by pattern

Source: PR #219, PR #222

New Prompt Commands

Command Description
/plan AI architect for complex development - research, plan, implement
/review_pull_request Expert-level PR review with defects-first mindset
/review_security Comprehensive security audit of repositories

Source: PR #220


🔄 Breaking Changes

License Change: MIT → PolyForm Small Business 1.0.0

All packages now use the PolyForm Small Business License:

  • ✅ Free for individuals and small businesses (<100 employees, <$1M revenue)
  • ⚠️ Enterprises must obtain a commercial license

Affected packages:

  • octocode-mcp (root)
  • packages/octocode-mcp
  • packages/octocode-local
  • packages/octocode-utils

Source: PR #220 | License files: LICENSE, packages/*/LICENSE

Removed Commands

  • /kudos - Repository appreciation (removed)
  • /use - Quick reference guide (removed)

Source: PR #220 | packages/octocode-mcp/src/tools/content.json

Package Rename

  • @octocodeai/localoctocode-mcp-local
  • Binary name: localoctocode-mcp-local

Source: PR #221, PR #222


📦 Dependency Updates

Package Old Version New Version
octocode-mcp 7.0.17 8.0.0
octocode-utils 5.0.0 6.0.0
octocode-mcp-local - 1.0.1
typescript (dev) - 5.9.2

📝 Documentation Updates

  • Added Cursor one-click install buttons (PR #223)
  • Comprehensive installation guides for 15+ MCP clients (PR #221)
  • Updated README with @latest version tags for all install commands
  • New ARCHITECTURE.md for octocode-local package
  • Simplified AGENTS.md with monorepo-level guidance

Source: PR #221, PR #223


🐛 Bug Fixes

  • Fixed security tests using hardcoded paths instead of project-relative paths (PR #221)
    • race-condition-attack.test.ts: Fixed TOCTOU test workspace path
    • symlink-attack.test.ts: Fixed symlink test workspace path

🔧 Internal Changes

  • Removed .github/workflows/pr-validation.yml CI workflow
  • Added @rollup/plugin-terser for minified builds
  • Added test:quiet script for minimal test output
  • Consolidated AGENTS.md from 522 lines to 174 lines
  • Removed 1337-line ARCHITECTURE.md (moved to package level)

PRs Included

PR Title Author Date
#219 Add local search @bgauryy 26/11/2025
#220 Fix readme @bgauryy 26/11/2025
#221 fix build and update readme @bgauryy 26/11/2025
#222 octocode-local 1.0.1 @bgauryy 26/11/2025
#223 update readme @bgauryy 26/11/2025

Upgrade Guide

For Small Businesses / Individuals

No action required - the new license permits free use.

For Enterprises

Contact enterprise licensing before upgrading.

Installation Update

{
  "mcpServers": {
    "octocode": {
      "command": "npx",
      "args": ["octocode-mcp@latest"]
    },
    "octocode-local": {
      "command": "npx",
      "args": ["octocode-mcp-local@latest"]
    }
  }
}

Confidence: High ✅


Created by Octocode MCP https://octocode.ai 🔍🐙

7.0.13

20 Nov 17:03
6401807

Choose a tag to compare

PR #211: Prompts Overhaul

Created: November 20, 2025

📊 Changes Overview

Metric Value
Files Changed 16
Additions +3,201
Deletions -96
Net Change +3,105

🎯 What's New

✨ New Features

🔒 Security Review Prompt (review_security.ts)

  • New AI-guided security review system
  • Implements systematic vulnerability assessment workflow
  • Key capabilities:
    • Attacker mindset approach for threat modeling
    • Maps attack surfaces (secrets, injection, SSRF, RCE, auth/authz, CSRF, etc.)
    • Structured security analysis with confidence levels
    • Integration with OWASP Cheat Sheet Series
    • Takes repoUrl parameter for targeted analysis
  • Output: Concise findings with GitHub URLs and impact assessment

🔄 Changes

Simplified Prompt Architecture

  • Removed unnecessary preprocessing from research.ts and use.ts
    • Eliminated regex-based tool name replacements
    • Content now passed through directly
    • Cleaner, more maintainable code

Enhanced Prompt Registration (prompts.ts)

  • Conditional registration with validation
  • Checks before registering each prompt:
    • ✅ Prompt metadata exists
    • ✅ Name is non-empty string
    • ✅ Description is non-empty string
    • ✅ Content is non-empty string
  • Graceful degradation: Missing/invalid prompts won't break the system

Build Configuration Hardening (rollup.config.js)

  • Changed noEmitOnError: falsenoEmitOnError: true
  • Stricter validation: Build now fails on TypeScript errors in src AND tests
  • Prevents broken code from being deployed

❌ Removals

Kudos Prompt Deleted

  • Removed src/prompts/kudos.ts (36 lines)
  • Previously: Helped users acknowledge repositories used during research
  • Functionality retired in favor of security focus

📁 Files Modified

Source Code (8 files)

  1. packages/octocode-mcp/rollup.config.js (+1, -1)

    • Build strictness improvement
  2. packages/octocode-mcp/src/prompts/kudos.ts (deleted)

    • Removed attribution prompt
  3. packages/octocode-mcp/src/prompts/prompts.ts (+39, -4)

    • Conditional registration logic
  4. packages/octocode-mcp/src/prompts/research.ts (+3, -29)

    • Simplified implementation
  5. packages/octocode-mcp/src/prompts/review_security.ts (new, +96)

    • Security review prompt
  6. packages/octocode-mcp/src/prompts/use.ts (+2, -20)

    • Simplified implementation
  7. packages/octocode-mcp/src/tools/content.json (metadata update)

    • Replaced kudos with reviewSecurity
  8. packages/octocode-mcp/src/tools/toolMetadata.ts (+9, -1)

    • Added isToolAvailableSync() helper
    • Updated prompt interface

Tests (8 files)

  • tests/prompts/prompts.test.ts (+478, -0)
  • tests/prompts/research.test.ts (+257, -0)
  • tests/prompts/review_security.test.ts (+383, -0)
  • tests/prompts/use.test.ts (+297, -0)
  • Plus 4 more test files with updates

Test Coverage: Comprehensive validation, registration, error handling, and edge cases

Add MCP Registry support with automated publishing

10 Nov 14:06
5ed5d1f

Choose a tag to compare

feat: Add MCP Registry support with automated publishing

  • Add server.json for MCP Registry registration
  • Implement automated publishing workflow
  • Enhance package distribution with proper file inclusion
  • Add comprehensive CI/CD documentation
  • Clean up tool output hints

This release makes Octocode MCP discoverable in the official MCP Registry
and establishes a robust automated publishing pipeline.

7.0.0

15 Oct 12:30

Choose a tag to compare

PR #142: Major Architecture Refactoring - Error Handling, Type System, and Code Organization

Overview

This PR represents a comprehensive refactoring of the codebase focused on improving maintainability, code organization, and developer experience. The changes consolidate error handling, centralize type definitions, and introduce reusable utility patterns across all GitHub API tools.

Version: 6.3.0 → 7.0.0 (Major version bump)

Summary Statistics

  • Files Changed: 30 files
  • Additions: 1,113 lines
  • Deletions: 1,277 lines
  • Net Change: -164 lines (improved functionality with less code)
  • New Files: 2 (errorConstants.ts, tools/utils.ts)
  • Branch: add-suggestionsmain
  • Base SHA: d8000ff1f230b800014849addada3b462f25685c
  • Head SHA: a451ff57810a8f38abed159dd1f1dddfd25cc950
  • Status: Open (not merged)
  • Draft: No
  • Comments: 0
  • Review Comments: 0
  • Created: 06/10/2025
  • Last Updated: 12/10/2025

Key Changes

1. Centralized Error Handling System

New File: src/github/errorConstants.ts (227 lines)

Created a comprehensive error management system with:

  • Error Codes: Standardized error code constants for all GitHub API errors

    • AUTH_REQUIRED - 401 authentication errors
    • RATE_LIMIT_PRIMARY - 403 primary rate limit errors
    • RATE_LIMIT_SECONDARY - 403 secondary rate limit (abuse detection)
    • FORBIDDEN_PERMISSIONS - 403 permission errors
    • NOT_FOUND - 404 resource not found
    • INVALID_REQUEST - 422 validation errors
    • SERVER_UNAVAILABLE - 502/503/504 server errors
    • NETWORK_CONNECTION_FAILED - Network connection errors
    • REQUEST_TIMEOUT - Request timeout errors
    • UNKNOWN - Unknown error types
  • Error Messages: Centralized error message templates with:

    • User-friendly error messages
    • Actionable suggestions for resolution
    • Detailed explanations of what caused the error
    • Links to GitHub API documentation where applicable
  • Rate Limit Configuration:

    • 1-second buffer for rate limit resets (GitHub best practice)
    • 60-second fallback for secondary rate limits
    • Proper distinction between primary and secondary rate limits

Refactored: src/github/errors.ts (300 additions, 123 deletions)

  • Modularized error handling into focused functions:

    • handleRequestError() - Octokit RequestError handling
    • handle403Error() - Complex 403 error classification
    • handleSecondaryRateLimit() - Secondary rate limit handling
    • handlePrimaryRateLimit() - Primary rate limit handling
    • handlePermissionError() - Permission/scope error handling
    • handleKnownHttpError() - Standard HTTP error handling
    • handleJavaScriptError() - JavaScript error handling
  • Enhanced error detection:

    • GraphQL rate limit detection
    • Secondary rate limit pattern matching
    • Network error pattern matching
  • Improved error hints generation:

    • generate404Hints() - File/branch not found suggestions
    • generate403Hints() - Permission error suggestions
    • generateRateLimitHints() - Rate limit recovery suggestions

2. Type System Consolidation

Enhanced: src/types.ts

Centralized all shared types in one location for single source of truth:

Infrastructure Types:

  • UserContext - User identification and session context
  • ServerConfig - Server configuration
  • SessionData, ToolCallData, ErrorData - Session management
  • SamplingResponse - Sampling response structure

Security Types:

  • SanitizationResult - Content sanitization results with warnings
  • ValidationResult - Parameter validation results
  • SensitiveDataPattern - Security pattern matching definitions

GitHub API Types:

  • GitHubUserInfo - User information from GitHub API
  • GitHubRateLimitInfo - Rate limit information

Tool Query Types:

  • FileContentQuery - File content fetch parameters
  • GitHubCodeSearchQuery - Code search parameters
  • GitHubReposSearchQuery - Repository search parameters
  • GitHubViewRepoStructureQuery - Repository structure parameters
  • GitHubPullRequestSearchQuery - PR search parameters

Tool Result Types:

  • ContentResult - File content fetch results
  • SearchResult - Code search results
  • RepoSearchResult - Repository search results
  • PullRequestSearchResult - PR search results
  • SimplifiedRepository - Repository data structure
  • ToolResponse - Standardized tool response format

Removed Redundant Types From:

  • src/scheme/github_fetch_content.ts (44 lines removed)
  • src/scheme/github_search_code.ts (38 lines removed)
  • src/scheme/github_search_repos.ts (31 lines removed)
  • src/scheme/github_search_pull_requests.ts (100 lines removed)
  • src/scheme/github_view_repo_structure.ts (27 lines removed)
  • src/github/userInfo.ts (37 lines removed)
  • src/security/contentSanitizer.ts (17 lines removed)
  • src/security/mask.ts (9 lines removed)
  • src/security/regexes.ts (7 lines removed)
  • src/security/withSecurityValidation.ts (8 lines removed)
  • src/serverConfig.ts (12 lines removed)
  • src/session.ts (18 lines removed)
  • src/sampling.ts (13 lines removed)

3. Response Structure Improvements

Breaking Changes:

  1. Removed metadata field from all API responses:

    • Simplified response structure
    • Removed redundant internal tracking data
    • Cleaner API surface for consumers
  2. Renamed hints to instructions:

    • More accurate terminology for guidance provided to AI assistants
    • Updated in src/responses.ts
    • Updated in ToolResponse interface

Enhanced Response Formatting:

  • Improved YAML key priority ordering for better readability
  • Better status hints for bulk operations (hasResults, empty, error)
  • Consistent response structure across all tools

4. Tool Refactoring with Reusable Utilities

New File: src/tools/utils.ts (153 lines, 4.7KB)

Created shared utility functions for consistent tool implementation:

Error Handling Utilities:

  • extractApiErrorHints() - Extract hints from GitHub API errors (private)
    • Propagates actual API error messages and suggestions
    • Includes rate limit information when available
    • Adds retry-after timing for secondary rate limits
  • handleApiError() - Process API responses and extract error information
    • Type guard checking for error objects
    • Combines API hints with extracted hints
    • Returns strongly-typed error results
  • handleCatchError() - Convert exceptions to standardized error results
    • Handles both Error instances and unknown error types
    • Optional context message parameter
  • createErrorResult() - Create error response with consistent structure
    • Includes researchGoal and reasoning from original query
    • Attaches hints array when available
    • Returns ToolErrorResult with status='error'

Success Response Utilities:

  • createSuccessResult() - Create success response with query metadata
    • Automatic status classification (hasResults vs empty)
    • Preserves query context (researchGoal, reasoning)
    • Merges data payload with metadata
    • Tool-specific result formatting
    • Returns strongly-typed ToolSuccessResult

Type Guards:

  • hasError() - Type guard to check if object has error property
  • Validates ErrorObject interface with proper type narrowing

Refactored Tools:

  1. src/tools/github_fetch_content.ts (311 additions, 161 deletions)

    • Extracted buildApiRequest() - Convert query to API request
    • Extracted hasValidContent() - Check for valid content
    • Extracted createCodeAnalysisPrompt() - Generate sampling prompts
    • Extracted createSamplingContext() - Format sampling context
    • Extracted addSamplingIfEnabled() - Add AI code analysis
    • Uses new utility functions for consistent error handling
  2. src/tools/github_search_code.ts (180 additions, 106 deletions)

    • Extracted extractOwnerAndRepo() - Parse nameWithOwner format
    • Extracted getNameWithOwner() - Extract repository info from API
    • Cleaner file filtering and text match processing
    • Uses new utility functions for success/error handling
  3. src/tools/github_search_repos.ts (211 additions, 118 deletions)

    • Extracted hasValidTopics() - Check for valid topic searches
    • Extracted hasValidKeywords() - Check for valid keyword searches
    • Extracted createSearchReasoning() - Generate search-specific reasoning
    • Improved query expansion for topics + keywords searches
    • Uses new utility functions for consistent responses
  4. src/tools/github_search_pull_requests.ts (233 additions, 126 deletions)

    • Extracted hasQueryLengthError() - Validate query length
    • Extracted hasValidSearchParams() - Validate search parameters
    • Extracted addValidationError() - Attach validation errors to queries
    • Better validation with per-query error tracking
    • Uses new utility functions for error handling
  5. src/tools/github_view_repo_structure.ts (referenced but not shown in diff)

    • Similar refactoring to use new utility patterns

5. GitHub API Client Updates

File: src/github/client.ts (11 additions, 5 deletions)

Updated Throttling Configuration:

  • Changed onRateLimit to return false (was retryCount === 0)
  • Changed onSecondaryRateLimit to return false (was retryCount === 0)
  • Rationale: Fail immediately on rate limits instead of automatic retries
  • Benefit: Faster error reporting to users, no hidden delays
  • Added: Clear documentation explaining rate limit strategy

6. GitHub API Module Refactoring

File: src/github/codeSearch.ts (17 additions, 6 deletions)

  • Updated imports to use centralized types
  • Added UserContext parameter support
  • Improved comment clarit...
Read more

6.3.0

03 Oct 14:08
0053afd

Choose a tag to compare

6.3.0

  • Add researchGoal
  • Improve production monitoring

6.2.0

28 Sep 23:04
c0d5bda

Choose a tag to compare

[6.2.0] - 2025-09-29 - Schema Refactoring & Context Improvements

MAJOR ENHANCEMENT: Schema Architecture Refactoring

Added

  • Centralized Schema Descriptions: New schemDescriptions.ts module consolidates all tool schema descriptions
    • Eliminates code duplication across individual schema files
    • Provides consistent, centralized parameter descriptions
    • Enables easier maintenance and updates of tool documentation
    • Supports structured categorization (scope, filters, processing, etc.)

Enhanced

  • GitHub API Parameter Cleanup: Removed deprecated and unused GitHub API parameters across all tools

    • Pull Request Search: Removed locked, review, checks, milestone, project, team-mentions, language, visibility, app parameters
    • Code Search: Removed language parameter (redundant with extension)
    • Repository Search: Removed language parameter for cleaner filtering
    • Parameter Renaming: getFileChangeswithContent for consistency and clarity
  • Schema Architecture Modernization: Complete refactoring of schema organization

    • Streamlined base schema with essential common fields only
    • Removed redundant schema definitions and imports
    • Improved type safety and validation consistency
    • Enhanced bulk query schema generation with tool name integration

Technical Improvements

  • Code Maintainability: Centralized descriptions reduce maintenance overhead by ~70%
  • API Compliance: Removed deprecated GitHub API parameters that were causing issues
  • Type Safety: Enhanced TypeScript types with better parameter validation
  • Test Coverage: Updated all tests to reflect schema changes while maintaining full coverage
  • Performance: Slight performance improvement through reduced schema complexity

Removed

  • Deprecated Parameters: Eliminated unused GitHub API parameters that were cluttering interfaces
  • Redundant Code: Removed duplicate schema definitions and descriptions
  • Legacy Imports: Cleaned up unused imports and dependencies

PRODUCTION IMPACT

Enhanced Developer Experience

  • Cleaner APIs: Simplified parameter sets make tools easier to use
  • Better Documentation: Centralized descriptions ensure consistency and clarity
  • Reduced Complexity: Fewer parameters reduce cognitive load for users
  • Improved Type Safety: Better TypeScript support with cleaner schemas

Technical Benefits

  • Maintainability: Centralized descriptions make updates much easier
  • API Compliance: Removal of deprecated parameters prevents future issues
  • Code Quality: Cleaner architecture with better separation of concerns
  • Test Reliability: Updated test suite ensures continued reliability

6.1.1.

27 Sep 16:25
5621b05

Choose a tag to compare

Major Changes

Schema Complexity Reduction
Removed verbose parameter: Eliminated verbose fields from all tool schemas and implementations, reducing schema complexity
Simplified base schemas: Consolidated BaseBulkQueryItemSchema and BaseSingleQuerySchema into unified BaseQuerySchema
Streamlined parameter validation: Replaced complex flexible array schemas with simpler SimpleArraySchema utilities
Parameter Naming Standardization
Code Search: queryTerms → keywordsToSearch for clearer semantic meaning
Repository Search: Added topicsToSearch as separate parameter from keywordsToSearch
Commit Search: Updated to use keywordsToSearch consistently across all search tools
Tool Query Optimization
Repository Search Enhancement: Implemented automatic query expansion for searches containing both topicsToSearch and keywordsToSearch
Separated Search Strategies: Topics-based and keywords-based searches now run as separate optimized queries
Improved Search Precision: Enhanced filtering capabilities with clearer parameter descriptions
Schema Descriptor Improvements
Enhanced Documentation: More actionable and specific parameter descriptions
Better Validation: Improved Zod schema definitions with clearer constraints
Reduced Ambiguity: Eliminated nullable/optional complexity in favor of clear, simple types

🚀 Performance Enhancements
Token Efficiency
Removed verbose-only fields from responses when not needed
Simplified schema definitions reduce parsing overhead
Optimized bulk query processing with automatic query expansion
Search Optimization
Repository search now automatically separates topics and keywords into optimized parallel queries
Removed is:not-fork filter from repository quality filters for broader discovery
Enhanced match scope controls for more precise filtering

🔄 Breaking Changes
Parameter Renaming: queryTerms → keywordsToSearch (affects all search tools)
Verbose Parameter Removal: No longer supported across all tools
Schema Structure: Simplified base schemas may affect direct schema usage

🎯 Key Benefits
Reduced Token Usage: Simplified schemas and removed verbose fields significantly reduce token consumption
Better Search Results: Separated topics/keywords searches provide more targeted and comprehensive results
Improved Developer Experience: Clearer parameter names and descriptions enhance usability
Enhanced Performance: Optimized query processing and automatic expansion improve response times
Maintainability: Simplified schema structure makes future enhancements easier

🔮 Future Impact
This optimization lays the groundwork for:
More efficient AI assistant interactions
Better search result quality through specialized query strategies
Easier tool extension and maintenance
Reduced operational costs through token efficiency

6.0.0

24 Sep 20:58
eb6dfed

Choose a tag to compare

🎯 Overview

This PR implements a comprehensive token reduction and optimization strategy for the Octocode MCP server, focusing on streamlining the codebase and improving response efficiency for AI assistants.

🔧 Major Changes

1. Tool Removal & Simplification

  • Removed NPM/Package Search Tools (packageSearch, npmViewPackage)

    • Eliminated entire NPM ecosystem support (src/npm/ directory)
    • Removed package search schemas and command builders
    • Updated documentation to reflect GitHub-only focus
  • Removed GitHub Commit Search Tool (githubSearchCommits)

    • Deleted commit search implementation and schemas
    • Simplified tool manifest and registration
    • Updated documentation references

2. Response Format Optimization

  • New Unified Response Structure (src/responses.ts)

    • Implemented createResponseFormat() with YAML output support
    • Added cleanJsonObject() for removing empty/null values
    • Integrated octocode-utils for YAML conversion
    • Streamlined security processing pipeline
  • Schema Modernization

    • Updated all tool schemas to use standardized ToolResponse interface
    • Simplified input/output types across all GitHub tools
    • Removed redundant metadata fields and verbose options

3. Caching System Overhaul

  • New withDataCache() Implementation
    • Replaced withCache() with more efficient data-specific caching
    • Improved cache key generation excluding verbose parameters
    • Added conditional caching based on success/failure status
    • Enhanced TTL management for different operation types

4. GitHub API Integration Improvements

  • File Operations Optimization (src/github/fileOperations.ts)

    • Updated parameter names (filePathpath)
    • Simplified response structures
    • Enhanced absolute path handling
    • Improved error handling and type safety
  • Pull Request Search Enhancement (src/github/pullRequestSearch.ts)

    • Streamlined PR data structures
    • Simplified repository references
    • Enhanced file change processing
    • Improved error response format
  • Repository Search Refinement (src/github/repoSearch.ts)

    • Removed redundant fields (language, forks, total_count)
    • Added intelligent sorting by stars and update date
    • Simplified repository data structure
    • Enhanced response consistency

5. Documentation & Configuration Updates

  • Updated Tool Documentation

    • Removed references to deleted tools in all docs
    • Updated feature matrices and capability descriptions
    • Simplified authentication requirements
    • Revised usage examples and configuration guides
  • Package Configuration

    • Updated package descriptions to reflect GitHub-only focus
    • Removed NPM-related keywords and dependencies
    • Updated tool manifests and registration
    • Cleaned up build configurations

6. Security & Performance Enhancements

  • Enhanced Content Processing

    • Improved sanitization pipeline integration
    • Better handling of structured data formats
    • Enhanced security warning management
    • Optimized token usage through YAML formatting
  • Simplified Architecture

    • Removed complex rate limiting systems
    • Streamlined audit logging integration
    • Eliminated redundant security layers
    • Improved error handling consistency

🎯 Benefits

Performance Improvements

  • 83% code reduction improves maintainability and reduces complexity
  • Optimized caching reduces API calls and improves response times
  • YAML output format provides better token efficiency for AI parsing
  • Streamlined data structures reduce memory usage and processing overhead

Developer Experience

  • Simplified tool interface with consistent input/output patterns
  • Better error handling with standardized response formats
  • Cleaner documentation focused on core GitHub functionality
  • Reduced cognitive load with fewer tools and clearer responsibilities

AI Assistant Integration

  • Token-optimized responses through YAML formatting and data cleaning
  • Consistent data structures across all tools for better parsing
  • Enhanced security processing with integrated sanitization
  • Improved context efficiency with streamlined metadata

🔄 Migration Impact

  • Breaking Changes: Removed packageSearch and githubSearchCommits tools
  • API Changes: Updated response formats for all remaining tools
  • Configuration: Updated environment variable examples and tool lists
  • Documentation: Comprehensive updates across all user-facing docs