@sudosandwich/limps 2.8.0 → 2.9.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.
Files changed (113) hide show
  1. package/README.md +86 -0
  2. package/dist/agent-parser.d.ts +6 -0
  3. package/dist/agent-parser.d.ts.map +1 -1
  4. package/dist/agent-parser.js +30 -0
  5. package/dist/agent-parser.js.map +1 -1
  6. package/dist/cli/config-cmd.d.ts +12 -0
  7. package/dist/cli/config-cmd.d.ts.map +1 -1
  8. package/dist/cli/config-cmd.js +143 -1
  9. package/dist/cli/config-cmd.js.map +1 -1
  10. package/dist/cli/json-output.d.ts +3 -0
  11. package/dist/cli/json-output.d.ts.map +1 -1
  12. package/dist/cli/json-output.js +3 -0
  13. package/dist/cli/json-output.js.map +1 -1
  14. package/dist/cli/list-agents.d.ts.map +1 -1
  15. package/dist/cli/list-agents.js +10 -4
  16. package/dist/cli/list-agents.js.map +1 -1
  17. package/dist/cli/next-task.d.ts +20 -3
  18. package/dist/cli/next-task.d.ts.map +1 -1
  19. package/dist/cli/next-task.js +249 -34
  20. package/dist/cli/next-task.js.map +1 -1
  21. package/dist/cli/plan-repair.d.ts +26 -0
  22. package/dist/cli/plan-repair.d.ts.map +1 -0
  23. package/dist/cli/plan-repair.js +145 -0
  24. package/dist/cli/plan-repair.js.map +1 -0
  25. package/dist/commands/config/index.d.ts.map +1 -1
  26. package/dist/commands/config/index.js +31 -2
  27. package/dist/commands/config/index.js.map +1 -1
  28. package/dist/commands/config/list.d.ts.map +1 -1
  29. package/dist/commands/config/list.js +13 -3
  30. package/dist/commands/config/list.js.map +1 -1
  31. package/dist/commands/config/scoring.d.ts +13 -0
  32. package/dist/commands/config/scoring.d.ts.map +1 -0
  33. package/dist/commands/config/scoring.js +104 -0
  34. package/dist/commands/config/scoring.js.map +1 -0
  35. package/dist/commands/index.d.ts.map +1 -1
  36. package/dist/commands/index.js +1 -1
  37. package/dist/commands/index.js.map +1 -1
  38. package/dist/commands/list-agents.d.ts +1 -0
  39. package/dist/commands/list-agents.d.ts.map +1 -1
  40. package/dist/commands/list-agents.js +54 -15
  41. package/dist/commands/list-agents.js.map +1 -1
  42. package/dist/commands/list-plans.d.ts +1 -0
  43. package/dist/commands/list-plans.d.ts.map +1 -1
  44. package/dist/commands/list-plans.js +41 -16
  45. package/dist/commands/list-plans.js.map +1 -1
  46. package/dist/commands/next-task.d.ts +1 -0
  47. package/dist/commands/next-task.d.ts.map +1 -1
  48. package/dist/commands/next-task.js +61 -25
  49. package/dist/commands/next-task.js.map +1 -1
  50. package/dist/commands/reindex.d.ts +12 -0
  51. package/dist/commands/reindex.d.ts.map +1 -0
  52. package/dist/commands/reindex.js +64 -0
  53. package/dist/commands/reindex.js.map +1 -0
  54. package/dist/commands/repair-plans.d.ts +16 -0
  55. package/dist/commands/repair-plans.d.ts.map +1 -0
  56. package/dist/commands/repair-plans.js +141 -0
  57. package/dist/commands/repair-plans.js.map +1 -0
  58. package/dist/commands/score-all.d.ts +15 -0
  59. package/dist/commands/score-all.d.ts.map +1 -0
  60. package/dist/commands/score-all.js +96 -0
  61. package/dist/commands/score-all.js.map +1 -0
  62. package/dist/commands/score-task.d.ts +15 -0
  63. package/dist/commands/score-task.d.ts.map +1 -0
  64. package/dist/commands/score-task.js +104 -0
  65. package/dist/commands/score-task.js.map +1 -0
  66. package/dist/commands/serve.d.ts +1 -0
  67. package/dist/commands/serve.d.ts.map +1 -1
  68. package/dist/commands/serve.js +6 -3
  69. package/dist/commands/serve.js.map +1 -1
  70. package/dist/commands/status.d.ts +1 -0
  71. package/dist/commands/status.d.ts.map +1 -1
  72. package/dist/commands/status.js +68 -20
  73. package/dist/commands/status.js.map +1 -1
  74. package/dist/components/NextTask.d.ts.map +1 -1
  75. package/dist/components/NextTask.js +2 -1
  76. package/dist/components/NextTask.js.map +1 -1
  77. package/dist/config.d.ts +17 -2
  78. package/dist/config.d.ts.map +1 -1
  79. package/dist/config.js +136 -5
  80. package/dist/config.js.map +1 -1
  81. package/dist/graph/schema.d.ts +4 -0
  82. package/dist/graph/schema.d.ts.map +1 -0
  83. package/dist/graph/schema.js +77 -0
  84. package/dist/graph/schema.js.map +1 -0
  85. package/dist/graph/storage.d.ts +26 -0
  86. package/dist/graph/storage.d.ts.map +1 -0
  87. package/dist/graph/storage.js +441 -0
  88. package/dist/graph/storage.js.map +1 -0
  89. package/dist/graph/types.d.ts +32 -0
  90. package/dist/graph/types.d.ts.map +1 -0
  91. package/dist/graph/types.js +11 -0
  92. package/dist/graph/types.js.map +1 -0
  93. package/dist/indexer.d.ts +6 -0
  94. package/dist/indexer.d.ts.map +1 -1
  95. package/dist/indexer.js +11 -0
  96. package/dist/indexer.js.map +1 -1
  97. package/dist/tools/index.d.ts +3 -1
  98. package/dist/tools/index.d.ts.map +1 -1
  99. package/dist/tools/index.js +112 -22
  100. package/dist/tools/index.js.map +1 -1
  101. package/dist/tools/process-docs.d.ts.map +1 -1
  102. package/dist/tools/process-docs.js +10 -1
  103. package/dist/tools/process-docs.js.map +1 -1
  104. package/dist/tools/update-task-status.d.ts +1 -1
  105. package/dist/utils/cli-help.d.ts +32 -0
  106. package/dist/utils/cli-help.d.ts.map +1 -0
  107. package/dist/utils/cli-help.js +79 -0
  108. package/dist/utils/cli-help.js.map +1 -0
  109. package/dist/utils/config-resolver.d.ts +8 -0
  110. package/dist/utils/config-resolver.d.ts.map +1 -1
  111. package/dist/utils/config-resolver.js +14 -0
  112. package/dist/utils/config-resolver.js.map +1 -1
  113. package/package.json +1 -1
package/README.md CHANGED
@@ -6,9 +6,36 @@
6
6
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
7
7
  ![Tests](https://img.shields.io/badge/Tests-899%20passing-brightgreen)
8
8
  ![Coverage](https://img.shields.io/badge/Coverage-%3E70%25-brightgreen)
9
+ [![MCP Badge](https://lobehub.com/badge/mcp/paulbreuler-limps)](https://lobehub.com/mcp/paulbreuler-limps)
9
10
 
10
11
  ![limps in action](https://github.com/paulbreuler/limps/blob/main/.github/assets/limps-a-lol-longer.gif?raw=true)
11
12
 
13
+ ## Table of Contents
14
+
15
+ - [Quick Start](#quick-start)
16
+ - [Features](#features)
17
+ - [How I Use limps](#how-i-use-limps)
18
+ - [How You Can Use It](#how-you-can-use-it)
19
+ - [Why limps?](#why-limps)
20
+ - [Installation](#installation)
21
+ - [Project Setup](#project-setup)
22
+ - [Client Setup](#client-setup)
23
+ - [Transport](#transport)
24
+ - [CLI Commands](#cli-commands)
25
+ - [Configuration](#configuration)
26
+ - [Environment Variables](#environment-variables)
27
+ - [MCP Tools](#mcp-tools)
28
+ - [Skills](#skills)
29
+ - [Extensions](#extensions)
30
+ - [Obsidian Compatibility](#obsidian-compatibility)
31
+ - [Development](#development)
32
+ - [Used in Production](#used-in-production)
33
+ - [Creating a feature plan](#creating-a-feature-plan)
34
+ - [Deep Dive](#deep-dive)
35
+ - [Instructions](#instructions)
36
+ - [What is MCP?](#what-is-mcp)
37
+ - [License](#license)
38
+
12
39
  ## Quick Start
13
40
 
14
41
  ```bash
@@ -25,6 +52,15 @@ limps config sync-mcp --client claude-code
25
52
 
26
53
  Run this in the folder where you want to keep the docs and that's it. Your AI assistant now has access to your documents and nothing else. The folder can be anywhere—local, synced, or in a repo; limps does not require a git repository or a `plans/` directory.
27
54
 
55
+ ## Features
56
+
57
+ - **Document CRUD + full-text search** across any folder of Markdown files
58
+ - **Plan + agent workflows** with status tracking and task scoring
59
+ - **Next-task suggestions** with score breakdowns and bias tuning
60
+ - **Sandboxed document processing** via `process_doc(s)` helpers
61
+ - **Multi-client sync** for Cursor, Claude, Codex, and more
62
+ - **Extensions** for domain-specific tooling (e.g., limps-headless)
63
+
28
64
  ### What to know before you start
29
65
 
30
66
  - **Local only** — Your data stays on disk (SQLite index + your files). No cloud, no subscription.
@@ -199,6 +235,24 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
199
235
 
200
236
  </details>
201
237
 
238
+ <details>
239
+ <summary><b>Windows (npx)</b></summary>
240
+
241
+ On Windows, use `cmd /c` to run `npx`:
242
+
243
+ ```json
244
+ {
245
+ "mcpServers": {
246
+ "limps": {
247
+ "command": "cmd",
248
+ "args": ["/c", "npx", "-y", "@sudosandwich/limps", "serve", "--config", "C:\\path\\to\\config.json"]
249
+ }
250
+ }
251
+ }
252
+ ```
253
+
254
+ </details>
255
+
202
256
  <details>
203
257
  <summary><b>OpenAI Codex</b></summary>
204
258
 
@@ -230,6 +284,12 @@ limps config sync-mcp --client chatgpt --print
230
284
 
231
285
  </details>
232
286
 
287
+ ## Transport
288
+
289
+ - **Current**: stdio (local MCP server, launched by your client).
290
+ - **Remote clients**: Use an MCP-compatible proxy for HTTPS clients (e.g., ChatGPT).
291
+ - **Roadmap**: SSE/HTTP transports are planned but not implemented yet.
292
+
233
293
  ## CLI Commands
234
294
 
235
295
  ### Viewing Plans
@@ -271,6 +331,9 @@ Config location varies by OS:
271
331
  "fileExtensions": [".md"],
272
332
  "dataPath": "~/Library/Application Support/limps/data",
273
333
  "extensions": ["@sudosandwich/limps-headless"],
334
+ "tools": {
335
+ "allowlist": ["list_docs", "search_docs"]
336
+ },
274
337
  "scoring": {
275
338
  "weights": { "dependency": 40, "priority": 30, "workload": 30 },
276
339
  "biases": {}
@@ -284,9 +347,20 @@ Config location varies by OS:
284
347
  | `docsPaths` | Additional directories to index |
285
348
  | `fileExtensions` | File types to index (default: `.md`) |
286
349
  | `dataPath` | SQLite database location |
350
+ | `tools` | Tool allowlist/denylist filtering |
287
351
  | `extensions` | Extension packages to load |
288
352
  | `scoring` | Task prioritization weights and biases |
289
353
 
354
+ ## Environment Variables
355
+
356
+ | Variable | Description | Example |
357
+ |---|---|---|
358
+ | `LIMPS_PROJECT` | Select active project for CLI commands | `LIMPS_PROJECT=project-b limps list-plans` |
359
+ | `LIMPS_ALLOWED_TOOLS` | Comma-separated allowlist; only these tools are registered | `LIMPS_ALLOWED_TOOLS="list_docs,search_docs"` |
360
+ | `LIMPS_DISABLED_TOOLS` | Comma-separated denylist; tools to hide | `LIMPS_DISABLED_TOOLS="process_doc,process_docs"` |
361
+
362
+ **Precedence:** `config.tools` overrides env vars. If allowlist is set, denylist is ignored.
363
+
290
364
  ## MCP Tools
291
365
 
292
366
  limps exposes 15 MCP tools for AI assistants:
@@ -297,6 +371,18 @@ limps exposes 15 MCP tools for AI assistants:
297
371
  | **Plans** | `create_plan`, `list_plans`, `list_agents`, `get_plan_status` |
298
372
  | **Tasks** | `get_next_task`, `update_task_status` |
299
373
 
374
+ ## Skills
375
+
376
+ This repo includes a limps planning skill for AI IDEs in `skills/limps-planning`.
377
+
378
+ Install from GitHub:
379
+
380
+ ```bash
381
+ npx skills add paulbreuler/limps/skills/limps-planning
382
+ ```
383
+
384
+ The skill focuses on selecting the right limps tools for common planning workflows.
385
+
300
386
  ## Extensions
301
387
 
302
388
  Extensions add MCP tools and resources. Install from npm:
@@ -6,6 +6,7 @@
6
6
  *
7
7
  * Task ID Format: `<plan-folder>#<agent-number>` (e.g., "0022-datagrid-stories#000")
8
8
  */
9
+ import type { ScoringWeights } from './config.js';
9
10
  /**
10
11
  * Agent file frontmatter interface.
11
12
  * This is the authoritative source of truth for agent/task state.
@@ -25,6 +26,11 @@ export interface AgentFrontmatter {
25
26
  aliases?: string[];
26
27
  created?: string;
27
28
  updated?: string;
29
+ scoring?: {
30
+ bias?: number;
31
+ weights?: Partial<ScoringWeights>;
32
+ };
33
+ depends_on?: string[] | string;
28
34
  }
29
35
  /**
30
36
  * Parsed agent file with frontmatter and metadata.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-parser.d.ts","sourceRoot":"","sources":["../src/agent-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAE/B,MAAM,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IAC3C,OAAO,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,GAAG,UAAU,CAAC;IAClD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAGrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,yBAAyB;IACzB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,KAAK,EAAE,IAAI,CAAC;IACZ,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;CACf;AAaD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAIlE;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI7D;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAS9F;AA4JD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA6DpF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAOlE;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACjC,eAAe,GAAG,IAAI,CAkCxB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAqCrE;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,eAAe,EAAE,gBAAgB,SAAK,GAAG,OAAO,CAUnF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyBlF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYvF"}
1
+ {"version":3,"file":"agent-parser.d.ts","sourceRoot":"","sources":["../src/agent-parser.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,31 @@ const DEFAULT_FRONTMATTER = {
18
18
  blocks: [],
19
19
  files: [],
20
20
  };
21
+ function normalizeDependencyValue(value) {
22
+ if (typeof value === 'number' && Number.isFinite(value)) {
23
+ return String(value).padStart(3, '0');
24
+ }
25
+ if (typeof value === 'string') {
26
+ const trimmed = value.trim();
27
+ if (trimmed.length === 0) {
28
+ return null;
29
+ }
30
+ if (/^\d+$/.test(trimmed)) {
31
+ return trimmed.padStart(3, '0');
32
+ }
33
+ return trimmed;
34
+ }
35
+ return null;
36
+ }
37
+ function normalizeDependencies(value) {
38
+ if (Array.isArray(value)) {
39
+ return value
40
+ .map((entry) => normalizeDependencyValue(entry))
41
+ .filter((entry) => Boolean(entry));
42
+ }
43
+ const single = normalizeDependencyValue(value);
44
+ return single ? [single] : [];
45
+ }
21
46
  /**
22
47
  * Extract agent number from filename.
23
48
  *
@@ -256,6 +281,11 @@ export function parseAgentFile(path, content) {
256
281
  ...DEFAULT_FRONTMATTER,
257
282
  ...parsed.frontmatter,
258
283
  };
284
+ const rawFrontmatter = parsed.frontmatter;
285
+ const dependencyOverrides = normalizeDependencies(rawFrontmatter.depends_on);
286
+ const parsedDependencies = normalizeDependencies(rawFrontmatter.dependencies);
287
+ const mergedDependencies = Array.from(new Set([...parsedDependencies, ...dependencyOverrides]));
288
+ frontmatter.dependencies = mergedDependencies;
259
289
  body = parsed.body;
260
290
  }
261
291
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-parser.js","sourceRoot":"","sources":["../src/agent-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-parser.js","sourceRoot":"","sources":["../src/agent-parser.ts"],"names":[],"mappings":"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"}
@@ -2,6 +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 { type ScoringPreset, type ScoringWeights, type ScoringBiases } from '../config.js';
5
6
  /**
6
7
  * Project data for JSON output.
7
8
  */
@@ -13,6 +14,10 @@ export interface ProjectsData {
13
14
  exists: boolean;
14
15
  }[];
15
16
  total: number;
17
+ usage: {
18
+ projectFlag: string;
19
+ configUse: string;
20
+ };
16
21
  }
17
22
  /**
18
23
  * Get projects data for JSON output.
@@ -63,6 +68,13 @@ export declare function getConfigData(resolveConfigPathFn: () => string): Config
63
68
  * @returns Formatted configuration
64
69
  */
65
70
  export declare function configShow(resolveConfigPathFn: () => string): string;
71
+ export interface ScoringConfigUpdateOptions {
72
+ preset?: ScoringPreset;
73
+ weights?: Partial<ScoringWeights>;
74
+ biases?: Partial<ScoringBiases>;
75
+ }
76
+ export declare function configScoringShow(resolveConfigPathFn: () => string): string;
77
+ export declare function configScoringUpdate(resolveConfigPathFn: () => string, options: ScoringConfigUpdateOptions): string;
66
78
  /**
67
79
  * Print the resolved config file path.
68
80
  *
@@ -1 +1 @@
1
- {"version":3,"file":"config-cmd.d.ts","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-cmd.d.ts","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import * as jsonpatch from 'fast-json-patch';
7
7
  import { resolve, dirname, basename, join, relative, sep } from 'path';
8
8
  import * as toml from '@iarna/toml';
9
9
  import { registerProject, unregisterProject, setCurrentProject, listProjects, loadRegistry, } from './registry.js';
10
- import { loadConfig, validateConfig } from '../config.js';
10
+ import { loadConfig, validateConfig, getScoringWeights, getScoringBiases, SCORING_PRESETS, } from '../config.js';
11
11
  import { getOSBasePath } from '../utils/os-paths.js';
12
12
  /** Child dir under limps for project configs (limps/projects/<name>/config.json). */
13
13
  const PROJECTS_DIR = 'projects';
@@ -32,6 +32,10 @@ export function getProjectsData() {
32
32
  exists: existsSync(p.configPath),
33
33
  })),
34
34
  total: projects.length,
35
+ usage: {
36
+ projectFlag: 'limps <command> --project <name>',
37
+ configUse: 'limps config use <name>',
38
+ },
35
39
  };
36
40
  }
37
41
  /**
@@ -53,6 +57,11 @@ export function configList() {
53
57
  const exists = existsSync(project.configPath) ? '' : ' (missing)';
54
58
  lines.push(` ${current} ${name} ${project.configPath}${exists}`);
55
59
  }
60
+ lines.push('');
61
+ lines.push('Use with CLI commands:');
62
+ lines.push(' limps <command> --project <name>');
63
+ lines.push('Set default project:');
64
+ lines.push(' limps config use <name>');
56
65
  return lines.join('\n');
57
66
  }
58
67
  /**
@@ -143,6 +152,10 @@ export function configShow(resolveConfigPathFn) {
143
152
  }
144
153
  if (config.scoring?.weights || config.scoring?.biases) {
145
154
  lines.push(` scoring:`);
155
+ if (config.scoring.preset) {
156
+ lines.push(` preset:`);
157
+ lines.push(` ${config.scoring.preset}`);
158
+ }
146
159
  if (config.scoring.weights) {
147
160
  lines.push(` weights:`);
148
161
  const weights = config.scoring.weights;
@@ -198,6 +211,135 @@ export function configShow(resolveConfigPathFn) {
198
211
  }
199
212
  return lines.join('\n');
200
213
  }
214
+ export function configScoringShow(resolveConfigPathFn) {
215
+ const configPath = resolveConfigPathFn();
216
+ if (!existsSync(configPath)) {
217
+ return `Config file not found: ${configPath}\n\nRun \`limps init <name>\` to create a project.`;
218
+ }
219
+ const config = loadConfig(configPath);
220
+ const weights = getScoringWeights(config);
221
+ const biases = getScoringBiases(config);
222
+ const lines = [];
223
+ lines.push(`Config file: ${configPath}`);
224
+ lines.push('');
225
+ lines.push('Scoring:');
226
+ lines.push(` preset: ${config.scoring.preset ?? 'default'}`);
227
+ lines.push(' weights:');
228
+ lines.push(` dependency: ${weights.dependency}`);
229
+ lines.push(` priority: ${weights.priority}`);
230
+ lines.push(` workload: ${weights.workload}`);
231
+ const hasPlanBiases = biases.plans && Object.keys(biases.plans).length > 0;
232
+ const hasPersonaBiases = biases.personas && Object.values(biases.personas).length > 0;
233
+ const hasStatusBiases = biases.statuses && Object.values(biases.statuses).length > 0;
234
+ if (hasPlanBiases || hasPersonaBiases || hasStatusBiases) {
235
+ lines.push(' biases:');
236
+ if (hasPlanBiases && biases.plans) {
237
+ lines.push(' plans:');
238
+ for (const [plan, value] of Object.entries(biases.plans)) {
239
+ lines.push(` ${plan}: ${value > 0 ? '+' : ''}${value}`);
240
+ }
241
+ }
242
+ if (hasPersonaBiases && biases.personas) {
243
+ lines.push(' personas:');
244
+ for (const [persona, value] of Object.entries(biases.personas)) {
245
+ lines.push(` ${persona}: ${value > 0 ? '+' : ''}${value}`);
246
+ }
247
+ }
248
+ if (hasStatusBiases && biases.statuses) {
249
+ lines.push(' statuses:');
250
+ for (const [status, value] of Object.entries(biases.statuses)) {
251
+ lines.push(` ${status}: ${value > 0 ? '+' : ''}${value}`);
252
+ }
253
+ }
254
+ }
255
+ return lines.join('\n');
256
+ }
257
+ export function configScoringUpdate(resolveConfigPathFn, options) {
258
+ const configPath = resolveConfigPathFn();
259
+ if (!existsSync(configPath)) {
260
+ throw new Error(`Config file not found: ${configPath}`);
261
+ }
262
+ const content = readFileSync(configPath, 'utf-8');
263
+ const config = JSON.parse(content);
264
+ const typedConfig = config;
265
+ if (!typedConfig.scoring || typeof typedConfig.scoring !== 'object') {
266
+ typedConfig.scoring = { weights: {}, biases: {} };
267
+ }
268
+ if (!typedConfig.scoring.weights || typeof typedConfig.scoring.weights !== 'object') {
269
+ typedConfig.scoring.weights = {};
270
+ }
271
+ if (!typedConfig.scoring.biases || typeof typedConfig.scoring.biases !== 'object') {
272
+ typedConfig.scoring.biases = {};
273
+ }
274
+ const changes = [];
275
+ if (options.preset) {
276
+ if (!SCORING_PRESETS[options.preset]) {
277
+ throw new Error(`Unknown preset: ${options.preset}. Valid presets: ${Object.keys(SCORING_PRESETS).join(', ')}`);
278
+ }
279
+ typedConfig.scoring.preset = options.preset;
280
+ changes.push(` preset: ${options.preset}`);
281
+ if (!options.weights) {
282
+ typedConfig.scoring.weights = {};
283
+ }
284
+ if (!options.biases) {
285
+ typedConfig.scoring.biases = {};
286
+ }
287
+ }
288
+ if (options.weights && Object.keys(options.weights).length > 0) {
289
+ typedConfig.scoring.weights = {
290
+ ...typedConfig.scoring.weights,
291
+ ...options.weights,
292
+ };
293
+ for (const [key, value] of Object.entries(options.weights)) {
294
+ changes.push(` weight.${key}: ${value}`);
295
+ }
296
+ }
297
+ if (options.biases && Object.keys(options.biases).length > 0) {
298
+ const existingBiases = typedConfig.scoring.biases;
299
+ typedConfig.scoring.biases = {
300
+ ...existingBiases,
301
+ ...options.biases,
302
+ plans: {
303
+ ...(existingBiases?.plans ?? {}),
304
+ ...(options.biases.plans ?? {}),
305
+ },
306
+ personas: {
307
+ ...(existingBiases?.personas ?? {}),
308
+ ...(options.biases.personas ?? {}),
309
+ },
310
+ statuses: {
311
+ ...(existingBiases?.statuses ?? {}),
312
+ ...(options.biases.statuses ?? {}),
313
+ },
314
+ };
315
+ if (options.biases.plans) {
316
+ for (const [plan, value] of Object.entries(options.biases.plans)) {
317
+ changes.push(` bias.plan:${plan}=${value}`);
318
+ }
319
+ }
320
+ if (options.biases.personas) {
321
+ for (const [persona, value] of Object.entries(options.biases.personas)) {
322
+ changes.push(` bias.persona:${persona}=${value}`);
323
+ }
324
+ }
325
+ if (options.biases.statuses) {
326
+ for (const [status, value] of Object.entries(options.biases.statuses)) {
327
+ changes.push(` bias.status:${status}=${value}`);
328
+ }
329
+ }
330
+ }
331
+ if (changes.length === 0) {
332
+ return 'No scoring changes specified. Use --preset, --weight, or --bias to update scoring.';
333
+ }
334
+ writeFileSync(configPath, JSON.stringify(typedConfig, null, 2));
335
+ const lines = [];
336
+ lines.push('Updated scoring configuration:');
337
+ lines.push('');
338
+ lines.push(...changes);
339
+ lines.push('');
340
+ lines.push(`Config file: ${configPath}`);
341
+ return lines.join('\n');
342
+ }
201
343
  /**
202
344
  * Print the resolved config file path.
203
345
  *