@mrpatronz/nexusflow 2.10.0 → 2.10.2
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 +5 -0
- package/desktop/assets/icon.png +0 -0
- package/dist/agent/ClaudeCliAdapter.d.ts +2 -2
- package/dist/agent/ClaudeCliAdapter.d.ts.map +1 -1
- package/dist/agent/ClaudeCliAdapter.js +6 -4
- package/dist/agent/ClaudeCliAdapter.js.map +1 -1
- package/dist/agent/CliAdapterBase.d.ts.map +1 -1
- package/dist/agent/CliAdapterBase.js +8 -1
- package/dist/agent/CliAdapterBase.js.map +1 -1
- package/dist/agent/cliAvailability.d.ts +2 -5
- package/dist/agent/cliAvailability.d.ts.map +1 -1
- package/dist/agent/cliAvailability.js +6 -41
- package/dist/agent/cliAvailability.js.map +1 -1
- package/dist/agent/session.d.ts +5 -0
- package/dist/agent/session.d.ts.map +1 -1
- package/dist/agent/session.js +8 -0
- package/dist/agent/session.js.map +1 -1
- package/dist/commands/create.d.ts.map +1 -1
- package/dist/commands/create.js +40 -0
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/desktop.d.ts +2 -0
- package/dist/commands/desktop.d.ts.map +1 -1
- package/dist/commands/desktop.js +102 -31
- package/dist/commands/desktop.js.map +1 -1
- package/dist/core/workspace.d.ts +10 -1
- package/dist/core/workspace.d.ts.map +1 -1
- package/dist/core/workspace.js +21 -4
- package/dist/core/workspace.js.map +1 -1
- package/dist/core/worktree.d.ts +10 -4
- package/dist/core/worktree.d.ts.map +1 -1
- package/dist/core/worktree.js +34 -47
- package/dist/core/worktree.js.map +1 -1
- package/dist/generators/base.d.ts.map +1 -1
- package/dist/generators/base.js +0 -1
- package/dist/generators/base.js.map +1 -1
- package/dist/gui/assets/AgentsPage-DbivhmK0.js +3 -0
- package/dist/gui/assets/DashboardPage-D50Qrm3e.js +1 -0
- package/dist/gui/assets/{GettingStartedPage-BKeuSHZQ.js → GettingStartedPage-1MOTng3B.js} +1 -1
- package/dist/gui/assets/{NullStore-DuSDhGOe.js → NullStore-tdPen1kp.js} +1 -1
- package/dist/gui/assets/ProjectsPage-srKgf7VN.js +1 -0
- package/dist/gui/assets/ScaffoldRepoInline-CP0yn5mw.js +1 -0
- package/dist/gui/assets/SettingsPage-DWmrLV8o.js +1 -0
- package/dist/gui/assets/SkillsPage-CKjTXdrd.js +6 -0
- package/dist/gui/assets/StartWorkPage-BCUnJ9k8.js +1 -0
- package/dist/gui/assets/{StrategiesPage-BRQMly_d.js → StrategiesPage-CdCbbIu-.js} +2 -2
- package/dist/gui/assets/WorkroomsPage-BcT-mGtT.js +4 -0
- package/dist/gui/assets/WorkspacesPage-CYFCm-7_.js +2 -0
- package/dist/gui/assets/{alert-dialog-BHEUQVyS.js → alert-dialog-u7qgb9Hq.js} +1 -1
- package/dist/gui/assets/badge-DwXvB44H.js +1 -0
- package/dist/gui/assets/chunk-BV7QT456-DfUBKG-z.js +3 -0
- package/dist/gui/assets/index-3tD_IeyQ.js +55 -0
- package/dist/gui/assets/index-CK5YRfPV.css +2 -0
- package/dist/gui/assets/tabs-BrHKp5bD.js +1 -0
- package/dist/gui/assets/{useAriaLabelledBy-BmJErI5a.js → useAriaLabelledBy-C4zV-1Ra.js} +1 -1
- package/dist/gui/assets/{vsc-eMRaEwN3.js → vsc-D80c4gBT.js} +1 -1
- package/dist/gui/index.html +5 -8
- package/dist/orchestration/runner.d.ts.map +1 -1
- package/dist/orchestration/runner.js +28 -10
- package/dist/orchestration/runner.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +116 -10
- package/dist/server.js.map +1 -1
- package/dist/utils/repo-freshness.d.ts +106 -0
- package/dist/utils/repo-freshness.d.ts.map +1 -0
- package/dist/utils/repo-freshness.js +405 -0
- package/dist/utils/repo-freshness.js.map +1 -0
- package/dist/utils/session-finder.d.ts.map +1 -1
- package/dist/utils/session-finder.js +23 -8
- package/dist/utils/session-finder.js.map +1 -1
- package/dist/utils/terminal-launch.d.ts +4 -2
- package/dist/utils/terminal-launch.d.ts.map +1 -1
- package/dist/utils/terminal-launch.js +26 -16
- package/dist/utils/terminal-launch.js.map +1 -1
- package/dist/utils/user-paths.d.ts +23 -0
- package/dist/utils/user-paths.d.ts.map +1 -0
- package/dist/utils/user-paths.js +126 -0
- package/dist/utils/user-paths.js.map +1 -0
- package/package.json +6 -2
- package/dist/gui/assets/AgentsPage-CnXzZFo1.js +0 -3
- package/dist/gui/assets/DashboardPage-rm3hKgsw.js +0 -1
- package/dist/gui/assets/ProjectsPage-CioaA4uf.js +0 -1
- package/dist/gui/assets/ScaffoldRepoInline-DKZ1rPmE.js +0 -1
- package/dist/gui/assets/Separator-BgWyHDtg.js +0 -1
- package/dist/gui/assets/SettingsPage-BevO8oge.js +0 -1
- package/dist/gui/assets/SkillsPage-D2stJRWy.js +0 -6
- package/dist/gui/assets/StartWorkPage-C8a6eN90.js +0 -1
- package/dist/gui/assets/WorkroomsPage-KqBkRD-x.js +0 -4
- package/dist/gui/assets/WorkspacesPage-DcA2i5HN.js +0 -2
- package/dist/gui/assets/badge-DTBzXOWn.js +0 -1
- package/dist/gui/assets/index-BB4BuHBQ.css +0 -2
- package/dist/gui/assets/index-BTe-_1Mu.js +0 -57
- package/dist/gui/assets/isElementDisabled-BrwmCB1d.js +0 -1
- package/dist/gui/assets/menu-d_G9km1-.js +0 -1
- package/dist/gui/assets/tabs-BHwTt4t1.js +0 -1
- package/dist/gui/assets/useValueChanged-WS99hTmm.js +0 -1
|
@@ -251,17 +251,23 @@ export async function startService(service, workspacePath, logDir) {
|
|
|
251
251
|
export async function stopService(workspacePath, serviceName) {
|
|
252
252
|
const uniqueName = pm2AppName(workspacePath, serviceName);
|
|
253
253
|
let existed = false;
|
|
254
|
+
let deleteSuccess = true;
|
|
254
255
|
const pm2List = await getPm2List();
|
|
255
256
|
if (pm2List.some((app) => app.name === uniqueName)) {
|
|
256
257
|
existed = true;
|
|
257
|
-
await execa('npx', ['pm2', 'delete', uniqueName], { reject: false });
|
|
258
|
+
const res = await execa('npx', ['pm2', 'delete', uniqueName], { reject: false });
|
|
259
|
+
if (res.failed || (typeof res.exitCode === 'number' && res.exitCode !== 0)) {
|
|
260
|
+
deleteSuccess = false;
|
|
261
|
+
}
|
|
258
262
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
263
|
+
if (deleteSuccess) {
|
|
264
|
+
await mutateRunningState(workspacePath, (state) => {
|
|
265
|
+
if (state.services.some((s) => s.name === serviceName))
|
|
266
|
+
existed = true;
|
|
267
|
+
return { ...state, services: state.services.filter((s) => s.name !== serviceName) };
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
return existed && deleteSuccess;
|
|
265
271
|
}
|
|
266
272
|
/**
|
|
267
273
|
* Restarts ONE service. PM2 starts pre-delete the app, so this is startService
|
|
@@ -301,6 +307,7 @@ export async function stopServices(workspacePath) {
|
|
|
301
307
|
const orchNames = new Set((raw?.orchestrators ?? [])
|
|
302
308
|
.map((o) => o.pm2Name)
|
|
303
309
|
.filter((n) => typeof n === 'string'));
|
|
310
|
+
const failedApps = new Set();
|
|
304
311
|
try {
|
|
305
312
|
const pm2List = await getPm2List();
|
|
306
313
|
const targetApps = pm2List.filter((app) => app.name && app.name.startsWith(prefix) && !orchNames.has(app.name));
|
|
@@ -310,15 +317,26 @@ export async function stopServices(workspacePath) {
|
|
|
310
317
|
else {
|
|
311
318
|
for (const app of targetApps) {
|
|
312
319
|
console.log(chalk.dim(` Stopping PM2 process: ${app.name}`));
|
|
313
|
-
await execa('npx', ['pm2', 'delete', app.name], { reject: false });
|
|
320
|
+
const res = await execa('npx', ['pm2', 'delete', app.name], { reject: false });
|
|
321
|
+
if (res.failed || (typeof res.exitCode === 'number' && res.exitCode !== 0)) {
|
|
322
|
+
failedApps.add(app.name);
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
if (failedApps.size > 0) {
|
|
326
|
+
console.error(chalk.red(` ✖ Failed to stop some PM2 processes: ${Array.from(failedApps).join(', ')}`));
|
|
327
|
+
}
|
|
328
|
+
else {
|
|
329
|
+
console.log(chalk.green(` ✔ All services stopped.`));
|
|
314
330
|
}
|
|
315
|
-
console.log(chalk.green(` ✔ All services stopped.`));
|
|
316
331
|
}
|
|
317
332
|
}
|
|
318
333
|
catch (error) {
|
|
319
334
|
console.error(chalk.red(` ✖ Failed to stop services via PM2: ${error.message}`));
|
|
320
335
|
}
|
|
321
|
-
await mutateRunningState(workspacePath, (state) => ({
|
|
336
|
+
await mutateRunningState(workspacePath, (state) => ({
|
|
337
|
+
...state,
|
|
338
|
+
services: state.services.filter((s) => failedApps.has(pm2AppName(workspacePath, s.name))),
|
|
339
|
+
}));
|
|
322
340
|
}
|
|
323
341
|
/**
|
|
324
342
|
* Shows the status of all services in a workspace by querying PM2.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/orchestration/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/orchestration/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAiE5B,OAAO,EAA6B,aAAa,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAyF7G,eAAO,MAAM,GAAG,4EAAa,CAAC;AAc9B,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;AA0K7C,yEAAyE;AACzE,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,SAA2B;CAI/C;AAmBD,kFAAkF;AAClF,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAE9E;AAID;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,YAAY,GAAE,MAAM,CAAC,YAA2B,EAChD,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,eAAe,GAAE,MAAM,OAMtB,GACA,OAAO,CAeT;AAiCD,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE/E;AAkzGD,wBAAgB,WAAW,CACzB,IAAI,SAAO,EACX,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE,CAAC,CAgCxC"}
|
package/dist/server.js
CHANGED
|
@@ -26,6 +26,7 @@ import { createNewRepo, isValidProjectName } from './core/new-repo.js';
|
|
|
26
26
|
import { loadProjects, createProject, updateProject, removeProject, slugifyProjectName } from './core/projects.js';
|
|
27
27
|
import { getSessionCwd, isInPlace, resolveFeatureRepoPath } from './utils/feature.js';
|
|
28
28
|
import { listBranches } from './utils/git.js';
|
|
29
|
+
import { checkRepoFreshness, checkReposFreshness, fastForwardRepos, } from './utils/repo-freshness.js';
|
|
29
30
|
import { createWorkspace, listWorkspaces, loadFeatureConfig, loadWorkspaceManifest, deleteWorkspace, addRepoToWorkspace, isolateWorkspaceRepo } from './core/workspace.js';
|
|
30
31
|
import { loadWorkspaceState } from './core/workspace-state.js';
|
|
31
32
|
import { analyzeAllRepos } from './analyzers/index.js';
|
|
@@ -37,7 +38,7 @@ import { isBinaryOnPath, launchWorkspaceTerminal, SUPPORTED_ASSISTANTS } from '.
|
|
|
37
38
|
import { openInEditor } from './utils/open-editor.js';
|
|
38
39
|
import { canOpenCodexSessionInWorkspace, canTransferClaudeSessionInWorkspace, findActiveAssistants, findSessions, getSessionTranscript, } from './utils/session-finder.js';
|
|
39
40
|
import { ProviderRegistry } from './agent/adapters.js';
|
|
40
|
-
import { isValidSessionUuid } from './agent/session.js';
|
|
41
|
+
import { isValidSessionId, isValidSessionUuid } from './agent/session.js';
|
|
41
42
|
import { defaultTurnSessionManager, AgentTurnGate, dispatchAgentInput } from './agent/TurnSessionManager.js';
|
|
42
43
|
import { getRepoStatus } from './utils/multi-git.js';
|
|
43
44
|
import { syncWorkspace } from './core/sync.js';
|
|
@@ -258,9 +259,13 @@ export class PathAccessError extends Error {
|
|
|
258
259
|
function assertWithin(baseDir, target) {
|
|
259
260
|
const base = path.resolve(baseDir);
|
|
260
261
|
const resolved = path.resolve(target);
|
|
262
|
+
const isWin = process.platform === 'win32';
|
|
263
|
+
const normBase = isWin ? base.toLowerCase() : base;
|
|
264
|
+
const normResolved = isWin ? resolved.toLowerCase() : resolved;
|
|
265
|
+
const sep = isWin ? path.sep.toLowerCase() : path.sep;
|
|
261
266
|
// Trailing separator prevents a sibling like `feat-secret` from passing the
|
|
262
267
|
// prefix test for base `feat`.
|
|
263
|
-
if (
|
|
268
|
+
if (normResolved !== normBase && !normResolved.startsWith(normBase + (normBase.endsWith(sep) ? '' : sep))) {
|
|
264
269
|
throw new PathAccessError();
|
|
265
270
|
}
|
|
266
271
|
return resolved;
|
|
@@ -315,7 +320,10 @@ async function resolveExactLaunchWorkspace(workspacesDir, candidatePath) {
|
|
|
315
320
|
return null;
|
|
316
321
|
try {
|
|
317
322
|
const declaredWorkspace = await fs.realpath(path.resolve(feature.workspacePath));
|
|
318
|
-
|
|
323
|
+
const isWin = process.platform === 'win32';
|
|
324
|
+
const normDeclared = isWin ? path.resolve(declaredWorkspace).toLowerCase() : path.resolve(declaredWorkspace);
|
|
325
|
+
const normSafe = isWin ? path.resolve(safeWorkspacePath).toLowerCase() : path.resolve(safeWorkspacePath);
|
|
326
|
+
return normDeclared === normSafe
|
|
319
327
|
? safeWorkspacePath
|
|
320
328
|
: null;
|
|
321
329
|
}
|
|
@@ -655,6 +663,80 @@ app.get('/api/repos/branches', async (c) => {
|
|
|
655
663
|
return errorResponse(c, error);
|
|
656
664
|
}
|
|
657
665
|
});
|
|
666
|
+
// 3a.1. Base repository freshness inspection
|
|
667
|
+
app.get('/api/repos/freshness', async (c) => {
|
|
668
|
+
try {
|
|
669
|
+
const repoPath = c.req.query('path');
|
|
670
|
+
if (!repoPath) {
|
|
671
|
+
return c.json({ error: 'Missing "path" query parameter' }, 400);
|
|
672
|
+
}
|
|
673
|
+
const branch = c.req.query('branch') || undefined;
|
|
674
|
+
const fetchParam = c.req.query('fetch');
|
|
675
|
+
const config = await loadConfig();
|
|
676
|
+
const resolved = assertWithin(config.devDir, repoPath);
|
|
677
|
+
const freshness = await checkRepoFreshness(resolved, branch, {
|
|
678
|
+
fetch: fetchParam !== 'false' && fetchParam !== '0',
|
|
679
|
+
});
|
|
680
|
+
return c.json(freshness);
|
|
681
|
+
}
|
|
682
|
+
catch (error) {
|
|
683
|
+
return errorResponse(c, error);
|
|
684
|
+
}
|
|
685
|
+
});
|
|
686
|
+
app.post('/api/repos/freshness', async (c) => {
|
|
687
|
+
try {
|
|
688
|
+
const body = await c.req.json();
|
|
689
|
+
if (!body.repos || !Array.isArray(body.repos)) {
|
|
690
|
+
return c.json({ error: 'Missing "repos" array in request body' }, 400);
|
|
691
|
+
}
|
|
692
|
+
const config = await loadConfig();
|
|
693
|
+
const validatedRepos = body.repos.map((r) => ({
|
|
694
|
+
path: assertWithin(config.devDir, r.path),
|
|
695
|
+
branch: r.branch,
|
|
696
|
+
}));
|
|
697
|
+
const results = await checkReposFreshness(validatedRepos, {
|
|
698
|
+
fetch: body.fetch !== false,
|
|
699
|
+
});
|
|
700
|
+
return c.json(results);
|
|
701
|
+
}
|
|
702
|
+
catch (error) {
|
|
703
|
+
return errorResponse(c, error);
|
|
704
|
+
}
|
|
705
|
+
});
|
|
706
|
+
// 3a.2. Fast-forward base repository branch to remote tracking branch
|
|
707
|
+
app.post('/api/repos/pull', async (c) => {
|
|
708
|
+
try {
|
|
709
|
+
const body = await c.req.json();
|
|
710
|
+
const config = await loadConfig();
|
|
711
|
+
let reposToUpdate = [];
|
|
712
|
+
if (body.repos && Array.isArray(body.repos)) {
|
|
713
|
+
reposToUpdate = body.repos.map((r) => ({
|
|
714
|
+
path: assertWithin(config.devDir, r.path),
|
|
715
|
+
branch: r.branch,
|
|
716
|
+
}));
|
|
717
|
+
}
|
|
718
|
+
else if (body.path) {
|
|
719
|
+
reposToUpdate = [
|
|
720
|
+
{
|
|
721
|
+
path: assertWithin(config.devDir, body.path),
|
|
722
|
+
branch: body.branch,
|
|
723
|
+
},
|
|
724
|
+
];
|
|
725
|
+
}
|
|
726
|
+
else {
|
|
727
|
+
return c.json({ error: 'Missing "path" or "repos" in request body' }, 400);
|
|
728
|
+
}
|
|
729
|
+
const results = await fastForwardRepos(reposToUpdate);
|
|
730
|
+
const allSuccessful = results.every((r) => r.success);
|
|
731
|
+
return c.json({
|
|
732
|
+
success: allSuccessful,
|
|
733
|
+
results,
|
|
734
|
+
});
|
|
735
|
+
}
|
|
736
|
+
catch (error) {
|
|
737
|
+
return errorResponse(c, error);
|
|
738
|
+
}
|
|
739
|
+
});
|
|
658
740
|
// 3b. Scaffold a brand-new local git repository in devDir
|
|
659
741
|
app.post('/api/repos/new', async (c) => {
|
|
660
742
|
try {
|
|
@@ -953,7 +1035,9 @@ async function runCreationJob(jobId, body, config) {
|
|
|
953
1035
|
// Step 1: Materialize the workspace (worktrees, or just the lightweight
|
|
954
1036
|
// dir). One stable step id for both modes — only the wording differs.
|
|
955
1037
|
updateJobStep(jobId, 'workspace', 'running', inPlace ? 'Registering workspace...' : 'Creating git worktrees...');
|
|
956
|
-
await createWorkspace(feature, body.repos
|
|
1038
|
+
await createWorkspace(feature, body.repos, undefined, {
|
|
1039
|
+
autoUpdateBase: body.autoUpdateBase !== false,
|
|
1040
|
+
});
|
|
957
1041
|
if (Array.isArray(body.enabledSkills) || Array.isArray(body.enabledAgents) || Array.isArray(body.enabledCategories)) {
|
|
958
1042
|
await saveWorkspaceSkillsConfig(workspacePath, {
|
|
959
1043
|
enabledSkills: Array.isArray(body.enabledSkills) ? body.enabledSkills : [],
|
|
@@ -1281,15 +1365,15 @@ app.post('/api/workspace/:id/terminal', async (c) => {
|
|
|
1281
1365
|
}
|
|
1282
1366
|
try {
|
|
1283
1367
|
const id = decodeURIComponent(c.req.param('id'));
|
|
1284
|
-
const { command, assistant, sessionId, title } = await c.req.json().catch(() => ({}));
|
|
1368
|
+
const { command, assistant, sessionId, title, cwd } = await c.req.json().catch(() => ({}));
|
|
1285
1369
|
if (assistant !== undefined) {
|
|
1286
1370
|
if (typeof assistant !== 'string' || !SUPPORTED_ASSISTANTS.has(assistant.trim().toLowerCase())) {
|
|
1287
1371
|
return c.json({ error: 'Invalid or unsupported assistant parameter.' }, 400);
|
|
1288
1372
|
}
|
|
1289
1373
|
}
|
|
1290
1374
|
if (sessionId !== undefined) {
|
|
1291
|
-
if (typeof sessionId !== 'string' || !
|
|
1292
|
-
return c.json({ error: 'Invalid session
|
|
1375
|
+
if (typeof sessionId !== 'string' || !isValidSessionId(sessionId)) {
|
|
1376
|
+
return c.json({ error: 'Invalid session ID format.' }, 400);
|
|
1293
1377
|
}
|
|
1294
1378
|
}
|
|
1295
1379
|
if (command !== undefined && (typeof command !== 'string' || !command.trim())) {
|
|
@@ -1298,6 +1382,9 @@ app.post('/api/workspace/:id/terminal', async (c) => {
|
|
|
1298
1382
|
if (title !== undefined && typeof title !== 'string') {
|
|
1299
1383
|
return c.json({ error: 'Title must be a string.' }, 400);
|
|
1300
1384
|
}
|
|
1385
|
+
if (cwd !== undefined && typeof cwd !== 'string') {
|
|
1386
|
+
return c.json({ error: 'Cwd must be a string.' }, 400);
|
|
1387
|
+
}
|
|
1301
1388
|
const config = await loadConfig();
|
|
1302
1389
|
const requestedWorkspacePath = resolveWorkspacePath(config.workspacesDir, id);
|
|
1303
1390
|
let workspacePath;
|
|
@@ -1313,7 +1400,21 @@ app.post('/api/workspace/:id/terminal', async (c) => {
|
|
|
1313
1400
|
return c.json({ error: 'Workspace configuration not found.' }, 404);
|
|
1314
1401
|
}
|
|
1315
1402
|
await checkGenerationLock(workspacePath, { markDocuments: true });
|
|
1316
|
-
|
|
1403
|
+
let launchPath = workspacePath;
|
|
1404
|
+
if (typeof cwd === 'string' && cwd.trim()) {
|
|
1405
|
+
try {
|
|
1406
|
+
const canonicalWorkspace = await fs.realpath(workspacePath);
|
|
1407
|
+
const canonicalCwd = await fs.realpath(path.resolve(workspacePath, cwd.trim()));
|
|
1408
|
+
launchPath = assertWithin(canonicalWorkspace, canonicalCwd);
|
|
1409
|
+
}
|
|
1410
|
+
catch (error) {
|
|
1411
|
+
if (error instanceof PathAccessError) {
|
|
1412
|
+
return c.json({ error: 'Launch directory must be within workspace.' }, 400);
|
|
1413
|
+
}
|
|
1414
|
+
return c.json({ error: 'Launch directory not found or invalid.' }, 400);
|
|
1415
|
+
}
|
|
1416
|
+
}
|
|
1417
|
+
const res = await launchWorkspaceTerminal(launchPath, {
|
|
1317
1418
|
command: typeof command === 'string' ? command : undefined,
|
|
1318
1419
|
assistant: typeof assistant === 'string' ? assistant : undefined,
|
|
1319
1420
|
sessionId: typeof sessionId === 'string' ? sessionId : undefined,
|
|
@@ -2006,8 +2107,13 @@ app.get('/api/workspace/:id/plan', async (c) => {
|
|
|
2006
2107
|
try {
|
|
2007
2108
|
content = await fs.readFile(resolved.path, 'utf-8');
|
|
2008
2109
|
}
|
|
2009
|
-
catch {
|
|
2010
|
-
|
|
2110
|
+
catch (err) {
|
|
2111
|
+
if (err && (err.code === 'ENOENT' || err.code === 'ENOTDIR')) {
|
|
2112
|
+
content = '# Workspace Plan\n\nNo implementation plan file yet.';
|
|
2113
|
+
}
|
|
2114
|
+
else {
|
|
2115
|
+
throw err;
|
|
2116
|
+
}
|
|
2011
2117
|
}
|
|
2012
2118
|
return c.json({ content });
|
|
2013
2119
|
}
|