@mrpatronz/nexusflow 2.7.0 → 2.8.1
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 +16 -14
- package/dist/agent/ClaudeSdkAdapter.d.ts.map +1 -1
- package/dist/agent/ClaudeSdkAdapter.js +31 -8
- package/dist/agent/ClaudeSdkAdapter.js.map +1 -1
- package/dist/agent/ClaudeSdkAdapter.test.js +18 -6
- package/dist/agent/ClaudeSdkAdapter.test.js.map +1 -1
- package/dist/agent/CodexCliAdapter.d.ts +1 -1
- package/dist/agent/CodexCliAdapter.d.ts.map +1 -1
- package/dist/agent/CodexCliAdapter.js +5 -4
- package/dist/agent/CodexCliAdapter.js.map +1 -1
- package/dist/agent/CodexCliAdapter.test.js +16 -1
- package/dist/agent/CodexCliAdapter.test.js.map +1 -1
- package/dist/agent/CodexSdkAdapter.d.ts.map +1 -1
- package/dist/agent/CodexSdkAdapter.js +6 -0
- package/dist/agent/CodexSdkAdapter.js.map +1 -1
- package/dist/agent/ProviderRegistry.d.ts +5 -0
- package/dist/agent/ProviderRegistry.d.ts.map +1 -1
- package/dist/agent/ProviderRegistry.js +15 -0
- package/dist/agent/ProviderRegistry.js.map +1 -1
- package/dist/agent/ProviderRegistry.test.js +19 -0
- package/dist/agent/ProviderRegistry.test.js.map +1 -1
- package/dist/agent/adapters.d.ts.map +1 -1
- package/dist/agent/adapters.js +5 -0
- package/dist/agent/adapters.js.map +1 -1
- package/dist/agent/mcp-config.d.ts +16 -0
- package/dist/agent/mcp-config.d.ts.map +1 -0
- package/dist/agent/mcp-config.js +28 -0
- package/dist/agent/mcp-config.js.map +1 -0
- package/dist/agent/mcp-config.test.d.ts +2 -0
- package/dist/agent/mcp-config.test.d.ts.map +1 -0
- package/dist/agent/mcp-config.test.js +22 -0
- package/dist/agent/mcp-config.test.js.map +1 -0
- package/dist/agent/models.d.ts +10 -0
- package/dist/agent/models.d.ts.map +1 -0
- package/dist/agent/models.js +35 -0
- package/dist/agent/models.js.map +1 -0
- package/dist/agent/models.test.d.ts +2 -0
- package/dist/agent/models.test.d.ts.map +1 -0
- package/dist/agent/models.test.js +40 -0
- package/dist/agent/models.test.js.map +1 -0
- package/dist/agent/orchestrator.d.ts +65 -0
- package/dist/agent/orchestrator.d.ts.map +1 -0
- package/dist/agent/orchestrator.js +260 -0
- package/dist/agent/orchestrator.js.map +1 -0
- package/dist/agent/orchestrator.test.d.ts +2 -0
- package/dist/agent/orchestrator.test.d.ts.map +1 -0
- package/dist/agent/orchestrator.test.js +284 -0
- package/dist/agent/orchestrator.test.js.map +1 -0
- package/dist/agent/session.d.ts +1 -0
- package/dist/agent/session.d.ts.map +1 -1
- package/dist/agent/session.js +3 -2
- package/dist/agent/session.js.map +1 -1
- package/dist/agent/session.test.js +9 -0
- package/dist/agent/session.test.js.map +1 -1
- package/dist/agent/smoke-chat.test.d.ts +2 -0
- package/dist/agent/smoke-chat.test.d.ts.map +1 -0
- package/dist/agent/smoke-chat.test.js +166 -0
- package/dist/agent/smoke-chat.test.js.map +1 -0
- package/dist/commands/commands.test.js +3 -0
- package/dist/commands/commands.test.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +2 -0
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts +3 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +9 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/knowledge.d.ts +9 -0
- package/dist/commands/knowledge.d.ts.map +1 -1
- package/dist/commands/knowledge.js +59 -2
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/knowledge.test.js +14 -1
- package/dist/commands/knowledge.test.js.map +1 -1
- package/dist/commands/mcp.d.ts +7 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +7 -2
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/progress.d.ts +4 -0
- package/dist/commands/progress.d.ts.map +1 -0
- package/dist/commands/progress.js +33 -0
- package/dist/commands/progress.js.map +1 -0
- package/dist/commands/refresh.d.ts +1 -0
- package/dist/commands/refresh.d.ts.map +1 -1
- package/dist/commands/refresh.js +17 -2
- package/dist/commands/refresh.js.map +1 -1
- package/dist/commands/remote.d.ts +4 -0
- package/dist/commands/remote.d.ts.map +1 -0
- package/dist/commands/remote.js +28 -0
- package/dist/commands/remote.js.map +1 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +14 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/status.test.d.ts +2 -0
- package/dist/commands/status.test.d.ts.map +1 -0
- package/dist/commands/status.test.js +31 -0
- package/dist/commands/status.test.js.map +1 -0
- package/dist/core/analysis-cache.d.ts +13 -3
- package/dist/core/analysis-cache.d.ts.map +1 -1
- package/dist/core/analysis-cache.js +41 -31
- package/dist/core/analysis-cache.js.map +1 -1
- package/dist/core/analysis-cache.test.js +50 -8
- package/dist/core/analysis-cache.test.js.map +1 -1
- package/dist/core/doctor.d.ts.map +1 -1
- package/dist/core/doctor.js +61 -0
- package/dist/core/doctor.js.map +1 -1
- package/dist/core/generation-lock.d.ts +58 -0
- package/dist/core/generation-lock.d.ts.map +1 -0
- package/dist/core/generation-lock.js +233 -0
- package/dist/core/generation-lock.js.map +1 -0
- package/dist/core/generation-lock.test.d.ts +2 -0
- package/dist/core/generation-lock.test.d.ts.map +1 -0
- package/dist/core/generation-lock.test.js +134 -0
- package/dist/core/generation-lock.test.js.map +1 -0
- package/dist/core/isolate.test.js +30 -0
- package/dist/core/isolate.test.js.map +1 -1
- package/dist/core/knowledge.d.ts +20 -0
- package/dist/core/knowledge.d.ts.map +1 -1
- package/dist/core/knowledge.js +184 -36
- package/dist/core/knowledge.js.map +1 -1
- package/dist/core/knowledge.test.js +93 -15
- package/dist/core/knowledge.test.js.map +1 -1
- package/dist/core/locks.d.ts +4 -2
- package/dist/core/locks.d.ts.map +1 -1
- package/dist/core/locks.js +55 -7
- package/dist/core/locks.js.map +1 -1
- package/dist/core/locks.test.js +48 -0
- package/dist/core/locks.test.js.map +1 -1
- package/dist/core/progress.d.ts +21 -0
- package/dist/core/progress.d.ts.map +1 -0
- package/dist/core/progress.js +40 -0
- package/dist/core/progress.js.map +1 -0
- package/dist/core/progress.test.d.ts +2 -0
- package/dist/core/progress.test.d.ts.map +1 -0
- package/dist/core/progress.test.js +52 -0
- package/dist/core/progress.test.js.map +1 -0
- package/dist/core/refresh.d.ts +5 -0
- package/dist/core/refresh.d.ts.map +1 -1
- package/dist/core/refresh.js +25 -0
- package/dist/core/refresh.js.map +1 -1
- package/dist/core/refresh.test.js +20 -0
- package/dist/core/refresh.test.js.map +1 -1
- package/dist/core/status.d.ts +2 -0
- package/dist/core/status.d.ts.map +1 -1
- package/dist/core/status.js +6 -1
- package/dist/core/status.js.map +1 -1
- package/dist/core/sync.d.ts.map +1 -1
- package/dist/core/sync.js +22 -1
- package/dist/core/sync.js.map +1 -1
- package/dist/core/sync.test.js +27 -0
- package/dist/core/sync.test.js.map +1 -1
- package/dist/core/workspace-git.d.ts +15 -0
- package/dist/core/workspace-git.d.ts.map +1 -0
- package/dist/core/workspace-git.js +131 -0
- package/dist/core/workspace-git.js.map +1 -0
- package/dist/core/workspace-git.test.d.ts +2 -0
- package/dist/core/workspace-git.test.d.ts.map +1 -0
- package/dist/core/workspace-git.test.js +52 -0
- package/dist/core/workspace-git.test.js.map +1 -0
- package/dist/core/workspace-skills-workflow.integration.test.js +15 -0
- package/dist/core/workspace-skills-workflow.integration.test.js.map +1 -1
- package/dist/core/workspace.create.test.js +5 -2
- package/dist/core/workspace.create.test.js.map +1 -1
- package/dist/core/workspace.d.ts.map +1 -1
- package/dist/core/workspace.js +11 -6
- package/dist/core/workspace.js.map +1 -1
- package/dist/generators/antigravity.d.ts.map +1 -1
- package/dist/generators/antigravity.js +2 -1
- package/dist/generators/antigravity.js.map +1 -1
- package/dist/generators/base.d.ts.map +1 -1
- package/dist/generators/base.js +5 -3
- package/dist/generators/base.js.map +1 -1
- package/dist/generators/claude.d.ts.map +1 -1
- package/dist/generators/claude.js +4 -1
- package/dist/generators/claude.js.map +1 -1
- package/dist/generators/codex.d.ts.map +1 -1
- package/dist/generators/codex.js +2 -1
- package/dist/generators/codex.js.map +1 -1
- package/dist/generators/copilot.d.ts.map +1 -1
- package/dist/generators/copilot.js +4 -3
- package/dist/generators/copilot.js.map +1 -1
- package/dist/generators/cursor.d.ts.map +1 -1
- package/dist/generators/cursor.js +6 -3
- package/dist/generators/cursor.js.map +1 -1
- package/dist/generators/index.d.ts +2 -0
- package/dist/generators/index.d.ts.map +1 -1
- package/dist/generators/index.js +79 -45
- package/dist/generators/index.js.map +1 -1
- package/dist/generators/knowledge-migration.test.d.ts +2 -0
- package/dist/generators/knowledge-migration.test.d.ts.map +1 -0
- package/dist/generators/knowledge-migration.test.js +22 -0
- package/dist/generators/knowledge-migration.test.js.map +1 -0
- package/dist/generators/plan-generator.d.ts.map +1 -1
- package/dist/generators/plan-generator.js +18 -9
- package/dist/generators/plan-generator.js.map +1 -1
- package/dist/generators/plan-generator.test.js +4 -1
- package/dist/generators/plan-generator.test.js.map +1 -1
- package/dist/gui/assets/AgentsPage-B4fx43rd.js +3 -0
- package/dist/gui/assets/{CSPContext-BG7no5S_.js → CSPContext-DBUu9tE0.js} +1 -1
- package/dist/gui/assets/{DashboardPage-ByGTwAQa.js → DashboardPage-DH52G8IG.js} +1 -1
- package/dist/gui/assets/{GettingStartedPage-Xjx3M3RH.js → GettingStartedPage-BlTrQhvi.js} +1 -1
- package/dist/gui/assets/ProjectsPage-BPVSLPXv.js +1 -0
- package/dist/gui/assets/ScaffoldRepoInline-ywcpq9PX.js +1 -0
- package/dist/gui/assets/{SettingsPage-B9iN6hsv.js → SettingsPage-RQr8SalV.js} +1 -1
- package/dist/gui/assets/SkillsPage-CYoSRrwx.js +6 -0
- package/dist/gui/assets/StartWorkPage-DBKK4lFi.js +1 -0
- package/dist/gui/assets/{StrategiesPage-DDu3jwJx.js → StrategiesPage-C36TZgDX.js} +1 -1
- package/dist/gui/assets/WorkspacesPage-DxEONvSq.js +6 -0
- package/dist/gui/assets/{alert-dialog-CdqVrvZl.js → alert-dialog-CQAX2yRx.js} +1 -1
- package/dist/gui/assets/index-BF6pre6G.css +2 -0
- package/dist/gui/assets/index-C_rwnBzF.js +52 -0
- package/dist/gui/assets/isElementDisabled-uy_EOitH.js +1 -0
- package/dist/gui/assets/textarea-ByfoCb54.js +1 -0
- package/dist/gui/assets/{useAriaLabelledBy-DfRdwH8a.js → useAriaLabelledBy-ClesgjMe.js} +1 -1
- package/dist/gui/assets/useValueChanged-DeYvGnKs.js +1 -0
- package/dist/gui/assets/{vsc-D6UPv2ii.js → vsc-DFh0-53h.js} +1 -1
- package/dist/gui/index.html +5 -7
- package/dist/harness/claude.d.ts +3 -1
- package/dist/harness/claude.d.ts.map +1 -1
- package/dist/harness/claude.js +4 -2
- package/dist/harness/claude.js.map +1 -1
- package/dist/harness/codex.d.ts +3 -1
- package/dist/harness/codex.d.ts.map +1 -1
- package/dist/harness/codex.js +64 -12
- package/dist/harness/codex.js.map +1 -1
- package/dist/harness/contract.test.d.ts +2 -0
- package/dist/harness/contract.test.d.ts.map +1 -0
- package/dist/harness/contract.test.js +426 -0
- package/dist/harness/contract.test.js.map +1 -0
- package/dist/harness/harness.test.js +16 -1
- package/dist/harness/harness.test.js.map +1 -1
- package/dist/harness/types.d.ts +7 -1
- package/dist/harness/types.d.ts.map +1 -1
- package/dist/index.js +52 -5
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts +8 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +11 -6
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts +6 -2
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +232 -14
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/tools.test.js +130 -6
- package/dist/mcp/tools.test.js.map +1 -1
- package/dist/resources/materializer.d.ts.map +1 -1
- package/dist/resources/materializer.js +11 -3
- package/dist/resources/materializer.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +37 -6
- package/dist/server.js.map +1 -1
- package/dist/server.test.js +37 -1
- package/dist/server.test.js.map +1 -1
- package/dist/types.d.ts +17 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -1
- package/dist/gui/assets/AgentsPage-YyYRodOR.js +0 -3
- package/dist/gui/assets/ProjectsPage-BMdhqAGs.js +0 -1
- package/dist/gui/assets/ScaffoldRepoInline-gXyYSIz5.js +0 -1
- package/dist/gui/assets/SkillsPage-CxcsbIsQ.js +0 -6
- package/dist/gui/assets/StartWorkPage-DPVHcdy4.js +0 -1
- package/dist/gui/assets/WorkspacesPage-BWRmP0mY.js +0 -2
- package/dist/gui/assets/index-CZoZQkeC.css +0 -2
- package/dist/gui/assets/index-wy68EqfB.js +0 -50
- package/dist/gui/assets/isElementDisabled-D_fu2zfc.js +0 -1
- package/dist/gui/assets/store-D5DUHbxn.js +0 -3
- package/dist/gui/assets/styles-CVwNuFCx.js +0 -1
- package/dist/gui/assets/textarea-BNRuIXNs.js +0 -1
- package/dist/gui/assets/useValueChanged-CStSGSsD.js +0 -1
package/dist/index.js
CHANGED
|
@@ -31,6 +31,8 @@ import { isolateCommand } from './commands/isolate.js';
|
|
|
31
31
|
import { mcpRunCommand, mcpSetupCommand } from './commands/mcp.js';
|
|
32
32
|
import { handoffCommand } from './commands/handoff.js';
|
|
33
33
|
import { refreshCommand } from './commands/refresh.js';
|
|
34
|
+
import { progressCommand } from './commands/progress.js';
|
|
35
|
+
import { remoteAddCommand, remotePullCommand, remotePushCommand } from './commands/remote.js';
|
|
34
36
|
import { doctorCommand } from './commands/doctor.js';
|
|
35
37
|
import { knowledgeAddCommand, knowledgeShowCommand, knowledgePromoteCommand } from './commands/knowledge.js';
|
|
36
38
|
import { strategyListCommand, strategyCreateCommand, strategyEditCommand, strategyDeleteCommand, strategyShowCommand } from './commands/strategy.js';
|
|
@@ -101,7 +103,8 @@ program
|
|
|
101
103
|
program
|
|
102
104
|
.command('init')
|
|
103
105
|
.description('Initialize NexusFlow configuration')
|
|
104
|
-
.
|
|
106
|
+
.option('--workspace [path]', 'Initialize or adopt a git-backed workspace artifact repository')
|
|
107
|
+
.action(runAction(async (options) => initCommand(options)));
|
|
105
108
|
program
|
|
106
109
|
.command('start')
|
|
107
110
|
.description('Start all services in a workspace')
|
|
@@ -132,6 +135,14 @@ program
|
|
|
132
135
|
.action(runAction(async (workspace, options) => {
|
|
133
136
|
await statusCommand(workspace, options);
|
|
134
137
|
}));
|
|
138
|
+
program
|
|
139
|
+
.command('progress')
|
|
140
|
+
.description('Show implementation progress derived from live git and available PR state')
|
|
141
|
+
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
142
|
+
.option('--json', 'Output in JSON format')
|
|
143
|
+
.action(runAction(async (workspace, options) => {
|
|
144
|
+
await progressCommand(workspace, options);
|
|
145
|
+
}));
|
|
135
146
|
program
|
|
136
147
|
.command('ui')
|
|
137
148
|
.description('Start the NexusFlow dashboard server (the backend the desktop app embeds)')
|
|
@@ -226,6 +237,7 @@ program
|
|
|
226
237
|
.description('Refresh workspace context, plan and handoff files (re-analyzes only changed repos)')
|
|
227
238
|
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
228
239
|
.option('-f, --force', 'Ignore the analysis cache and re-analyze every repository')
|
|
240
|
+
.option('--check', 'Check provenance and generated-view hashes without regenerating')
|
|
229
241
|
.option('-s, --strategy <id>', 'Update the teamwork strategy (use template ID, or "auto" for AI suggestion)')
|
|
230
242
|
.action(runAction(async (workspace, options) => {
|
|
231
243
|
await refreshCommand(options, workspace);
|
|
@@ -254,23 +266,54 @@ program
|
|
|
254
266
|
const knowledgeCmd = program
|
|
255
267
|
.command('knowledge')
|
|
256
268
|
.alias('know')
|
|
257
|
-
.description('Capture and manage workspace learnings (decisions, gotchas,
|
|
269
|
+
.description('Capture and manage workspace learnings (decisions, gotchas, assumptions, questions)');
|
|
258
270
|
knowledgeCmd
|
|
259
271
|
.command('add')
|
|
260
272
|
.description('Append a timestamped learning to the workspace knowledge file')
|
|
261
273
|
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
262
|
-
.requiredOption('-t, --type <type>', 'Entry type: decision | gotcha |
|
|
274
|
+
.requiredOption('-t, --type <type>', 'Entry type: decision | gotcha | assumption | question')
|
|
263
275
|
.requiredOption('-m, --message <msg>', 'The learning to record, as a rule plus its reason (max 300 chars)')
|
|
264
|
-
.
|
|
276
|
+
.requiredOption('--title <title>', 'Short title used to create the searchable heading slug (max 60 chars)')
|
|
277
|
+
.option('--scope <scope>', 'Applicability: repo:<name>, path:<repo/path>, or seam:<name>')
|
|
278
|
+
.option('--evidence <evidence>', 'Short evidence pointer such as a commit SHA or repro document')
|
|
265
279
|
.option('-r, --repo <repo>', "Write to this repo's persistent base knowledge instead")
|
|
266
280
|
.action(runAction(async (workspace, options) => {
|
|
267
281
|
await knowledgeAddCommand(workspace, options);
|
|
268
282
|
}));
|
|
283
|
+
program
|
|
284
|
+
.command('remember')
|
|
285
|
+
.description('Record and auto-commit a titled workspace learning')
|
|
286
|
+
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
287
|
+
.requiredOption('-t, --type <type>', 'Entry type: decision | gotcha | assumption | question')
|
|
288
|
+
.requiredOption('-m, --message <msg>', 'The learning to record, as a rule plus its reason (max 300 chars)')
|
|
289
|
+
.requiredOption('--title <title>', 'Short title used to create the searchable heading slug (max 60 chars)')
|
|
290
|
+
.option('--scope <scope>', 'Applicability: repo:<name>, path:<repo/path>, or seam:<name>')
|
|
291
|
+
.option('--evidence <evidence>', 'Short evidence pointer such as a commit SHA or repro document')
|
|
292
|
+
.action(runAction(async (workspace, options) => {
|
|
293
|
+
await knowledgeAddCommand(workspace, options);
|
|
294
|
+
}));
|
|
295
|
+
const remoteCmd = program
|
|
296
|
+
.command('remote')
|
|
297
|
+
.description('Manage the workspace artifact repository remote (never child repo remotes)');
|
|
298
|
+
remoteCmd
|
|
299
|
+
.command('add')
|
|
300
|
+
.argument('<url>', 'Git remote URL')
|
|
301
|
+
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
302
|
+
.action(runAction(async (url, workspace) => remoteAddCommand(url, workspace)));
|
|
303
|
+
remoteCmd
|
|
304
|
+
.command('push')
|
|
305
|
+
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
306
|
+
.action(runAction(async (workspace) => remotePushCommand(workspace)));
|
|
307
|
+
remoteCmd
|
|
308
|
+
.command('pull')
|
|
309
|
+
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
310
|
+
.action(runAction(async (workspace) => remotePullCommand(workspace)));
|
|
269
311
|
knowledgeCmd
|
|
270
312
|
.command('show')
|
|
271
313
|
.description("Print the workspace knowledge file (or a repo's base knowledge)")
|
|
272
314
|
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
273
315
|
.option('-s, --section <name>', 'Only show one section')
|
|
316
|
+
.option('--scope <scope>', 'Only show entries for an exact scope')
|
|
274
317
|
.option('-r, --repo <repo>', "Show the repo's base knowledge file instead")
|
|
275
318
|
.action(runAction(async (workspace, options) => {
|
|
276
319
|
await knowledgeShowCommand(workspace, options);
|
|
@@ -282,6 +325,7 @@ knowledgeCmd
|
|
|
282
325
|
.option('-r, --repo <repo>', 'Target repository (skips the repo prompt)')
|
|
283
326
|
.option('-t, --type <type>', 'Entry type when promoting a message non-interactively')
|
|
284
327
|
.option('-m, --message <msg>', 'Promote this text directly (non-interactive)')
|
|
328
|
+
.option('--title <title>', 'Short title required with --message')
|
|
285
329
|
.option('--move', 'Remove the entry from the workspace file after promoting (default: copy)')
|
|
286
330
|
.option('--all', 'Promote all decisions, gotchas and assumptions without prompting')
|
|
287
331
|
.action(runAction(async (workspace, options) => {
|
|
@@ -447,7 +491,10 @@ mcp
|
|
|
447
491
|
.command('run')
|
|
448
492
|
.description('Start the NexusFlow MCP Server (typically called automatically by AI assistants)')
|
|
449
493
|
.argument('[workspace]', 'Path to workspace (auto-detects from CWD)')
|
|
450
|
-
.
|
|
494
|
+
.option('-r, --role <role>', 'Agent execution role for scoped tool surfaces (e.g. readonly, review, ci, developer, full)')
|
|
495
|
+
.option('--allow <tools...>', 'Explicit list of allowed tool names')
|
|
496
|
+
.option('--deny <tools...>', 'Explicit list of denied tool names')
|
|
497
|
+
.action(runAction((workspace, options) => mcpRunCommand(workspace, options)));
|
|
451
498
|
mcp
|
|
452
499
|
.command('setup')
|
|
453
500
|
.description('Automatically configure your AI environments (Claude Desktop, Cursor, VS Code) to use the NexusFlow MCP Server')
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/server.d.ts
CHANGED
|
@@ -1,2 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
import { type AgentRole } from './tools.js';
|
|
2
|
+
export interface McpServerOptions {
|
|
3
|
+
workspacePath?: string;
|
|
4
|
+
role?: AgentRole;
|
|
5
|
+
allowList?: string[];
|
|
6
|
+
denyList?: string[];
|
|
7
|
+
}
|
|
8
|
+
export declare function startMcpServer(optionsOrWorkspacePath?: string | McpServerOptions): Promise<void>;
|
|
2
9
|
//# sourceMappingURL=server.d.ts.map
|
package/dist/mcp/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAUA,OAAO,EAA0B,KAAK,SAAS,EAAoB,MAAM,YAAY,CAAC;AAEtF,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AA8BD,wBAAsB,cAAc,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,gBAAgB,iBA+DtF"}
|
package/dist/mcp/server.js
CHANGED
|
@@ -3,7 +3,7 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
|
|
|
3
3
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
4
4
|
import * as path from 'node:path';
|
|
5
5
|
import { loadConfig } from '../core/config.js';
|
|
6
|
-
import { enabledTools
|
|
6
|
+
import { enabledTools } from './tools.js';
|
|
7
7
|
/**
|
|
8
8
|
* Resolves the workspace path for a tool call.
|
|
9
9
|
*
|
|
@@ -26,7 +26,11 @@ function resolveWorkspacePath(explicit, config, args) {
|
|
|
26
26
|
}
|
|
27
27
|
return process.cwd();
|
|
28
28
|
}
|
|
29
|
-
export async function startMcpServer(
|
|
29
|
+
export async function startMcpServer(optionsOrWorkspacePath) {
|
|
30
|
+
const options = typeof optionsOrWorkspacePath === 'string'
|
|
31
|
+
? { workspacePath: optionsOrWorkspacePath }
|
|
32
|
+
: optionsOrWorkspacePath ?? {};
|
|
33
|
+
const { workspacePath, role, allowList, denyList } = options;
|
|
30
34
|
const server = new Server({
|
|
31
35
|
name: 'nexusflow-mcp',
|
|
32
36
|
version: '0.2.0',
|
|
@@ -38,7 +42,7 @@ export async function startMcpServer(workspacePath) {
|
|
|
38
42
|
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
39
43
|
const config = await loadConfig();
|
|
40
44
|
return {
|
|
41
|
-
tools: enabledTools(config).map((t) => ({
|
|
45
|
+
tools: enabledTools(config, role, allowList, denyList).map((t) => ({
|
|
42
46
|
name: t.name,
|
|
43
47
|
description: t.description,
|
|
44
48
|
inputSchema: t.inputSchema,
|
|
@@ -52,10 +56,11 @@ export async function startMcpServer(workspacePath) {
|
|
|
52
56
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
53
57
|
const { name, arguments: args } = request.params;
|
|
54
58
|
const config = await loadConfig();
|
|
55
|
-
const
|
|
56
|
-
|
|
59
|
+
const available = enabledTools(config, role, allowList, denyList);
|
|
60
|
+
const tool = available.find((t) => t.name === name);
|
|
61
|
+
if (!tool) {
|
|
57
62
|
return {
|
|
58
|
-
content: [{ type: 'text', text: `Tool not found: ${name}` }],
|
|
63
|
+
content: [{ type: 'text', text: `Tool not found or denied by execution policy: ${name}` }],
|
|
59
64
|
isError: true,
|
|
60
65
|
};
|
|
61
66
|
}
|
package/dist/mcp/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/tools.d.ts
CHANGED
|
@@ -38,8 +38,12 @@ export interface NexusFlowTool {
|
|
|
38
38
|
handler: (args: Record<string, unknown>, ctx: ToolContext) => Promise<ToolResult>;
|
|
39
39
|
}
|
|
40
40
|
export declare const tools: NexusFlowTool[];
|
|
41
|
-
/**
|
|
42
|
-
export
|
|
41
|
+
/** Agent execution role for scoped tool surfaces. */
|
|
42
|
+
export type AgentRole = 'full' | 'developer' | 'interactive' | 'readonly' | 'review' | 'ci';
|
|
43
|
+
/** Tool allowlists mapped per role. */
|
|
44
|
+
export declare const ROLE_TOOL_PERMISSIONS: Record<AgentRole, string[]>;
|
|
45
|
+
/** Returns the tools enabled for the given config and role/surface filters. */
|
|
46
|
+
export declare function enabledTools(config: NexusFlowConfig, role?: AgentRole, allowList?: string[], denyList?: string[]): NexusFlowTool[];
|
|
43
47
|
/** Finds a tool by name (regardless of enabled state). */
|
|
44
48
|
export declare function findTool(name: string): NexusFlowTool | undefined;
|
|
45
49
|
//# sourceMappingURL=tools.d.ts.map
|
package/dist/mcp/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAwB,eAAe,EAAE,MAAM,aAAa,CAAC;AAwBzE,+FAA+F;AAC/F,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,eAAe,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,4BAA4B;AAC5B,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,kEAAkE;AAClE,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,oCAAoC;AACpC,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,2EAA2E;IAC3E,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC;IAC/C,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;CACnF;AAiCD,eAAO,MAAM,KAAK,EAAE,aAAa,EA8fhC,CAAC;AAEF,qDAAqD;AACrD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,WAAW,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE5F,uCAAuC;AACvC,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAgC7D,CAAC;AAEF,+EAA+E;AAC/E,wBAAgB,YAAY,CAC1B,MAAM,EAAE,eAAe,EACvB,IAAI,CAAC,EAAE,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM,EAAE,EACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,aAAa,EAAE,CAajB;AAED,0DAA0D;AAC1D,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAEhE"}
|
package/dist/mcp/tools.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { execa } from 'execa';
|
|
9
9
|
import * as fs from 'node:fs/promises';
|
|
10
10
|
import * as path from 'node:path';
|
|
11
|
-
import { loadFeatureConfig, isolateWorkspaceRepo } from '../core/workspace.js';
|
|
11
|
+
import { loadFeatureConfig, isolateWorkspaceRepo, listWorkspaces, createWorkspace, resolveRepoInfos, } from '../core/workspace.js';
|
|
12
12
|
import { resolveFeatureRepoPath } from '../utils/feature.js';
|
|
13
13
|
import { syncWorkspace } from '../core/sync.js';
|
|
14
14
|
import { getWorkspaceStatusReport } from '../core/status.js';
|
|
@@ -86,7 +86,7 @@ export const tools = [
|
|
|
86
86
|
},
|
|
87
87
|
{
|
|
88
88
|
name: 'workspace_status',
|
|
89
|
-
description: 'Report
|
|
89
|
+
description: 'Report live git state for every repo: HEAD SHA, current branch, branch alignment, dirty files, commits ahead/behind origin, and remote URL. Read-only; use this instead of generated prose for volatile facts.',
|
|
90
90
|
annotations: { readOnlyHint: true },
|
|
91
91
|
inputSchema: { type: 'object', properties: { ...workspaceIdProp } },
|
|
92
92
|
handler: async (_args, ctx) => {
|
|
@@ -172,13 +172,14 @@ export const tools = [
|
|
|
172
172
|
type: 'object',
|
|
173
173
|
properties: {
|
|
174
174
|
force: { type: 'boolean', description: 'Ignore the analysis cache and re-analyze every repo.' },
|
|
175
|
+
check: { type: 'boolean', description: 'Check nexusflow.lock and generated-view hashes without regenerating. Stale docs receive a bounded warning banner.' },
|
|
175
176
|
...workspaceIdProp,
|
|
176
177
|
},
|
|
177
178
|
},
|
|
178
179
|
handler: async (args, ctx) => {
|
|
179
180
|
try {
|
|
180
181
|
await requireWorkspace(ctx);
|
|
181
|
-
return json(await refreshWorkspace(ctx.workspacePath, { force: Boolean(args.force) }));
|
|
182
|
+
return json(await refreshWorkspace(ctx.workspacePath, { force: Boolean(args.force), check: Boolean(args.check) }));
|
|
182
183
|
}
|
|
183
184
|
catch (error) {
|
|
184
185
|
return errorResult(`Error refreshing context: ${error.message}`);
|
|
@@ -202,18 +203,20 @@ export const tools = [
|
|
|
202
203
|
},
|
|
203
204
|
{
|
|
204
205
|
name: 'add_knowledge',
|
|
205
|
-
description: 'Record a learning in the workspace knowledge file (or a repo base file with `repo`). Use this
|
|
206
|
+
description: 'Record a titled, searchable learning in the workspace knowledge file (or a repo base file with `repo`). Use this for architecture decisions, gotchas, questions, and assumptions; implementation progress is derived live by `nexusflow progress`.',
|
|
206
207
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
207
208
|
inputSchema: {
|
|
208
209
|
type: 'object',
|
|
209
210
|
properties: {
|
|
210
|
-
type: { type: 'string', enum: ['decision', 'gotcha', '
|
|
211
|
+
type: { type: 'string', enum: ['decision', 'gotcha', 'assumption', 'question'], description: 'The kind of learning.' },
|
|
211
212
|
message: { type: 'string', description: 'The learning to record.' },
|
|
212
|
-
title: { type: 'string', description: '
|
|
213
|
+
title: { type: 'string', description: 'Required short title used to create the searchable heading slug.' },
|
|
214
|
+
scope: { type: 'string', description: 'Optional applicability: repo:<name>, path:<repo/path>, or seam:<name>.' },
|
|
215
|
+
evidence: { type: 'string', description: 'Optional short evidence pointer such as a commit SHA or repro document.' },
|
|
213
216
|
repo: { type: 'string', description: "Write to this repo's persistent base knowledge instead of the workspace file (decision/gotcha/assumption only)." },
|
|
214
217
|
...workspaceIdProp,
|
|
215
218
|
},
|
|
216
|
-
required: ['type', 'message'],
|
|
219
|
+
required: ['type', 'message', 'title'],
|
|
217
220
|
},
|
|
218
221
|
handler: async (args, ctx) => {
|
|
219
222
|
try {
|
|
@@ -222,7 +225,13 @@ export const tools = [
|
|
|
222
225
|
const message = String(args.message ?? '').trim();
|
|
223
226
|
if (!message)
|
|
224
227
|
return errorResult('A knowledge message is required.');
|
|
225
|
-
const entry = {
|
|
228
|
+
const entry = {
|
|
229
|
+
type,
|
|
230
|
+
message,
|
|
231
|
+
title: String(args.title ?? ''),
|
|
232
|
+
scope: args.scope ? String(args.scope) : undefined,
|
|
233
|
+
evidence: args.evidence ? String(args.evidence) : undefined,
|
|
234
|
+
};
|
|
226
235
|
const result = args.repo
|
|
227
236
|
? await addBaseKnowledge(ctx.workspacePath, String(args.repo), entry)
|
|
228
237
|
: await addWorkspaceKnowledge(ctx.workspacePath, entry);
|
|
@@ -243,10 +252,11 @@ export const tools = [
|
|
|
243
252
|
repo: { type: 'string', description: 'Target repository (by directory name).' },
|
|
244
253
|
type: { type: 'string', enum: ['decision', 'gotcha', 'assumption'], description: 'The kind of learning to promote.' },
|
|
245
254
|
text: { type: 'string', description: 'The learning text to store in base knowledge.' },
|
|
255
|
+
title: { type: 'string', description: 'Required short title used to create the searchable heading slug.' },
|
|
246
256
|
move: { type: 'boolean', description: 'Reserved; base promotion is additive. Default false.' },
|
|
247
257
|
...workspaceIdProp,
|
|
248
258
|
},
|
|
249
|
-
required: ['repo', 'type', 'text'],
|
|
259
|
+
required: ['repo', 'type', 'text', 'title'],
|
|
250
260
|
},
|
|
251
261
|
handler: async (args, ctx) => {
|
|
252
262
|
try {
|
|
@@ -263,6 +273,7 @@ export const tools = [
|
|
|
263
273
|
const result = await addBaseKnowledge(ctx.workspacePath, String(args.repo), {
|
|
264
274
|
type,
|
|
265
275
|
message: textValue,
|
|
276
|
+
title: String(args.title ?? ''),
|
|
266
277
|
});
|
|
267
278
|
return json(result);
|
|
268
279
|
}
|
|
@@ -319,7 +330,11 @@ export const tools = [
|
|
|
319
330
|
required: ['serviceName'],
|
|
320
331
|
},
|
|
321
332
|
handler: async (args, ctx) => {
|
|
322
|
-
const
|
|
333
|
+
const rawName = String(args.serviceName ?? '').trim();
|
|
334
|
+
const serviceName = path.basename(rawName).replace(/\.log$/, '');
|
|
335
|
+
if (!serviceName || serviceName === '.' || rawName.includes('/') || rawName.includes('\\')) {
|
|
336
|
+
return errorResult(`Invalid service name "${rawName}": service name must be a simple identifier.`);
|
|
337
|
+
}
|
|
323
338
|
const lines = args.lines || 50;
|
|
324
339
|
try {
|
|
325
340
|
const logFilePath = path.join(ctx.workspacePath, '.nexusflow-logs', `${serviceName}.log`);
|
|
@@ -383,11 +398,214 @@ export const tools = [
|
|
|
383
398
|
return errorResult(`Error isolating repository: ${error.message}`);
|
|
384
399
|
}
|
|
385
400
|
},
|
|
386
|
-
}
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
name: 'list_workspaces',
|
|
404
|
+
description: 'List all active NexusFlow workspaces with their branch names, paths, repositories, and mode. Read-only.',
|
|
405
|
+
annotations: { readOnlyHint: true },
|
|
406
|
+
inputSchema: { type: 'object', properties: {} },
|
|
407
|
+
handler: async (_args, ctx) => {
|
|
408
|
+
try {
|
|
409
|
+
const workspaces = await listWorkspaces(ctx.config.workspacesDir);
|
|
410
|
+
return json(workspaces.map((w) => ({
|
|
411
|
+
id: w.id,
|
|
412
|
+
branchName: w.branchName,
|
|
413
|
+
mode: w.mode,
|
|
414
|
+
description: w.description,
|
|
415
|
+
reposCount: w.repos.length,
|
|
416
|
+
workspacePath: w.workspacePath,
|
|
417
|
+
createdAt: w.createdAt,
|
|
418
|
+
})));
|
|
419
|
+
}
|
|
420
|
+
catch (error) {
|
|
421
|
+
return errorResult(`Error listing workspaces: ${error.message}`);
|
|
422
|
+
}
|
|
423
|
+
},
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
name: 'list_repos',
|
|
427
|
+
description: 'List all repositories in the current or specified workspace with their worktree paths, source paths, branches, and isolation status. Read-only.',
|
|
428
|
+
annotations: { readOnlyHint: true },
|
|
429
|
+
inputSchema: { type: 'object', properties: { ...workspaceIdProp } },
|
|
430
|
+
handler: async (_args, ctx) => {
|
|
431
|
+
try {
|
|
432
|
+
await requireWorkspace(ctx);
|
|
433
|
+
const feature = await loadFeatureConfig(ctx.workspacePath);
|
|
434
|
+
if (!feature)
|
|
435
|
+
throw new Error(`Workspace not found at ${ctx.workspacePath}`);
|
|
436
|
+
const reposInfo = [];
|
|
437
|
+
for (const repoPath of feature.repos) {
|
|
438
|
+
const repoName = path.basename(repoPath);
|
|
439
|
+
const worktreePath = resolveFeatureRepoPath(feature, ctx.workspacePath, repoPath);
|
|
440
|
+
let currentBranch = 'unknown';
|
|
441
|
+
try {
|
|
442
|
+
const { stdout } = await execa('git', ['branch', '--show-current'], { cwd: worktreePath, reject: false });
|
|
443
|
+
if (stdout)
|
|
444
|
+
currentBranch = stdout.trim();
|
|
445
|
+
}
|
|
446
|
+
catch { }
|
|
447
|
+
reposInfo.push({
|
|
448
|
+
name: repoName,
|
|
449
|
+
worktreePath,
|
|
450
|
+
sourcePath: repoPath,
|
|
451
|
+
branch: currentBranch,
|
|
452
|
+
isIsolated: worktreePath !== repoPath,
|
|
453
|
+
});
|
|
454
|
+
}
|
|
455
|
+
return json(reposInfo);
|
|
456
|
+
}
|
|
457
|
+
catch (error) {
|
|
458
|
+
return errorResult(`Error listing repos: ${error.message}`);
|
|
459
|
+
}
|
|
460
|
+
},
|
|
461
|
+
},
|
|
462
|
+
{
|
|
463
|
+
name: 'create_workspace',
|
|
464
|
+
description: 'Create a new multi-repo NexusFlow workspace with git worktrees or in-place mode. Automatically scaffolds the workspace, configures editor/MCP files, generates context documents, and initializes git worktrees.',
|
|
465
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
466
|
+
inputSchema: {
|
|
467
|
+
type: 'object',
|
|
468
|
+
properties: {
|
|
469
|
+
branchName: {
|
|
470
|
+
type: 'string',
|
|
471
|
+
minLength: 1,
|
|
472
|
+
description: 'The feature branch name and workspace folder name (e.g. feat/user-auth)',
|
|
473
|
+
},
|
|
474
|
+
repos: {
|
|
475
|
+
type: 'array',
|
|
476
|
+
items: { type: 'string' },
|
|
477
|
+
minItems: 1,
|
|
478
|
+
description: 'List of repository directory names or paths to include',
|
|
479
|
+
},
|
|
480
|
+
mode: {
|
|
481
|
+
type: 'string',
|
|
482
|
+
enum: ['worktree', 'in-place'],
|
|
483
|
+
description: 'Workspace mode: worktree (default) creates dedicated checkouts; in-place edits source directly.',
|
|
484
|
+
},
|
|
485
|
+
description: {
|
|
486
|
+
type: 'string',
|
|
487
|
+
description: 'Brief description of the feature or workspace purpose.',
|
|
488
|
+
},
|
|
489
|
+
assistants: {
|
|
490
|
+
type: 'array',
|
|
491
|
+
items: { type: 'string' },
|
|
492
|
+
description: 'Assistant configurations to initialize (e.g. ["claude", "codex", "antigravity"]).',
|
|
493
|
+
},
|
|
494
|
+
},
|
|
495
|
+
required: ['branchName', 'repos'],
|
|
496
|
+
},
|
|
497
|
+
handler: async (args, ctx) => {
|
|
498
|
+
try {
|
|
499
|
+
const branchName = String(args.branchName || '').trim();
|
|
500
|
+
if (!branchName)
|
|
501
|
+
return errorResult('branchName is required.');
|
|
502
|
+
const rawRepos = Array.isArray(args.repos) ? args.repos : [];
|
|
503
|
+
if (rawRepos.length === 0)
|
|
504
|
+
return errorResult('At least one repo is required.');
|
|
505
|
+
const mode = (args.mode === 'in-place' ? 'in-place' : 'worktree');
|
|
506
|
+
const inPlace = mode === 'in-place';
|
|
507
|
+
const description = args.description ? String(args.description) : branchName;
|
|
508
|
+
const assistants = (Array.isArray(args.assistants)
|
|
509
|
+
? args.assistants
|
|
510
|
+
: ['antigravity', 'claude', 'codex']);
|
|
511
|
+
// Resolve repos against devDir
|
|
512
|
+
const resolvedRepoPaths = [];
|
|
513
|
+
for (const r of rawRepos) {
|
|
514
|
+
const trimmed = String(r).trim();
|
|
515
|
+
const candidatePath = path.isAbsolute(trimmed) ? trimmed : path.join(ctx.config.devDir, trimmed);
|
|
516
|
+
try {
|
|
517
|
+
await fs.access(candidatePath);
|
|
518
|
+
resolvedRepoPaths.push(candidatePath);
|
|
519
|
+
}
|
|
520
|
+
catch {
|
|
521
|
+
return errorResult(`Repository not found at ${candidatePath}`);
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
const repoInfos = await resolveRepoInfos(resolvedRepoPaths);
|
|
525
|
+
const workspaceId = branchName;
|
|
526
|
+
const workspacePath = path.join(ctx.config.workspacesDir, workspaceId);
|
|
527
|
+
const feature = {
|
|
528
|
+
id: workspaceId,
|
|
529
|
+
mode,
|
|
530
|
+
branchName,
|
|
531
|
+
description,
|
|
532
|
+
repos: inPlace
|
|
533
|
+
? repoInfos.map((r) => r.path)
|
|
534
|
+
: repoInfos.map((r) => path.join(workspacePath, r.name)),
|
|
535
|
+
originalRepos: repoInfos.map((r) => r.path),
|
|
536
|
+
assistants,
|
|
537
|
+
workspacePath,
|
|
538
|
+
createdAt: new Date().toISOString(),
|
|
539
|
+
};
|
|
540
|
+
await createWorkspace(feature, repoInfos);
|
|
541
|
+
await refreshWorkspace(workspacePath);
|
|
542
|
+
return json({
|
|
543
|
+
id: workspaceId,
|
|
544
|
+
workspacePath,
|
|
545
|
+
branchName,
|
|
546
|
+
mode,
|
|
547
|
+
repos: feature.repos,
|
|
548
|
+
status: 'created',
|
|
549
|
+
instruction: `Workspace created at '${workspacePath}'. Context files and MCP configs generated successfully.`,
|
|
550
|
+
});
|
|
551
|
+
}
|
|
552
|
+
catch (error) {
|
|
553
|
+
return errorResult(`Error creating workspace: ${error.message}`);
|
|
554
|
+
}
|
|
555
|
+
},
|
|
556
|
+
},
|
|
387
557
|
];
|
|
388
|
-
/**
|
|
389
|
-
export
|
|
390
|
-
|
|
558
|
+
/** Tool allowlists mapped per role. */
|
|
559
|
+
export const ROLE_TOOL_PERMISSIONS = {
|
|
560
|
+
readonly: [
|
|
561
|
+
'search_workspace',
|
|
562
|
+
'workspace_status',
|
|
563
|
+
'get_workspace_diff',
|
|
564
|
+
'run_doctor',
|
|
565
|
+
'get_service_logs',
|
|
566
|
+
'list_workspaces',
|
|
567
|
+
'list_repos',
|
|
568
|
+
],
|
|
569
|
+
review: [
|
|
570
|
+
'search_workspace',
|
|
571
|
+
'workspace_status',
|
|
572
|
+
'get_workspace_diff',
|
|
573
|
+
'run_doctor',
|
|
574
|
+
'get_service_logs',
|
|
575
|
+
'list_workspaces',
|
|
576
|
+
'list_repos',
|
|
577
|
+
],
|
|
578
|
+
ci: [
|
|
579
|
+
'search_workspace',
|
|
580
|
+
'workspace_status',
|
|
581
|
+
'get_workspace_diff',
|
|
582
|
+
'run_doctor',
|
|
583
|
+
'get_service_logs',
|
|
584
|
+
'list_workspaces',
|
|
585
|
+
'list_repos',
|
|
586
|
+
'sync_workspace',
|
|
587
|
+
],
|
|
588
|
+
developer: ['*'],
|
|
589
|
+
interactive: ['*'],
|
|
590
|
+
full: ['*'],
|
|
591
|
+
};
|
|
592
|
+
/** Returns the tools enabled for the given config and role/surface filters. */
|
|
593
|
+
export function enabledTools(config, role, allowList, denyList) {
|
|
594
|
+
return tools.filter((t) => {
|
|
595
|
+
if (t.enabled && !t.enabled(config))
|
|
596
|
+
return false;
|
|
597
|
+
if (denyList && denyList.includes(t.name))
|
|
598
|
+
return false;
|
|
599
|
+
if (allowList && allowList.length > 0 && !allowList.includes(t.name) && !allowList.includes('*'))
|
|
600
|
+
return false;
|
|
601
|
+
if (role && ROLE_TOOL_PERMISSIONS[role]) {
|
|
602
|
+
const permitted = ROLE_TOOL_PERMISSIONS[role];
|
|
603
|
+
if (!permitted.includes('*') && !permitted.includes(t.name)) {
|
|
604
|
+
return false;
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
return true;
|
|
608
|
+
});
|
|
391
609
|
}
|
|
392
610
|
/** Finds a tool by name (regardless of enabled state). */
|
|
393
611
|
export function findTool(name) {
|