Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
187 changes: 14 additions & 173 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,177 +1,18 @@
# =============================================================================
# VIBE CODER MCP SERVER ENVIRONMENT CONFIGURATION
# =============================================================================
# This file contains all environment variables used by the Vibe Coder MCP Server.
# Copy this file to .env and configure the values according to your setup.
# Vibe Coder MCP Configuration
# Generated by setup wizard

# =============================================================================
# REQUIRED CONFIGURATION
# =============================================================================
# Required: Your OpenRouter API key
OPENROUTER_API_KEY="YOUR_OPENROUTER_API_KEY_HERE"

# OpenRouter API Configuration (REQUIRED)
OPENROUTER_API_KEY=YOUR_OPENROUTER_API_KEY_HERE
# Get your API key from: https://openrouter.ai/
# Directory Configuration
VIBE_CODER_OUTPUT_DIR="./VibeCoderOutput"

# =============================================================================
# OPTIONAL LLM MODEL CONFIGURATION
# =============================================================================
# Legacy Directory Configuration (Fallbacks)
CODE_MAP_ALLOWED_DIR="."
VIBE_TASK_MANAGER_READ_DIR="."
VIBE_TASK_MANAGER_SECURITY_MODE="strict"

# OpenRouter Base URL (default: https://openrouter.ai/api/v1)
# OPENROUTER_BASE_URL="https://openrouter.ai/api/v1"

# Preferred models for different tasks
# GEMINI_MODEL="google/gemini-2.5-flash-preview-05-20"
# PERPLEXITY_MODEL="perplexity/sonar-deep-research"

# =============================================================================
# SERVER CONFIGURATION
# =============================================================================

# Application Environment (development, production, test)
# NODE_ENV="production"

# Logging Configuration
# LOG_LEVEL="info"

# SSE Server Port (default: 3000)
# SSE_PORT=3000

# HTTP Agent Port (default: 3011)
# HTTP_AGENT_PORT=3011

# =============================================================================
# CLI CONFIGURATION
# =============================================================================

# CLI Output Format (text, json, yaml)
# VIBE_CLI_DEFAULT_FORMAT="text"

# CLI Verbosity Level (quiet, normal, verbose)
# VIBE_CLI_VERBOSITY="normal"

# Enable CLI Colors (true, false)
# VIBE_CLI_COLORS="true"

# CLI Session Persistence
# VIBE_CLI_PERSIST_SESSIONS="true"

# Setup Wizard Configuration
# VIBE_SETUP_AUTO_RUN="true"
# VIBE_SETUP_SKIP_VALIDATION="false"

# =============================================================================
# 🆕 UNIFIED PROJECT ROOT CONFIGURATION (v0.2.4+) - RECOMMENDED
# =============================================================================

# Single variable for all project operations (replaces separate tool configurations)
# Set this to your project's root directory for unified configuration across all tools
# VIBE_PROJECT_ROOT="/path/to/your/project"

# Enable automatic project root detection for CLI users
# Set to "true" for CLI usage (zero configuration), "false" for MCP client usage
# VIBE_USE_PROJECT_ROOT_AUTO_DETECTION="true"

# =============================================================================
# DIRECTORY CONFIGURATION
# =============================================================================

# Base output directory for all tools (default: ./VibeCoderOutput)
# VIBE_CODER_OUTPUT_DIR="/path/to/your/output/directory"

# LLM Configuration File Path (default: ./llm_config.json)
# LLM_CONFIG_PATH="/absolute/path/to/llm_config.json"

# Port Allocator Instance Tracking Directory (default: OS temp directory)
# VIBE_CODER_INSTANCE_DIR="/path/to/your/output/directory/.temp/instances"

# =============================================================================
# LEGACY DIRECTORY CONFIGURATION (Still Supported for Backward Compatibility)
# =============================================================================
# These variables are used as fallbacks if VIBE_PROJECT_ROOT is not set

# Task Manager Read Directory (for file operations)
# VIBE_TASK_MANAGER_READ_DIR="/path/to/your/project/directory"

# Code Map Allowed Directory (for code analysis)
# CODE_MAP_ALLOWED_DIR="/path/to/your/codebase/directory"

# =============================================================================
# SECURITY CONFIGURATION
# =============================================================================

# Security Features
# VIBE_SECURITY_ENABLED="true"
# VIBE_SECURITY_STRICT_MODE="true"
# VIBE_SECURITY_LOG_VIOLATIONS="true"

# Path Security
# VIBE_PATH_SECURITY_ENABLED="true"
# VIBE_PATH_ALLOW_SYMLINKS="false"

# Data Sanitization
# VIBE_DATA_SANITIZATION_ENABLED="true"

# Lock Management
# VIBE_LOCK_TIMEOUT="30000"
# VIBE_DEADLOCK_DETECTION="true"

# Performance Monitoring
# VIBE_SECURITY_PERFORMANCE_THRESHOLD="50"

# =============================================================================
# FEATURE FLAGS
# =============================================================================

# Code Map Generator Features
# ENHANCED_FUNCTION_DETECTION="true"
# CONTEXT_ANALYSIS="true"
# FRAMEWORK_DETECTION="true"
# ROLE_IDENTIFICATION="true"
# HEURISTIC_NAMING="true"
# MEMORY_OPTIMIZATION="true"

# =============================================================================
# DEVELOPMENT & DEBUGGING
# =============================================================================

# Development Mode Settings (uncomment for development)
# NODE_ENV="development"
# LOG_LEVEL="debug"

# Performance Monitoring
# ENABLE_PERFORMANCE_MONITORING="true"

# =============================================================================
# CONFIGURATION NOTES
# =============================================================================
#
# 🆕 UNIFIED CONFIGURATION BENEFITS (v0.2.4+):
# - One variable (VIBE_PROJECT_ROOT) replaces multiple tool-specific variables
# - Zero configuration for CLI users with auto-detection enabled
# - Context-aware behavior for different usage modes (CLI vs MCP client)
# - Backward compatible with existing legacy configurations
#
# TRANSPORT-SPECIFIC BEHAVIOR:
# - CLI Transport: Uses auto-detection if enabled, otherwise VIBE_PROJECT_ROOT
# - STDIO/MCP Transport: Uses VIBE_PROJECT_ROOT from environment or client config
# - Legacy variables (CODE_MAP_ALLOWED_DIR, VIBE_TASK_MANAGER_READ_DIR) used as fallbacks
#
# DIRECTORY RESOLUTION PRIORITY:
# 1. Auto-detection (CLI only, if enabled)
# 2. VIBE_PROJECT_ROOT environment variable
# 3. MCP client configuration
# 4. Legacy environment variables
# 5. Current working directory (fallback)
#
# GENERAL NOTES:
# 1. OPENROUTER_API_KEY is required for the server to function
# 2. Most other variables have sensible defaults and are optional
# 3. Directory paths should be absolute paths for best compatibility
# 4. Security settings are enabled by default in production
# 5. Feature flags allow you to enable/disable specific functionality
# 6. For development, set NODE_ENV=development and LOG_LEVEL=debug
#
# For more information, see:
# - README.md: Complete setup guide
# - VIBE_CODER_MCP_SYSTEM_INSTRUCTIONS.md: System documentation
# - docs/: Additional documentation
# Advanced Configuration
OPENROUTER_BASE_URL="https://openrouter.ai/api/v1"
GEMINI_MODEL="google/gemini-2.5-flash-preview-05-20"
PERPLEXITY_MODEL="perplexity/sonar"
4 changes: 2 additions & 2 deletions .vibe-config.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"version": "0.3.1",
"setupDate": "2025-08-15T13:08:59.215Z",
"version": "1.0.0",
"setupDate": "2025-08-20T19:09:44.388Z",
"unified": {
"enabled": false
},
Expand Down
84 changes: 84 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,15 @@ Vibe Coder is an MCP (Model Context Protocol) server designed to supercharge you
- Better CI/CD preparation with proper version management
- Improved packaging workflow for NPM publication

### Latest Release

#### Version 0.3.5 - Enhanced CLI and Parameter Extraction
- **Major Hybrid Matcher Enhancements**: Complete parameter extraction logic for all 15 tools
- **CLI/REPL Improvements**: Interactive confirmation for low-confidence matches, improved input handling
- **Fixed Task-List-Generator**: Now auto-generates user stories when not provided
- **Enhanced Tool Matching**: Multi-strategy approach (keyword, pattern, semantic, LLM fallback)
- **Better User Experience**: Clear validation messages and job status polling

### Previous Releases

#### Version 0.2.8 - CLI Interactive Mode Fixes
Expand Down Expand Up @@ -208,6 +217,81 @@ vibe --help # Show all options
- **Configuration templates** provided in `src/config-templates/`
- Run `vibe --setup` manually to reconfigure at any time

## 🎯 MCP Client Integration (Claude Desktop, Cursor, Cline AI)

### Quick Integration Guide

Vibe-Coder MCP integrates seamlessly with any MCP-compatible client. Here's how to configure it:

#### Option 1: Using NPX (Recommended)
In your MCP client's server configuration dialog:
- **Server Name**: `vibe-coder-mcp`
- **Command/URL**: `npx`
- **Arguments**: `vibe-coder-mcp`
- **Environment Variables**:
- `OPENROUTER_API_KEY`: Your OpenRouter API key (required)
- `VIBE_PROJECT_ROOT`: `/path/to/your/project` (required)
- `LOG_LEVEL`: `info` (optional)
- `NODE_ENV`: `production` (optional)

#### Option 2: Global Installation
```bash
# First install globally
npm install -g vibe-coder-mcp
```
Then configure:
- **Command/URL**: `vibe`
- **Arguments**: (leave empty)
- **Environment Variables**: Same as Option 1

#### Option 3: Node with Full Path
- **Command/URL**: `node`
- **Arguments**: `/path/to/node_modules/vibe-coder-mcp/build/index.js`
- **Environment Variables**: Same as Option 1

### Claude Desktop Specific Configuration

For Claude Desktop users, add this to your `claude_desktop_config.json`:

```json
{
"mcpServers": {
"vibe-coder-mcp": {
"command": "npx",
"args": ["vibe-coder-mcp"],
"env": {
"OPENROUTER_API_KEY": "your-openrouter-api-key",
"VIBE_PROJECT_ROOT": "/path/to/your/project",
"LOG_LEVEL": "info",
"NODE_ENV": "production"
}
}
}
}
```

See `example_claude_desktop_config.json` for a complete example.

### Available Tools After Integration

Once configured, your MCP client will have access to:
- **vibe-task-manager**: AI-native task management with RDD methodology
- **research-manager**: Deep research using Perplexity integration
- **map-codebase**: Advanced codebase analysis (35+ languages)
- **curate-context**: Intelligent context curation for AI development
- **generate-prd**: Product requirements document generator
- **generate-user-stories**: User story generator
- **generate-task-list**: Task list generator
- **generate-fullstack-starter-kit**: Project scaffolding tool
- **run-workflow**: Multi-step workflow execution

### Testing Your Integration

After configuration, test by asking your AI assistant:
- "Use vibe to research React best practices"
- "Map the codebase for this project"
- "Generate a PRD for a task management app"

## 🆕 Unified Project Root Configuration

**New in v0.2.4+**: Simplified configuration with automatic project detection!
Expand Down
25 changes: 16 additions & 9 deletions VIBE_CODER_MCP_SYSTEM_INSTRUCTIONS.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Vibe Coder MCP System Instructions

**Version**: 0.3.1 (Production Ready)
**Version**: 0.3.5 (Production Ready)
**NPM Package**: `vibe-coder-mcp`
**Purpose**: Comprehensive system prompt for AI agents and MCP clients consuming the Vibe Coder MCP server
**Target Clients**: Claude Desktop, Augment, Cursor, Windsurf, Roo Code, Cline, and other MCP-compatible clients
**Last Updated**: August 2025 (NPM publication ready)
**Last Updated**: August 2025 (Enhanced CLI and Parameter Extraction)

## Installation

Expand Down Expand Up @@ -60,6 +60,13 @@ You are an AI assistant with access to the Vibe Coder MCP server, a comprehensiv
- **Agent Coordination and Communication**: Multi-agent task distribution and response handling
- **Asynchronous Job Processing**: Intelligent polling with adaptive intervals and rate limiting

**New in v0.3.5:**
- **Enhanced Hybrid Matcher**: Complete parameter extraction for all 15 tools with intelligent defaults
- **CLI/REPL Major Improvements**: Interactive confirmation for low-confidence matches, job status polling, enhanced input handling
- **Parameter Validation Fixes**: Task-list-generator now generates default user stories when not provided
- **Improved Tool Matching**: Multi-strategy approach with keyword, pattern, semantic, and LLM fallback
- **Better Error Handling**: Clear validation messages and user-friendly feedback

**Architecture Evolution (v2.4.0):**
- **Testing Framework**: Complete migration from Jest to Vitest with @vitest/coverage-v8
- **Build System**: TypeScript ESM with NodeNext module resolution, outputs to `/build` directory
Expand Down Expand Up @@ -841,22 +848,22 @@ This section provides detailed instructions, examples, and natural language comm
**Input Parameters**:
```json
{
"description": "string (required) - Project or feature description",
"userStories": "string (optional) - User stories to break down into tasks"
"productDescription": "string (required) - Project or feature description (min 10 chars)",
"userStories": "string (required, auto-generated if not provided) - User stories to break down into tasks (min 20 chars)"
}
```

**Usage Examples**:
```json
// From feature description
// From feature description (userStories auto-generated)
{
"description": "Implement user authentication system with OAuth 2.0, JWT tokens, and role-based access control"
"productDescription": "Implement user authentication system with OAuth 2.0, JWT tokens, and role-based access control"
}

// From user stories
// With explicit user stories
{
"description": "E-commerce checkout process",
"userStories": "User stories for cart management, payment processing, and order confirmation"
"productDescription": "E-commerce checkout process",
"userStories": "As a customer, I want to review my cart before checkout. As a customer, I want multiple payment options. As a customer, I want to receive order confirmation."
}
```

Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 6 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
{
"name": "vibe-coder-mcp",
"version": "0.3.1",
"version": "0.3.5",
"description": "Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.",
"main": "build/index.js",
"type": "module",
"scripts": {
"build": "tsc && npm run copy-assets && npm run fix-permissions",
"copy-assets": "mkdir -p build/tools/vibe-task-manager && cp -r src/tools/vibe-task-manager/prompts build/tools/vibe-task-manager/",
"copy-assets": "npm run copy-prompts && npm run copy-grammars && npm run copy-templates",
"copy-prompts": "mkdir -p build/tools/vibe-task-manager && cp -r src/tools/vibe-task-manager/prompts build/tools/vibe-task-manager/",
"copy-grammars": "mkdir -p build/tools/code-map-generator && cp -r src/tools/code-map-generator/grammars build/tools/code-map-generator/",
"copy-templates": "mkdir -p build/tools/context-curator && cp -r src/tools/context-curator/templates build/tools/context-curator/",
"fix-permissions": "chmod +x build/unified-cli.js",
"start": "cross-env NODE_ENV=production LOG_LEVEL=info node build/index.js",
"start:sse": "cross-env NODE_ENV=production LOG_LEVEL=info node build/index.js --sse",
Expand Down Expand Up @@ -178,6 +181,7 @@
"workflows.json",
"src/config-templates/**/*",
"src/tools/fullstack-starter-kit-generator/templates/**/*",
"src/tools/context-curator/templates/**/*",
"src/config/prompt-optimization.yaml"
],
"repository": {
Expand Down
Loading