@junctionpanel/server 0.1.101 → 0.1.103
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/dist/server/client/daemon-client.d.ts +12 -1
- package/dist/server/client/daemon-client.d.ts.map +1 -1
- package/dist/server/client/daemon-client.js +27 -0
- package/dist/server/client/daemon-client.js.map +1 -1
- package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/claude-agent.js +4 -3
- package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
- package/dist/server/server/exports.d.ts +1 -1
- package/dist/server/server/exports.d.ts.map +1 -1
- package/dist/server/server/exports.js +1 -1
- package/dist/server/server/exports.js.map +1 -1
- package/dist/server/server/session.d.ts +9 -0
- package/dist/server/server/session.d.ts.map +1 -1
- package/dist/server/server/session.js +107 -3
- package/dist/server/server/session.js.map +1 -1
- package/dist/server/shared/messages.d.ts +578 -0
- package/dist/server/shared/messages.d.ts.map +1 -1
- package/dist/server/shared/messages.js +38 -0
- package/dist/server/shared/messages.js.map +1 -1
- package/dist/server/shared/switchboard.d.ts +4 -4
- package/dist/server/shared/switchboard.d.ts.map +1 -1
- package/dist/server/shared/switchboard.js +29 -50
- package/dist/server/shared/switchboard.js.map +1 -1
- package/dist/server/utils/checkout-git.d.ts.map +1 -1
- package/dist/server/utils/checkout-git.js +13 -2
- package/dist/server/utils/checkout-git.js.map +1 -1
- package/package.json +2 -2
|
@@ -9,7 +9,7 @@ export { loadOrCreateDaemonKeyPair } from "./daemon-keypair.js";
|
|
|
9
9
|
export { createConnectionOfferV2, encodeOfferToFragmentUrl } from "./connection-offer.js";
|
|
10
10
|
export { buildRelayWebSocketUrl } from "../shared/daemon-endpoints.js";
|
|
11
11
|
export { DaemonClient, type DaemonClientConfig, type ConnectionState, type DaemonEvent } from "../client/daemon-client.js";
|
|
12
|
-
export { SWITCHBOARD_ISSUE_LABEL, SWITCHBOARD_MANAGED_BY_LABEL, SWITCHBOARD_MANAGED_BY_VALUE, SWITCHBOARD_PROJECT_ID_LABEL, SWITCHBOARD_PROJECT_KEY_LABEL, SWITCHBOARD_RUN_ID_LABEL, SWITCHBOARD_WORKFLOW_FILE, SWITCHBOARD_WORKFLOW_TEMPLATE, SwitchboardWorkflowSchema, buildSwitchboardRunPrompt, parseSwitchboardWorkflowFile, sanitizeSwitchboardSlugPart, type SwitchboardWorkflow, type SwitchboardWorkflowParseResult, } from "../shared/switchboard.js";
|
|
12
|
+
export { SWITCHBOARD_ISSUE_LABEL, SWITCHBOARD_MANAGED_BY_LABEL, SWITCHBOARD_MANAGED_BY_VALUE, SWITCHBOARD_PROJECT_ID_LABEL, SWITCHBOARD_PROJECT_KEY_LABEL, SWITCHBOARD_RUN_ID_LABEL, SWITCHBOARD_WORKFLOW_FILE, SWITCHBOARD_WORKFLOW_TEMPLATE, SwitchboardWorkflowSchema, buildSwitchboardRunPrompt, parseSwitchboardWorkflowFile, sanitizeSwitchboardSlugPart, serializeSwitchboardWorkflow, type SwitchboardWorkflow, type SwitchboardWorkflowParseResult, } from "../shared/switchboard.js";
|
|
13
13
|
export type { AgentMode, AgentUsage, AgentCapabilityFlags, AgentPermissionRequest, AgentTimelineItem, } from "./agent/agent-sdk-types.js";
|
|
14
14
|
export { curateAgentActivity } from "./agent/activity-curator.js";
|
|
15
15
|
export { getStructuredAgentResponse, StructuredAgentResponseError, StructuredAgentFallbackError, DEFAULT_STRUCTURED_GENERATION_PROVIDERS, generateStructuredAgentResponseWithFallback, type AgentCaller, type JsonSchema, type StructuredGenerationAttempt, type StructuredGenerationProvider, type StructuredAgentGenerationOptions, type StructuredAgentGenerationWithFallbackOptions, type StructuredAgentResponseOptions, } from "./agent/agent-response-loop.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../../../src/server/exports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAC/G,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC3H,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,KAAK,mBAAmB,EACxB,KAAK,8BAA8B,GACpC,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EACV,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,uCAAuC,EACvC,2CAA2C,EAC3C,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,gCAAgC,EACrC,KAAK,4CAA4C,EACjD,KAAK,8BAA8B,GACpC,MAAM,gCAAgC,CAAC;AAGxC,YAAY,EACV,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../../../src/server/exports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAC/G,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC3H,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,4BAA4B,EAC5B,KAAK,mBAAmB,EACxB,KAAK,8BAA8B,GACpC,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EACV,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,uCAAuC,EACvC,2CAA2C,EAC3C,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,gCAAgC,EACrC,KAAK,4CAA4C,EACjD,KAAK,8BAA8B,GACpC,MAAM,gCAAgC,CAAC;AAGxC,YAAY,EACV,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
|
|
@@ -10,7 +10,7 @@ export { loadOrCreateDaemonKeyPair } from "./daemon-keypair.js";
|
|
|
10
10
|
export { createConnectionOfferV2, encodeOfferToFragmentUrl } from "./connection-offer.js";
|
|
11
11
|
export { buildRelayWebSocketUrl } from "../shared/daemon-endpoints.js";
|
|
12
12
|
export { DaemonClient } from "../client/daemon-client.js";
|
|
13
|
-
export { SWITCHBOARD_ISSUE_LABEL, SWITCHBOARD_MANAGED_BY_LABEL, SWITCHBOARD_MANAGED_BY_VALUE, SWITCHBOARD_PROJECT_ID_LABEL, SWITCHBOARD_PROJECT_KEY_LABEL, SWITCHBOARD_RUN_ID_LABEL, SWITCHBOARD_WORKFLOW_FILE, SWITCHBOARD_WORKFLOW_TEMPLATE, SwitchboardWorkflowSchema, buildSwitchboardRunPrompt, parseSwitchboardWorkflowFile, sanitizeSwitchboardSlugPart, } from "../shared/switchboard.js";
|
|
13
|
+
export { SWITCHBOARD_ISSUE_LABEL, SWITCHBOARD_MANAGED_BY_LABEL, SWITCHBOARD_MANAGED_BY_VALUE, SWITCHBOARD_PROJECT_ID_LABEL, SWITCHBOARD_PROJECT_KEY_LABEL, SWITCHBOARD_RUN_ID_LABEL, SWITCHBOARD_WORKFLOW_FILE, SWITCHBOARD_WORKFLOW_TEMPLATE, SwitchboardWorkflowSchema, buildSwitchboardRunPrompt, parseSwitchboardWorkflowFile, sanitizeSwitchboardSlugPart, serializeSwitchboardWorkflow, } from "../shared/switchboard.js";
|
|
14
14
|
// Agent activity curator for CLI logs
|
|
15
15
|
export { curateAgentActivity } from "./agent/activity-curator.js";
|
|
16
16
|
export { getStructuredAgentResponse, StructuredAgentResponseError, StructuredAgentFallbackError, DEFAULT_STRUCTURED_GENERATION_PROVIDERS, generateStructuredAgentResponseWithFallback, } from "./agent/agent-response-loop.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../src/server/exports.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,OAAO,EAAE,oBAAoB,EAAkD,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,UAAU,EAA2B,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAiC,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAoB,MAAM,eAAe,CAAC;AAC/G,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAmE,MAAM,4BAA4B,CAAC;AAC3H,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,
|
|
1
|
+
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../src/server/exports.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,OAAO,EAAE,oBAAoB,EAAkD,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,UAAU,EAA2B,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAiC,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAoB,MAAM,eAAe,CAAC;AAC/G,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAmE,MAAM,4BAA4B,CAAC;AAC3H,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,4BAA4B,GAG7B,MAAM,0BAA0B,CAAC;AAWlC,sCAAsC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,uCAAuC,EACvC,2CAA2C,GAQ5C,MAAM,gCAAgC,CAAC"}
|
|
@@ -9,6 +9,7 @@ import { AgentStorage } from './agent/agent-storage.js';
|
|
|
9
9
|
import { DownloadTokenStore } from './file-download/token-store.js';
|
|
10
10
|
import type { LifecycleInitiatorClientType, SessionLifecycleIntent } from './lifecycle-intent.js';
|
|
11
11
|
import type pino from 'pino';
|
|
12
|
+
export declare function resolveWorkspaceRelativeFilePath(rootPath: string, filePath: string): string;
|
|
12
13
|
export type SessionOptions = {
|
|
13
14
|
clientId: string;
|
|
14
15
|
userId?: string;
|
|
@@ -306,6 +307,14 @@ export declare class Session {
|
|
|
306
307
|
* Handle read-only file explorer requests scoped to a workspace cwd
|
|
307
308
|
*/
|
|
308
309
|
private handleWorkspaceFileExplorerRequest;
|
|
310
|
+
/**
|
|
311
|
+
* Handle workspace file write request
|
|
312
|
+
*/
|
|
313
|
+
private handleWorkspaceFileWriteRequest;
|
|
314
|
+
/**
|
|
315
|
+
* Handle workspace create worktree request
|
|
316
|
+
*/
|
|
317
|
+
private handleWorkspaceCreateWorktreeRequest;
|
|
309
318
|
/**
|
|
310
319
|
* Handle project icon request for a given cwd
|
|
311
320
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/server/session.ts"],"names":[],"mappings":"AAQA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/server/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { v4 as uuidv4 } from 'uuid';
|
|
2
|
-
import { existsSync, statSync, watch } from 'node:fs';
|
|
2
|
+
import { existsSync, mkdirSync, statSync, watch, writeFileSync } from 'node:fs';
|
|
3
3
|
import { exec, execFile } from 'child_process';
|
|
4
4
|
import { promisify } from 'util';
|
|
5
|
-
import { resolve, sep, basename, dirname, parse as parsePath } from 'path';
|
|
5
|
+
import { resolve, sep, basename, dirname, isAbsolute, parse as parsePath, posix, win32 } from 'path';
|
|
6
6
|
import { homedir, hostname } from 'node:os';
|
|
7
7
|
import { z } from 'zod';
|
|
8
8
|
import { serializeAgentStreamEvent, AgentSnapshotPayloadSchema, } from './messages.js';
|
|
@@ -20,7 +20,7 @@ import { projectTimelineRows, selectTimelineWindowByProjectedLimit, } from './ag
|
|
|
20
20
|
import { DEFAULT_STRUCTURED_GENERATION_PROVIDERS, StructuredAgentFallbackError, StructuredAgentResponseError, generateStructuredAgentResponseWithFallback, resolveStructuredGenerationPreferredProviderForCwd, resolveStructuredGenerationProviders, } from './agent/agent-response-loop.js';
|
|
21
21
|
import { isValidAgentProvider, AGENT_PROVIDER_IDS } from './agent/provider-manifest.js';
|
|
22
22
|
import { listDirectoryEntries, readExplorerFile, getDownloadableFileInfo, isWorkspaceExplorerMissingPathError, } from './file-explorer/service.js';
|
|
23
|
-
import { slugify, validateBranchSlug, listJunctionWorktrees, deleteJunctionWorktree, isJunctionOwnedWorktreeCwd, resolveJunctionWorktreeRootForCwd, createInRepoWorktree, attachInRepoWorktree, restoreInRepoWorktree, } from '../utils/worktree.js';
|
|
23
|
+
import { slugify, validateBranchSlug, listJunctionWorktrees, deleteJunctionWorktree, isJunctionOwnedWorktreeCwd, resolveJunctionWorktreeRootForCwd, createInRepoWorktree, attachInRepoWorktree, restoreInRepoWorktree, createWorktree, } from '../utils/worktree.js';
|
|
24
24
|
import { readJunctionWorktreeMetadata } from '../utils/worktree-metadata.js';
|
|
25
25
|
import { runAsyncWorktreeBootstrap } from './worktree-bootstrap.js';
|
|
26
26
|
import { getCheckoutDiff, getCheckoutStatus, getCheckoutStatusLite, listBranchSuggestions, NotGitRepoError, MergeConflictError, MergeFromBaseConflictError, commitChanges, mergeToBase, mergeFromBase, pushCurrentBranch, createPullRequest, getPullRequestFailureLogs, getPullRequestSnapshot, getPullRequestStatus, invalidatePullRequestCache, searchPullRequests, listGitRemotes, mergePullRequest, resolveMergeToBaseOperationCwd, resolveBaseRefWithSource, } from '../utils/checkout-git.js';
|
|
@@ -74,6 +74,28 @@ function maybeUnrefTimer(timer) {
|
|
|
74
74
|
timer.unref();
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
+
function usesWindowsPathSemantics(pathValue) {
|
|
78
|
+
return /^[A-Za-z]:[\\/]/.test(pathValue) || pathValue.includes('\\');
|
|
79
|
+
}
|
|
80
|
+
export function resolveWorkspaceRelativeFilePath(rootPath, filePath) {
|
|
81
|
+
if (isAbsolute(filePath)) {
|
|
82
|
+
throw new Error('Path must be relative and cannot be absolute');
|
|
83
|
+
}
|
|
84
|
+
const pathApi = usesWindowsPathSemantics(rootPath) ? win32 : posix;
|
|
85
|
+
const segments = filePath.split(/[\\/]+/).filter(Boolean);
|
|
86
|
+
if (segments.includes('..')) {
|
|
87
|
+
throw new Error('Path must be relative and cannot contain ".."');
|
|
88
|
+
}
|
|
89
|
+
const normalizedRoot = pathApi.resolve(rootPath);
|
|
90
|
+
const resolvedPath = pathApi.resolve(normalizedRoot, filePath);
|
|
91
|
+
const relativePath = pathApi.relative(normalizedRoot, resolvedPath);
|
|
92
|
+
if (relativePath === '..'
|
|
93
|
+
|| relativePath.startsWith(`..${pathApi.sep}`)
|
|
94
|
+
|| pathApi.isAbsolute(relativePath)) {
|
|
95
|
+
throw new Error('Path must be within the workspace directory');
|
|
96
|
+
}
|
|
97
|
+
return resolvedPath;
|
|
98
|
+
}
|
|
77
99
|
const PROVIDER_CHILD_THREADS_PERSISTED_LIST_INITIAL_LIMIT = 500;
|
|
78
100
|
const PROVIDER_CHILD_THREADS_PERSISTED_LIST_MAX_LIMIT = 50000;
|
|
79
101
|
const TERMINAL_STREAM_WINDOW_BYTES = 256 * 1024;
|
|
@@ -1420,6 +1442,12 @@ export class Session {
|
|
|
1420
1442
|
case 'workspace_file_explorer_request':
|
|
1421
1443
|
await this.handleWorkspaceFileExplorerRequest(msg);
|
|
1422
1444
|
break;
|
|
1445
|
+
case 'workspace_file_write_request':
|
|
1446
|
+
await this.handleWorkspaceFileWriteRequest(msg);
|
|
1447
|
+
break;
|
|
1448
|
+
case 'workspace_create_worktree_request':
|
|
1449
|
+
await this.handleWorkspaceCreateWorktreeRequest(msg);
|
|
1450
|
+
break;
|
|
1423
1451
|
case 'project_icon_request':
|
|
1424
1452
|
await this.handleProjectIconRequest(msg);
|
|
1425
1453
|
break;
|
|
@@ -5790,6 +5818,82 @@ export class Session {
|
|
|
5790
5818
|
});
|
|
5791
5819
|
}
|
|
5792
5820
|
}
|
|
5821
|
+
/**
|
|
5822
|
+
* Handle workspace file write request
|
|
5823
|
+
*/
|
|
5824
|
+
async handleWorkspaceFileWriteRequest(request) {
|
|
5825
|
+
const { cwd, path: filePath, content, requestId } = request;
|
|
5826
|
+
const root = expandTilde(cwd);
|
|
5827
|
+
try {
|
|
5828
|
+
const resolvedPath = resolveWorkspaceRelativeFilePath(root, filePath);
|
|
5829
|
+
mkdirSync(dirname(resolvedPath), { recursive: true });
|
|
5830
|
+
writeFileSync(resolvedPath, content, 'utf-8');
|
|
5831
|
+
this.emit({
|
|
5832
|
+
type: 'workspace_file_write_response',
|
|
5833
|
+
payload: {
|
|
5834
|
+
cwd,
|
|
5835
|
+
path: filePath,
|
|
5836
|
+
success: true,
|
|
5837
|
+
error: null,
|
|
5838
|
+
requestId,
|
|
5839
|
+
},
|
|
5840
|
+
});
|
|
5841
|
+
}
|
|
5842
|
+
catch (error) {
|
|
5843
|
+
const message = error instanceof Error ? error.message : 'Failed to write file';
|
|
5844
|
+
this.sessionLogger.error({ err: error, cwd, path: filePath }, 'Failed to write workspace file');
|
|
5845
|
+
this.emit({
|
|
5846
|
+
type: 'workspace_file_write_response',
|
|
5847
|
+
payload: {
|
|
5848
|
+
cwd,
|
|
5849
|
+
path: filePath,
|
|
5850
|
+
success: false,
|
|
5851
|
+
error: message,
|
|
5852
|
+
requestId,
|
|
5853
|
+
},
|
|
5854
|
+
});
|
|
5855
|
+
}
|
|
5856
|
+
}
|
|
5857
|
+
/**
|
|
5858
|
+
* Handle workspace create worktree request
|
|
5859
|
+
*/
|
|
5860
|
+
async handleWorkspaceCreateWorktreeRequest(request) {
|
|
5861
|
+
const { cwd, branchName, baseBranch, remoteName, requestId } = request;
|
|
5862
|
+
const root = expandTilde(cwd);
|
|
5863
|
+
try {
|
|
5864
|
+
const result = await createWorktree({
|
|
5865
|
+
cwd: root,
|
|
5866
|
+
branchName,
|
|
5867
|
+
baseBranch: baseBranch ?? 'main',
|
|
5868
|
+
remoteName,
|
|
5869
|
+
worktreeSlug: branchName,
|
|
5870
|
+
runSetup: false,
|
|
5871
|
+
junctionHome: this.junctionHome,
|
|
5872
|
+
});
|
|
5873
|
+
this.emit({
|
|
5874
|
+
type: 'workspace_create_worktree_response',
|
|
5875
|
+
payload: {
|
|
5876
|
+
worktreePath: result.worktreePath,
|
|
5877
|
+
branchName: result.branchName,
|
|
5878
|
+
error: null,
|
|
5879
|
+
requestId,
|
|
5880
|
+
},
|
|
5881
|
+
});
|
|
5882
|
+
}
|
|
5883
|
+
catch (error) {
|
|
5884
|
+
const message = error instanceof Error ? error.message : 'Failed to create worktree';
|
|
5885
|
+
this.sessionLogger.error({ err: error, cwd, branchName }, 'Failed to create config worktree');
|
|
5886
|
+
this.emit({
|
|
5887
|
+
type: 'workspace_create_worktree_response',
|
|
5888
|
+
payload: {
|
|
5889
|
+
worktreePath: '',
|
|
5890
|
+
branchName: '',
|
|
5891
|
+
error: message,
|
|
5892
|
+
requestId,
|
|
5893
|
+
},
|
|
5894
|
+
});
|
|
5895
|
+
}
|
|
5896
|
+
}
|
|
5793
5897
|
/**
|
|
5794
5898
|
* Handle project icon request for a given cwd
|
|
5795
5899
|
*/
|