Skip to content

Commit 569441f

Browse files
committed
feat(context): enhance Claude contextual understanding with dynamic workflow guidance
- Enhanced server registration with rich description and capabilities metadata - Added dynamic context generation in BasePlugin.getToolDefinition() - Implemented category-aware workflow context and usage tips - All 28+ functions now automatically provide workflow guidance to Claude - Improves Claude's understanding of Houtini LM purpose and optimal usage patterns - Maintains JSON-RPC compatibility without emojis This enables Claude to better understand: - Context preservation strategy (save Claude for strategy, use Houtini LM for routine tasks) - Proper workflow patterns (Desktop Commander for files, Houtini LM for analysis) - Cost benefits (unlimited local generation, zero API costs) - Function categories and their best use cases
1 parent 06383b5 commit 569441f

File tree

2 files changed

+46
-5
lines changed

2 files changed

+46
-5
lines changed

src/index.ts

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,20 @@ class HoutiniLMServer {
3434
this.server = new Server(
3535
{
3636
name: 'houtini-lm',
37-
version: '1.0.0',
37+
version: '1.0.7',
38+
description: 'Local AI development companion - unlimited analysis and generation without API costs. Preserves Claude context by offloading routine tasks to local LM Studio.',
3839
},
3940
{
4041
capabilities: {
41-
tools: {},
42-
resources: {},
43-
prompts: {}
42+
tools: {
43+
description: 'Context preservation through local processing - use for routine tasks, save Claude for strategy'
44+
},
45+
resources: {
46+
description: 'Local LM Studio integration with unlimited processing'
47+
},
48+
prompts: {
49+
description: 'Three-stage prompting system with expert personas'
50+
}
4451
},
4552
}
4653
);

src/plugins/base-plugin.ts

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,47 @@ export abstract class BasePlugin implements IPromptPlugin {
7373
return result;
7474
}
7575

76+
/**
77+
* Get workflow context based on plugin category
78+
*/
79+
getWorkflowContext(): string {
80+
const contexts = {
81+
'analyze': 'Perfect for understanding complex code, identifying issues, and technical debt assessment',
82+
'generate': 'Ideal for creating production-ready code, tests, and documentation',
83+
'fun': 'Build games, art, and interactive experiences for learning and portfolios',
84+
'system': 'System diagnostics and function discovery',
85+
'custom': 'Flexible analysis and generation for any development task'
86+
};
87+
88+
return contexts[this.category] || 'Specialized development assistance';
89+
}
90+
91+
/**
92+
* Get usage tip based on plugin category
93+
*/
94+
getUsageTip(): string {
95+
const tips = {
96+
'analyze': 'Use Desktop Commander to read files, then pass content here for analysis',
97+
'generate': 'Generate unlimited iterations locally, then review with Claude',
98+
'fun': 'Perfect for learning advanced techniques through practical projects',
99+
'system': 'Start with health_check, use list_functions to explore capabilities',
100+
'custom': 'Provide clear instructions for any analysis or generation task'
101+
};
102+
103+
return tips[this.category] || 'Combine with other Houtini LM functions for complete workflows';
104+
}
105+
76106
/**
77107
* Get tool definition for MCP registration
78108
*/
79109
getToolDefinition(): any {
80110
return {
81111
name: this.name,
82-
description: this.description,
112+
description: `${this.description}
113+
114+
WORKFLOW: ${this.getWorkflowContext()}
115+
TIP: ${this.getUsageTip()}
116+
SAVES: Claude context for strategic decisions`,
83117
inputSchema: {
84118
type: 'object',
85119
properties: this.convertParametersToSchema(),

0 commit comments

Comments
 (0)