@sudosandwich/limps 0.2.1 → 1.0.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 +250 -15
- package/dist/cli/config-cmd.d.ts +68 -0
- package/dist/cli/config-cmd.d.ts.map +1 -0
- package/dist/cli/config-cmd.js +206 -0
- package/dist/cli/config-cmd.js.map +1 -0
- package/dist/cli/index.d.ts +11 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +12 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/init-project.d.ts +12 -0
- package/dist/cli/init-project.d.ts.map +1 -0
- package/dist/cli/init-project.js +104 -0
- package/dist/cli/init-project.js.map +1 -0
- package/dist/cli/list-agents.d.ts +66 -0
- package/dist/cli/list-agents.d.ts.map +1 -0
- package/dist/cli/list-agents.js +147 -0
- package/dist/cli/list-agents.js.map +1 -0
- package/dist/cli/list-plans.d.ts +63 -0
- package/dist/cli/list-plans.d.ts.map +1 -0
- package/dist/cli/list-plans.js +218 -0
- package/dist/cli/list-plans.js.map +1 -0
- package/dist/cli/next-task.d.ts +83 -0
- package/dist/cli/next-task.d.ts.map +1 -0
- package/dist/cli/next-task.js +201 -0
- package/dist/cli/next-task.js.map +1 -0
- package/dist/cli/registry.d.ts +94 -0
- package/dist/cli/registry.d.ts.map +1 -0
- package/dist/cli/registry.js +150 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/cli/status.d.ts +35 -0
- package/dist/cli/status.d.ts.map +1 -0
- package/dist/cli/status.js +110 -0
- package/dist/cli/status.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +10 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/config/add.d.ts +9 -0
- package/dist/commands/config/add.d.ts.map +1 -0
- package/dist/commands/config/add.js +20 -0
- package/dist/commands/config/add.js.map +1 -0
- package/dist/commands/config/discover.d.ts +3 -0
- package/dist/commands/config/discover.d.ts.map +1 -0
- package/dist/commands/config/discover.js +9 -0
- package/dist/commands/config/discover.js.map +1 -0
- package/dist/commands/config/index.d.ts +3 -0
- package/dist/commands/config/index.d.ts.map +1 -0
- package/dist/commands/config/index.js +7 -0
- package/dist/commands/config/index.js.map +1 -0
- package/dist/commands/config/list.d.ts +3 -0
- package/dist/commands/config/list.d.ts.map +1 -0
- package/dist/commands/config/list.js +9 -0
- package/dist/commands/config/list.js.map +1 -0
- package/dist/commands/config/path.d.ts +3 -0
- package/dist/commands/config/path.d.ts.map +1 -0
- package/dist/commands/config/path.js +10 -0
- package/dist/commands/config/path.js.map +1 -0
- package/dist/commands/config/remove.d.ts +9 -0
- package/dist/commands/config/remove.d.ts.map +1 -0
- package/dist/commands/config/remove.js +17 -0
- package/dist/commands/config/remove.js.map +1 -0
- package/dist/commands/config/set.d.ts +9 -0
- package/dist/commands/config/set.d.ts.map +1 -0
- package/dist/commands/config/set.js +17 -0
- package/dist/commands/config/set.js.map +1 -0
- package/dist/commands/config/show.d.ts +3 -0
- package/dist/commands/config/show.d.ts.map +1 -0
- package/dist/commands/config/show.js +15 -0
- package/dist/commands/config/show.js.map +1 -0
- package/dist/commands/config/use.d.ts +9 -0
- package/dist/commands/config/use.d.ts.map +1 -0
- package/dist/commands/config/use.js +17 -0
- package/dist/commands/config/use.js.map +1 -0
- package/dist/commands/index.d.ts +3 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +7 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/init.d.ts +13 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +20 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/list-agents.d.ts +13 -0
- package/dist/commands/list-agents.d.ts.map +1 -0
- package/dist/commands/list-agents.js +31 -0
- package/dist/commands/list-agents.js.map +1 -0
- package/dist/commands/list-plans.d.ts +11 -0
- package/dist/commands/list-plans.d.ts.map +1 -0
- package/dist/commands/list-plans.js +21 -0
- package/dist/commands/list-plans.js.map +1 -0
- package/dist/commands/next-task.d.ts +13 -0
- package/dist/commands/next-task.d.ts.map +1 -0
- package/dist/commands/next-task.js +46 -0
- package/dist/commands/next-task.js.map +1 -0
- package/dist/commands/serve.d.ts +11 -0
- package/dist/commands/serve.d.ts.map +1 -0
- package/dist/commands/serve.js +31 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/status.d.ts +13 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +28 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/components/AgentsList.d.ts +19 -0
- package/dist/components/AgentsList.d.ts.map +1 -0
- package/dist/components/AgentsList.js +29 -0
- package/dist/components/AgentsList.js.map +1 -0
- package/dist/components/Error.d.ts +6 -0
- package/dist/components/Error.d.ts.map +1 -0
- package/dist/components/Error.js +6 -0
- package/dist/components/Error.js.map +1 -0
- package/dist/components/NextTask.d.ts +12 -0
- package/dist/components/NextTask.d.ts.map +1 -0
- package/dist/components/NextTask.js +11 -0
- package/dist/components/NextTask.js.map +1 -0
- package/dist/components/PlanStatus.d.ts +11 -0
- package/dist/components/PlanStatus.d.ts.map +1 -0
- package/dist/components/PlanStatus.js +18 -0
- package/dist/components/PlanStatus.js.map +1 -0
- package/dist/components/PlansList.d.ts +12 -0
- package/dist/components/PlansList.d.ts.map +1 -0
- package/dist/components/PlansList.js +23 -0
- package/dist/components/PlansList.js.map +1 -0
- package/dist/components/Success.d.ts +6 -0
- package/dist/components/Success.d.ts.map +1 -0
- package/dist/components/Success.js +6 -0
- package/dist/components/Success.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -246
- package/dist/index.js.map +1 -1
- package/dist/server-main.d.ts +11 -0
- package/dist/server-main.d.ts.map +1 -0
- package/dist/server-main.js +81 -0
- package/dist/server-main.js.map +1 -0
- package/dist/server.js +1 -1
- package/dist/server.js.map +1 -1
- package/dist/theme/colors.d.ts +64 -0
- package/dist/theme/colors.d.ts.map +1 -0
- package/dist/theme/colors.js +85 -0
- package/dist/theme/colors.js.map +1 -0
- package/dist/theme/index.d.ts +6 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +6 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/tools/claim-task.d.ts +7 -10
- package/dist/tools/claim-task.d.ts.map +1 -1
- package/dist/tools/create-doc.d.ts +7 -10
- package/dist/tools/create-doc.d.ts.map +1 -1
- package/dist/tools/create-plan.d.ts +1 -7
- package/dist/tools/create-plan.d.ts.map +1 -1
- package/dist/tools/delete-doc.d.ts +1 -9
- package/dist/tools/delete-doc.d.ts.map +1 -1
- package/dist/tools/get-next-task.d.ts +19 -9
- package/dist/tools/get-next-task.d.ts.map +1 -1
- package/dist/tools/get-next-task.js +64 -1
- package/dist/tools/get-next-task.js.map +1 -1
- package/dist/tools/get-plan-status.d.ts +24 -0
- package/dist/tools/get-plan-status.d.ts.map +1 -0
- package/dist/tools/get-plan-status.js +48 -0
- package/dist/tools/get-plan-status.js.map +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +66 -18
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/list-agents.d.ts +24 -0
- package/dist/tools/list-agents.d.ts.map +1 -0
- package/dist/tools/list-agents.js +60 -0
- package/dist/tools/list-agents.js.map +1 -0
- package/dist/tools/list-docs.d.ts +1 -11
- package/dist/tools/list-docs.d.ts.map +1 -1
- package/dist/tools/list-plans.d.ts +23 -0
- package/dist/tools/list-plans.d.ts.map +1 -0
- package/dist/tools/list-plans.js +44 -0
- package/dist/tools/list-plans.js.map +1 -0
- package/dist/tools/open-document-in-cursor.d.ts +1 -9
- package/dist/tools/open-document-in-cursor.d.ts.map +1 -1
- package/dist/tools/process-doc.d.ts +43 -0
- package/dist/tools/process-doc.d.ts.map +1 -0
- package/dist/tools/process-doc.js +227 -0
- package/dist/tools/process-doc.js.map +1 -0
- package/dist/tools/process-docs.d.ts +54 -0
- package/dist/tools/process-docs.d.ts.map +1 -0
- package/dist/tools/process-docs.js +348 -0
- package/dist/tools/process-docs.js.map +1 -0
- package/dist/tools/read-doc.d.ts +1 -7
- package/dist/tools/read-doc.d.ts.map +1 -1
- package/dist/tools/release-task.d.ts +5 -10
- package/dist/tools/release-task.d.ts.map +1 -1
- package/dist/tools/rlm-multi-query.d.ts +5 -61
- package/dist/tools/rlm-multi-query.d.ts.map +1 -1
- package/dist/tools/rlm-query.d.ts +1 -13
- package/dist/tools/rlm-query.d.ts.map +1 -1
- package/dist/tools/search-docs.d.ts +1 -7
- package/dist/tools/search-docs.d.ts.map +1 -1
- package/dist/tools/update-doc.d.ts +6 -90
- package/dist/tools/update-doc.d.ts.map +1 -1
- package/dist/tools/update-task-status.d.ts +7 -12
- package/dist/tools/update-task-status.d.ts.map +1 -1
- package/dist/utils/config-resolver.d.ts +19 -0
- package/dist/utils/config-resolver.d.ts.map +1 -0
- package/dist/utils/config-resolver.js +65 -0
- package/dist/utils/config-resolver.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/markdown.d.ts +15 -0
- package/dist/utils/markdown.d.ts.map +1 -0
- package/dist/utils/markdown.js +20 -0
- package/dist/utils/markdown.js.map +1 -0
- package/dist/utils/os-paths.d.ts +4 -4
- package/dist/utils/os-paths.js +5 -5
- package/dist/utils/os-paths.js.map +1 -1
- package/package.json +22 -11
|
@@ -10,15 +10,7 @@ export declare const PatchSchema: z.ZodObject<{
|
|
|
10
10
|
search: z.ZodString;
|
|
11
11
|
replace: z.ZodString;
|
|
12
12
|
all: z.ZodDefault<z.ZodBoolean>;
|
|
13
|
-
},
|
|
14
|
-
replace: string;
|
|
15
|
-
search: string;
|
|
16
|
-
all: boolean;
|
|
17
|
-
}, {
|
|
18
|
-
replace: string;
|
|
19
|
-
search: string;
|
|
20
|
-
all?: boolean | undefined;
|
|
21
|
-
}>;
|
|
13
|
+
}, z.core.$strip>;
|
|
22
14
|
/**
|
|
23
15
|
* Base input schema for update_doc tool (for registration).
|
|
24
16
|
*/
|
|
@@ -29,100 +21,24 @@ export declare const UpdateDocInputBaseSchema: z.ZodObject<{
|
|
|
29
21
|
search: z.ZodString;
|
|
30
22
|
replace: z.ZodString;
|
|
31
23
|
all: z.ZodDefault<z.ZodBoolean>;
|
|
32
|
-
},
|
|
33
|
-
replace: string;
|
|
34
|
-
search: string;
|
|
35
|
-
all: boolean;
|
|
36
|
-
}, {
|
|
37
|
-
replace: string;
|
|
38
|
-
search: string;
|
|
39
|
-
all?: boolean | undefined;
|
|
40
|
-
}>>;
|
|
24
|
+
}, z.core.$strip>>;
|
|
41
25
|
createBackup: z.ZodDefault<z.ZodBoolean>;
|
|
42
26
|
force: z.ZodDefault<z.ZodBoolean>;
|
|
43
|
-
},
|
|
44
|
-
path: string;
|
|
45
|
-
force: boolean;
|
|
46
|
-
createBackup: boolean;
|
|
47
|
-
content?: string | undefined;
|
|
48
|
-
patch?: {
|
|
49
|
-
replace: string;
|
|
50
|
-
search: string;
|
|
51
|
-
all: boolean;
|
|
52
|
-
} | undefined;
|
|
53
|
-
}, {
|
|
54
|
-
path: string;
|
|
55
|
-
content?: string | undefined;
|
|
56
|
-
force?: boolean | undefined;
|
|
57
|
-
patch?: {
|
|
58
|
-
replace: string;
|
|
59
|
-
search: string;
|
|
60
|
-
all?: boolean | undefined;
|
|
61
|
-
} | undefined;
|
|
62
|
-
createBackup?: boolean | undefined;
|
|
63
|
-
}>;
|
|
27
|
+
}, z.core.$strip>;
|
|
64
28
|
/**
|
|
65
29
|
* Input schema for update_doc tool (with validation).
|
|
66
30
|
*/
|
|
67
|
-
export declare const UpdateDocInputSchema: z.
|
|
31
|
+
export declare const UpdateDocInputSchema: z.ZodObject<{
|
|
68
32
|
path: z.ZodString;
|
|
69
33
|
content: z.ZodOptional<z.ZodString>;
|
|
70
34
|
patch: z.ZodOptional<z.ZodObject<{
|
|
71
35
|
search: z.ZodString;
|
|
72
36
|
replace: z.ZodString;
|
|
73
37
|
all: z.ZodDefault<z.ZodBoolean>;
|
|
74
|
-
},
|
|
75
|
-
replace: string;
|
|
76
|
-
search: string;
|
|
77
|
-
all: boolean;
|
|
78
|
-
}, {
|
|
79
|
-
replace: string;
|
|
80
|
-
search: string;
|
|
81
|
-
all?: boolean | undefined;
|
|
82
|
-
}>>;
|
|
38
|
+
}, z.core.$strip>>;
|
|
83
39
|
createBackup: z.ZodDefault<z.ZodBoolean>;
|
|
84
40
|
force: z.ZodDefault<z.ZodBoolean>;
|
|
85
|
-
},
|
|
86
|
-
path: string;
|
|
87
|
-
force: boolean;
|
|
88
|
-
createBackup: boolean;
|
|
89
|
-
content?: string | undefined;
|
|
90
|
-
patch?: {
|
|
91
|
-
replace: string;
|
|
92
|
-
search: string;
|
|
93
|
-
all: boolean;
|
|
94
|
-
} | undefined;
|
|
95
|
-
}, {
|
|
96
|
-
path: string;
|
|
97
|
-
content?: string | undefined;
|
|
98
|
-
force?: boolean | undefined;
|
|
99
|
-
patch?: {
|
|
100
|
-
replace: string;
|
|
101
|
-
search: string;
|
|
102
|
-
all?: boolean | undefined;
|
|
103
|
-
} | undefined;
|
|
104
|
-
createBackup?: boolean | undefined;
|
|
105
|
-
}>, {
|
|
106
|
-
path: string;
|
|
107
|
-
force: boolean;
|
|
108
|
-
createBackup: boolean;
|
|
109
|
-
content?: string | undefined;
|
|
110
|
-
patch?: {
|
|
111
|
-
replace: string;
|
|
112
|
-
search: string;
|
|
113
|
-
all: boolean;
|
|
114
|
-
} | undefined;
|
|
115
|
-
}, {
|
|
116
|
-
path: string;
|
|
117
|
-
content?: string | undefined;
|
|
118
|
-
force?: boolean | undefined;
|
|
119
|
-
patch?: {
|
|
120
|
-
replace: string;
|
|
121
|
-
search: string;
|
|
122
|
-
all?: boolean | undefined;
|
|
123
|
-
} | undefined;
|
|
124
|
-
createBackup?: boolean | undefined;
|
|
125
|
-
}>;
|
|
41
|
+
}, z.core.$strip>;
|
|
126
42
|
export type UpdateDocInput = z.infer<typeof UpdateDocInputSchema>;
|
|
127
43
|
/**
|
|
128
44
|
* Output interface for update_doc tool.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-doc.d.ts","sourceRoot":"","sources":["../../src/tools/update-doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,WAAW
|
|
1
|
+
{"version":3,"file":"update-doc.d.ts","sourceRoot":"","sources":["../../src/tools/update-doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,WAAW;;;;iBAItB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;iBAMnC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;iBAGhC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AA8CD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAsJrB"}
|
|
@@ -5,20 +5,15 @@ import type { ToolContext, ToolResult } from '../types.js';
|
|
|
5
5
|
*/
|
|
6
6
|
export declare const UpdateTaskStatusInputSchema: z.ZodObject<{
|
|
7
7
|
taskId: z.ZodString;
|
|
8
|
-
status: z.ZodEnum<
|
|
8
|
+
status: z.ZodEnum<{
|
|
9
|
+
GAP: "GAP";
|
|
10
|
+
WIP: "WIP";
|
|
11
|
+
PASS: "PASS";
|
|
12
|
+
BLOCKED: "BLOCKED";
|
|
13
|
+
}>;
|
|
9
14
|
agentId: z.ZodOptional<z.ZodString>;
|
|
10
15
|
notes: z.ZodOptional<z.ZodString>;
|
|
11
|
-
},
|
|
12
|
-
status: "GAP" | "WIP" | "PASS" | "BLOCKED";
|
|
13
|
-
taskId: string;
|
|
14
|
-
agentId?: string | undefined;
|
|
15
|
-
notes?: string | undefined;
|
|
16
|
-
}, {
|
|
17
|
-
status: "GAP" | "WIP" | "PASS" | "BLOCKED";
|
|
18
|
-
taskId: string;
|
|
19
|
-
agentId?: string | undefined;
|
|
20
|
-
notes?: string | undefined;
|
|
21
|
-
}>;
|
|
16
|
+
}, z.core.$strip>;
|
|
22
17
|
/**
|
|
23
18
|
* Handle update_task_status tool request.
|
|
24
19
|
* Updates task status in planning documents (GAP → WIP → PASS/BLOCKED).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-task-status.d.ts","sourceRoot":"","sources":["../../src/tools/update-task-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,2BAA2B
|
|
1
|
+
{"version":3,"file":"update-task-status.d.ts","sourceRoot":"","sources":["../../src/tools/update-task-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;iBAKtC,CAAC;AAyLH;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,EAClD,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CA0JrB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration path resolution utility.
|
|
3
|
+
* Shared between CLI commands and server startup.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Resolve configuration file path with priority:
|
|
7
|
+
* 1. CLI argument --config
|
|
8
|
+
* 2. Environment variable MCP_PLANNING_CONFIG
|
|
9
|
+
* 3. Environment variable LIMPS_PROJECT (project name → registry lookup)
|
|
10
|
+
* 4. Registry current project
|
|
11
|
+
* 5. OS-specific default path
|
|
12
|
+
*
|
|
13
|
+
* Falls back to repo-local config.json if no config exists at determined path.
|
|
14
|
+
*
|
|
15
|
+
* @param cliConfigPath - Config path from CLI argument (if provided)
|
|
16
|
+
* @returns Resolved absolute path to config file
|
|
17
|
+
*/
|
|
18
|
+
export declare function resolveConfigPath(cliConfigPath?: string): string;
|
|
19
|
+
//# sourceMappingURL=config-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/config-resolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAgDhE"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration path resolution utility.
|
|
3
|
+
* Shared between CLI commands and server startup.
|
|
4
|
+
*/
|
|
5
|
+
import { resolve, dirname } from 'path';
|
|
6
|
+
import { existsSync } from 'fs';
|
|
7
|
+
import { fileURLToPath } from 'url';
|
|
8
|
+
import { getCurrentProjectPath, getProjectPath } from '../cli/registry.js';
|
|
9
|
+
import { getOSConfigPath } from './os-paths.js';
|
|
10
|
+
/**
|
|
11
|
+
* Resolve configuration file path with priority:
|
|
12
|
+
* 1. CLI argument --config
|
|
13
|
+
* 2. Environment variable MCP_PLANNING_CONFIG
|
|
14
|
+
* 3. Environment variable LIMPS_PROJECT (project name → registry lookup)
|
|
15
|
+
* 4. Registry current project
|
|
16
|
+
* 5. OS-specific default path
|
|
17
|
+
*
|
|
18
|
+
* Falls back to repo-local config.json if no config exists at determined path.
|
|
19
|
+
*
|
|
20
|
+
* @param cliConfigPath - Config path from CLI argument (if provided)
|
|
21
|
+
* @returns Resolved absolute path to config file
|
|
22
|
+
*/
|
|
23
|
+
export function resolveConfigPath(cliConfigPath) {
|
|
24
|
+
// Priority 1: CLI argument
|
|
25
|
+
if (cliConfigPath) {
|
|
26
|
+
return resolve(cliConfigPath);
|
|
27
|
+
}
|
|
28
|
+
// Priority 2: Environment variable MCP_PLANNING_CONFIG
|
|
29
|
+
const envConfigPath = process.env.MCP_PLANNING_CONFIG;
|
|
30
|
+
if (envConfigPath) {
|
|
31
|
+
return resolve(envConfigPath);
|
|
32
|
+
}
|
|
33
|
+
// Priority 3: LIMPS_PROJECT env → registry lookup
|
|
34
|
+
const envProject = process.env.LIMPS_PROJECT;
|
|
35
|
+
if (envProject) {
|
|
36
|
+
const projectPath = getProjectPath(envProject);
|
|
37
|
+
if (projectPath && existsSync(projectPath)) {
|
|
38
|
+
return projectPath;
|
|
39
|
+
}
|
|
40
|
+
// Warn but don't fail - fall through to next priority
|
|
41
|
+
console.error(`Warning: LIMPS_PROJECT="${envProject}" not found in registry`);
|
|
42
|
+
}
|
|
43
|
+
// Priority 4: Registry current project
|
|
44
|
+
const currentPath = getCurrentProjectPath();
|
|
45
|
+
if (currentPath && existsSync(currentPath)) {
|
|
46
|
+
return currentPath;
|
|
47
|
+
}
|
|
48
|
+
// Priority 5: OS-specific default
|
|
49
|
+
const osConfigPath = getOSConfigPath();
|
|
50
|
+
if (existsSync(osConfigPath)) {
|
|
51
|
+
return osConfigPath;
|
|
52
|
+
}
|
|
53
|
+
// Fallback: repo-local config.json (for development/backwards compatibility)
|
|
54
|
+
const currentFile = fileURLToPath(import.meta.url);
|
|
55
|
+
const currentDir = dirname(currentFile);
|
|
56
|
+
const srcDir = dirname(currentDir);
|
|
57
|
+
const repoRoot = dirname(srcDir);
|
|
58
|
+
const repoConfigPath = resolve(repoRoot, 'config.json');
|
|
59
|
+
// If neither OS config nor repo config exists, use OS path (will be created)
|
|
60
|
+
if (existsSync(repoConfigPath)) {
|
|
61
|
+
return repoConfigPath;
|
|
62
|
+
}
|
|
63
|
+
return osConfigPath;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=config-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-resolver.js","sourceRoot":"","sources":["../../src/utils/config-resolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,aAAsB;IACtD,2BAA2B;IAC3B,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAED,uDAAuD;IACvD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IACtD,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAED,kDAAkD;IAClD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IAC7C,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,WAAW,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,sDAAsD;QACtD,OAAO,CAAC,KAAK,CAAC,2BAA2B,UAAU,yBAAyB,CAAC,CAAC;IAChF,CAAC;IAED,uCAAuC;IACvC,MAAM,WAAW,GAAG,qBAAqB,EAAE,CAAC;IAC5C,IAAI,WAAW,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3C,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,kCAAkC;IAClC,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,6EAA6E;IAC7E,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAExD,6EAA6E;IAC7E,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
|
package/dist/utils/index.js
CHANGED
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,0BAA0B;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,0BAA0B;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for markdown text processing.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Strip all markdown syntax from text, converting it to plain text.
|
|
6
|
+
* Uses the remove-markdown library for reliable markdown removal.
|
|
7
|
+
*
|
|
8
|
+
* This is for CLI display - LLM processing happens elsewhere
|
|
9
|
+
* and should receive full markdown.
|
|
10
|
+
*
|
|
11
|
+
* @param text - Markdown text to strip
|
|
12
|
+
* @returns Plain text without markdown syntax
|
|
13
|
+
*/
|
|
14
|
+
export declare function stripMarkdown(text: string): string;
|
|
15
|
+
//# sourceMappingURL=markdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/utils/markdown.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGlD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for markdown text processing.
|
|
3
|
+
*/
|
|
4
|
+
import removeMarkdown from 'remove-markdown';
|
|
5
|
+
/**
|
|
6
|
+
* Strip all markdown syntax from text, converting it to plain text.
|
|
7
|
+
* Uses the remove-markdown library for reliable markdown removal.
|
|
8
|
+
*
|
|
9
|
+
* This is for CLI display - LLM processing happens elsewhere
|
|
10
|
+
* and should receive full markdown.
|
|
11
|
+
*
|
|
12
|
+
* @param text - Markdown text to strip
|
|
13
|
+
* @returns Plain text without markdown syntax
|
|
14
|
+
*/
|
|
15
|
+
export function stripMarkdown(text) {
|
|
16
|
+
if (!text)
|
|
17
|
+
return '';
|
|
18
|
+
return removeMarkdown(text).trim();
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=markdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/utils/markdown.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,cAAc,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AACrC,CAAC"}
|
package/dist/utils/os-paths.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* Get the OS-specific base directory for application data.
|
|
7
7
|
*
|
|
8
|
-
* @param appName - Application/project name (defaults to
|
|
8
|
+
* @param appName - Application/project name (defaults to limps)
|
|
9
9
|
* @returns Absolute path to the base directory
|
|
10
10
|
*/
|
|
11
11
|
export declare function getOSBasePath(appName?: string): string;
|
|
@@ -16,7 +16,7 @@ export declare function getOSBasePath(appName?: string): string;
|
|
|
16
16
|
* - Windows: %APPDATA%\{appName}\config.json
|
|
17
17
|
* - Linux/others: ~/.config/{appName}/config.json (XDG_CONFIG_HOME)
|
|
18
18
|
*
|
|
19
|
-
* @param appName - Application/project name (defaults to
|
|
19
|
+
* @param appName - Application/project name (defaults to limps)
|
|
20
20
|
* @returns Absolute path to the default config file location
|
|
21
21
|
*/
|
|
22
22
|
export declare function getOSConfigPath(appName?: string): string;
|
|
@@ -27,7 +27,7 @@ export declare function getOSConfigPath(appName?: string): string;
|
|
|
27
27
|
* - Windows: %APPDATA%\{appName}\data
|
|
28
28
|
* - Linux/others: ~/.local/share/{appName}/data (XDG_DATA_HOME)
|
|
29
29
|
*
|
|
30
|
-
* @param appName - Application/project name (defaults to
|
|
30
|
+
* @param appName - Application/project name (defaults to limps)
|
|
31
31
|
* @returns Absolute path to the default data directory
|
|
32
32
|
*/
|
|
33
33
|
export declare function getOSDataPath(appName?: string): string;
|
|
@@ -38,7 +38,7 @@ export declare function getOSDataPath(appName?: string): string;
|
|
|
38
38
|
* - Windows: %APPDATA%\{appName}\coordination.json
|
|
39
39
|
* - Linux/others: ~/.local/share/{appName}/coordination.json (XDG_DATA_HOME)
|
|
40
40
|
*
|
|
41
|
-
* @param appName - Application/project name (defaults to
|
|
41
|
+
* @param appName - Application/project name (defaults to limps)
|
|
42
42
|
* @returns Absolute path to the default coordination file
|
|
43
43
|
*/
|
|
44
44
|
export declare function getOSCoordinationPath(appName?: string): string;
|
package/dist/utils/os-paths.js
CHANGED
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { homedir } from 'os';
|
|
6
6
|
import { join } from 'path';
|
|
7
|
-
const DEFAULT_APP_NAME = '
|
|
7
|
+
const DEFAULT_APP_NAME = 'limps';
|
|
8
8
|
/**
|
|
9
9
|
* Get the OS-specific base directory for application data.
|
|
10
10
|
*
|
|
11
|
-
* @param appName - Application/project name (defaults to
|
|
11
|
+
* @param appName - Application/project name (defaults to limps)
|
|
12
12
|
* @returns Absolute path to the base directory
|
|
13
13
|
*/
|
|
14
14
|
export function getOSBasePath(appName = DEFAULT_APP_NAME) {
|
|
@@ -29,7 +29,7 @@ export function getOSBasePath(appName = DEFAULT_APP_NAME) {
|
|
|
29
29
|
* - Windows: %APPDATA%\{appName}\config.json
|
|
30
30
|
* - Linux/others: ~/.config/{appName}/config.json (XDG_CONFIG_HOME)
|
|
31
31
|
*
|
|
32
|
-
* @param appName - Application/project name (defaults to
|
|
32
|
+
* @param appName - Application/project name (defaults to limps)
|
|
33
33
|
* @returns Absolute path to the default config file location
|
|
34
34
|
*/
|
|
35
35
|
export function getOSConfigPath(appName = DEFAULT_APP_NAME) {
|
|
@@ -42,7 +42,7 @@ export function getOSConfigPath(appName = DEFAULT_APP_NAME) {
|
|
|
42
42
|
* - Windows: %APPDATA%\{appName}\data
|
|
43
43
|
* - Linux/others: ~/.local/share/{appName}/data (XDG_DATA_HOME)
|
|
44
44
|
*
|
|
45
|
-
* @param appName - Application/project name (defaults to
|
|
45
|
+
* @param appName - Application/project name (defaults to limps)
|
|
46
46
|
* @returns Absolute path to the default data directory
|
|
47
47
|
*/
|
|
48
48
|
export function getOSDataPath(appName = DEFAULT_APP_NAME) {
|
|
@@ -64,7 +64,7 @@ export function getOSDataPath(appName = DEFAULT_APP_NAME) {
|
|
|
64
64
|
* - Windows: %APPDATA%\{appName}\coordination.json
|
|
65
65
|
* - Linux/others: ~/.local/share/{appName}/coordination.json (XDG_DATA_HOME)
|
|
66
66
|
*
|
|
67
|
-
* @param appName - Application/project name (defaults to
|
|
67
|
+
* @param appName - Application/project name (defaults to limps)
|
|
68
68
|
* @returns Absolute path to the default coordination file
|
|
69
69
|
*/
|
|
70
70
|
export function getOSCoordinationPath(appName = DEFAULT_APP_NAME) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"os-paths.js","sourceRoot":"","sources":["../../src/utils/os-paths.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,gBAAgB,GAAG,
|
|
1
|
+
{"version":3,"file":"os-paths.js","sourceRoot":"","sources":["../../src/utils/os-paths.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAEjC;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,UAAkB,gBAAgB;IAC9D,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,QAAQ,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC/D,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;QAChF;YACE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB,gBAAgB;IAChE,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,UAAkB,gBAAgB;IAC9D,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,QAAQ,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9C,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9C;YACE,yDAAyD;YACzD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7F,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CAAC,UAAkB,gBAAgB;IACtE,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,QAAQ,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAC3D,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAC3D;YACE,OAAO,IAAI,CACT,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAC1D,OAAO,EACP,mBAAmB,CACpB,CAAC;IACN,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudosandwich/limps",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Local Intelligent MCP Planning Server - AI agent plan management and coordination",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"bin": {
|
|
8
|
-
"limps": "dist/
|
|
8
|
+
"limps": "dist/cli.js"
|
|
9
9
|
},
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "vitest run",
|
|
@@ -13,10 +13,13 @@
|
|
|
13
13
|
"test:coverage": "vitest run --coverage",
|
|
14
14
|
"build": "tsc",
|
|
15
15
|
"dev": "tsc --watch",
|
|
16
|
-
"
|
|
16
|
+
"type-check": "tsc --noEmit",
|
|
17
|
+
"lint": "eslint src/ tests/ --max-warnings 0",
|
|
17
18
|
"lint:fix": "eslint src/ tests/ --fix",
|
|
18
|
-
"format": "prettier --write \"src/**/*.ts\" \"tests/**/*.ts\"",
|
|
19
|
-
"format:check": "prettier --check \"src/**/*.ts\" \"tests/**/*.ts\"",
|
|
19
|
+
"format": "prettier --write \"src/**/*.{ts,tsx}\" \"tests/**/*.{ts,tsx}\"",
|
|
20
|
+
"format:check": "prettier --check \"src/**/*.{ts,tsx}\" \"tests/**/*.{ts,tsx}\"",
|
|
21
|
+
"validate": "npm run format:check && npm run lint && npm run type-check && npm run build && npm test",
|
|
22
|
+
"ci": "npm run validate",
|
|
20
23
|
"prepare": "husky"
|
|
21
24
|
},
|
|
22
25
|
"keywords": [
|
|
@@ -39,7 +42,7 @@
|
|
|
39
42
|
"license": "MIT",
|
|
40
43
|
"repository": {
|
|
41
44
|
"type": "git",
|
|
42
|
-
"url": "git+https://github.com/paulbreuler/
|
|
45
|
+
"url": "git+https://github.com/paulbreuler/limps.git"
|
|
43
46
|
},
|
|
44
47
|
"files": [
|
|
45
48
|
"dist",
|
|
@@ -50,21 +53,27 @@
|
|
|
50
53
|
"@modelcontextprotocol/sdk": "^1.22.0",
|
|
51
54
|
"better-sqlite3": "^11.7.0",
|
|
52
55
|
"chokidar": "^4.0.3",
|
|
56
|
+
"ink": "^6.6.0",
|
|
53
57
|
"micromatch": "^4.0.8",
|
|
54
58
|
"open": "^10.2.0",
|
|
59
|
+
"pastel": "^4.0.0",
|
|
55
60
|
"quickjs-emscripten": "^0.31.0",
|
|
61
|
+
"react": "^19.2.3",
|
|
62
|
+
"remove-markdown": "^0.6.3",
|
|
56
63
|
"which": "^4.0.0",
|
|
57
64
|
"yaml": "^2.7.0",
|
|
58
|
-
"zod": "^3.
|
|
65
|
+
"zod": "^4.3.6"
|
|
59
66
|
},
|
|
60
67
|
"lint-staged": {
|
|
61
|
-
"src/**/*.ts": [
|
|
68
|
+
"src/**/*.{ts,tsx}": [
|
|
62
69
|
"prettier --write",
|
|
63
|
-
"eslint --fix"
|
|
70
|
+
"eslint --fix",
|
|
71
|
+
"eslint"
|
|
64
72
|
],
|
|
65
|
-
"tests/**/*.ts": [
|
|
73
|
+
"tests/**/*.{ts,tsx}": [
|
|
66
74
|
"prettier --write",
|
|
67
|
-
"eslint --fix"
|
|
75
|
+
"eslint --fix",
|
|
76
|
+
"eslint"
|
|
68
77
|
]
|
|
69
78
|
},
|
|
70
79
|
"devDependencies": {
|
|
@@ -72,10 +81,12 @@
|
|
|
72
81
|
"@types/better-sqlite3": "^7.6.12",
|
|
73
82
|
"@types/micromatch": "^4.0.10",
|
|
74
83
|
"@types/node": "^25.0.9",
|
|
84
|
+
"@types/react": "^19.2.9",
|
|
75
85
|
"@types/which": "^3.0.4",
|
|
76
86
|
"@vitest/coverage-v8": "^4.0.17",
|
|
77
87
|
"eslint": "^9.39.2",
|
|
78
88
|
"husky": "^9.1.7",
|
|
89
|
+
"ink-testing-library": "^4.0.0",
|
|
79
90
|
"lint-staged": "^16.2.7",
|
|
80
91
|
"prettier": "^3.8.0",
|
|
81
92
|
"typescript": "^5.9.3",
|