mcp-rubber-duck 1.4.2 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,55 @@
1
+ ---
2
+ name: mcp-bridge-expert
3
+ description: Use this agent when the user needs help with MCP Bridge configuration, debugging connection issues to external MCP servers, understanding MCP Bridge architecture, or troubleshooting tool approval workflows. This includes setting up MCP_BRIDGE_ENABLED mode, configuring external MCP server connections, debugging mcp-client-manager issues, or understanding how ducks access external MCP servers as clients.\n\nExamples:\n\n<example>\nContext: User is having trouble connecting to an external MCP server\nuser: "My MCP Bridge isn't connecting to the filesystem MCP server"\nassistant: "Let me use the mcp-bridge-expert agent to help diagnose this connection issue."\n<Task tool call to mcp-bridge-expert>\n</example>\n\n<example>\nContext: User wants to understand MCP Bridge configuration\nuser: "How do I enable MCP Bridge and configure it to connect to multiple external servers?"\nassistant: "I'll use the mcp-bridge-expert agent to explain MCP Bridge configuration in detail."\n<Task tool call to mcp-bridge-expert>\n</example>\n\n<example>\nContext: User is debugging tool approval workflow\nuser: "The approval workflow for MCP tools isn't working correctly"\nassistant: "Let me engage the mcp-bridge-expert agent to help debug the approval service."\n<Task tool call to mcp-bridge-expert>\n</example>
4
+ model: inherit
5
+ color: blue
6
+ ---
7
+
8
+ You are an expert in MCP (Model Context Protocol) Bridge architecture and configuration, with deep knowledge of the mcp-rubber-duck project's implementation. You specialize in helping developers configure, debug, and optimize MCP Bridge functionality.
9
+
10
+ ## Your Expertise
11
+
12
+ - **MCP Protocol**: Deep understanding of the Model Context Protocol specification, client-server communication patterns, and tool invocation flows
13
+ - **MCP Bridge Architecture**: Expert knowledge of how MCP Bridge enables ducks to access external MCP servers as clients
14
+ - **Configuration**: Mastery of environment variables, JSON configuration, and provider setup
15
+ - **Debugging**: Systematic approach to diagnosing connection issues, authentication problems, and tool execution failures
16
+
17
+ ## Key Project Context
18
+
19
+ In this codebase:
20
+ - `MCP_SERVER=true` means this server runs AS an MCP server (for Claude Desktop)
21
+ - `MCP_BRIDGE_ENABLED=true` means ducks can ACCESS external MCP servers as clients
22
+ - `src/services/mcp-client-manager.ts` handles connections to external MCP servers
23
+ - `src/services/approval.ts` manages MCP tool approval workflows
24
+ - `src/providers/enhanced-manager.ts` adds MCP Bridge functionality to the provider manager
25
+
26
+ ## Your Approach
27
+
28
+ 1. **Clarify the Issue**: Ask targeted questions to understand whether the problem is configuration, connection, authentication, or tool execution related
29
+
30
+ 2. **Systematic Diagnosis**: Work through potential issues methodically:
31
+ - Environment variable configuration (MCP_BRIDGE_ENABLED, external server configs)
32
+ - Network connectivity to external MCP servers
33
+ - Authentication and API key issues
34
+ - Tool approval workflow state
35
+ - Client manager initialization and connection lifecycle
36
+
37
+ 3. **Provide Concrete Solutions**: Give specific configuration snippets, debugging commands, and code examples using the project's patterns
38
+
39
+ 4. **Explain the Why**: Help users understand the MCP Bridge architecture so they can troubleshoot future issues independently
40
+
41
+ ## Response Guidelines
42
+
43
+ - Always use `.js` extensions when referencing imports (ESM module requirement)
44
+ - Reference specific files and functions in the codebase when relevant
45
+ - Provide example environment variable configurations when helping with setup
46
+ - When debugging, suggest checking logs with `LOG_LEVEL=debug`
47
+ - Distinguish clearly between MCP_SERVER mode (being a server) and MCP_BRIDGE_ENABLED (being a client to other servers)
48
+
49
+ ## Quality Checks
50
+
51
+ Before finalizing your response:
52
+ - Verify any file paths or code references against the known project structure
53
+ - Ensure configuration examples use valid environment variable naming (CUSTOM_{NAME}_{FIELD} pattern)
54
+ - Confirm your advice aligns with the ESM module patterns used in the project
55
+ - If uncertain about implementation details, acknowledge this and suggest where to look in the code
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: provider-tester
3
+ description: Use this agent when you need to test, debug, or validate LLM provider configurations. This includes verifying API keys work correctly, checking provider connectivity, testing model availability, debugging authentication issues, validating base URLs for custom providers, or troubleshooting why a specific provider isn't responding as expected.\n\nExamples:\n\n<example>\nContext: User has just added a new provider configuration and wants to verify it works.\nuser: "I just added my Groq API key, can you check if it's working?"\nassistant: "I'll use the provider-tester agent to validate your Groq configuration."\n<Task tool call to provider-tester agent>\n</example>\n\n<example>\nContext: User is getting errors from a provider and needs help debugging.\nuser: "My OpenAI calls are failing with a 401 error"\nassistant: "Let me launch the provider-tester agent to diagnose this authentication issue."\n<Task tool call to provider-tester agent>\n</example>\n\n<example>\nContext: User wants to test multiple providers before using them in production.\nuser: "Can you test all my configured providers and tell me which ones are working?"\nassistant: "I'll use the provider-tester agent to run a comprehensive health check on all your providers."\n<Task tool call to provider-tester agent>\n</example>\n\n<example>\nContext: User is setting up a custom OpenAI-compatible provider.\nuser: "I'm trying to configure a custom provider with base URL https://api.example.com/v1 but it's not connecting"\nassistant: "I'll have the provider-tester agent investigate your custom provider configuration and connectivity."\n<Task tool call to provider-tester agent>\n</example>
4
+ model: inherit
5
+ color: orange
6
+ ---
7
+
8
+ You are an expert LLM provider integration specialist with deep knowledge of OpenAI-compatible APIs, authentication mechanisms, and network debugging. Your role is to systematically test, validate, and troubleshoot LLM provider configurations.
9
+
10
+ ## Your Expertise
11
+
12
+ - OpenAI API and compatible implementations (Azure OpenAI, Groq, Together, Anyscale, etc.)
13
+ - API key validation and authentication flows
14
+ - Network connectivity diagnosis
15
+ - Rate limiting and quota issues
16
+ - Model availability and capability verification
17
+ - Custom provider configuration (base URLs, headers, model names)
18
+
19
+ ## Testing Methodology
20
+
21
+ When testing providers, follow this systematic approach:
22
+
23
+ ### 1. Configuration Validation
24
+ - Check that required fields are present (API key, base URL if custom)
25
+ - Verify API key format matches expected pattern for the provider
26
+ - Validate base URL is properly formatted and reachable
27
+ - Confirm model names are valid for the provider
28
+
29
+ ### 2. Connectivity Testing
30
+ - Test basic network connectivity to the provider endpoint
31
+ - Verify SSL/TLS configuration is correct
32
+ - Check for proxy or firewall issues
33
+
34
+ ### 3. Authentication Testing
35
+ - Make a minimal API call to verify credentials
36
+ - Distinguish between invalid keys vs expired keys vs quota exceeded
37
+ - Check for scope/permission issues
38
+
39
+ ### 4. Functional Testing
40
+ - Send a simple completion request to verify end-to-end functionality
41
+ - Test with the configured default model
42
+ - Verify response format is as expected
43
+
44
+ ## Environment Variable Patterns
45
+
46
+ For this project, providers are configured via:
47
+ - Standard keys: `OPENAI_API_KEY`, `GEMINI_API_KEY`, `GROQ_API_KEY`
48
+ - Custom providers: `CUSTOM_{NAME}_API_KEY`, `CUSTOM_{NAME}_BASE_URL`, `CUSTOM_{NAME}_DEFAULT_MODEL`
49
+
50
+ ## Diagnostic Output
51
+
52
+ When reporting results, provide:
53
+
54
+ 1. **Status Summary**: Clear pass/fail for each provider tested
55
+ 2. **Error Details**: Specific error messages and codes when failures occur
56
+ 3. **Root Cause Analysis**: Most likely cause of any issues
57
+ 4. **Remediation Steps**: Concrete actions to fix identified problems
58
+
59
+ ## Common Issues to Check
60
+
61
+ - API key typos or extra whitespace
62
+ - Expired or revoked API keys
63
+ - Incorrect base URL for custom providers (missing /v1 suffix)
64
+ - Model name mismatches
65
+ - Rate limiting or quota exhaustion
66
+ - Region-specific endpoint issues
67
+ - Missing required headers for certain providers
68
+
69
+ ## Response Format
70
+
71
+ Structure your responses as:
72
+
73
+ ```
74
+ ## Provider Test Results
75
+
76
+ ### [Provider Name]
77
+ - **Status**: ✅ Working / ❌ Failed / ⚠️ Partial
78
+ - **Details**: [What was tested and observed]
79
+ - **Issues**: [If any, with specific error info]
80
+ - **Fix**: [Recommended remediation if applicable]
81
+ ```
82
+
83
+ ## Best Practices
84
+
85
+ - Always start with the least invasive tests before making API calls
86
+ - Use minimal token requests when testing to conserve quota
87
+ - Never expose or log full API keys - mask all but last 4 characters
88
+ - Test one thing at a time to isolate issues
89
+ - Provide actionable next steps, not just problem descriptions
90
+
91
+ You are thorough, methodical, and always explain your findings in terms the user can act upon. When you identify issues, you provide specific solutions rather than vague suggestions.
@@ -0,0 +1,124 @@
1
+ ---
2
+ name: tool-reviewer
3
+ description: Use this agent when you need to review MCP tool implementations for correctness, adherence to patterns, and best practices. This includes verifying tool response formats, input validation, error handling, and integration with the server. Examples:\n\n<example>\nContext: User has just implemented a new MCP tool and wants it reviewed before committing.\nuser: "I just finished implementing the summarize-conversation tool, can you check it?"\nassistant: "Let me use the tool-reviewer agent to review your new tool implementation."\n<commentary>\nSince the user has completed a new tool implementation and wants feedback, use the tool-reviewer agent to analyze the code for correctness and pattern adherence.\n</commentary>\n</example>\n\n<example>\nContext: User is refactoring existing tools and wants validation.\nuser: "I've updated the ask-duck tool to support streaming, please review my changes"\nassistant: "I'll launch the tool-reviewer agent to examine your streaming implementation changes."\n<commentary>\nThe user has modified an existing tool with new functionality. Use the tool-reviewer agent to ensure the changes follow established patterns and don't break existing behavior.\n</commentary>\n</example>\n\n<example>\nContext: User is debugging a tool that's returning unexpected results.\nuser: "The consensus tool keeps returning isError: true even on success"\nassistant: "Let me have the tool-reviewer agent analyze the consensus tool implementation to identify the issue."\n<commentary>\nThe user is experiencing a bug with tool behavior. Use the tool-reviewer agent to review the implementation and identify pattern violations or errors.\n</commentary>\n</example>
4
+ model: inherit
5
+ color: green
6
+ ---
7
+
8
+ You are an expert MCP (Model Context Protocol) tool implementation reviewer with deep knowledge of the MCP specification, TypeScript patterns, and the specific conventions used in this codebase.
9
+
10
+ ## Your Expertise
11
+
12
+ You specialize in reviewing MCP tool implementations for:
13
+ - Correctness against MCP protocol requirements
14
+ - Adherence to project-specific patterns
15
+ - Input validation completeness
16
+ - Error handling robustness
17
+ - Type safety and TypeScript best practices
18
+ - Integration consistency with the server architecture
19
+
20
+ ## Project-Specific Patterns You Enforce
21
+
22
+ ### Tool Response Format
23
+ All tools MUST return MCP-compliant responses:
24
+ ```typescript
25
+ // Success
26
+ return {
27
+ content: [{ type: 'text', text: 'response string' }],
28
+ };
29
+
30
+ // Error
31
+ return {
32
+ content: [{ type: 'text', text: 'Error: descriptive message' }],
33
+ isError: true,
34
+ };
35
+ ```
36
+
37
+ ### Import Requirements
38
+ ESM modules require `.js` extension in imports:
39
+ ```typescript
40
+ import { ProviderManager } from '../providers/manager.js'; // Correct
41
+ import { ProviderManager } from '../providers/manager'; // WRONG
42
+ ```
43
+
44
+ ### Tool Function Signature
45
+ Tools should follow this pattern:
46
+ ```typescript
47
+ export async function toolName(
48
+ dependency: DependencyType, // e.g., ProviderManager, ConversationManager
49
+ args: Record<string, unknown>
50
+ ): Promise<{ content: Array<{ type: string; text: string }>; isError?: boolean }>
51
+ ```
52
+
53
+ ### Input Validation
54
+ - Extract and type-cast arguments from `args`
55
+ - Validate required parameters exist
56
+ - Throw descriptive errors for missing/invalid inputs
57
+ - Consider edge cases (empty strings, null values, wrong types)
58
+
59
+ ## Review Checklist
60
+
61
+ When reviewing a tool, systematically verify:
62
+
63
+ 1. **Response Format Compliance**
64
+ - Returns `{ content: [{ type: 'text', text: string }] }`
65
+ - Sets `isError: true` on failures
66
+ - Never returns raw strings or non-compliant objects
67
+
68
+ 2. **Import Correctness**
69
+ - All imports use `.js` extension
70
+ - Dependencies are imported from correct paths
71
+
72
+ 3. **Input Validation**
73
+ - All required parameters are validated
74
+ - Type assertions are safe
75
+ - Error messages are descriptive
76
+
77
+ 4. **Error Handling**
78
+ - Try-catch blocks where async operations occur
79
+ - Errors are caught and returned in MCP format
80
+ - No unhandled promise rejections
81
+
82
+ 5. **Integration Points**
83
+ - Tool is registered in `getTools()` in `server.ts`
84
+ - JSON Schema for inputs is accurate and complete
85
+ - Switch case handler exists in `CallToolRequestSchema` handler
86
+
87
+ 6. **Type Safety**
88
+ - Proper TypeScript types used
89
+ - No unsafe `any` types without justification
90
+ - Return type matches MCP response format
91
+
92
+ 7. **Code Quality**
93
+ - Follows existing tool patterns in the codebase
94
+ - No code duplication that should be extracted
95
+ - Clear, maintainable logic
96
+
97
+ ## Output Format
98
+
99
+ Provide your review in this structure:
100
+
101
+ ### Summary
102
+ Brief overall assessment (1-2 sentences)
103
+
104
+ ### Issues Found
105
+ List each issue with:
106
+ - **Severity**: Critical / Warning / Suggestion
107
+ - **Location**: File and line reference
108
+ - **Problem**: What's wrong
109
+ - **Fix**: How to correct it
110
+
111
+ ### Pattern Compliance
112
+ Checklist of patterns verified (✅ or ❌ with explanation)
113
+
114
+ ### Recommendations
115
+ Optional improvements that aren't strictly required but would enhance the implementation
116
+
117
+ ## Behavior Guidelines
118
+
119
+ - Be thorough but pragmatic - focus on real issues, not nitpicks
120
+ - Provide specific, actionable feedback with code examples
121
+ - When patterns are followed correctly, acknowledge it briefly
122
+ - If you need to see related files (server.ts for registration, other tools for pattern comparison), request them
123
+ - Prioritize issues by impact: protocol compliance > runtime errors > code quality
124
+ - Consider backward compatibility when suggesting changes to existing tools
@@ -111,10 +111,39 @@ jobs:
111
111
  sarif_file: hadolint-results.sarif
112
112
  category: 'hadolint'
113
113
 
114
+ test:
115
+ name: 🧪 Test Suite
116
+ runs-on: ubuntu-latest
117
+
118
+ steps:
119
+ - name: 📥 Checkout
120
+ uses: actions/checkout@v4
121
+
122
+ - name: 📦 Setup Node.js
123
+ uses: actions/setup-node@v4
124
+ with:
125
+ node-version: '20'
126
+ cache: 'npm'
127
+
128
+ - name: 📥 Install dependencies
129
+ run: npm ci
130
+
131
+ - name: 🔍 Lint
132
+ run: npm run lint
133
+
134
+ - name: 🏗️ Build
135
+ run: npm run build
136
+
137
+ - name: 🔬 Type check
138
+ run: npm run typecheck
139
+
140
+ - name: 🧪 Test
141
+ run: npm test
142
+
114
143
  quality-gates:
115
144
  name: 🚀 Quality Gates
116
145
  runs-on: ubuntu-latest
117
- needs: [security-scan, dependency-check, dockerfile-lint]
146
+ needs: [security-scan, dependency-check, dockerfile-lint, test]
118
147
  if: always()
119
148
 
120
149
  steps:
@@ -141,5 +170,11 @@ jobs:
141
170
  echo "❌ **Dockerfile Lint:** Failed" >> $GITHUB_STEP_SUMMARY
142
171
  fi
143
172
 
173
+ if [ "${{ needs.test.result }}" == "success" ]; then
174
+ echo "✅ **Test Suite:** Passed" >> $GITHUB_STEP_SUMMARY
175
+ else
176
+ echo "❌ **Test Suite:** Failed" >> $GITHUB_STEP_SUMMARY
177
+ fi
178
+
144
179
  echo "" >> $GITHUB_STEP_SUMMARY
145
180
  echo "📋 **View detailed results in the Security tab**" >> $GITHUB_STEP_SUMMARY
@@ -45,9 +45,8 @@ jobs:
45
45
  - name: 🔬 Type check
46
46
  run: npm run typecheck
47
47
 
48
- # Enable when tests are working
49
- # - name: 🧪 Test
50
- # run: npm test
48
+ - name: 🧪 Test
49
+ run: npm test
51
50
 
52
51
  security-scan:
53
52
  name: 🔍 Security Scan
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [1.5.1](https://github.com/nesquikm/mcp-rubber-duck/compare/v1.5.0...v1.5.1) (2026-01-02)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * update qs to resolve CVE (GHSA-6rw7-vpxm-498p) ([3c15c66](https://github.com/nesquikm/mcp-rubber-duck/commit/3c15c66a3c81c741e38d9cc22d8df5e6537ba7d9))
7
+
8
+ # [1.5.0](https://github.com/nesquikm/mcp-rubber-duck/compare/v1.4.2...v1.5.0) (2025-12-08)
9
+
10
+
11
+ ### Features
12
+
13
+ * add Claude Code agent definitions for project-specific tasks ([1843c1b](https://github.com/nesquikm/mcp-rubber-duck/commit/1843c1b1b970155d37cf79925b4fd674eade28bd))
14
+
1
15
  ## [1.4.2](https://github.com/nesquikm/mcp-rubber-duck/compare/v1.4.1...v1.4.2) (2025-12-08)
2
16
 
3
17
 
package/CLAUDE.md ADDED
@@ -0,0 +1,125 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Project Overview
6
+
7
+ MCP Rubber Duck is an MCP (Model Context Protocol) server that bridges to multiple OpenAI-compatible LLMs. It provides "rubber duck debugging" with AI - query multiple LLM providers simultaneously and get different perspectives.
8
+
9
+ ## Common Commands
10
+
11
+ ```bash
12
+ npm run build # Build TypeScript to dist/
13
+ npm run dev # Development with watch mode
14
+ npm test # Run all tests
15
+ npm test -- tests/config.test.ts # Single test file
16
+ npm test -- --testNamePattern="should load config" # Specific test
17
+ npm run lint # ESLint
18
+ npm run format # Prettier
19
+ npm run typecheck # Type check without emit
20
+ ```
21
+
22
+ ## Architecture
23
+
24
+ ### Entry Points
25
+ - `src/index.ts` - Application entry, creates `RubberDuckServer` and handles process lifecycle
26
+ - `src/server.ts` - Main MCP server implementation (`RubberDuckServer` class)
27
+
28
+ ### Core Layers
29
+
30
+ **Configuration** (`src/config/`)
31
+ - `config.ts` - `ConfigManager` loads config from JSON file or environment variables
32
+ - `types.ts` - Zod schemas and TypeScript types (types inferred via `z.infer<>`)
33
+
34
+ **Providers** (`src/providers/`)
35
+ - `manager.ts` - `ProviderManager` manages all LLM provider connections
36
+ - `provider.ts` - `DuckProvider` wraps OpenAI SDK for individual provider calls
37
+ - `enhanced-manager.ts` - `EnhancedProviderManager` adds MCP Bridge functionality
38
+
39
+ **Services** (`src/services/`)
40
+ - `conversation.ts` - `ConversationManager` maintains chat context
41
+ - `cache.ts` - `ResponseCache` with TTL-based caching
42
+ - `health.ts` - `HealthMonitor` checks provider availability
43
+ - `mcp-client-manager.ts` - Connects to external MCP servers (for MCP Bridge)
44
+ - `approval.ts` - MCP tool approval workflow
45
+ - `consensus.ts` - Multi-agent voting and consensus logic
46
+
47
+ **Tools** (`src/tools/`)
48
+ Each file exports a tool handler function. See "Adding New Tools" below.
49
+
50
+ ## Key Patterns
51
+
52
+ ### ESM Modules
53
+ Project uses ES modules (`"type": "module"`). **Always use `.js` extension in imports**, even for TypeScript files:
54
+ ```typescript
55
+ import { ProviderManager } from '../providers/manager.js'; // Correct
56
+ import { ProviderManager } from '../providers/manager'; // Wrong
57
+ ```
58
+
59
+ ### Tool Response Format
60
+ All tools return MCP-compliant response:
61
+ ```typescript
62
+ return {
63
+ content: [{ type: 'text', text: 'response string' }],
64
+ };
65
+ // On error:
66
+ return {
67
+ content: [{ type: 'text', text: 'Error: ...' }],
68
+ isError: true,
69
+ };
70
+ ```
71
+
72
+ ### Adding New Tools
73
+ 1. Create `src/tools/my-tool.ts`:
74
+ ```typescript
75
+ import { ProviderManager } from '../providers/manager.js';
76
+
77
+ export async function myTool(
78
+ providerManager: ProviderManager, // Dependencies vary per tool
79
+ args: Record<string, unknown>
80
+ ) {
81
+ const { prompt } = args as { prompt?: string };
82
+ if (!prompt) throw new Error('prompt is required');
83
+
84
+ const response = await providerManager.askDuck(undefined, prompt, {});
85
+ return { content: [{ type: 'text', text: response.content }] };
86
+ }
87
+ ```
88
+ 2. In `src/server.ts`:
89
+ - Import: `import { myTool } from './tools/my-tool.js';`
90
+ - Add to `getTools()` array with JSON Schema for inputs
91
+ - Add case to switch in `CallToolRequestSchema` handler
92
+
93
+ Note: Tool dependencies vary - some take `providerManager`, others take `conversationManager`, `cache`, `healthMonitor`, etc. Check existing tools for patterns.
94
+
95
+ ### Config Validation
96
+ Config uses Zod schemas in `src/config/types.ts`. When adding config options:
97
+ 1. Add to appropriate schema (e.g., `ConfigSchema`)
98
+ 2. Type is automatically inferred via `z.infer<typeof ConfigSchema>`
99
+
100
+ ### MCP Terminology
101
+ - `MCP_SERVER=true` - This server runs AS an MCP server (for Claude Desktop)
102
+ - `MCP_BRIDGE_ENABLED=true` - Ducks can ACCESS external MCP servers as clients
103
+
104
+ ## Environment Variables
105
+
106
+ ```bash
107
+ # Provider API keys
108
+ OPENAI_API_KEY=sk-...
109
+ GEMINI_API_KEY=...
110
+ GROQ_API_KEY=gsk_...
111
+
112
+ # Defaults
113
+ DEFAULT_PROVIDER=openai
114
+ DEFAULT_TEMPERATURE=0.7
115
+ LOG_LEVEL=info # debug, info, warn, error
116
+
117
+ # MCP modes
118
+ MCP_SERVER=true # Run as MCP server
119
+ MCP_BRIDGE_ENABLED=true # Enable MCP Bridge feature
120
+
121
+ # Custom providers: CUSTOM_{NAME}_{FIELD}
122
+ CUSTOM_MYAPI_API_KEY=...
123
+ CUSTOM_MYAPI_BASE_URL=https://api.example.com/v1
124
+ CUSTOM_MYAPI_DEFAULT_MODEL=model-name
125
+ ```
@@ -1,5 +1,5 @@
1
1
  import OpenAI from 'openai';
2
- import { ChatOptions, ChatResponse, ProviderOptions, StreamChunk, ModelInfo, OpenAIChatParams, OpenAIChatResponse } from './types.js';
2
+ import { ChatOptions, ChatResponse, ProviderOptions, ModelInfo, OpenAIChatParams, OpenAIChatResponse } from './types.js';
3
3
  import { ConversationMessage } from '../config/types.js';
4
4
  export declare class DuckProvider {
5
5
  protected client: OpenAI;
@@ -10,7 +10,6 @@ export declare class DuckProvider {
10
10
  protected supportsTemperature(model: string): boolean;
11
11
  chat(options: ChatOptions): Promise<ChatResponse>;
12
12
  protected createChatCompletion(baseParams: Partial<OpenAIChatParams>): Promise<OpenAIChatResponse>;
13
- chatStream(options: ChatOptions): AsyncGenerator<StreamChunk>;
14
13
  healthCheck(): Promise<boolean>;
15
14
  protected prepareMessages(messages: ConversationMessage[], systemPrompt?: string): Array<{
16
15
  role: string;
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAiB,MAAM,YAAY,CAAC;AACrJ,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,qBAAa,YAAY;IACvB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;gBAEZ,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;IAapE,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAU/C,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;cAoCvC,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKjG,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC;IA6B9D,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAkCrC,SAAS,CAAC,eAAe,CACvB,QAAQ,EAAE,mBAAmB,EAAE,EAC/B,YAAY,CAAC,EAAE,MAAM,GACpB,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAoBrC,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAmCxC,OAAO;;;;;;;;CAUR"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAiB,MAAM,YAAY,CAAC;AACxI,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,qBAAa,YAAY;IACvB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;gBAEZ,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;IAapE,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAU/C,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;cAoCvC,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKlG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAkCrC,SAAS,CAAC,eAAe,CACvB,QAAQ,EAAE,mBAAmB,EAAE,EAC/B,YAAY,CAAC,EAAE,MAAM,GACpB,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAoBrC,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAmCxC,OAAO;;;;;;;;CAUR"}
@@ -61,31 +61,6 @@ export class DuckProvider {
61
61
  const params = { ...baseParams };
62
62
  return await this.client.chat.completions.create(params);
63
63
  }
64
- async *chatStream(options) {
65
- try {
66
- const messages = this.prepareMessages(options.messages, options.systemPrompt);
67
- const modelToUse = options.model || this.options.model;
68
- const streamParams = {
69
- model: modelToUse,
70
- messages: messages,
71
- stream: true,
72
- ...(this.supportsTemperature(modelToUse) && {
73
- temperature: options.temperature ?? this.options.temperature ?? 0.7
74
- })
75
- };
76
- const stream = await this.client.chat.completions.create(streamParams);
77
- for await (const chunk of stream) {
78
- const content = chunk.choices[0]?.delta?.content || '';
79
- const done = chunk.choices[0]?.finish_reason !== null;
80
- yield { content, done };
81
- }
82
- }
83
- catch (error) {
84
- logger.error(`Provider ${this.name} stream error:`, error);
85
- const errorMessage = error instanceof Error ? error.message : String(error);
86
- throw new Error(`Duck ${this.nickname} stream failed: ${errorMessage}`);
87
- }
88
- }
89
64
  async healthCheck() {
90
65
  try {
91
66
  const baseParams = {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"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"}
@@ -52,10 +52,6 @@ export interface ChatResponse {
52
52
  finishReason?: string;
53
53
  toolCalls?: ToolCall[];
54
54
  }
55
- export interface StreamChunk {
56
- content: string;
57
- done: boolean;
58
- }
59
55
  export type OpenAIChatParams = ChatCompletionCreateParamsNonStreaming;
60
56
  export type OpenAIMessage = ChatCompletionMessageParam;
61
57
  export type OpenAIChatResponse = ChatCompletion;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EACV,cAAc,EACd,0BAA0B,EAC1B,6BAA6B,EAC7B,sCAAsC,EACvC,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CACjF;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACf;AAGD,MAAM,MAAM,gBAAgB,GAAG,sCAAsC,CAAC;AACtE,MAAM,MAAM,aAAa,GAAG,0BAA0B,CAAC;AACvD,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAChD,MAAM,MAAM,cAAc,GAAG,6BAA6B,CAAC;AAG3D,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EACV,cAAc,EACd,0BAA0B,EAC1B,6BAA6B,EAC7B,sCAAsC,EACvC,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CACjF;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CACxB;AAGD,MAAM,MAAM,gBAAgB,GAAG,sCAAsC,CAAC;AACtE,MAAM,MAAM,aAAa,GAAG,0BAA0B,CAAC;AACvD,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAChD,MAAM,MAAM,cAAc,GAAG,6BAA6B,CAAC;AAG3D,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
package/dist/server.js CHANGED
@@ -116,7 +116,7 @@ export class RubberDuckServer {
116
116
  if (this.mcpEnabled && this.enhancedProviderManager) {
117
117
  return await this.handleCompareDucksWithMCP(args || {});
118
118
  }
119
- return await compareDucksTool(this.providerManager, this.cache, args || {});
119
+ return await compareDucksTool(this.providerManager, args || {});
120
120
  case 'duck_council':
121
121
  // Use enhanced provider manager if MCP is enabled
122
122
  if (this.mcpEnabled && this.enhancedProviderManager) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ProviderManager } from '../providers/manager.js';
2
- export declare function compareDucksTool(providerManager: ProviderManager, _cache: unknown, args: Record<string, unknown>): Promise<{
2
+ export declare function compareDucksTool(providerManager: ProviderManager, args: Record<string, unknown>): Promise<{
3
3
  content: {
4
4
  type: string;
5
5
  text: string;
@@ -1 +1 @@
1
- {"version":3,"file":"compare-ducks.d.ts","sourceRoot":"","sources":["../../src/tools/compare-ducks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI1D,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GA2D9B"}
1
+ {"version":3,"file":"compare-ducks.d.ts","sourceRoot":"","sources":["../../src/tools/compare-ducks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI1D,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GA2D9B"}
@@ -1,6 +1,6 @@
1
1
  import { duckArt } from '../utils/ascii-art.js';
2
2
  import { logger } from '../utils/logger.js';
3
- export async function compareDucksTool(providerManager, _cache, args) {
3
+ export async function compareDucksTool(providerManager, args) {
4
4
  const { prompt, providers, model } = args;
5
5
  if (!prompt) {
6
6
  throw new Error('Prompt is required');
@@ -1 +1 @@
1
- {"version":3,"file":"compare-ducks.js","sourceRoot":"","sources":["../../src/tools/compare-ducks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,eAAgC,EAChC,MAAe,EACf,IAA6B;IAE7B,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAIpC,CAAC;IAEF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAED,oCAAoC;IACpC,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAEnF,4BAA4B;IAC5B,IAAI,QAAQ,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC;IACpC,QAAQ,IAAI,WAAW,MAAM,OAAO,CAAC;IACrC,QAAQ,IAAI,6CAA6C,CAAC;IAE1D,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE,CAAC;QACrC,QAAQ,IAAI,QAAQ,YAAY,CAAC,QAAQ,OAAO,YAAY,CAAC,QAAQ,KAAK,CAAC;QAC3E,QAAQ,IAAI,yCAAyC,CAAC;QAEtD,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,QAAQ,IAAI,KAAK,YAAY,CAAC,OAAO,IAAI,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,QAAQ,IAAI,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC;YACxC,QAAQ,IAAI,eAAe,YAAY,CAAC,KAAK,EAAE,CAAC;YAEhD,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;gBACvB,QAAQ,IAAI,iBAAiB,YAAY,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACjE,CAAC;YACD,IAAI,YAAY,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;gBAC7B,QAAQ,IAAI,SAAS,YAAY,CAAC,OAAO,IAAI,CAAC;YAChD,CAAC;YACD,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;gBACxB,QAAQ,IAAI,cAAc,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,QAAQ,IAAI,MAAM,CAAC;IACrB,CAAC;IAED,cAAc;IACd,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;IACnF,QAAQ,IAAI,2CAA2C,CAAC;IACxD,QAAQ,IAAI,KAAK,YAAY,IAAI,SAAS,CAAC,MAAM,+BAA+B,CAAC;IAEjF,MAAM,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,MAAM,WAAW,YAAY,aAAa,CAAC,CAAC;IAE9E,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;aACf;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"compare-ducks.js","sourceRoot":"","sources":["../../src/tools/compare-ducks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,eAAgC,EAChC,IAA6B;IAE7B,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAIpC,CAAC;IAEF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAED,oCAAoC;IACpC,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAEnF,4BAA4B;IAC5B,IAAI,QAAQ,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC;IACpC,QAAQ,IAAI,WAAW,MAAM,OAAO,CAAC;IACrC,QAAQ,IAAI,6CAA6C,CAAC;IAE1D,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE,CAAC;QACrC,QAAQ,IAAI,QAAQ,YAAY,CAAC,QAAQ,OAAO,YAAY,CAAC,QAAQ,KAAK,CAAC;QAC3E,QAAQ,IAAI,yCAAyC,CAAC;QAEtD,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,QAAQ,IAAI,KAAK,YAAY,CAAC,OAAO,IAAI,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,QAAQ,IAAI,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC;YACxC,QAAQ,IAAI,eAAe,YAAY,CAAC,KAAK,EAAE,CAAC;YAEhD,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;gBACvB,QAAQ,IAAI,iBAAiB,YAAY,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACjE,CAAC;YACD,IAAI,YAAY,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;gBAC7B,QAAQ,IAAI,SAAS,YAAY,CAAC,OAAO,IAAI,CAAC;YAChD,CAAC;YACD,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;gBACxB,QAAQ,IAAI,cAAc,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,QAAQ,IAAI,MAAM,CAAC;IACrB,CAAC;IAED,cAAc;IACd,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;IACnF,QAAQ,IAAI,2CAA2C,CAAC;IACxD,QAAQ,IAAI,KAAK,YAAY,IAAI,SAAS,CAAC,MAAM,+BAA+B,CAAC;IAEjF,MAAM,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,MAAM,WAAW,YAAY,aAAa,CAAC,CAAC;IAE9E,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;aACf;SACF;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-rubber-duck",
3
- "version": "1.4.2",
3
+ "version": "1.5.1",
4
4
  "description": "An MCP server that bridges to multiple OpenAI-compatible LLMs - your AI rubber duck debugging panel",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -1,5 +1,5 @@
1
1
  import OpenAI from 'openai';
2
- import { ChatOptions, ChatResponse, ProviderOptions, StreamChunk, ModelInfo, OpenAIChatParams, OpenAIChatResponse, OpenAIMessage } from './types.js';
2
+ import { ChatOptions, ChatResponse, ProviderOptions, ModelInfo, OpenAIChatParams, OpenAIChatResponse, OpenAIMessage } from './types.js';
3
3
  import { ConversationMessage } from '../config/types.js';
4
4
  import { logger } from '../utils/logger.js';
5
5
 
@@ -73,35 +73,6 @@ export class DuckProvider {
73
73
  return await this.client.chat.completions.create(params);
74
74
  }
75
75
 
76
- async *chatStream(options: ChatOptions): AsyncGenerator<StreamChunk> {
77
- try {
78
- const messages = this.prepareMessages(options.messages, options.systemPrompt);
79
- const modelToUse = options.model || this.options.model;
80
-
81
- const streamParams = {
82
- model: modelToUse,
83
- messages: messages as OpenAIMessage[],
84
- stream: true as const,
85
- ...(this.supportsTemperature(modelToUse) && {
86
- temperature: options.temperature ?? this.options.temperature ?? 0.7
87
- })
88
- };
89
-
90
- const stream = await this.client.chat.completions.create(streamParams);
91
-
92
- for await (const chunk of stream) {
93
- const content = chunk.choices[0]?.delta?.content || '';
94
- const done = chunk.choices[0]?.finish_reason !== null;
95
-
96
- yield { content, done };
97
- }
98
- } catch (error: unknown) {
99
- logger.error(`Provider ${this.name} stream error:`, error);
100
- const errorMessage = error instanceof Error ? error.message : String(error);
101
- throw new Error(`Duck ${this.nickname} stream failed: ${errorMessage}`);
102
- }
103
- }
104
-
105
76
  async healthCheck(): Promise<boolean> {
106
77
  try {
107
78
  const baseParams: Partial<OpenAIChatParams> = {
@@ -58,11 +58,6 @@ export interface ChatResponse {
58
58
  toolCalls?: ToolCall[];
59
59
  }
60
60
 
61
- export interface StreamChunk {
62
- content: string;
63
- done: boolean;
64
- }
65
-
66
61
  // OpenAI API parameter types
67
62
  export type OpenAIChatParams = ChatCompletionCreateParamsNonStreaming;
68
63
  export type OpenAIMessage = ChatCompletionMessageParam;
package/src/server.ts CHANGED
@@ -157,7 +157,7 @@ export class RubberDuckServer {
157
157
  if (this.mcpEnabled && this.enhancedProviderManager) {
158
158
  return await this.handleCompareDucksWithMCP(args || {});
159
159
  }
160
- return await compareDucksTool(this.providerManager, this.cache, args || {});
160
+ return await compareDucksTool(this.providerManager, args || {});
161
161
 
162
162
  case 'duck_council':
163
163
  // Use enhanced provider manager if MCP is enabled
@@ -4,7 +4,6 @@ import { logger } from '../utils/logger.js';
4
4
 
5
5
  export async function compareDucksTool(
6
6
  providerManager: ProviderManager,
7
- _cache: unknown,
8
7
  args: Record<string, unknown>
9
8
  ) {
10
9
  const { prompt, providers, model } = args as {