@sudosandwich/limps 2.2.0 → 2.4.0
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.
- package/README.md +103 -3
- package/dist/cli/config-cmd.d.ts +75 -0
- package/dist/cli/config-cmd.d.ts.map +1 -1
- package/dist/cli/config-cmd.js +329 -1
- package/dist/cli/config-cmd.js.map +1 -1
- package/dist/cli/init-project.d.ts.map +1 -1
- package/dist/cli/init-project.js +9 -0
- package/dist/cli/init-project.js.map +1 -1
- package/dist/cli/mcp-client-adapter.d.ts +77 -0
- package/dist/cli/mcp-client-adapter.d.ts.map +1 -0
- package/dist/cli/mcp-client-adapter.js +208 -0
- package/dist/cli/mcp-client-adapter.js.map +1 -0
- package/dist/cli/next-task.d.ts +36 -9
- package/dist/cli/next-task.d.ts.map +1 -1
- package/dist/cli/next-task.js +95 -26
- package/dist/cli/next-task.js.map +1 -1
- package/dist/cli.js +33 -17
- package/dist/cli.js.map +1 -1
- package/dist/commands/config/index.d.ts.map +1 -1
- package/dist/commands/config/index.js +1 -1
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/config/sync-mcp.d.ts +19 -0
- package/dist/commands/config/sync-mcp.d.ts.map +1 -0
- package/dist/commands/config/sync-mcp.js +149 -0
- package/dist/commands/config/sync-mcp.js.map +1 -0
- package/dist/commands/config/update.d.ts +14 -0
- package/dist/commands/config/update.d.ts.map +1 -0
- package/dist/commands/config/update.js +24 -0
- package/dist/commands/config/update.js.map +1 -0
- package/dist/commands/serve.d.ts +6 -0
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +14 -19
- package/dist/commands/serve.js.map +1 -1
- package/dist/components/Confirm.d.ts +13 -0
- package/dist/components/Confirm.d.ts.map +1 -0
- package/dist/components/Confirm.js +44 -0
- package/dist/components/Confirm.js.map +1 -0
- package/dist/config.d.ts +58 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +74 -0
- package/dist/config.js.map +1 -1
- package/dist/server-main.d.ts.map +1 -1
- package/dist/server-main.js +2 -2
- package/dist/server-main.js.map +1 -1
- package/dist/tools/process-doc.d.ts +7 -0
- package/dist/tools/process-doc.d.ts.map +1 -1
- package/dist/tools/process-doc.js +45 -26
- package/dist/tools/process-doc.js.map +1 -1
- package/dist/tools/process-docs.d.ts +12 -0
- package/dist/tools/process-docs.d.ts.map +1 -1
- package/dist/tools/process-docs.js +44 -25
- package/dist/tools/process-docs.js.map +1 -1
- package/dist/utils/llm-policy.d.ts +16 -0
- package/dist/utils/llm-policy.d.ts.map +1 -0
- package/dist/utils/llm-policy.js +25 -0
- package/dist/utils/llm-policy.js.map +1 -0
- package/dist/watcher.d.ts +9 -1
- package/dist/watcher.d.ts.map +1 -1
- package/dist/watcher.js +30 -1
- package/dist/watcher.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -153,6 +153,8 @@ limps <command> --help # Show command help
|
|
|
153
153
|
| `limps config remove <name>` | Unregister a project |
|
|
154
154
|
| `limps config set <path>` | Set current from config path |
|
|
155
155
|
| `limps config discover` | Find configs in default locations |
|
|
156
|
+
| `limps config update <name>` | Update project paths |
|
|
157
|
+
| `limps config sync-mcp` | Add projects to MCP client configs |
|
|
156
158
|
|
|
157
159
|
### Multi-Project Workflow
|
|
158
160
|
|
|
@@ -211,7 +213,15 @@ Create a `config.json` at the OS-specific location or specify a path:
|
|
|
211
213
|
"plansPath": "~/Documents/my-plans",
|
|
212
214
|
"docsPaths": ["~/Documents/my-plans"],
|
|
213
215
|
"fileExtensions": [".md"],
|
|
214
|
-
"dataPath": "~/Library/Application Support/limps/data"
|
|
216
|
+
"dataPath": "~/Library/Application Support/limps/data",
|
|
217
|
+
"scoring": {
|
|
218
|
+
"weights": {
|
|
219
|
+
"dependency": 40,
|
|
220
|
+
"priority": 30,
|
|
221
|
+
"workload": 30
|
|
222
|
+
},
|
|
223
|
+
"biases": {}
|
|
224
|
+
}
|
|
215
225
|
}
|
|
216
226
|
```
|
|
217
227
|
|
|
@@ -231,10 +241,11 @@ The server finds configuration in this order:
|
|
|
231
241
|
|
|
232
242
|
| Option | Type | Default | Description |
|
|
233
243
|
|--------|------|---------|-------------|
|
|
234
|
-
| `plansPath` | string | `./plans` | Primary directory for
|
|
235
|
-
| `docsPaths` | string[] | `[]` | Additional directories to index |
|
|
244
|
+
| `plansPath` | string | `./plans` | Primary directory for structured plans (contains `NNNN-name/` directories with agents, tasks, status tracking) |
|
|
245
|
+
| `docsPaths` | string[] | `[]` | Additional directories to index for search (any markdown, no structure required) |
|
|
236
246
|
| `fileExtensions` | string[] | `[".md"]` | File types to index |
|
|
237
247
|
| `dataPath` | string | `./data` | SQLite database location |
|
|
248
|
+
| `scoring` | object | required | Task scoring configuration for `get_next_task` (weights and biases) |
|
|
238
249
|
|
|
239
250
|
### Path Options
|
|
240
251
|
|
|
@@ -278,6 +289,41 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
|
|
|
278
289
|
}
|
|
279
290
|
```
|
|
280
291
|
|
|
292
|
+
### Claude Code
|
|
293
|
+
|
|
294
|
+
Add to `~/.claude/.mcp.json`:
|
|
295
|
+
|
|
296
|
+
```json
|
|
297
|
+
{
|
|
298
|
+
"mcpServers": {
|
|
299
|
+
"limps": {
|
|
300
|
+
"command": "npx",
|
|
301
|
+
"args": ["-y", "@sudosandwich/limps", "serve", "--config", "/path/to/config.json"]
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
### Automatic MCP Client Configuration
|
|
308
|
+
|
|
309
|
+
Instead of manually editing config files, use the CLI:
|
|
310
|
+
|
|
311
|
+
```bash
|
|
312
|
+
# Add all registered projects to all MCP clients
|
|
313
|
+
limps config sync-mcp
|
|
314
|
+
|
|
315
|
+
# Add to specific client only
|
|
316
|
+
limps config sync-mcp --client claude
|
|
317
|
+
limps config sync-mcp --client cursor
|
|
318
|
+
limps config sync-mcp --client claude-code
|
|
319
|
+
|
|
320
|
+
# Add specific projects
|
|
321
|
+
limps config sync-mcp --projects my-project,other-project
|
|
322
|
+
|
|
323
|
+
# Preview without writing
|
|
324
|
+
limps config sync-mcp --print
|
|
325
|
+
```
|
|
326
|
+
|
|
281
327
|
## Features
|
|
282
328
|
|
|
283
329
|
### MCP Tools (15 Tools)
|
|
@@ -337,6 +383,41 @@ Example response:
|
|
|
337
383
|
}
|
|
338
384
|
```
|
|
339
385
|
|
|
386
|
+
#### Scoring Biases
|
|
387
|
+
|
|
388
|
+
Biases are numeric adjustments added to the final score. Use them to promote or demote specific plans, personas, or statuses.
|
|
389
|
+
|
|
390
|
+
Supported bias keys:
|
|
391
|
+
|
|
392
|
+
| Bias Key | Description | Example |
|
|
393
|
+
|---------|-------------|---------|
|
|
394
|
+
| `plans` | Per-plan bias keyed by plan folder name | `"plans": { "0030-limps-scoring-weights": 20 }` |
|
|
395
|
+
| `personas.coder` | Bias for coder tasks | `"personas": { "coder": 10 }` |
|
|
396
|
+
| `personas.reviewer` | Bias for reviewer tasks | `"personas": { "reviewer": -10 }` |
|
|
397
|
+
| `personas.pm` | Bias for PM tasks | `"personas": { "pm": 5 }` |
|
|
398
|
+
| `personas.customer` | Bias for customer tasks | `"personas": { "customer": 5 }` |
|
|
399
|
+
| `statuses.GAP` | Bias for GAP tasks | `"statuses": { "GAP": 5 }` |
|
|
400
|
+
| `statuses.WIP` | Bias for WIP tasks | `"statuses": { "WIP": -5 }` |
|
|
401
|
+
| `statuses.BLOCKED` | Bias for BLOCKED tasks | `"statuses": { "BLOCKED": 10 }` |
|
|
402
|
+
|
|
403
|
+
Example:
|
|
404
|
+
```json
|
|
405
|
+
{
|
|
406
|
+
"scoring": {
|
|
407
|
+
"weights": {
|
|
408
|
+
"dependency": 40,
|
|
409
|
+
"priority": 30,
|
|
410
|
+
"workload": 30
|
|
411
|
+
},
|
|
412
|
+
"biases": {
|
|
413
|
+
"plans": { "0030-limps-scoring-weights": 20 },
|
|
414
|
+
"personas": { "reviewer": -10, "coder": 5 },
|
|
415
|
+
"statuses": { "GAP": 5 }
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
```
|
|
420
|
+
|
|
340
421
|
### RLM (Recursive Language Model) Support
|
|
341
422
|
|
|
342
423
|
Implements the [RLM pattern from MIT CSAIL](https://arxiv.org/abs/2512.24601) for programmatic document examination and recursive processing:
|
|
@@ -346,6 +427,25 @@ Implements the [RLM pattern from MIT CSAIL](https://arxiv.org/abs/2512.24601) fo
|
|
|
346
427
|
- **Parallel execution** - Cross-document analysis
|
|
347
428
|
- **Document extractors** - Markdown, YAML, Gherkin parsing
|
|
348
429
|
|
|
430
|
+
#### Sub-query LLM Gating
|
|
431
|
+
|
|
432
|
+
`process_doc` and `process_docs` only invoke LLM sub-queries when explicitly enabled. This keeps local workflows deterministic by default and avoids token spend unless requested.
|
|
433
|
+
|
|
434
|
+
- **Opt-in:** `allow_llm: true` is required to run `sub_query`
|
|
435
|
+
- **Policy:** `llm_policy: "auto"` (default) skips small results (under 800 bytes); `"force"` always runs
|
|
436
|
+
- **Skip metadata:** when skipped, responses include `sub_query_skipped` and `sub_query_reason`
|
|
437
|
+
|
|
438
|
+
Example:
|
|
439
|
+
```typescript
|
|
440
|
+
await process_doc({
|
|
441
|
+
path: 'plans/0001-feature/plan.md',
|
|
442
|
+
code: 'extractFeatures(doc.content)',
|
|
443
|
+
sub_query: 'Summarize each feature',
|
|
444
|
+
allow_llm: true,
|
|
445
|
+
llm_policy: 'force'
|
|
446
|
+
});
|
|
447
|
+
```
|
|
448
|
+
|
|
349
449
|
### Obsidian Vault Compatibility
|
|
350
450
|
|
|
351
451
|
limps is compatible with Obsidian vaults. Simply open your `plans/` directory as an Obsidian vault to get a visual editor for your planning documents:
|
package/dist/cli/config-cmd.d.ts
CHANGED
|
@@ -96,6 +96,7 @@ export declare function configRemove(name: string): string;
|
|
|
96
96
|
* @throws Error if config file doesn't exist or is invalid
|
|
97
97
|
*/
|
|
98
98
|
export declare function configSet(configFilePath: string): string;
|
|
99
|
+
import { type McpClientAdapter } from './mcp-client-adapter.js';
|
|
99
100
|
/**
|
|
100
101
|
* Discover and register config files from default OS locations.
|
|
101
102
|
* Scans the OS-specific application support directories for config.json files.
|
|
@@ -103,4 +104,78 @@ export declare function configSet(configFilePath: string): string;
|
|
|
103
104
|
* @returns Summary of discovered projects
|
|
104
105
|
*/
|
|
105
106
|
export declare function configDiscover(): string;
|
|
107
|
+
/**
|
|
108
|
+
* Generate MCP server configuration JSON for limps projects.
|
|
109
|
+
* Returns the JSON structure that should be added to the client config.
|
|
110
|
+
*
|
|
111
|
+
* @param adapter - MCP client adapter
|
|
112
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
113
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
114
|
+
* @returns Object with servers key and the servers configuration
|
|
115
|
+
* @throws Error if no valid projects found
|
|
116
|
+
*/
|
|
117
|
+
export declare function generateMcpClientConfig(adapter: McpClientAdapter, resolveConfigPathFn: () => string, projectFilter?: string[]): {
|
|
118
|
+
serversKey: string;
|
|
119
|
+
servers: Record<string, unknown>;
|
|
120
|
+
fullConfig: Record<string, unknown>;
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* Generate config JSON for printing (for unsupported clients).
|
|
124
|
+
*
|
|
125
|
+
* @param adapter - MCP client adapter
|
|
126
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
127
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
128
|
+
* @returns JSON string and instructions
|
|
129
|
+
*/
|
|
130
|
+
export declare function generateConfigForPrint(adapter: McpClientAdapter, resolveConfigPathFn: () => string, projectFilter?: string[]): string;
|
|
131
|
+
/**
|
|
132
|
+
* Add limps server configuration to Claude Desktop config.
|
|
133
|
+
* Creates the config file if it doesn't exist, or merges with existing config.
|
|
134
|
+
* Adds all registered projects as separate MCP servers.
|
|
135
|
+
*
|
|
136
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
137
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
138
|
+
* @returns Success message listing all added servers
|
|
139
|
+
* @throws Error if Claude Desktop config directory doesn't exist or can't be written
|
|
140
|
+
*/
|
|
141
|
+
export declare function configAddClaude(resolveConfigPathFn: () => string, projectFilter?: string[]): string;
|
|
142
|
+
/**
|
|
143
|
+
* Add limps server configuration to Cursor config.
|
|
144
|
+
* Creates the config file if it doesn't exist, or merges with existing config.
|
|
145
|
+
* Adds all registered projects as separate MCP servers.
|
|
146
|
+
*
|
|
147
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
148
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
149
|
+
* @returns Success message listing all added servers
|
|
150
|
+
* @throws Error if Cursor config directory doesn't exist or can't be written
|
|
151
|
+
*/
|
|
152
|
+
export declare function configAddCursor(resolveConfigPathFn: () => string, projectFilter?: string[]): string;
|
|
153
|
+
/**
|
|
154
|
+
* Add limps server configuration to Claude Code config.
|
|
155
|
+
* Creates the config file if it doesn't exist, or merges with existing config.
|
|
156
|
+
* Adds all registered projects as separate MCP servers.
|
|
157
|
+
*
|
|
158
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
159
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
160
|
+
* @returns Success message listing all added servers
|
|
161
|
+
* @throws Error if Claude Code config directory doesn't exist or can't be written
|
|
162
|
+
*/
|
|
163
|
+
export declare function configAddClaudeCode(resolveConfigPathFn: () => string, projectFilter?: string[]): string;
|
|
164
|
+
/**
|
|
165
|
+
* Update options for configUpdate.
|
|
166
|
+
*/
|
|
167
|
+
export interface ConfigUpdateOptions {
|
|
168
|
+
plansPath?: string;
|
|
169
|
+
docsPath?: string;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Update an existing project's configuration.
|
|
173
|
+
* Allows updating plansPath and docsPaths without recreating the config.
|
|
174
|
+
*
|
|
175
|
+
* @param projectName - Name of the project to update
|
|
176
|
+
* @param options - Fields to update
|
|
177
|
+
* @returns Success message
|
|
178
|
+
* @throws Error if project not found or config file doesn't exist
|
|
179
|
+
*/
|
|
180
|
+
export declare function configUpdate(projectName: string, options: ConfigUpdateOptions): string;
|
|
106
181
|
//# sourceMappingURL=config-cmd.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-cmd.d.ts","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,OAAO,CAAC;KACjB,EAAE,CAAC;IACJ,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAY9C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAmBnC;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG9C;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE;QACN,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;KAC3B,CAAC;CACH;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,mBAAmB,EAAE,MAAM,MAAM,GAAG,UAAU,CAkB3E;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,mBAAmB,EAAE,MAAM,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"config-cmd.d.ts","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/config-cmd.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Config subcommand handlers for limps CLI.
|
|
3
3
|
* Provides commands to manage the project registry and view configuration.
|
|
4
4
|
*/
|
|
5
|
-
import { existsSync, readdirSync } from 'fs';
|
|
5
|
+
import { existsSync, readdirSync, readFileSync, writeFileSync } from 'fs';
|
|
6
6
|
import { resolve, dirname, basename } from 'path';
|
|
7
7
|
import { registerProject, unregisterProject, setCurrentProject, listProjects, loadRegistry, } from './registry.js';
|
|
8
8
|
import { loadConfig } from '../config.js';
|
|
@@ -105,6 +105,61 @@ export function configShow(resolveConfigPathFn) {
|
|
|
105
105
|
if (config.fileExtensions) {
|
|
106
106
|
lines.push(` fileExtensions: ${config.fileExtensions.join(', ')}`);
|
|
107
107
|
}
|
|
108
|
+
if (config.scoring?.weights || config.scoring?.biases) {
|
|
109
|
+
lines.push(` scoring:`);
|
|
110
|
+
if (config.scoring.weights) {
|
|
111
|
+
lines.push(` weights:`);
|
|
112
|
+
const weights = config.scoring.weights;
|
|
113
|
+
if (weights.dependency !== undefined) {
|
|
114
|
+
lines.push(` dependency: ${weights.dependency}`);
|
|
115
|
+
}
|
|
116
|
+
if (weights.priority !== undefined) {
|
|
117
|
+
lines.push(` priority: ${weights.priority}`);
|
|
118
|
+
}
|
|
119
|
+
if (weights.workload !== undefined) {
|
|
120
|
+
lines.push(` workload: ${weights.workload}`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (config.scoring.biases) {
|
|
124
|
+
lines.push(` biases:`);
|
|
125
|
+
const biases = config.scoring.biases;
|
|
126
|
+
if (biases.plans && Object.keys(biases.plans).length > 0) {
|
|
127
|
+
lines.push(` plans:`);
|
|
128
|
+
for (const [plan, value] of Object.entries(biases.plans)) {
|
|
129
|
+
lines.push(` ${plan}: ${value > 0 ? '+' : ''}${value}`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
if (biases.personas) {
|
|
133
|
+
lines.push(` personas:`);
|
|
134
|
+
const personas = biases.personas;
|
|
135
|
+
if (personas.coder !== undefined) {
|
|
136
|
+
lines.push(` coder: ${personas.coder > 0 ? '+' : ''}${personas.coder}`);
|
|
137
|
+
}
|
|
138
|
+
if (personas.reviewer !== undefined) {
|
|
139
|
+
lines.push(` reviewer: ${personas.reviewer > 0 ? '+' : ''}${personas.reviewer}`);
|
|
140
|
+
}
|
|
141
|
+
if (personas.pm !== undefined) {
|
|
142
|
+
lines.push(` pm: ${personas.pm > 0 ? '+' : ''}${personas.pm}`);
|
|
143
|
+
}
|
|
144
|
+
if (personas.customer !== undefined) {
|
|
145
|
+
lines.push(` customer: ${personas.customer > 0 ? '+' : ''}${personas.customer}`);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
if (biases.statuses) {
|
|
149
|
+
lines.push(` statuses:`);
|
|
150
|
+
const statuses = biases.statuses;
|
|
151
|
+
if (statuses.GAP !== undefined) {
|
|
152
|
+
lines.push(` GAP: ${statuses.GAP > 0 ? '+' : ''}${statuses.GAP}`);
|
|
153
|
+
}
|
|
154
|
+
if (statuses.WIP !== undefined) {
|
|
155
|
+
lines.push(` WIP: ${statuses.WIP > 0 ? '+' : ''}${statuses.WIP}`);
|
|
156
|
+
}
|
|
157
|
+
if (statuses.BLOCKED !== undefined) {
|
|
158
|
+
lines.push(` BLOCKED: ${statuses.BLOCKED > 0 ? '+' : ''}${statuses.BLOCKED}`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
108
163
|
return lines.join('\n');
|
|
109
164
|
}
|
|
110
165
|
/**
|
|
@@ -188,6 +243,7 @@ export function configSet(configFilePath) {
|
|
|
188
243
|
return `Registered and switched to project "${projectName}"`;
|
|
189
244
|
}
|
|
190
245
|
import { getOSBasePath } from '../utils/os-paths.js';
|
|
246
|
+
import { getAdapter } from './mcp-client-adapter.js';
|
|
191
247
|
/**
|
|
192
248
|
* Discover and register config files from default OS locations.
|
|
193
249
|
* Scans the OS-specific application support directories for config.json files.
|
|
@@ -239,4 +295,276 @@ export function configDiscover() {
|
|
|
239
295
|
lines.push('Run `limps config use <name>` to switch to a project.');
|
|
240
296
|
return lines.join('\n');
|
|
241
297
|
}
|
|
298
|
+
/**
|
|
299
|
+
* Generate MCP server configuration JSON for limps projects.
|
|
300
|
+
* Returns the JSON structure that should be added to the client config.
|
|
301
|
+
*
|
|
302
|
+
* @param adapter - MCP client adapter
|
|
303
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
304
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
305
|
+
* @returns Object with servers key and the servers configuration
|
|
306
|
+
* @throws Error if no valid projects found
|
|
307
|
+
*/
|
|
308
|
+
export function generateMcpClientConfig(adapter, resolveConfigPathFn, projectFilter) {
|
|
309
|
+
// Validate that at least one config exists
|
|
310
|
+
const testConfigPath = resolveConfigPathFn();
|
|
311
|
+
if (!existsSync(testConfigPath)) {
|
|
312
|
+
throw new Error(`Limps config not found: ${testConfigPath}\nRun \`limps init <name>\` to create a project first.`);
|
|
313
|
+
}
|
|
314
|
+
// Get all registered projects
|
|
315
|
+
const allProjects = listProjects();
|
|
316
|
+
if (allProjects.length === 0) {
|
|
317
|
+
throw new Error('No projects registered. Run `limps init <name>` to create a project first.');
|
|
318
|
+
}
|
|
319
|
+
// Filter projects if filter is provided
|
|
320
|
+
const projectsToAdd = projectFilter
|
|
321
|
+
? allProjects.filter((p) => projectFilter.includes(p.name))
|
|
322
|
+
: allProjects;
|
|
323
|
+
if (projectsToAdd.length === 0) {
|
|
324
|
+
throw new Error(`No matching projects found. Available projects: ${allProjects.map((p) => p.name).join(', ')}`);
|
|
325
|
+
}
|
|
326
|
+
// Build servers configuration
|
|
327
|
+
const servers = {};
|
|
328
|
+
for (const project of projectsToAdd) {
|
|
329
|
+
// Skip projects with missing config files
|
|
330
|
+
if (!existsSync(project.configPath)) {
|
|
331
|
+
continue;
|
|
332
|
+
}
|
|
333
|
+
const serverName = `limps-planning-${project.name}`;
|
|
334
|
+
servers[serverName] = adapter.createServerConfig(project.configPath);
|
|
335
|
+
}
|
|
336
|
+
if (Object.keys(servers).length === 0) {
|
|
337
|
+
throw new Error('No valid projects to add. All projects have missing config files.');
|
|
338
|
+
}
|
|
339
|
+
// Build full config structure
|
|
340
|
+
const serversKey = adapter.getServersKey();
|
|
341
|
+
const fullConfig = {};
|
|
342
|
+
if (adapter.useFlatKey?.()) {
|
|
343
|
+
// Use the key as a flat key
|
|
344
|
+
fullConfig[serversKey] = servers;
|
|
345
|
+
}
|
|
346
|
+
else {
|
|
347
|
+
// Build nested structure
|
|
348
|
+
const keyParts = serversKey.split('.');
|
|
349
|
+
let current = fullConfig;
|
|
350
|
+
for (let i = 0; i < keyParts.length - 1; i++) {
|
|
351
|
+
current[keyParts[i]] = {};
|
|
352
|
+
current = current[keyParts[i]];
|
|
353
|
+
}
|
|
354
|
+
current[keyParts[keyParts.length - 1]] = servers;
|
|
355
|
+
}
|
|
356
|
+
return { serversKey, servers, fullConfig };
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Add limps server configuration to an MCP client config.
|
|
360
|
+
* Creates the config file if it doesn't exist, or merges with existing config.
|
|
361
|
+
* Adds all registered projects as separate MCP servers.
|
|
362
|
+
*
|
|
363
|
+
* @param adapter - MCP client adapter
|
|
364
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
365
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
366
|
+
* @returns Success message listing all added servers
|
|
367
|
+
* @throws Error if config directory doesn't exist or can't be written
|
|
368
|
+
*/
|
|
369
|
+
function configAddMcpClient(adapter, resolveConfigPathFn, projectFilter) {
|
|
370
|
+
// Validate that at least one config exists
|
|
371
|
+
const testConfigPath = resolveConfigPathFn();
|
|
372
|
+
if (!existsSync(testConfigPath)) {
|
|
373
|
+
throw new Error(`Limps config not found: ${testConfigPath}\nRun \`limps init <name>\` to create a project first.`);
|
|
374
|
+
}
|
|
375
|
+
// Get all registered projects
|
|
376
|
+
const allProjects = listProjects();
|
|
377
|
+
if (allProjects.length === 0) {
|
|
378
|
+
throw new Error('No projects registered. Run `limps init <name>` to create a project first.');
|
|
379
|
+
}
|
|
380
|
+
// Filter projects if filter is provided
|
|
381
|
+
const projectsToAdd = projectFilter
|
|
382
|
+
? allProjects.filter((p) => projectFilter.includes(p.name))
|
|
383
|
+
: allProjects;
|
|
384
|
+
if (projectsToAdd.length === 0) {
|
|
385
|
+
throw new Error(`No matching projects found. Available projects: ${allProjects.map((p) => p.name).join(', ')}`);
|
|
386
|
+
}
|
|
387
|
+
// Generate the config
|
|
388
|
+
const { serversKey, servers } = generateMcpClientConfig(adapter, resolveConfigPathFn, projectFilter);
|
|
389
|
+
// Read existing config or create new one
|
|
390
|
+
const clientConfig = adapter.readConfig();
|
|
391
|
+
// Get or create the servers object
|
|
392
|
+
let existingServers;
|
|
393
|
+
if (adapter.useFlatKey?.()) {
|
|
394
|
+
// Use the key as a flat key (e.g., "mcp.servers" as a literal key)
|
|
395
|
+
if (!clientConfig[serversKey] || typeof clientConfig[serversKey] !== 'object') {
|
|
396
|
+
clientConfig[serversKey] = {};
|
|
397
|
+
}
|
|
398
|
+
existingServers = clientConfig[serversKey];
|
|
399
|
+
}
|
|
400
|
+
else {
|
|
401
|
+
// Handle nested keys like "mcp.servers" -> { mcp: { servers: {...} } }
|
|
402
|
+
const keyParts = serversKey.split('.');
|
|
403
|
+
let current = clientConfig;
|
|
404
|
+
// Navigate/create nested structure
|
|
405
|
+
for (let i = 0; i < keyParts.length - 1; i++) {
|
|
406
|
+
const part = keyParts[i];
|
|
407
|
+
if (!current[part] || typeof current[part] !== 'object') {
|
|
408
|
+
current[part] = {};
|
|
409
|
+
}
|
|
410
|
+
current = current[part];
|
|
411
|
+
}
|
|
412
|
+
// Get or create the final servers object
|
|
413
|
+
const finalKey = keyParts[keyParts.length - 1];
|
|
414
|
+
if (!current[finalKey] || typeof current[finalKey] !== 'object') {
|
|
415
|
+
current[finalKey] = {};
|
|
416
|
+
}
|
|
417
|
+
existingServers = current[finalKey];
|
|
418
|
+
}
|
|
419
|
+
// Track what was added/updated
|
|
420
|
+
const addedServers = [];
|
|
421
|
+
const updatedServers = [];
|
|
422
|
+
for (const [serverName, serverConfig] of Object.entries(servers)) {
|
|
423
|
+
const wasExisting = serverName in existingServers;
|
|
424
|
+
existingServers[serverName] = serverConfig;
|
|
425
|
+
if (wasExisting) {
|
|
426
|
+
updatedServers.push(serverName);
|
|
427
|
+
}
|
|
428
|
+
else {
|
|
429
|
+
addedServers.push(serverName);
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
// Write back to file
|
|
433
|
+
adapter.writeConfig(clientConfig);
|
|
434
|
+
// Build success message
|
|
435
|
+
const lines = [];
|
|
436
|
+
const totalChanges = addedServers.length + updatedServers.length;
|
|
437
|
+
if (totalChanges === 0) {
|
|
438
|
+
lines.push(`No changes needed for ${adapter.getDisplayName()} config.`);
|
|
439
|
+
}
|
|
440
|
+
else {
|
|
441
|
+
if (addedServers.length > 0) {
|
|
442
|
+
lines.push(`Added ${addedServers.length} limps project(s) to ${adapter.getDisplayName()} config:`);
|
|
443
|
+
for (const server of addedServers) {
|
|
444
|
+
lines.push(` + ${server}`);
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
if (updatedServers.length > 0) {
|
|
448
|
+
if (addedServers.length > 0) {
|
|
449
|
+
lines.push('');
|
|
450
|
+
}
|
|
451
|
+
lines.push(`Updated ${updatedServers.length} limps project(s) in ${adapter.getDisplayName()} config:`);
|
|
452
|
+
for (const server of updatedServers) {
|
|
453
|
+
lines.push(` ~ ${server}`);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
lines.push('');
|
|
458
|
+
lines.push(`Config location: ${adapter.getConfigPath()}`);
|
|
459
|
+
if (totalChanges > 0) {
|
|
460
|
+
lines.push(`Restart ${adapter.getDisplayName()} to use the updated MCP servers.`);
|
|
461
|
+
}
|
|
462
|
+
return lines.join('\n');
|
|
463
|
+
}
|
|
464
|
+
/**
|
|
465
|
+
* Generate config JSON for printing (for unsupported clients).
|
|
466
|
+
*
|
|
467
|
+
* @param adapter - MCP client adapter
|
|
468
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
469
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
470
|
+
* @returns JSON string and instructions
|
|
471
|
+
*/
|
|
472
|
+
export function generateConfigForPrint(adapter, resolveConfigPathFn, projectFilter) {
|
|
473
|
+
const { fullConfig, serversKey } = generateMcpClientConfig(adapter, resolveConfigPathFn, projectFilter);
|
|
474
|
+
const lines = [];
|
|
475
|
+
lines.push(`\n${adapter.getDisplayName()} Configuration:`);
|
|
476
|
+
lines.push(`\nAdd this to your ${adapter.getDisplayName()} config file:`);
|
|
477
|
+
lines.push(`\n${JSON.stringify(fullConfig, null, 2)}`);
|
|
478
|
+
lines.push(`\nConfig file location: ${adapter.getConfigPath()}`);
|
|
479
|
+
lines.push(`\nNote: Merge the "${serversKey}" section into your existing config file.`);
|
|
480
|
+
return lines.join('\n');
|
|
481
|
+
}
|
|
482
|
+
/**
|
|
483
|
+
* Add limps server configuration to Claude Desktop config.
|
|
484
|
+
* Creates the config file if it doesn't exist, or merges with existing config.
|
|
485
|
+
* Adds all registered projects as separate MCP servers.
|
|
486
|
+
*
|
|
487
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
488
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
489
|
+
* @returns Success message listing all added servers
|
|
490
|
+
* @throws Error if Claude Desktop config directory doesn't exist or can't be written
|
|
491
|
+
*/
|
|
492
|
+
export function configAddClaude(resolveConfigPathFn, projectFilter) {
|
|
493
|
+
const adapter = getAdapter('claude');
|
|
494
|
+
return configAddMcpClient(adapter, resolveConfigPathFn, projectFilter);
|
|
495
|
+
}
|
|
496
|
+
/**
|
|
497
|
+
* Add limps server configuration to Cursor config.
|
|
498
|
+
* Creates the config file if it doesn't exist, or merges with existing config.
|
|
499
|
+
* Adds all registered projects as separate MCP servers.
|
|
500
|
+
*
|
|
501
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
502
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
503
|
+
* @returns Success message listing all added servers
|
|
504
|
+
* @throws Error if Cursor config directory doesn't exist or can't be written
|
|
505
|
+
*/
|
|
506
|
+
export function configAddCursor(resolveConfigPathFn, projectFilter) {
|
|
507
|
+
const adapter = getAdapter('cursor');
|
|
508
|
+
return configAddMcpClient(adapter, resolveConfigPathFn, projectFilter);
|
|
509
|
+
}
|
|
510
|
+
/**
|
|
511
|
+
* Add limps server configuration to Claude Code config.
|
|
512
|
+
* Creates the config file if it doesn't exist, or merges with existing config.
|
|
513
|
+
* Adds all registered projects as separate MCP servers.
|
|
514
|
+
*
|
|
515
|
+
* @param resolveConfigPathFn - Function to resolve limps config path (used for validation)
|
|
516
|
+
* @param projectFilter - Optional array of project names to filter (if not provided, adds all)
|
|
517
|
+
* @returns Success message listing all added servers
|
|
518
|
+
* @throws Error if Claude Code config directory doesn't exist or can't be written
|
|
519
|
+
*/
|
|
520
|
+
export function configAddClaudeCode(resolveConfigPathFn, projectFilter) {
|
|
521
|
+
const adapter = getAdapter('claude-code');
|
|
522
|
+
return configAddMcpClient(adapter, resolveConfigPathFn, projectFilter);
|
|
523
|
+
}
|
|
524
|
+
/**
|
|
525
|
+
* Update an existing project's configuration.
|
|
526
|
+
* Allows updating plansPath and docsPaths without recreating the config.
|
|
527
|
+
*
|
|
528
|
+
* @param projectName - Name of the project to update
|
|
529
|
+
* @param options - Fields to update
|
|
530
|
+
* @returns Success message
|
|
531
|
+
* @throws Error if project not found or config file doesn't exist
|
|
532
|
+
*/
|
|
533
|
+
export function configUpdate(projectName, options) {
|
|
534
|
+
const projects = listProjects();
|
|
535
|
+
const project = projects.find((p) => p.name === projectName);
|
|
536
|
+
if (!project) {
|
|
537
|
+
const available = projects.map((p) => p.name).join(', ');
|
|
538
|
+
throw new Error(`Project "${projectName}" not found.${available ? ` Available projects: ${available}` : ' No projects registered.'}`);
|
|
539
|
+
}
|
|
540
|
+
if (!existsSync(project.configPath)) {
|
|
541
|
+
throw new Error(`Config file not found: ${project.configPath}`);
|
|
542
|
+
}
|
|
543
|
+
// Read the raw config file (not using loadConfig which resolves paths)
|
|
544
|
+
const content = readFileSync(project.configPath, 'utf-8');
|
|
545
|
+
const config = JSON.parse(content);
|
|
546
|
+
const changes = [];
|
|
547
|
+
if (options.plansPath !== undefined) {
|
|
548
|
+
const oldValue = config.plansPath;
|
|
549
|
+
config.plansPath = options.plansPath;
|
|
550
|
+
changes.push(` plansPath: ${oldValue} → ${options.plansPath}`);
|
|
551
|
+
}
|
|
552
|
+
if (options.docsPath !== undefined) {
|
|
553
|
+
const oldValue = config.docsPaths;
|
|
554
|
+
config.docsPaths = [options.docsPath];
|
|
555
|
+
changes.push(` docsPaths: ${JSON.stringify(oldValue)} → ${JSON.stringify(config.docsPaths)}`);
|
|
556
|
+
}
|
|
557
|
+
if (changes.length === 0) {
|
|
558
|
+
return `No changes specified. Use --plans-path or --docs-path to update configuration.`;
|
|
559
|
+
}
|
|
560
|
+
// Write back
|
|
561
|
+
writeFileSync(project.configPath, JSON.stringify(config, null, 2));
|
|
562
|
+
const lines = [];
|
|
563
|
+
lines.push(`Updated project "${projectName}":`);
|
|
564
|
+
lines.push('');
|
|
565
|
+
lines.push(...changes);
|
|
566
|
+
lines.push('');
|
|
567
|
+
lines.push(`Config file: ${project.configPath}`);
|
|
568
|
+
return lines.join('\n');
|
|
569
|
+
}
|
|
242
570
|
//# sourceMappingURL=config-cmd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-cmd.js","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-cmd.js","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-project.d.ts","sourceRoot":"","sources":["../../src/cli/init-project.ts"],"names":[],"mappings":"AAAA;;GAEG;AA+BH;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"init-project.d.ts","sourceRoot":"","sources":["../../src/cli/init-project.ts"],"names":[],"mappings":"AAAA;;GAEG;AA+BH;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAmG1E"}
|