@ai-support-agent/cli 0.0.12-beta.4 → 0.0.12-beta.7
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/docker/docker-runner.d.ts +10 -2
- package/dist/docker/docker-runner.d.ts.map +1 -1
- package/dist/docker/docker-runner.js +49 -18
- package/dist/docker/docker-runner.js.map +1 -1
- package/dist/project-dir.d.ts +1 -1
- package/dist/project-dir.d.ts.map +1 -1
- package/dist/project-dir.js +24 -1
- package/dist/project-dir.js.map +1 -1
- package/dist/terminal/terminal-websocket.d.ts +2 -1
- package/dist/terminal/terminal-websocket.d.ts.map +1 -1
- package/dist/terminal/terminal-websocket.js +8 -0
- package/dist/terminal/terminal-websocket.js.map +1 -1
- package/docker/Dockerfile +7 -1
- package/package.json +1 -1
|
@@ -10,8 +10,16 @@ export interface DockerRunOptions {
|
|
|
10
10
|
export declare function checkDockerAvailable(): boolean;
|
|
11
11
|
export declare function imageExists(version: string): boolean;
|
|
12
12
|
export declare function buildImage(version: string): void;
|
|
13
|
-
export
|
|
14
|
-
|
|
13
|
+
export interface ProjectDirMapping {
|
|
14
|
+
hostDir: string;
|
|
15
|
+
containerDir: string;
|
|
16
|
+
projectCode: string;
|
|
17
|
+
}
|
|
18
|
+
export declare function buildVolumeMounts(): {
|
|
19
|
+
mounts: string[];
|
|
20
|
+
projectMappings: ProjectDirMapping[];
|
|
21
|
+
};
|
|
22
|
+
export declare function buildEnvArgs(projectMappings: ProjectDirMapping[]): string[];
|
|
15
23
|
export declare function buildContainerArgs(opts: DockerRunOptions): string[];
|
|
16
24
|
export declare function ensureImage(): string;
|
|
17
25
|
export declare function dockerLogin(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-runner.d.ts","sourceRoot":"","sources":["../../src/docker/docker-runner.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAO9C;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAUhD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"docker-runner.d.ts","sourceRoot":"","sources":["../../src/docker/docker-runner.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAO9C;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAUhD;AAOD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,wBAAgB,iBAAiB,IAAI;IAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,iBAAiB,EAAE,CAAA;CAAE,CAmE9F;AAED,wBAAgB,YAAY,CAAC,eAAe,EAAE,iBAAiB,EAAE,GAAG,MAAM,EAAE,CAmC3E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,EAAE,CA0BnE;AAED,wBAAgB,WAAW,IAAI,MAAM,CAQpC;AAED,wBAAgB,WAAW,IAAI,IAAI,CAWlC;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CA6CxD"}
|
|
@@ -86,29 +86,39 @@ function buildImage(version) {
|
|
|
86
86
|
(0, child_process_1.execFileSync)('docker', ['build', '-t', `${IMAGE_NAME}:${version}`, '--build-arg', `AGENT_VERSION=${version}`, '-f', dockerfilePath, contextDir], { stdio: 'inherit' });
|
|
87
87
|
logger_1.logger.success((0, i18n_1.t)('docker.buildComplete'));
|
|
88
88
|
}
|
|
89
|
+
/** Container-internal base path for project directories */
|
|
90
|
+
const CONTAINER_PROJECTS_BASE = '/workspace/projects';
|
|
91
|
+
/** Container-internal home directory */
|
|
92
|
+
const CONTAINER_HOME = '/home/node';
|
|
89
93
|
function buildVolumeMounts() {
|
|
90
94
|
const home = os.homedir();
|
|
91
95
|
const mounts = [];
|
|
92
|
-
|
|
96
|
+
const projectMappings = [];
|
|
97
|
+
// Claude Code OAuth tokens and config — mount to container home
|
|
93
98
|
const claudeDir = path.join(home, '.claude');
|
|
94
99
|
if (fs.existsSync(claudeDir)) {
|
|
95
|
-
mounts.push('-v', `${claudeDir}:${
|
|
100
|
+
mounts.push('-v', `${claudeDir}:${path.join(CONTAINER_HOME, '.claude')}:rw`);
|
|
96
101
|
}
|
|
97
102
|
const claudeJson = path.join(home, '.claude.json');
|
|
98
103
|
if (fs.existsSync(claudeJson)) {
|
|
99
|
-
mounts.push('-v', `${claudeJson}:${
|
|
104
|
+
mounts.push('-v', `${claudeJson}:${path.join(CONTAINER_HOME, '.claude.json')}:rw`);
|
|
100
105
|
}
|
|
101
|
-
// Agent config
|
|
106
|
+
// Agent config — mount to container home
|
|
102
107
|
const agentConfigDir = (0, config_manager_1.getConfigDir)();
|
|
103
108
|
if (fs.existsSync(agentConfigDir)) {
|
|
104
|
-
|
|
109
|
+
const relativeToHome = path.relative(home, agentConfigDir);
|
|
110
|
+
const isUnderHome = !relativeToHome.startsWith('..');
|
|
111
|
+
const containerConfigDir = isUnderHome
|
|
112
|
+
? path.join(CONTAINER_HOME, relativeToHome)
|
|
113
|
+
: `/workspace/.config/ai-support-agent`;
|
|
114
|
+
mounts.push('-v', `${agentConfigDir}:${containerConfigDir}:rw`);
|
|
105
115
|
}
|
|
106
|
-
// AWS credentials
|
|
116
|
+
// AWS credentials — mount to container home
|
|
107
117
|
const awsDir = path.join(home, '.aws');
|
|
108
118
|
if (fs.existsSync(awsDir)) {
|
|
109
|
-
mounts.push('-v', `${awsDir}:${
|
|
119
|
+
mounts.push('-v', `${awsDir}:${path.join(CONTAINER_HOME, '.aws')}:ro`);
|
|
110
120
|
}
|
|
111
|
-
// Custom project directories
|
|
121
|
+
// Custom project directories — mount to /workspace/projects/{projectCode}
|
|
112
122
|
const config = (0, config_manager_1.loadConfig)();
|
|
113
123
|
if (config?.projects) {
|
|
114
124
|
const mounted = new Set();
|
|
@@ -131,28 +141,49 @@ function buildVolumeMounts() {
|
|
|
131
141
|
logger_1.logger.warn(`[docker] Skipping blocked path for volume mount: ${project.projectDir}`);
|
|
132
142
|
continue;
|
|
133
143
|
}
|
|
134
|
-
|
|
144
|
+
const containerDir = `${CONTAINER_PROJECTS_BASE}/${project.projectCode}`;
|
|
145
|
+
mounts.push('-v', `${project.projectDir}:${containerDir}:rw`);
|
|
146
|
+
projectMappings.push({
|
|
147
|
+
hostDir: project.projectDir,
|
|
148
|
+
containerDir,
|
|
149
|
+
projectCode: project.projectCode,
|
|
150
|
+
});
|
|
135
151
|
mounted.add(project.projectDir);
|
|
136
152
|
}
|
|
137
153
|
}
|
|
138
154
|
}
|
|
139
|
-
return mounts;
|
|
155
|
+
return { mounts, projectMappings };
|
|
140
156
|
}
|
|
141
|
-
function buildEnvArgs() {
|
|
157
|
+
function buildEnvArgs(projectMappings) {
|
|
142
158
|
const args = [];
|
|
143
|
-
// HOME
|
|
144
|
-
args.push('-e', `HOME=${
|
|
159
|
+
// Set HOME to container-internal path (not host path)
|
|
160
|
+
args.push('-e', `HOME=${CONTAINER_HOME}`);
|
|
161
|
+
// Map config dir to container-internal path
|
|
162
|
+
const hostConfigDir = (0, config_manager_1.getConfigDir)();
|
|
163
|
+
const home = os.homedir();
|
|
164
|
+
const relativeToHome = path.relative(home, hostConfigDir);
|
|
165
|
+
const isUnderHome = !relativeToHome.startsWith('..');
|
|
166
|
+
const containerConfigDir = isUnderHome
|
|
167
|
+
? path.join(CONTAINER_HOME, relativeToHome)
|
|
168
|
+
: `/workspace/.config/ai-support-agent`;
|
|
145
169
|
for (const key of PASSTHROUGH_ENV_VARS) {
|
|
146
170
|
if (process.env[key]) {
|
|
147
|
-
// Resolve CONFIG_DIR to absolute path so it matches the volume mount inside the container
|
|
148
171
|
if (key === 'AI_SUPPORT_AGENT_CONFIG_DIR') {
|
|
149
|
-
args.push('-e', `${key}=${
|
|
172
|
+
args.push('-e', `${key}=${containerConfigDir}`);
|
|
150
173
|
}
|
|
151
174
|
else {
|
|
152
175
|
args.push('-e', `${key}=${process.env[key]}`);
|
|
153
176
|
}
|
|
154
177
|
}
|
|
155
178
|
}
|
|
179
|
+
// Pass project directory mappings so agent uses container-internal paths
|
|
180
|
+
if (projectMappings.length > 0) {
|
|
181
|
+
// Format: projectCode=containerDir;projectCode2=containerDir2
|
|
182
|
+
const mapping = projectMappings
|
|
183
|
+
.map((m) => `${m.projectCode}=${m.containerDir}`)
|
|
184
|
+
.join(';');
|
|
185
|
+
args.push('-e', `AI_SUPPORT_AGENT_PROJECT_DIR_MAP=${mapping}`);
|
|
186
|
+
}
|
|
156
187
|
return args;
|
|
157
188
|
}
|
|
158
189
|
function buildContainerArgs(opts) {
|
|
@@ -210,13 +241,13 @@ function runInDocker(opts) {
|
|
|
210
241
|
}
|
|
211
242
|
const version = ensureImage();
|
|
212
243
|
logger_1.logger.info((0, i18n_1.t)('docker.starting'));
|
|
213
|
-
const
|
|
214
|
-
const envArgs = buildEnvArgs();
|
|
244
|
+
const { mounts, projectMappings } = buildVolumeMounts();
|
|
245
|
+
const envArgs = buildEnvArgs(projectMappings);
|
|
215
246
|
const containerArgs = buildContainerArgs(opts);
|
|
216
247
|
const dockerArgs = [
|
|
217
248
|
'run', '--rm', '-it',
|
|
218
249
|
...(process.getuid ? ['--user', `${process.getuid()}:${process.getgid()}`] : []),
|
|
219
|
-
...
|
|
250
|
+
...mounts,
|
|
220
251
|
...envArgs,
|
|
221
252
|
`${IMAGE_NAME}:${version}`,
|
|
222
253
|
...containerArgs,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-runner.js","sourceRoot":"","sources":["../../src/docker/docker-runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,oDAOC;AAED,kCAOC;AAED,gCAUC;
|
|
1
|
+
{"version":3,"file":"docker-runner.js","sourceRoot":"","sources":["../../src/docker/docker-runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,oDAOC;AAED,kCAOC;AAED,gCAUC;AAaD,8CAmEC;AAED,oCAmCC;AAED,gDA0BC;AAED,kCAQC;AAED,kCAWC;AAED,kCA6CC;AAnRD,iDAAmD;AACnD,uCAAwB;AACxB,2CAA4B;AAC5B,uCAAwB;AAExB,uDAA0E;AAC1E,4CAA4C;AAC5C,sDAA4D;AAC5D,kCAA2B;AAC3B,sCAAkC;AAClC,0CAA0E;AAC1E,8EAA4E;AAE5E,MAAM,UAAU,GAAG,kBAAkB,CAAA;AACrC,MAAM,oBAAoB,GAAG;IAC3B,wBAAwB;IACxB,0BAA0B;IAC1B,6BAA6B;IAC7B,mBAAmB;IACnB,yBAAyB;CAC1B,CAAA;AAYD,SAAgB,oBAAoB;IAClC,IAAI,CAAC;QACH,IAAA,4BAAY,EAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QACrD,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAgB,WAAW,CAAC,OAAe;IACzC,IAAI,CAAC;QACH,IAAA,4BAAY,EAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,UAAU,IAAI,OAAO,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC7F,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAgB,UAAU,CAAC,OAAe;IACxC,MAAM,cAAc,GAAG,IAAA,mCAAiB,GAAE,CAAA;IAC1C,MAAM,UAAU,GAAG,IAAA,qCAAmB,GAAE,CAAA;IACxC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,iBAAiB,CAAC,CAAC,CAAA;IACjC,IAAA,4BAAY,EACV,QAAQ,EACR,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,UAAU,IAAI,OAAO,EAAE,EAAE,aAAa,EAAE,iBAAiB,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,EACxH,EAAE,KAAK,EAAE,SAAS,EAAE,CACrB,CAAA;IACD,eAAM,CAAC,OAAO,CAAC,IAAA,QAAC,EAAC,sBAAsB,CAAC,CAAC,CAAA;AAC3C,CAAC;AAED,2DAA2D;AAC3D,MAAM,uBAAuB,GAAG,qBAAqB,CAAA;AACrD,wCAAwC;AACxC,MAAM,cAAc,GAAG,YAAY,CAAA;AAQnC,SAAgB,iBAAiB;IAC/B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAA;IACzB,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,MAAM,eAAe,GAAwB,EAAE,CAAA;IAE/C,gEAAgE;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAC5C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IAC9E,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAClD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,KAAK,CAAC,CAAA;IACpF,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,IAAA,6BAAY,GAAE,CAAA;IACrC,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAClC,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;QAC1D,MAAM,WAAW,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,kBAAkB,GAAG,WAAW;YACpC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC;YAC3C,CAAC,CAAC,qCAAqC,CAAA;QACzC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,cAAc,IAAI,kBAAkB,KAAK,CAAC,CAAA;IACjE,CAAC;IAED,4CAA4C;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACtC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IACxE,CAAC;IAED,0EAA0E;IAC1E,MAAM,MAAM,GAAG,IAAA,2BAAU,GAAE,CAAA;IAC3B,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;QACjC,MAAM,eAAe,GAAG,CAAC,GAAG,gCAAqB,EAAE,GAAG,IAAA,gCAAqB,GAAE,CAAC,CAAA;QAC9E,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChG,IAAI,QAAgB,CAAA;gBACpB,IAAI,CAAC;oBACH,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;gBAChD,CAAC;gBAAC,MAAM,CAAC;oBACP,eAAM,CAAC,IAAI,CAAC,2CAA2C,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;oBAC5E,SAAQ;gBACV,CAAC;gBACD,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;oBAChD,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;oBACpD,OAAO,QAAQ,KAAK,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;gBACvE,CAAC,CAAC,CAAA;gBACF,IAAI,SAAS,EAAE,CAAC;oBACd,eAAM,CAAC,IAAI,CAAC,oDAAoD,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;oBACrF,SAAQ;gBACV,CAAC;gBACD,MAAM,YAAY,GAAG,GAAG,uBAAuB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAA;gBACxE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,UAAU,IAAI,YAAY,KAAK,CAAC,CAAA;gBAC7D,eAAe,CAAC,IAAI,CAAC;oBACnB,OAAO,EAAE,OAAO,CAAC,UAAU;oBAC3B,YAAY;oBACZ,WAAW,EAAE,OAAO,CAAC,WAAW;iBACjC,CAAC,CAAA;gBACF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YACjC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAA;AACpC,CAAC;AAED,SAAgB,YAAY,CAAC,eAAoC;IAC/D,MAAM,IAAI,GAAa,EAAE,CAAA;IAEzB,sDAAsD;IACtD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,cAAc,EAAE,CAAC,CAAA;IAEzC,4CAA4C;IAC5C,MAAM,aAAa,GAAG,IAAA,6BAAY,GAAE,CAAA;IACpC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAA;IACzB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IACzD,MAAM,WAAW,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACpD,MAAM,kBAAkB,GAAG,WAAW;QACpC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC;QAC3C,CAAC,CAAC,qCAAqC,CAAA;IAEzC,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;QACvC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,GAAG,KAAK,6BAA6B,EAAE,CAAC;gBAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,kBAAkB,EAAE,CAAC,CAAA;YACjD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,8DAA8D;QAC9D,MAAM,OAAO,GAAG,eAAe;aAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;aAChD,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,oCAAoC,OAAO,EAAE,CAAC,CAAA;IAChE,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAgB,kBAAkB,CAAC,IAAsB;IACvD,MAAM,IAAI,GAAa,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAE/C,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACrC,CAAC;IACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;IACzD,CAAC;IACD,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACxB,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACnD,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAgB,WAAW;IACzB,MAAM,OAAO,GAAG,yBAAa,CAAA;IAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,UAAU,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC;SAAM,CAAC;QACN,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IAClD,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAgB,WAAW;IACzB,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,mBAAmB,CAAC,CAAC,CAAA;IACnC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;IACnC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,mBAAmB,CAAC,CAAC,CAAA;IACnC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;IACvD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;IACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,mBAAmB,CAAC,CAAC,CAAA;AACrC,CAAC;AAED,SAAgB,WAAW,CAAC,IAAsB;IAChD,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;QAC5B,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,qBAAqB,CAAC,CAAC,CAAA;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACf,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,EAAE,CAAA;IAE7B,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,iBAAiB,CAAC,CAAC,CAAA;IAEjC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,iBAAiB,EAAE,CAAA;IACvD,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,CAAA;IAC7C,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAE9C,MAAM,UAAU,GAAG;QACjB,KAAK,EAAE,MAAM,EAAE,KAAK;QACpB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,OAAO,CAAC,MAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,GAAG,MAAM;QACT,GAAG,OAAO;QACV,GAAG,UAAU,IAAI,OAAO,EAAE;QAC1B,GAAG,aAAa;KACjB,CAAA;IAED,IAAA,mDAAyB,GAAE,CAAA;IAE3B,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,QAAQ,EAAE,UAAU,EAAE;QACxC,KAAK,EAAE,SAAS;KACjB,CAAC,CAAA;IAEF,+BAA+B;IAC/B,MAAM,aAAa,GAAG,CAAC,MAAsB,EAAQ,EAAE;QACrD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACpB,CAAC,CAAA;IACD,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAA;IACnD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAA;IAErD,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;QACxB,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;IAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/project-dir.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import type { ProjectRegistration } from './types';
|
|
|
5
5
|
export declare function expandPath(template: string, projectCode: string): string;
|
|
6
6
|
/**
|
|
7
7
|
* Resolve the project directory path.
|
|
8
|
-
* Priority: project.projectDir > defaultProjectDir template > default template
|
|
8
|
+
* Priority: container dir mapping > project.projectDir > defaultProjectDir template > default template
|
|
9
9
|
*/
|
|
10
10
|
export declare function resolveProjectDir(project: ProjectRegistration, defaultProjectDir?: string): string;
|
|
11
11
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-dir.d.ts","sourceRoot":"","sources":["../src/project-dir.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAWlD;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAIxE;
|
|
1
|
+
{"version":3,"file":"project-dir.d.ts","sourceRoot":"","sources":["../src/project-dir.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAWlD;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAIxE;AAmBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,mBAAmB,EAC5B,iBAAiB,CAAC,EAAE,MAAM,GACzB,MAAM,CAaR;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CA+B1D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,mBAAmB,EAC5B,iBAAiB,CAAC,EAAE,MAAM,GACzB,MAAM,CAKR;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAS3D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzD"}
|
package/dist/project-dir.js
CHANGED
|
@@ -62,11 +62,34 @@ function expandPath(template, projectCode) {
|
|
|
62
62
|
.replace(/^~(?=$|\/)/, os.homedir())
|
|
63
63
|
.replace(/\{projectCode\}/g, projectCode);
|
|
64
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Parse AI_SUPPORT_AGENT_PROJECT_DIR_MAP env var.
|
|
67
|
+
* Format: "projectCode1=/path1;projectCode2=/path2"
|
|
68
|
+
*/
|
|
69
|
+
function getContainerProjectDirMap() {
|
|
70
|
+
const map = new Map();
|
|
71
|
+
const envVal = process.env.AI_SUPPORT_AGENT_PROJECT_DIR_MAP;
|
|
72
|
+
if (!envVal)
|
|
73
|
+
return map;
|
|
74
|
+
for (const entry of envVal.split(';')) {
|
|
75
|
+
const eqIdx = entry.indexOf('=');
|
|
76
|
+
if (eqIdx > 0) {
|
|
77
|
+
map.set(entry.substring(0, eqIdx), entry.substring(eqIdx + 1));
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return map;
|
|
81
|
+
}
|
|
65
82
|
/**
|
|
66
83
|
* Resolve the project directory path.
|
|
67
|
-
* Priority: project.projectDir > defaultProjectDir template > default template
|
|
84
|
+
* Priority: container dir mapping > project.projectDir > defaultProjectDir template > default template
|
|
68
85
|
*/
|
|
69
86
|
function resolveProjectDir(project, defaultProjectDir) {
|
|
87
|
+
// Docker container mapping takes highest priority
|
|
88
|
+
const containerMap = getContainerProjectDirMap();
|
|
89
|
+
const containerDir = containerMap.get(project.projectCode);
|
|
90
|
+
if (containerDir) {
|
|
91
|
+
return containerDir;
|
|
92
|
+
}
|
|
70
93
|
if (project.projectDir) {
|
|
71
94
|
return expandPath(project.projectDir, project.projectCode);
|
|
72
95
|
}
|
package/dist/project-dir.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-dir.js","sourceRoot":"","sources":["../src/project-dir.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,gCAIC;
|
|
1
|
+
{"version":3,"file":"project-dir.js","sourceRoot":"","sources":["../src/project-dir.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,gCAIC;AAuBD,8CAgBC;AAMD,8CA+BC;AAMD,wCAQC;AAMD,wCASC;AAKD,kCAEC;AAKD,8BAEC;AAKD,wCAEC;AAvJD,uCAAwB;AACxB,uCAAwB;AACxB,2CAA4B;AAE5B,qDAA+C;AAC/C,qCAAiC;AACjC,iCAA0B;AAG1B,SAAS,4BAA4B;IACnC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAA,6BAAY,GAAE,EAAE,UAAU,EAAE,eAAe,CAAC,CAAA;AAC/D,CAAC;AAED,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,CAAU,CAAA;AAC1E,MAAM,YAAY,GAAG,mBAAmB,CAAA;AACxC,MAAM,SAAS,GAAG,OAAO,CAAA;AACzB,MAAM,OAAO,GAAG,KAAK,CAAA;AAErB;;GAEG;AACH,SAAgB,UAAU,CAAC,QAAgB,EAAE,WAAmB;IAC9D,OAAO,QAAQ;SACZ,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC;SACnC,OAAO,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;AAC7C,CAAC;AAED;;;GAGG;AACH,SAAS,yBAAyB;IAChC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAA;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAA;IAC3D,IAAI,CAAC,MAAM;QAAE,OAAO,GAAG,CAAA;IACvB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAChC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;QAChE,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAC/B,OAA4B,EAC5B,iBAA0B;IAE1B,kDAAkD;IAClD,MAAM,YAAY,GAAG,yBAAyB,EAAE,CAAA;IAChD,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC1D,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IAC5D,CAAC;IACD,MAAM,QAAQ,GAAG,iBAAiB,IAAI,4BAA4B,EAAE,CAAA;IACpE,OAAO,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;AAClD,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,UAAkB;IAClD,sBAAsB;IACtB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,wBAAwB;IACxB,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;IACvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC7D,CAAC;IAED,yBAAyB;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IAClD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC1D,CAAC;IAED,uBAAuB;IACvB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACxD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAC5B,OAA4B,EAC5B,iBAA0B;IAE1B,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;IAChE,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAC7B,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IAC1F,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,UAAkB;IAC/C,MAAM,IAAI,GAAa,EAAE,CAAA;IACzB,KAAK,MAAM,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM,CAAU,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;QAC7C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,UAAkB;IAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAA;AACvD,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,UAAkB;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,CAAC,CAAA;AACrD,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,UAAkB;IAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;AAC5C,CAAC"}
|
|
@@ -5,12 +5,13 @@ import { TerminalSessionManager } from './terminal-session';
|
|
|
5
5
|
* Messages sent from API server to agent
|
|
6
6
|
*/
|
|
7
7
|
export interface TerminalServerMessage {
|
|
8
|
-
type: 'open' | 'stdin' | 'resize' | 'close';
|
|
8
|
+
type: 'open' | 'stdin' | 'resize' | 'close' | 'auth_success' | 'error';
|
|
9
9
|
sessionId?: string;
|
|
10
10
|
data?: string;
|
|
11
11
|
cols?: number;
|
|
12
12
|
rows?: number;
|
|
13
13
|
cwd?: string;
|
|
14
|
+
message?: string;
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
17
|
* Messages sent from agent to API server
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-websocket.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,IAAI,CAAA;AAE1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAQ3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE3D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"terminal-websocket.d.ts","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,IAAI,CAAA;AAE1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAQ3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE3D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,CAAA;IACtE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,iBAAkB,SAAQ,uBAAuB,CAAC,qBAAqB,CAAC;IAMjF,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAP9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAG5B,MAAM,EAAE,MAAM,EACG,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,YAAA;IAetC,iBAAiB,IAAI,sBAAsB;IAI3C,SAAS,CAAC,eAAe,IAAI,SAAS;IAStC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAMtE,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI;IA2B3D,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI;IAQ7C,OAAO,CAAC,UAAU;IAwElB,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,IAAI;CAQb"}
|
|
@@ -96,6 +96,14 @@ class TerminalWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
96
96
|
case 'close':
|
|
97
97
|
this.handleClose(msg);
|
|
98
98
|
break;
|
|
99
|
+
case 'auth_success':
|
|
100
|
+
// Authentication success acknowledgement from server — no action needed
|
|
101
|
+
break;
|
|
102
|
+
case 'error': {
|
|
103
|
+
const errMsg = msg.message ?? msg.error ?? 'unknown';
|
|
104
|
+
logger_1.logger.warn(`[terminal-ws] Server error (session=${msg.sessionId ?? 'none'}): ${errMsg}`);
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
99
107
|
default:
|
|
100
108
|
logger_1.logger.debug(`[terminal-ws] Unknown message type: ${msg.type}`);
|
|
101
109
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-websocket.js","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4B;AAE5B,4CAA0B;AAE1B,sDAA2D;AAC3D,sCAAkC;AAClC,oCAA0C;AAE1C,2CAGoB;AACpB,yDAA2D;
|
|
1
|
+
{"version":3,"file":"terminal-websocket.js","sourceRoot":"","sources":["../../src/terminal/terminal-websocket.ts"],"names":[],"mappings":"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"}
|
package/docker/Dockerfile
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
FROM node:24-slim
|
|
2
2
|
|
|
3
3
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
4
|
-
ca-certificates curl unzip git openssh-client \
|
|
4
|
+
ca-certificates curl unzip git openssh-client vim \
|
|
5
5
|
default-mysql-client postgresql-client \
|
|
6
6
|
gnupg apt-transport-https \
|
|
7
7
|
# Build tools for native addons (node-pty)
|
|
@@ -12,8 +12,14 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
|
12
12
|
pandoc \
|
|
13
13
|
# PDF rendering support for Python PDF libraries
|
|
14
14
|
libpoppler-cpp-dev poppler-utils \
|
|
15
|
+
# Locale support (for Japanese filenames etc.)
|
|
16
|
+
locales \
|
|
17
|
+
&& sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \
|
|
18
|
+
&& locale-gen \
|
|
15
19
|
&& rm -rf /var/lib/apt/lists/*
|
|
16
20
|
|
|
21
|
+
ENV LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8
|
|
22
|
+
|
|
17
23
|
# Python document processing tools (installed in system scope, no venv needed in container)
|
|
18
24
|
RUN pip3 install --no-cache-dir --break-system-packages \
|
|
19
25
|
# PDF: read, write, merge, split, extract text
|