@rryando/arcs 3.1.2 → 3.2.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 (90) hide show
  1. package/README.md +65 -40
  2. package/dist/cli/arg-parser.d.ts +3 -3
  3. package/dist/cli/arg-parser.d.ts.map +1 -1
  4. package/dist/cli/arg-parser.js +1 -1
  5. package/dist/cli/arg-parser.js.map +1 -1
  6. package/dist/cli/bundle-installer.d.ts +11 -0
  7. package/dist/cli/bundle-installer.d.ts.map +1 -1
  8. package/dist/cli/bundle-installer.js +14 -4
  9. package/dist/cli/bundle-installer.js.map +1 -1
  10. package/dist/cli/command-registry.d.ts +61 -6
  11. package/dist/cli/command-registry.d.ts.map +1 -1
  12. package/dist/cli/command-registry.js.map +1 -1
  13. package/dist/cli/commands/batch.js +17 -16
  14. package/dist/cli/commands/batch.js.map +1 -1
  15. package/dist/cli/commands/brief.js +71 -74
  16. package/dist/cli/commands/brief.js.map +1 -1
  17. package/dist/cli/commands/bundle.js +79 -31
  18. package/dist/cli/commands/bundle.js.map +1 -1
  19. package/dist/cli/commands/dependency.js +47 -43
  20. package/dist/cli/commands/dependency.js.map +1 -1
  21. package/dist/cli/commands/diagnostics.js.map +1 -1
  22. package/dist/cli/commands/diagram.js +39 -55
  23. package/dist/cli/commands/diagram.js.map +1 -1
  24. package/dist/cli/commands/done.js +19 -18
  25. package/dist/cli/commands/done.js.map +1 -1
  26. package/dist/cli/commands/graph.js +12 -10
  27. package/dist/cli/commands/graph.js.map +1 -1
  28. package/dist/cli/commands/knowledge-search.js +11 -12
  29. package/dist/cli/commands/knowledge-search.js.map +1 -1
  30. package/dist/cli/commands/knowledge.js +63 -56
  31. package/dist/cli/commands/knowledge.js.map +1 -1
  32. package/dist/cli/commands/loop.js +40 -36
  33. package/dist/cli/commands/loop.js.map +1 -1
  34. package/dist/cli/commands/maintenance.js +16 -13
  35. package/dist/cli/commands/maintenance.js.map +1 -1
  36. package/dist/cli/commands/next.js +9 -8
  37. package/dist/cli/commands/next.js.map +1 -1
  38. package/dist/cli/commands/plan.js +61 -55
  39. package/dist/cli/commands/plan.js.map +1 -1
  40. package/dist/cli/commands/project-updates.js +37 -33
  41. package/dist/cli/commands/project-updates.js.map +1 -1
  42. package/dist/cli/commands/project.js +21 -17
  43. package/dist/cli/commands/project.js.map +1 -1
  44. package/dist/cli/commands/remember.js +6 -6
  45. package/dist/cli/commands/remember.js.map +1 -1
  46. package/dist/cli/commands/status.js +9 -8
  47. package/dist/cli/commands/status.js.map +1 -1
  48. package/dist/cli/commands/task.d.ts +1 -5
  49. package/dist/cli/commands/task.d.ts.map +1 -1
  50. package/dist/cli/commands/task.js +180 -248
  51. package/dist/cli/commands/task.js.map +1 -1
  52. package/dist/cli/commands/utility.d.ts.map +1 -1
  53. package/dist/cli/commands/utility.js +39 -35
  54. package/dist/cli/commands/utility.js.map +1 -1
  55. package/dist/cli/dag-commands.js.map +1 -1
  56. package/dist/cli/help-generator.d.ts +3 -3
  57. package/dist/cli/help-generator.d.ts.map +1 -1
  58. package/dist/cli/help-generator.js +1 -1
  59. package/dist/cli/help-generator.js.map +1 -1
  60. package/dist/cli/setup.d.ts.map +1 -1
  61. package/dist/cli/setup.js +235 -113
  62. package/dist/cli/setup.js.map +1 -1
  63. package/dist/utils/diagram-store.d.ts +45 -0
  64. package/dist/utils/diagram-store.d.ts.map +1 -0
  65. package/dist/utils/diagram-store.js +99 -0
  66. package/dist/utils/diagram-store.js.map +1 -0
  67. package/dist/utils/errors.d.ts.map +1 -1
  68. package/dist/utils/errors.js.map +1 -1
  69. package/dist/utils/json-schemas.d.ts +7 -0
  70. package/dist/utils/json-schemas.d.ts.map +1 -1
  71. package/dist/utils/json-schemas.js +1 -0
  72. package/dist/utils/json-schemas.js.map +1 -1
  73. package/dist/utils/storage-utils.d.ts +1 -1
  74. package/dist/utils/storage-utils.d.ts.map +1 -1
  75. package/dist/utils/storage-utils.js +1 -1
  76. package/dist/utils/storage-utils.js.map +1 -1
  77. package/dist/utils/task-store.d.ts.map +1 -1
  78. package/dist/utils/task-store.js +6 -5
  79. package/dist/utils/task-store.js.map +1 -1
  80. package/dist/utils/toposort.d.ts +1 -1
  81. package/dist/utils/toposort.d.ts.map +1 -1
  82. package/dist/utils/toposort.js +5 -4
  83. package/dist/utils/toposort.js.map +1 -1
  84. package/dist/utils/workflow-policy.d.ts +1 -1
  85. package/dist/utils/workflow-policy.d.ts.map +1 -1
  86. package/dist/utils/workflow-policy.js +1 -1
  87. package/dist/utils/workflow-policy.js.map +1 -1
  88. package/opencode/arcs/manifest.json +47 -66
  89. package/package.json +1 -1
  90. package/scripts/deploy-claudecode-bundle.mjs +414 -0
@@ -1,39 +1,17 @@
1
1
  // ---------------------------------------------------------------------------
2
2
  // Diagram commands — registry-based
3
3
  // ---------------------------------------------------------------------------
4
- import { execSync } from "node:child_process";
5
4
  import { existsSync } from "node:fs";
6
5
  import { access, writeFile } from "node:fs/promises";
7
- import { homedir } from "node:os";
8
- import { resolve } from "node:path";
9
6
  import { generateDiagramFromTasks } from "../../utils/diagram-generator.js";
10
- import { getDataDir, getProjectDir } from "../../utils/paths.js";
7
+ import { findDiagramScript, resolveDiagramPath, runDiagramScript, } from "../../utils/diagram-store.js";
8
+ import { getProjectDir } from "../../utils/paths.js";
11
9
  import { listTasks } from "../../utils/project-memory.js";
12
10
  import { defineCommand, ERROR_CODES, } from "../command-registry.js";
13
11
  import { failure, success } from "../output-envelope.js";
14
12
  // ---------------------------------------------------------------------------
15
13
  // Helpers
16
14
  // ---------------------------------------------------------------------------
17
- function findDiagramScript() {
18
- const localPath = resolve(import.meta.dirname, "../../../opencode/arcs/skills/to-diagram/scripts/manage-diagram.mjs");
19
- if (existsSync(localPath))
20
- return localPath;
21
- const configPath = resolve(homedir(), ".config/opencode/skills/arcs/to-diagram/scripts/manage-diagram.mjs");
22
- if (existsSync(configPath))
23
- return configPath;
24
- return undefined;
25
- }
26
- function resolveDiagramPath(slug, planId) {
27
- const dataDir = getDataDir();
28
- return resolve(dataDir, "projects", slug, "plans", `${planId}.diagram.mmd`);
29
- }
30
- function runDiagramScript(scriptPath, subcommand, diagramPath, extraArgs = []) {
31
- const argsStr = extraArgs.map((a) => `"${a}"`).join(" ");
32
- return execSync(`node "${scriptPath}" ${subcommand} "${diagramPath}"${argsStr ? ` ${argsStr}` : ""}`, {
33
- encoding: "utf-8",
34
- timeout: 10000,
35
- }).trim();
36
- }
37
15
  function requireScript() {
38
16
  const scriptPath = findDiagramScript();
39
17
  if (!scriptPath) {
@@ -59,13 +37,14 @@ function parseScriptOutput(output) {
59
37
  // ---------------------------------------------------------------------------
60
38
  // diagram ready
61
39
  // ---------------------------------------------------------------------------
40
+ const diagramReadyParams = {
41
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
42
+ planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
43
+ };
62
44
  defineCommand({
63
45
  path: "diagram ready",
64
46
  description: "Show ready-to-execute nodes (all dependencies done)",
65
- params: {
66
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
67
- planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
68
- },
47
+ params: diagramReadyParams,
69
48
  handler: handleDiagramReady,
70
49
  });
71
50
  async function handleDiagramReady(params, _flags) {
@@ -89,13 +68,14 @@ async function handleDiagramReady(params, _flags) {
89
68
  // ---------------------------------------------------------------------------
90
69
  // diagram inspect
91
70
  // ---------------------------------------------------------------------------
71
+ const diagramInspectParams = {
72
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
73
+ planId: { type: "string", positional: 1, description: "Plan ID" },
74
+ };
92
75
  defineCommand({
93
76
  path: "diagram inspect",
94
77
  description: "Show diagram structure and metadata",
95
- params: {
96
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
97
- planId: { type: "string", positional: 1, description: "Plan ID" },
98
- },
78
+ params: diagramInspectParams,
99
79
  handler: handleDiagramInspect,
100
80
  });
101
81
  async function handleDiagramInspect(params, _flags) {
@@ -128,13 +108,14 @@ async function handleDiagramInspect(params, _flags) {
128
108
  // ---------------------------------------------------------------------------
129
109
  // diagram validate
130
110
  // ---------------------------------------------------------------------------
111
+ const diagramValidateParams = {
112
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
113
+ planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
114
+ };
131
115
  defineCommand({
132
116
  path: "diagram validate",
133
117
  description: "Validate diagram integrity",
134
- params: {
135
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
136
- planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
137
- },
118
+ params: diagramValidateParams,
138
119
  handler: handleDiagramValidate,
139
120
  });
140
121
  async function handleDiagramValidate(params, _flags) {
@@ -158,22 +139,23 @@ async function handleDiagramValidate(params, _flags) {
158
139
  // ---------------------------------------------------------------------------
159
140
  // diagram status
160
141
  // ---------------------------------------------------------------------------
142
+ const diagramStatusParams = {
143
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
144
+ planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
145
+ nodeId: { type: "string", required: true, positional: 2, description: "Node ID to update" },
146
+ status: {
147
+ type: "string",
148
+ required: true,
149
+ positional: 3,
150
+ description: "New status",
151
+ enum: ["backlog", "in_progress", "done", "blocked"],
152
+ },
153
+ };
161
154
  defineCommand({
162
155
  path: "diagram status",
163
156
  description: "Update a diagram node's status",
164
157
  mutation: true,
165
- params: {
166
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
167
- planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
168
- nodeId: { type: "string", required: true, positional: 2, description: "Node ID to update" },
169
- status: {
170
- type: "string",
171
- required: true,
172
- positional: 3,
173
- description: "New status",
174
- enum: ["backlog", "in_progress", "done", "blocked"],
175
- },
176
- },
158
+ params: diagramStatusParams,
177
159
  handler: handleDiagramStatus,
178
160
  });
179
161
  async function handleDiagramStatus(params, _flags) {
@@ -199,14 +181,15 @@ async function handleDiagramStatus(params, _flags) {
199
181
  // ---------------------------------------------------------------------------
200
182
  // diagram sort-metadata
201
183
  // ---------------------------------------------------------------------------
184
+ const diagramSortMetadataParams = {
185
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
186
+ planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
187
+ };
202
188
  defineCommand({
203
189
  path: "diagram sort-metadata",
204
190
  description: "Sort metadata blocks in diagram file",
205
191
  mutation: true,
206
- params: {
207
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
208
- planId: { type: "string", required: true, positional: 1, description: "Plan ID" },
209
- },
192
+ params: diagramSortMetadataParams,
210
193
  handler: handleDiagramSortMetadata,
211
194
  });
212
195
  async function handleDiagramSortMetadata(params, _flags) {
@@ -230,12 +213,13 @@ async function handleDiagramSortMetadata(params, _flags) {
230
213
  // ---------------------------------------------------------------------------
231
214
  // diagram show
232
215
  // ---------------------------------------------------------------------------
216
+ const diagramShowParams = {
217
+ path: { type: "string", required: true, positional: 0, description: "Path to .mmd file" },
218
+ };
233
219
  defineCommand({
234
220
  path: "diagram show",
235
221
  description: "Render diagram in terminal",
236
- params: {
237
- path: { type: "string", required: true, positional: 0, description: "Path to .mmd file" },
238
- },
222
+ params: diagramShowParams,
239
223
  handler: handleDiagramShow,
240
224
  });
241
225
  async function handleDiagramShow(params, _flags) {
@@ -1 +1 @@
1
- {"version":3,"file":"diagram.js","sourceRoot":"","sources":["../../../src/cli/commands/diagram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagram.js","sourceRoot":"","sources":["../../../src/cli/commands/diagram.ts"],"names":[],"mappings":"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"}
@@ -2,34 +2,35 @@
2
2
  // done — Mark a task as done and show the next task to work on
3
3
  // ---------------------------------------------------------------------------
4
4
  import { existsSync } from "node:fs";
5
+ import { attemptDiagramUpdate } from "../../utils/diagram-store.js";
5
6
  import { createKnowledgeEntry, getTask, listTasks, readPlanIndex, updateTask, } from "../../utils/project-memory.js";
6
7
  import { resolveProject } from "../../utils/project-resolver.js";
7
8
  import { normalizeIdentifier } from "../../utils/slug.js";
8
9
  import { defineCommand, ERROR_CODES, } from "../command-registry.js";
9
10
  import { failure, success } from "../output-envelope.js";
10
- import { attemptDiagramUpdate } from "./task.js";
11
11
  // ---------------------------------------------------------------------------
12
+ const doneParams = {
13
+ slug: {
14
+ type: "string",
15
+ required: true,
16
+ positional: 0,
17
+ description: "Project slug",
18
+ },
19
+ taskId: {
20
+ type: "string",
21
+ required: true,
22
+ positional: 1,
23
+ description: "Task ID to mark as done",
24
+ },
25
+ planId: { type: "string", description: "Plan ID (enables atomic diagram update)" },
26
+ diagramNodeId: { type: "string", description: "Diagram node ID to update (e.g. T001)" },
27
+ learn: { type: "string", description: "Capture a quick insight linked to this task" },
28
+ };
12
29
  defineCommand({
13
30
  path: "done",
14
31
  description: "Mark a task as done and show the next task",
15
32
  mutation: true,
16
- params: {
17
- slug: {
18
- type: "string",
19
- required: true,
20
- positional: 0,
21
- description: "Project slug",
22
- },
23
- taskId: {
24
- type: "string",
25
- required: true,
26
- positional: 1,
27
- description: "Task ID to mark as done",
28
- },
29
- planId: { type: "string", description: "Plan ID (enables atomic diagram update)" },
30
- diagramNodeId: { type: "string", description: "Diagram node ID to update (e.g. T001)" },
31
- learn: { type: "string", description: "Capture a quick insight linked to this task" },
32
- },
33
+ params: doneParams,
33
34
  handler: handleDone,
34
35
  });
35
36
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"done.js","sourceRoot":"","sources":["../../../src/cli/commands/done.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"done.js","sourceRoot":"","sources":["../../../src/cli/commands/done.ts"],"names":[],"mappings":"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"}
@@ -10,16 +10,17 @@ import { failure, success } from "../output-envelope.js";
10
10
  // ---------------------------------------------------------------------------
11
11
  // related
12
12
  // ---------------------------------------------------------------------------
13
+ const relatedParams = {
14
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
15
+ task: { type: "string", description: "Task ID to find related entities for" },
16
+ plan: { type: "string", description: "Plan ID to find related entities for" },
17
+ knowledge: { type: "string", description: "Knowledge entry ID to find related entities for" },
18
+ limit: { type: "number", description: "Max results to return (default 10)" },
19
+ };
13
20
  defineCommand({
14
21
  path: "related",
15
22
  description: "Find entities related to a task, knowledge entry, or plan via the knowledge graph",
16
- params: {
17
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
18
- task: { type: "string", description: "Task ID to find related entities for" },
19
- plan: { type: "string", description: "Plan ID to find related entities for" },
20
- knowledge: { type: "string", description: "Knowledge entry ID to find related entities for" },
21
- limit: { type: "number", description: "Max results to return (default 10)" },
22
- },
23
+ params: relatedParams,
23
24
  handler: handleRelatedCmd,
24
25
  });
25
26
  async function handleRelatedCmd(params, _flags) {
@@ -49,12 +50,13 @@ async function handleRelatedCmd(params, _flags) {
49
50
  // ---------------------------------------------------------------------------
50
51
  // graph inspect
51
52
  // ---------------------------------------------------------------------------
53
+ const graphInspectParams = {
54
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
55
+ };
52
56
  defineCommand({
53
57
  path: "graph inspect",
54
58
  description: "Show knowledge graph index statistics for a project",
55
- params: {
56
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
57
- },
59
+ params: graphInspectParams,
58
60
  handler: handleGraphInspectCmd,
59
61
  });
60
62
  async function handleGraphInspectCmd(params, _flags) {
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/cli/commands/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/cli/commands/graph.ts"],"names":[],"mappings":"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"}
@@ -7,24 +7,23 @@ import { getProjectDir } from "../../utils/paths.js";
7
7
  import { readKnowledgeIndex } from "../../utils/project-memory.js";
8
8
  import { defineCommand, ERROR_CODES, } from "../command-registry.js";
9
9
  import { failure, success } from "../output-envelope.js";
10
+ const knowledgeSearchParams = {
11
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
12
+ query: { type: "string", required: true, positional: 1, description: "Search query" },
13
+ kind: {
14
+ type: "string",
15
+ description: "Filter by kind",
16
+ enum: ["lesson", "gotcha", "pattern", "feature", "decision", "reference"],
17
+ },
18
+ };
10
19
  defineCommand({
11
20
  path: "knowledge search",
12
21
  description: "Search knowledge entries using BM25 scoring",
13
- params: {
14
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
15
- query: { type: "string", required: true, positional: 1, description: "Search query" },
16
- kind: {
17
- type: "string",
18
- description: "Filter by kind",
19
- enum: ["lesson", "gotcha", "pattern", "feature", "decision", "reference"],
20
- },
21
- },
22
+ params: knowledgeSearchParams,
22
23
  handler: handleKnowledgeSearch,
23
24
  });
24
25
  async function handleKnowledgeSearch(params, _flags) {
25
- const slug = params.slug;
26
- const query = params.query;
27
- const kind = params.kind;
26
+ const { slug, query, kind } = params;
28
27
  const projectDir = getProjectDir(slug);
29
28
  if (!existsSync(projectDir)) {
30
29
  return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`, {
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge-search.js","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-search.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAsB,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,EAGL,aAAa,EACb,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEzD,aAAa,CAAC;IACZ,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,6CAA6C;IAC1D,MAAM,EAAE;QACN,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE;QACpF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE;QACrF,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,gBAAgB;YAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC;SAC1E;KACF;IACD,OAAO,EAAE,qBAAqB;CAC/B,CAAC,CAAC;AAEH,KAAK,UAAU,qBAAqB,CAClC,MAA+B,EAC/B,MAAoB;IAEpB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAc,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAe,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAiC,CAAC;IACtD,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,OAAO,CAAC,WAAW,CAAC,iBAAiB,EAAE,YAAY,IAAI,aAAa,EAAE;YAC3E,IAAI,EAAE,oDAAoD;SAC3D,CAAC,CAAC;IACL,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,OAAO,GAAG,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChG,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"knowledge-search.js","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-search.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAGL,aAAa,EACb,WAAW,GAGZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,qBAAqB,GAAG;IAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE;IACpF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE;IACrF,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC;KAC1E;CAC0C,CAAC;AAE9C,aAAa,CAAC;IACZ,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,6CAA6C;IAC1D,MAAM,EAAE,qBAAqB;IAC7B,OAAO,EAAE,qBAAqB;CAC/B,CAAC,CAAC;AAEH,KAAK,UAAU,qBAAqB,CAClC,MAAkD,EAClD,MAAoB;IAEpB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IACrC,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,OAAO,CAAC,WAAW,CAAC,iBAAiB,EAAE,YAAY,IAAI,aAAa,EAAE;YAC3E,IAAI,EAAE,oDAAoD;SAC3D,CAAC,CAAC;IACL,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,OAAO,GAAG,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChG,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;AAC1B,CAAC"}
@@ -32,19 +32,20 @@ function requireProject(slug) {
32
32
  return dir;
33
33
  }
34
34
  // --- knowledge list ---
35
+ const knowledgeListParams = {
36
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
37
+ kind: { type: "string", description: "Filter by kind", enum: KIND_ENUM },
38
+ keywords: { type: "string", description: "Comma-separated keywords to filter by" },
39
+ fields: {
40
+ type: "string",
41
+ required: false,
42
+ description: "Comma-separated field names to include in output",
43
+ },
44
+ };
35
45
  defineCommand({
36
46
  path: "knowledge list",
37
47
  description: "List knowledge entries for a project",
38
- params: {
39
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
40
- kind: { type: "string", description: "Filter by kind", enum: KIND_ENUM },
41
- keywords: { type: "string", description: "Comma-separated keywords to filter by" },
42
- fields: {
43
- type: "string",
44
- required: false,
45
- description: "Comma-separated field names to include in output",
46
- },
47
- },
48
+ params: knowledgeListParams,
48
49
  handler: handleKnowledgeList,
49
50
  });
50
51
  async function handleKnowledgeList(params, _flags) {
@@ -80,14 +81,15 @@ async function handleKnowledgeList(params, _flags) {
80
81
  return success(entries);
81
82
  }
82
83
  // --- knowledge get ---
84
+ const knowledgeGetParams = {
85
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
86
+ entryId: { type: "string", required: true, positional: 1, description: "Knowledge entry ID" },
87
+ body: { type: "boolean", description: "Include entry body content" },
88
+ };
83
89
  defineCommand({
84
90
  path: "knowledge get",
85
91
  description: "Get a knowledge entry by ID",
86
- params: {
87
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
88
- entryId: { type: "string", required: true, positional: 1, description: "Knowledge entry ID" },
89
- body: { type: "boolean", description: "Include entry body content" },
90
- },
92
+ params: knowledgeGetParams,
91
93
  handler: handleKnowledgeGet,
92
94
  });
93
95
  async function handleKnowledgeGet(params, _flags) {
@@ -116,23 +118,24 @@ async function handleKnowledgeGet(params, _flags) {
116
118
  return success({ meta });
117
119
  }
118
120
  // --- knowledge create ---
121
+ const knowledgeCreateParams = {
122
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
123
+ title: { type: "string", required: true, positional: 1, description: "Entry title" },
124
+ kind: { type: "string", required: true, description: "Entry kind", enum: KIND_ENUM },
125
+ summary: { type: "string", description: "Entry summary" },
126
+ keywords: { type: "string", description: "Comma-separated keywords" },
127
+ body: { type: "string", description: "Inline markdown body content" },
128
+ "body-file": { type: "string", description: "Path to markdown file with entry body" },
129
+ "source-files": {
130
+ type: "string",
131
+ description: 'Comma-separated source file references (e.g. "src/utils/dag.ts,src/cli/index.ts:MyClass")',
132
+ },
133
+ };
119
134
  defineCommand({
120
135
  path: "knowledge create",
121
136
  description: "Create a new knowledge entry",
122
137
  mutation: true,
123
- params: {
124
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
125
- title: { type: "string", required: true, positional: 1, description: "Entry title" },
126
- kind: { type: "string", required: true, description: "Entry kind", enum: KIND_ENUM },
127
- summary: { type: "string", description: "Entry summary" },
128
- keywords: { type: "string", description: "Comma-separated keywords" },
129
- body: { type: "string", description: "Inline markdown body content" },
130
- "body-file": { type: "string", description: "Path to markdown file with entry body" },
131
- "source-files": {
132
- type: "string",
133
- description: 'Comma-separated source file references (e.g. "src/utils/dag.ts,src/cli/index.ts:MyClass")',
134
- },
135
- },
138
+ params: knowledgeCreateParams,
136
139
  handler: handleKnowledgeCreate,
137
140
  });
138
141
  async function handleKnowledgeCreate(params, flags) {
@@ -198,18 +201,19 @@ async function handleKnowledgeCreate(params, flags) {
198
201
  }
199
202
  }
200
203
  // --- knowledge update-meta ---
204
+ const knowledgeUpdateMetaParams = {
205
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
206
+ entryId: { type: "string", required: true, positional: 1, description: "Entry ID" },
207
+ title: { type: "string", description: "New title" },
208
+ kind: { type: "string", description: "New kind", enum: KIND_ENUM },
209
+ summary: { type: "string", description: "New summary" },
210
+ keywords: { type: "string", description: "Comma-separated keywords" },
211
+ };
201
212
  defineCommand({
202
213
  path: "knowledge update-meta",
203
214
  description: "Update metadata of a knowledge entry",
204
215
  mutation: true,
205
- params: {
206
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
207
- entryId: { type: "string", required: true, positional: 1, description: "Entry ID" },
208
- title: { type: "string", description: "New title" },
209
- kind: { type: "string", description: "New kind", enum: KIND_ENUM },
210
- summary: { type: "string", description: "New summary" },
211
- keywords: { type: "string", description: "Comma-separated keywords" },
212
- },
216
+ params: knowledgeUpdateMetaParams,
213
217
  handler: handleKnowledgeUpdateMeta,
214
218
  });
215
219
  async function handleKnowledgeUpdateMeta(params, flags) {
@@ -246,17 +250,18 @@ async function handleKnowledgeUpdateMeta(params, flags) {
246
250
  }
247
251
  }
248
252
  // --- knowledge update-body ---
253
+ const knowledgeUpdateBodyParams = {
254
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
255
+ entryId: { type: "string", required: true, positional: 1, description: "Entry ID" },
256
+ body: { type: "string", required: false, description: "Inline markdown body content" },
257
+ "body-file": { type: "string", description: "Path to markdown file with entry body" },
258
+ "body-stdin": { type: "boolean", description: "Read body from stdin" },
259
+ };
249
260
  defineCommand({
250
261
  path: "knowledge update-body",
251
262
  description: "Update the body content of a knowledge entry",
252
263
  mutation: true,
253
- params: {
254
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
255
- entryId: { type: "string", required: true, positional: 1, description: "Entry ID" },
256
- body: { type: "string", required: false, description: "Inline markdown body content" },
257
- "body-file": { type: "string", description: "Path to markdown file with entry body" },
258
- "body-stdin": { type: "boolean", description: "Read body from stdin" },
259
- },
264
+ params: knowledgeUpdateBodyParams,
260
265
  handler: handleKnowledgeUpdateBody,
261
266
  });
262
267
  async function handleKnowledgeUpdateBody(params, flags) {
@@ -309,19 +314,20 @@ async function handleKnowledgeUpdateBody(params, flags) {
309
314
  return success({ meta, body });
310
315
  }
311
316
  // --- knowledge upsert ---
317
+ const knowledgeUpsertParams = {
318
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
319
+ title: { type: "string", required: true, positional: 1, description: "Entry title" },
320
+ kind: { type: "string", required: true, description: "Entry kind", enum: KIND_ENUM },
321
+ summary: { type: "string", description: "Entry summary" },
322
+ keywords: { type: "string", description: "Comma-separated keywords" },
323
+ body: { type: "string", description: "Inline markdown body content" },
324
+ "body-file": { type: "string", description: "Path to markdown file with entry body" },
325
+ };
312
326
  defineCommand({
313
327
  path: "knowledge upsert",
314
328
  description: "Create or update a knowledge entry by title (idempotent)",
315
329
  mutation: true,
316
- params: {
317
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
318
- title: { type: "string", required: true, positional: 1, description: "Entry title" },
319
- kind: { type: "string", required: true, description: "Entry kind", enum: KIND_ENUM },
320
- summary: { type: "string", description: "Entry summary" },
321
- keywords: { type: "string", description: "Comma-separated keywords" },
322
- body: { type: "string", description: "Inline markdown body content" },
323
- "body-file": { type: "string", description: "Path to markdown file with entry body" },
324
- },
330
+ params: knowledgeUpsertParams,
325
331
  handler: handleKnowledgeUpsert,
326
332
  });
327
333
  async function handleKnowledgeUpsert(params, _flags) {
@@ -378,14 +384,15 @@ async function handleKnowledgeUpsert(params, _flags) {
378
384
  }
379
385
  }
380
386
  // --- knowledge delete ---
387
+ const knowledgeDeleteParams = {
388
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
389
+ entryId: { type: "string", required: true, positional: 1, description: "Entry ID" },
390
+ };
381
391
  defineCommand({
382
392
  path: "knowledge delete",
383
393
  description: "Delete a knowledge entry",
384
394
  mutation: true,
385
- params: {
386
- slug: { type: "string", required: true, positional: 0, description: "Project slug" },
387
- entryId: { type: "string", required: true, positional: 1, description: "Entry ID" },
388
- },
395
+ params: knowledgeDeleteParams,
389
396
  handler: handleKnowledgeDelete,
390
397
  });
391
398
  async function handleKnowledgeDelete(params, flags) {