@ai-support-agent/cli 0.0.4-beta.13 → 0.0.4-beta.15
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/aws-credential-builder.d.ts +5 -0
- package/dist/aws-credential-builder.d.ts.map +1 -1
- package/dist/aws-credential-builder.js +23 -14
- package/dist/aws-credential-builder.js.map +1 -1
- package/dist/commands/chat-executor.d.ts.map +1 -1
- package/dist/commands/chat-executor.js +29 -44
- package/dist/commands/chat-executor.js.map +1 -1
- package/dist/docker/docker-runner.d.ts +17 -0
- package/dist/docker/docker-runner.d.ts.map +1 -0
- package/dist/docker/docker-runner.js +192 -0
- package/dist/docker/docker-runner.js.map +1 -0
- package/dist/docker/dockerfile-path.d.ts +10 -0
- package/dist/docker/dockerfile-path.d.ts.map +1 -0
- package/dist/docker/dockerfile-path.js +25 -0
- package/dist/docker/dockerfile-path.js.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -1
- package/dist/locales/en.json +9 -1
- package/dist/locales/ja.json +9 -1
- package/dist/locales/locales/en.json +9 -1
- package/dist/locales/locales/ja.json +9 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/docker/Dockerfile +39 -0
- package/package.json +2 -1
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import type { ApiClient } from './api-client';
|
|
2
2
|
import type { ProjectConfigResponse } from './types';
|
|
3
|
+
export interface SsoAuthRequiredInfo {
|
|
4
|
+
accountId: string;
|
|
5
|
+
accountName: string;
|
|
6
|
+
}
|
|
3
7
|
export interface AwsCredentialResult {
|
|
4
8
|
env?: Record<string, string>;
|
|
5
9
|
errors: string[];
|
|
10
|
+
ssoAuthRequired: SsoAuthRequiredInfo[];
|
|
6
11
|
}
|
|
7
12
|
/**
|
|
8
13
|
* プロファイル方式でAWS認証情報を構築する。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aws-credential-builder.d.ts","sourceRoot":"","sources":["../src/aws-credential-builder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAGpD,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"aws-credential-builder.d.ts","sourceRoot":"","sources":["../src/aws-credential-builder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAGpD,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,eAAe,EAAE,mBAAmB,EAAE,CAAA;CACvC;AAoCD;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,qBAAqB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAyC9B;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,OAAO,CAAC,mBAAmB,CAAC,CAoB9B"}
|
|
@@ -49,18 +49,22 @@ function extractAwsCredentialError(error, accountName) {
|
|
|
49
49
|
const status = error.response.status;
|
|
50
50
|
const data = error.response.data;
|
|
51
51
|
if (data) {
|
|
52
|
-
// SSO認証切れの場合は専用メッセージ
|
|
52
|
+
// SSO認証切れの場合は専用メッセージ + SSO情報
|
|
53
53
|
if (data.error === 'SSO_AUTH_REQUIRED') {
|
|
54
|
-
|
|
54
|
+
const accountId = typeof data.accountId === 'string' ? data.accountId : '';
|
|
55
|
+
return {
|
|
56
|
+
errorMessage: `AWS SSO認証の有効期限が切れています(${accountName})。管理画面からSSO再認証を実行してください。`,
|
|
57
|
+
ssoInfo: { accountId, accountName },
|
|
58
|
+
};
|
|
55
59
|
}
|
|
56
60
|
// その他のAPIエラー(422含む)はレスポンス詳細を含める
|
|
57
61
|
const serverMessage = data.message ?? data.error ?? 'Unknown error';
|
|
58
62
|
logger_1.logger.debug(`[aws-cred] API error response (status=${status}): ${JSON.stringify(data)}`);
|
|
59
|
-
return `AWS認証情報の取得に失敗しました(${accountName}): [${status}] ${serverMessage}
|
|
63
|
+
return { errorMessage: `AWS認証情報の取得に失敗しました(${accountName}): [${status}] ${serverMessage}` };
|
|
60
64
|
}
|
|
61
|
-
return `AWS認証情報の取得に失敗しました(${accountName}): HTTP ${status}
|
|
65
|
+
return { errorMessage: `AWS認証情報の取得に失敗しました(${accountName}): HTTP ${status}` };
|
|
62
66
|
}
|
|
63
|
-
return `AWS認証情報の取得に失敗しました(${accountName}): ${(0, utils_1.getErrorMessage)(error)}
|
|
67
|
+
return { errorMessage: `AWS認証情報の取得に失敗しました(${accountName}): ${(0, utils_1.getErrorMessage)(error)}` };
|
|
64
68
|
}
|
|
65
69
|
/**
|
|
66
70
|
* プロファイル方式でAWS認証情報を構築する。
|
|
@@ -70,11 +74,12 @@ function extractAwsCredentialError(error, accountName) {
|
|
|
70
74
|
async function buildAwsProfileCredentials(client, projectDir, projectConfig) {
|
|
71
75
|
const accounts = projectConfig.aws?.accounts;
|
|
72
76
|
if (!accounts?.length)
|
|
73
|
-
return { errors: [] };
|
|
77
|
+
return { errors: [], ssoAuthRequired: [] };
|
|
74
78
|
const projectCode = projectConfig.project.projectCode;
|
|
75
79
|
const { writeAwsCredentials, buildAwsProfileEnv } = await Promise.resolve().then(() => __importStar(require('./aws-profile')));
|
|
76
80
|
const credentialMap = new Map();
|
|
77
81
|
const errors = [];
|
|
82
|
+
const ssoAuthRequired = [];
|
|
78
83
|
for (const account of accounts) {
|
|
79
84
|
try {
|
|
80
85
|
logger_1.logger.info(`[chat] Fetching AWS credentials for profile: ${account.name} (${account.id})`);
|
|
@@ -82,19 +87,22 @@ async function buildAwsProfileCredentials(client, projectDir, projectConfig) {
|
|
|
82
87
|
credentialMap.set(account.name, creds);
|
|
83
88
|
}
|
|
84
89
|
catch (error) {
|
|
85
|
-
const
|
|
86
|
-
errors.push(
|
|
90
|
+
const { errorMessage, ssoInfo } = extractAwsCredentialError(error, account.name);
|
|
91
|
+
errors.push(errorMessage);
|
|
92
|
+
if (ssoInfo) {
|
|
93
|
+
ssoAuthRequired.push(ssoInfo);
|
|
94
|
+
}
|
|
87
95
|
logger_1.logger.warn(`[chat] Failed to get AWS credentials for ${account.name}: ${(0, utils_1.getErrorMessage)(error)}`);
|
|
88
96
|
}
|
|
89
97
|
}
|
|
90
98
|
if (credentialMap.size === 0)
|
|
91
|
-
return { errors };
|
|
99
|
+
return { errors, ssoAuthRequired };
|
|
92
100
|
// credentials ファイルに書き込み
|
|
93
101
|
writeAwsCredentials(projectDir, projectCode, credentialMap);
|
|
94
102
|
// デフォルトアカウントを特定
|
|
95
103
|
const defaultAccount = accounts.find((a) => a.isDefault) ?? accounts[0];
|
|
96
104
|
const env = buildAwsProfileEnv(projectDir, projectCode, defaultAccount.name, defaultAccount.region);
|
|
97
|
-
return { env, errors };
|
|
105
|
+
return { env, errors, ssoAuthRequired };
|
|
98
106
|
}
|
|
99
107
|
/**
|
|
100
108
|
* 従来方式(単一アカウント)でAWS認証情報を環境変数として構築する。
|
|
@@ -103,7 +111,7 @@ async function buildAwsProfileCredentials(client, projectDir, projectConfig) {
|
|
|
103
111
|
*/
|
|
104
112
|
async function buildSingleAccountAwsEnv(client, awsAccountId) {
|
|
105
113
|
if (!awsAccountId)
|
|
106
|
-
return { errors: [] };
|
|
114
|
+
return { errors: [], ssoAuthRequired: [] };
|
|
107
115
|
try {
|
|
108
116
|
logger_1.logger.info(`[chat] Fetching AWS credentials for account: ${awsAccountId}`);
|
|
109
117
|
const creds = await client.getAwsCredentials(awsAccountId);
|
|
@@ -114,12 +122,13 @@ async function buildSingleAccountAwsEnv(client, awsAccountId) {
|
|
|
114
122
|
...(creds.sessionToken ? { AWS_SESSION_TOKEN: creds.sessionToken } : {}),
|
|
115
123
|
};
|
|
116
124
|
logger_1.logger.info(`[chat] AWS credentials obtained for region=${creds.region}`);
|
|
117
|
-
return { env, errors: [] };
|
|
125
|
+
return { env, errors: [], ssoAuthRequired: [] };
|
|
118
126
|
}
|
|
119
127
|
catch (error) {
|
|
120
|
-
const
|
|
128
|
+
const { errorMessage, ssoInfo } = extractAwsCredentialError(error, awsAccountId);
|
|
129
|
+
const ssoAuthRequired = ssoInfo ? [ssoInfo] : [];
|
|
121
130
|
logger_1.logger.warn(`[chat] Failed to get AWS credentials: ${(0, utils_1.getErrorMessage)(error)}`);
|
|
122
|
-
return { errors: [
|
|
131
|
+
return { errors: [errorMessage], ssoAuthRequired };
|
|
123
132
|
}
|
|
124
133
|
}
|
|
125
134
|
//# sourceMappingURL=aws-credential-builder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aws-credential-builder.js","sourceRoot":"","sources":["../src/aws-credential-builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"aws-credential-builder.js","sourceRoot":"","sources":["../src/aws-credential-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-executor.d.ts","sourceRoot":"","sources":["../../src/commands/chat-executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAIzC,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"chat-executor.d.ts","sourceRoot":"","sources":["../../src/commands/chat-executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAIzC,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAiB,WAAW,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AASlI,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAErE;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,EACjB,YAAY,CAAC,EAAE,iBAAiB,EAChC,cAAc,CAAC,EAAE,aAAa,EAC9B,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,qBAAqB,EACrC,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,aAAa,CAAC,CAcxB"}
|
|
@@ -1,37 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
3
|
exports.buildCleanEnv = exports.buildClaudeArgs = void 0;
|
|
37
4
|
exports.executeChatCommand = executeChatCommand;
|
|
@@ -39,6 +6,7 @@ const aws_credential_builder_1 = require("../aws-credential-builder");
|
|
|
39
6
|
const constants_1 = require("../constants");
|
|
40
7
|
const logger_1 = require("../logger");
|
|
41
8
|
const utils_1 = require("../utils");
|
|
9
|
+
const project_dir_1 = require("../project-dir");
|
|
42
10
|
const api_chat_executor_1 = require("./api-chat-executor");
|
|
43
11
|
const claude_code_runner_1 = require("./claude-code-runner");
|
|
44
12
|
const shared_chat_utils_1 = require("./shared-chat-utils");
|
|
@@ -84,8 +52,7 @@ async function executeClaudeCodeChat(payload, commandId, client, agentId, server
|
|
|
84
52
|
// Merge project directory auto-add dirs with server-configured dirs
|
|
85
53
|
let addDirs;
|
|
86
54
|
if (projectDir) {
|
|
87
|
-
const
|
|
88
|
-
const autoAddDirs = getAutoAddDirs(projectDir);
|
|
55
|
+
const autoAddDirs = (0, project_dir_1.getAutoAddDirs)(projectDir);
|
|
89
56
|
addDirs = [...autoAddDirs, ...serverAddDirs];
|
|
90
57
|
}
|
|
91
58
|
else {
|
|
@@ -94,29 +61,32 @@ async function executeClaudeCodeChat(payload, commandId, client, agentId, server
|
|
|
94
61
|
const locale = (0, utils_1.parseString)(payload.locale) ?? undefined;
|
|
95
62
|
// AWS認証情報を取得(プロファイル方式 or 環境変数直接注入)
|
|
96
63
|
let awsEnv;
|
|
64
|
+
const projectCode = (0, utils_1.parseString)(payload.projectCode) ?? projectConfig?.project.projectCode;
|
|
97
65
|
if (projectDir && projectConfig?.aws?.accounts?.length) {
|
|
98
66
|
// プロファイル方式: 全アカウントの認証情報を取得してプロファイルファイルに書き込み
|
|
99
67
|
const awsResult = await (0, aws_credential_builder_1.buildAwsProfileCredentials)(client, projectDir, projectConfig);
|
|
100
68
|
awsEnv = awsResult.env;
|
|
101
|
-
|
|
102
|
-
const notice = `⚠️ ${awsResult.errors.join('\n')}\n\n`;
|
|
103
|
-
await sendChunk('delta', notice);
|
|
104
|
-
}
|
|
69
|
+
await sendAwsCredentialNotices(awsResult, projectCode, sendChunk);
|
|
105
70
|
}
|
|
106
71
|
else {
|
|
107
72
|
// フォールバック: 単一アカウントの環境変数直接注入(従来方式)
|
|
108
73
|
const awsAccountId = (0, utils_1.parseString)(payload.awsAccountId) ?? undefined;
|
|
109
74
|
const awsResult = await (0, aws_credential_builder_1.buildSingleAccountAwsEnv)(client, awsAccountId);
|
|
110
75
|
awsEnv = awsResult.env;
|
|
111
|
-
|
|
112
|
-
const notice = `⚠️ ${awsResult.errors.join('\n')}\n\n`;
|
|
113
|
-
await sendChunk('delta', notice);
|
|
114
|
-
}
|
|
76
|
+
await sendAwsCredentialNotices(awsResult, projectCode, sendChunk);
|
|
115
77
|
}
|
|
116
78
|
// 会話履歴をメッセージに埋め込む(Claude Code CLI用)
|
|
117
79
|
const history = (0, shared_chat_utils_1.parseHistory)(payload.history);
|
|
118
80
|
const messageWithHistory = (0, shared_chat_utils_1.formatHistoryForClaudeCode)(history, message);
|
|
119
|
-
|
|
81
|
+
const logDetails = [
|
|
82
|
+
allowedTools?.length ? `allowedTools: ${allowedTools.join(', ')}` : '(no allowedTools)',
|
|
83
|
+
addDirs?.length ? `addDirs: ${addDirs.join(', ')}` : null,
|
|
84
|
+
locale ? `locale=${locale}` : null,
|
|
85
|
+
awsEnv ? 'AWS credentials' : null,
|
|
86
|
+
mcpConfigPath ? 'MCP config' : null,
|
|
87
|
+
history.length > 0 ? `${history.length} history messages` : null,
|
|
88
|
+
].filter(Boolean).join(', ');
|
|
89
|
+
logger_1.logger.debug(`[chat] Spawning claude CLI for command [${commandId}]: ${logDetails}`);
|
|
120
90
|
logger_1.logger.debug(`[chat] serverConfig.claudeCodeConfig: ${JSON.stringify(serverConfig?.claudeCodeConfig ?? null)}`);
|
|
121
91
|
const result = await (0, claude_code_runner_1.runClaudeCode)(messageWithHistory, sendChunk, allowedTools, addDirs, locale, awsEnv, mcpConfigPath);
|
|
122
92
|
logger_1.logger.info(`[chat] Chat command completed [${commandId}]: output=${result.text.length} chars, ${getChunkIndex()} chunks sent, duration=${result.metadata.durationMs}ms`);
|
|
@@ -135,4 +105,19 @@ async function executeClaudeCodeChat(payload, commandId, client, agentId, server
|
|
|
135
105
|
return { success: false, error: errorMessage };
|
|
136
106
|
}
|
|
137
107
|
}
|
|
108
|
+
async function sendAwsCredentialNotices(awsResult, projectCode, sendChunk) {
|
|
109
|
+
if (awsResult.errors.length > 0) {
|
|
110
|
+
const notice = `⚠️ ${awsResult.errors.join('\n')}\n\n`;
|
|
111
|
+
await sendChunk('delta', notice);
|
|
112
|
+
}
|
|
113
|
+
// SSO再認証が必要なアカウントの情報を system チャンクで送信
|
|
114
|
+
for (const ssoInfo of awsResult.ssoAuthRequired) {
|
|
115
|
+
await sendChunk('system', JSON.stringify({
|
|
116
|
+
type: 'sso_auth_required',
|
|
117
|
+
accountId: ssoInfo.accountId,
|
|
118
|
+
accountName: ssoInfo.accountName,
|
|
119
|
+
projectCode,
|
|
120
|
+
}));
|
|
121
|
+
}
|
|
122
|
+
}
|
|
138
123
|
//# sourceMappingURL=chat-executor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-executor.js","sourceRoot":"","sources":["../../src/commands/chat-executor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"chat-executor.js","sourceRoot":"","sources":["../../src/commands/chat-executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface DockerRunOptions {
|
|
2
|
+
token?: string;
|
|
3
|
+
apiUrl?: string;
|
|
4
|
+
pollInterval?: number;
|
|
5
|
+
heartbeatInterval?: number;
|
|
6
|
+
verbose?: boolean;
|
|
7
|
+
autoUpdate?: boolean;
|
|
8
|
+
updateChannel?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function checkDockerAvailable(): boolean;
|
|
11
|
+
export declare function imageExists(version: string): boolean;
|
|
12
|
+
export declare function buildImage(version: string): void;
|
|
13
|
+
export declare function buildVolumeMounts(): string[];
|
|
14
|
+
export declare function buildEnvArgs(): string[];
|
|
15
|
+
export declare function buildContainerArgs(opts: DockerRunOptions): string[];
|
|
16
|
+
export declare function runInDocker(opts: DockerRunOptions): void;
|
|
17
|
+
//# sourceMappingURL=docker-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-runner.d.ts","sourceRoot":"","sources":["../../src/docker/docker-runner.ts"],"names":[],"mappings":"AAmBA,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,CAShD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAmC5C;AAED,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAavC;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,EAAE,CA0BnE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CA+CxD"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.checkDockerAvailable = checkDockerAvailable;
|
|
37
|
+
exports.imageExists = imageExists;
|
|
38
|
+
exports.buildImage = buildImage;
|
|
39
|
+
exports.buildVolumeMounts = buildVolumeMounts;
|
|
40
|
+
exports.buildEnvArgs = buildEnvArgs;
|
|
41
|
+
exports.buildContainerArgs = buildContainerArgs;
|
|
42
|
+
exports.runInDocker = runInDocker;
|
|
43
|
+
const child_process_1 = require("child_process");
|
|
44
|
+
const os = __importStar(require("os"));
|
|
45
|
+
const path = __importStar(require("path"));
|
|
46
|
+
const fs = __importStar(require("fs"));
|
|
47
|
+
const dockerfile_path_1 = require("./dockerfile-path");
|
|
48
|
+
const constants_1 = require("../constants");
|
|
49
|
+
const config_manager_1 = require("../config-manager");
|
|
50
|
+
const i18n_1 = require("../i18n");
|
|
51
|
+
const logger_1 = require("../logger");
|
|
52
|
+
const IMAGE_NAME = 'ai-support-agent';
|
|
53
|
+
const PASSTHROUGH_ENV_VARS = [
|
|
54
|
+
'AI_SUPPORT_AGENT_TOKEN',
|
|
55
|
+
'AI_SUPPORT_AGENT_API_URL',
|
|
56
|
+
'AI_SUPPORT_AGENT_CONFIG_DIR',
|
|
57
|
+
'ANTHROPIC_API_KEY',
|
|
58
|
+
];
|
|
59
|
+
function checkDockerAvailable() {
|
|
60
|
+
try {
|
|
61
|
+
(0, child_process_1.execSync)('docker info', { stdio: 'ignore' });
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
function imageExists(version) {
|
|
69
|
+
try {
|
|
70
|
+
(0, child_process_1.execSync)(`docker image inspect ${IMAGE_NAME}:${version}`, { stdio: 'ignore' });
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
function buildImage(version) {
|
|
78
|
+
const dockerfilePath = (0, dockerfile_path_1.getDockerfilePath)();
|
|
79
|
+
const contextDir = (0, dockerfile_path_1.getDockerContextDir)();
|
|
80
|
+
logger_1.logger.info((0, i18n_1.t)('docker.building'));
|
|
81
|
+
(0, child_process_1.execSync)(`docker build -t ${IMAGE_NAME}:${version} --build-arg AGENT_VERSION=${version} -f ${dockerfilePath} ${contextDir}`, { stdio: 'inherit' });
|
|
82
|
+
logger_1.logger.success((0, i18n_1.t)('docker.buildComplete'));
|
|
83
|
+
}
|
|
84
|
+
function buildVolumeMounts() {
|
|
85
|
+
const home = os.homedir();
|
|
86
|
+
const mounts = [];
|
|
87
|
+
// Claude Code OAuth tokens
|
|
88
|
+
const claudeDir = path.join(home, '.claude');
|
|
89
|
+
if (fs.existsSync(claudeDir)) {
|
|
90
|
+
mounts.push('-v', `${claudeDir}:${claudeDir}:rw`);
|
|
91
|
+
}
|
|
92
|
+
// Agent config
|
|
93
|
+
const agentConfigDir = path.join(home, '.ai-support-agent');
|
|
94
|
+
if (fs.existsSync(agentConfigDir)) {
|
|
95
|
+
mounts.push('-v', `${agentConfigDir}:${agentConfigDir}:rw`);
|
|
96
|
+
}
|
|
97
|
+
// AWS credentials
|
|
98
|
+
const awsDir = path.join(home, '.aws');
|
|
99
|
+
if (fs.existsSync(awsDir)) {
|
|
100
|
+
mounts.push('-v', `${awsDir}:${awsDir}:ro`);
|
|
101
|
+
}
|
|
102
|
+
// Custom project directories from config
|
|
103
|
+
const config = (0, config_manager_1.loadConfig)();
|
|
104
|
+
if (config?.projects) {
|
|
105
|
+
const mounted = new Set();
|
|
106
|
+
for (const project of config.projects) {
|
|
107
|
+
if (project.projectDir && !mounted.has(project.projectDir) && fs.existsSync(project.projectDir)) {
|
|
108
|
+
mounts.push('-v', `${project.projectDir}:${project.projectDir}:rw`);
|
|
109
|
+
mounted.add(project.projectDir);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return mounts;
|
|
114
|
+
}
|
|
115
|
+
function buildEnvArgs() {
|
|
116
|
+
const args = [];
|
|
117
|
+
// HOME must be passed so volume mounts resolve to the same paths
|
|
118
|
+
args.push('-e', `HOME=${os.homedir()}`);
|
|
119
|
+
for (const key of PASSTHROUGH_ENV_VARS) {
|
|
120
|
+
if (process.env[key]) {
|
|
121
|
+
args.push('-e', `${key}=${process.env[key]}`);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
return args;
|
|
125
|
+
}
|
|
126
|
+
function buildContainerArgs(opts) {
|
|
127
|
+
const args = ['start'];
|
|
128
|
+
if (opts.token) {
|
|
129
|
+
args.push('--token', opts.token);
|
|
130
|
+
}
|
|
131
|
+
if (opts.apiUrl) {
|
|
132
|
+
args.push('--api-url', opts.apiUrl);
|
|
133
|
+
}
|
|
134
|
+
if (opts.pollInterval !== undefined) {
|
|
135
|
+
args.push('--poll-interval', String(opts.pollInterval));
|
|
136
|
+
}
|
|
137
|
+
if (opts.heartbeatInterval !== undefined) {
|
|
138
|
+
args.push('--heartbeat-interval', String(opts.heartbeatInterval));
|
|
139
|
+
}
|
|
140
|
+
if (opts.verbose) {
|
|
141
|
+
args.push('--verbose');
|
|
142
|
+
}
|
|
143
|
+
if (opts.autoUpdate === false) {
|
|
144
|
+
args.push('--no-auto-update');
|
|
145
|
+
}
|
|
146
|
+
if (opts.updateChannel) {
|
|
147
|
+
args.push('--update-channel', opts.updateChannel);
|
|
148
|
+
}
|
|
149
|
+
return args;
|
|
150
|
+
}
|
|
151
|
+
function runInDocker(opts) {
|
|
152
|
+
if (!checkDockerAvailable()) {
|
|
153
|
+
logger_1.logger.error((0, i18n_1.t)('docker.notAvailable'));
|
|
154
|
+
process.exit(1);
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const version = constants_1.AGENT_VERSION;
|
|
158
|
+
if (!imageExists(version)) {
|
|
159
|
+
buildImage(version);
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
logger_1.logger.info((0, i18n_1.t)('docker.imageFound', { version }));
|
|
163
|
+
}
|
|
164
|
+
logger_1.logger.info((0, i18n_1.t)('docker.starting'));
|
|
165
|
+
const volumeMounts = buildVolumeMounts();
|
|
166
|
+
const envArgs = buildEnvArgs();
|
|
167
|
+
const containerArgs = buildContainerArgs(opts);
|
|
168
|
+
const dockerArgs = [
|
|
169
|
+
'run', '--rm', '-it',
|
|
170
|
+
...volumeMounts,
|
|
171
|
+
...envArgs,
|
|
172
|
+
`${IMAGE_NAME}:${version}`,
|
|
173
|
+
...containerArgs,
|
|
174
|
+
];
|
|
175
|
+
const child = (0, child_process_1.spawn)('docker', dockerArgs, {
|
|
176
|
+
stdio: 'inherit',
|
|
177
|
+
});
|
|
178
|
+
// Forward signals to container
|
|
179
|
+
const forwardSignal = (signal) => {
|
|
180
|
+
child.kill(signal);
|
|
181
|
+
};
|
|
182
|
+
process.on('SIGINT', () => forwardSignal('SIGINT'));
|
|
183
|
+
process.on('SIGTERM', () => forwardSignal('SIGTERM'));
|
|
184
|
+
child.on('error', (err) => {
|
|
185
|
+
logger_1.logger.error((0, i18n_1.t)('docker.runFailed', { message: err.message }));
|
|
186
|
+
process.exit(1);
|
|
187
|
+
});
|
|
188
|
+
child.on('close', (code) => {
|
|
189
|
+
process.exit(code ?? 0);
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=docker-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-runner.js","sourceRoot":"","sources":["../../src/docker/docker-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the path to the Dockerfile included in the npm package.
|
|
3
|
+
* __dirname at runtime is dist/docker/, so we go up two levels to reach the package root.
|
|
4
|
+
*/
|
|
5
|
+
export declare function getDockerfilePath(): string;
|
|
6
|
+
/**
|
|
7
|
+
* Get the Docker build context directory (package root).
|
|
8
|
+
*/
|
|
9
|
+
export declare function getDockerContextDir(): string;
|
|
10
|
+
//# sourceMappingURL=dockerfile-path.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dockerfile-path.d.ts","sourceRoot":"","sources":["../../src/docker/dockerfile-path.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAO1C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getDockerfilePath = getDockerfilePath;
|
|
4
|
+
exports.getDockerContextDir = getDockerContextDir;
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const fs_1 = require("fs");
|
|
7
|
+
/**
|
|
8
|
+
* Get the path to the Dockerfile included in the npm package.
|
|
9
|
+
* __dirname at runtime is dist/docker/, so we go up two levels to reach the package root.
|
|
10
|
+
*/
|
|
11
|
+
function getDockerfilePath() {
|
|
12
|
+
const packageRoot = getDockerContextDir();
|
|
13
|
+
const dockerfilePath = (0, path_1.join)(packageRoot, 'docker', 'Dockerfile');
|
|
14
|
+
if (!(0, fs_1.existsSync)(dockerfilePath)) {
|
|
15
|
+
throw new Error(`Dockerfile not found: ${dockerfilePath}`);
|
|
16
|
+
}
|
|
17
|
+
return dockerfilePath;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get the Docker build context directory (package root).
|
|
21
|
+
*/
|
|
22
|
+
function getDockerContextDir() {
|
|
23
|
+
return (0, path_1.join)(__dirname, '..', '..');
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=dockerfile-path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dockerfile-path.js","sourceRoot":"","sources":["../../src/docker/dockerfile-path.ts"],"names":[],"mappings":";;AAOA,8CAOC;AAKD,kDAEC;AArBD,+BAA2B;AAC3B,2BAA+B;AAE/B;;;GAGG;AACH,SAAgB,iBAAiB;IAC/B,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAA;IACzC,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;IAChE,IAAI,CAAC,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,cAAc,EAAE,CAAC,CAAA;IAC5D,CAAC;IACD,OAAO,cAAc,CAAA;AACvB,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB;IACjC,OAAO,IAAA,WAAI,EAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AACpC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -63,7 +63,21 @@ program
|
|
|
63
63
|
.option('--verbose', (0, i18n_1.t)('cmd.start.verbose'))
|
|
64
64
|
.option('--no-auto-update', (0, i18n_1.t)('cmd.start.noAutoUpdate'))
|
|
65
65
|
.option('--update-channel <channel>', (0, i18n_1.t)('cmd.start.updateChannel'))
|
|
66
|
+
.option('--docker', (0, i18n_1.t)('cmd.start.docker'))
|
|
66
67
|
.action(async (opts) => {
|
|
68
|
+
if (opts.docker) {
|
|
69
|
+
const { runInDocker } = await Promise.resolve().then(() => __importStar(require('./docker/docker-runner')));
|
|
70
|
+
runInDocker({
|
|
71
|
+
token: opts.token,
|
|
72
|
+
apiUrl: opts.apiUrl,
|
|
73
|
+
pollInterval: (0, validators_1.parseIntervalOrExit)(opts.pollInterval, 'poll-interval'),
|
|
74
|
+
heartbeatInterval: (0, validators_1.parseIntervalOrExit)(opts.heartbeatInterval, 'heartbeat-interval'),
|
|
75
|
+
verbose: opts.verbose,
|
|
76
|
+
autoUpdate: opts.autoUpdate,
|
|
77
|
+
updateChannel: opts.updateChannel,
|
|
78
|
+
});
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
67
81
|
const updateChannel = (0, validators_1.validateUpdateChannel)(opts.updateChannel);
|
|
68
82
|
await (0, agent_runner_1.startAgent)({
|
|
69
83
|
token: opts.token,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yCAAmC;AAEnC,iDAA2C;AAC3C,uDAA0D;AAC1D,yDAA4D;AAC5D,gEAAyE;AACzE,+CAAiE;AACjE,iDAA6E;AAC7E,2CAA2C;AAE3C,uCAAwB;AAExB,qDAIyB;AACzB,iCAAoC;AACpC,qCAAiC;AAEjC,IAAA,eAAQ,GAAE,CAAA;AAEV,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,kBAAkB,CAAC;KACxB,WAAW,CAAC,IAAA,QAAC,EAAC,iBAAiB,CAAC,CAAC;KACjC,OAAO,CAAC,yBAAa,CAAC;KACtB,MAAM,CAAC,eAAe,EAAE,IAAA,QAAC,EAAC,UAAU,CAAC,CAAC,CAAA;AAEzC,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,IAAA,QAAC,EAAC,WAAW,CAAC,CAAC;KAC3B,MAAM,CAAC,iBAAiB,EAAE,IAAA,QAAC,EAAC,iBAAiB,CAAC,CAAC;KAC/C,MAAM,CAAC,iBAAiB,EAAE,IAAA,QAAC,EAAC,kBAAkB,CAAC,CAAC;KAChD,MAAM,CAAC,sBAAsB,EAAE,IAAA,QAAC,EAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;KACnE,MAAM,CAAC,2BAA2B,EAAE,IAAA,QAAC,EAAC,6BAA6B,CAAC,EAAE,OAAO,CAAC;KAC9E,MAAM,CAAC,WAAW,EAAE,IAAA,QAAC,EAAC,mBAAmB,CAAC,CAAC;KAC3C,MAAM,CAAC,kBAAkB,EAAE,IAAA,QAAC,EAAC,wBAAwB,CAAC,CAAC;KACvD,MAAM,CAAC,4BAA4B,EAAE,IAAA,QAAC,EAAC,yBAAyB,CAAC,CAAC;KAClE,MAAM,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/locales/en.json
CHANGED
|
@@ -104,5 +104,13 @@
|
|
|
104
104
|
"projectDir.noProject": "Project \"{{projectCode}}\" is not registered.",
|
|
105
105
|
"projectDir.initialized": "Project directory initialized: {{projectDir}} ({{projectCode}})",
|
|
106
106
|
"projectDir.usageHint": "Usage: set-project-dir --project <code> --path <path> OR --default <template>",
|
|
107
|
-
"projectDir.cleaned": "Cleaned up metadata directory: {{metadataDir}}"
|
|
107
|
+
"projectDir.cleaned": "Cleaned up metadata directory: {{metadataDir}}",
|
|
108
|
+
|
|
109
|
+
"cmd.start.docker": "Run inside a Docker container",
|
|
110
|
+
"docker.notAvailable": "Docker is not available. Make sure Docker Desktop is running.",
|
|
111
|
+
"docker.building": "Building Docker image...",
|
|
112
|
+
"docker.buildComplete": "Docker image build complete",
|
|
113
|
+
"docker.imageFound": "Using existing Docker image ({{version}})",
|
|
114
|
+
"docker.starting": "Starting Docker container...",
|
|
115
|
+
"docker.runFailed": "Failed to run Docker container: {{message}}"
|
|
108
116
|
}
|
package/dist/locales/ja.json
CHANGED
|
@@ -104,5 +104,13 @@
|
|
|
104
104
|
"projectDir.noProject": "プロジェクト \"{{projectCode}}\" は登録されていません。",
|
|
105
105
|
"projectDir.initialized": "プロジェクトディレクトリを初期化しました: {{projectDir}} ({{projectCode}})",
|
|
106
106
|
"projectDir.usageHint": "使い方: set-project-dir --project <code> --path <path> または --default <template>",
|
|
107
|
-
"projectDir.cleaned": "メタデータディレクトリを削除しました: {{metadataDir}}"
|
|
107
|
+
"projectDir.cleaned": "メタデータディレクトリを削除しました: {{metadataDir}}",
|
|
108
|
+
|
|
109
|
+
"cmd.start.docker": "Dockerコンテナ内で実行",
|
|
110
|
+
"docker.notAvailable": "Dockerが利用できません。Docker Desktopが起動していることを確認してください。",
|
|
111
|
+
"docker.building": "Dockerイメージをビルド中...",
|
|
112
|
+
"docker.buildComplete": "Dockerイメージのビルドが完了しました",
|
|
113
|
+
"docker.imageFound": "既存のDockerイメージを使用します ({{version}})",
|
|
114
|
+
"docker.starting": "Dockerコンテナを起動中...",
|
|
115
|
+
"docker.runFailed": "Dockerコンテナの実行に失敗しました: {{message}}"
|
|
108
116
|
}
|
|
@@ -104,5 +104,13 @@
|
|
|
104
104
|
"projectDir.noProject": "Project \"{{projectCode}}\" is not registered.",
|
|
105
105
|
"projectDir.initialized": "Project directory initialized: {{projectDir}} ({{projectCode}})",
|
|
106
106
|
"projectDir.usageHint": "Usage: set-project-dir --project <code> --path <path> OR --default <template>",
|
|
107
|
-
"projectDir.cleaned": "Cleaned up metadata directory: {{metadataDir}}"
|
|
107
|
+
"projectDir.cleaned": "Cleaned up metadata directory: {{metadataDir}}",
|
|
108
|
+
|
|
109
|
+
"cmd.start.docker": "Run inside a Docker container",
|
|
110
|
+
"docker.notAvailable": "Docker is not available. Make sure Docker Desktop is running.",
|
|
111
|
+
"docker.building": "Building Docker image...",
|
|
112
|
+
"docker.buildComplete": "Docker image build complete",
|
|
113
|
+
"docker.imageFound": "Using existing Docker image ({{version}})",
|
|
114
|
+
"docker.starting": "Starting Docker container...",
|
|
115
|
+
"docker.runFailed": "Failed to run Docker container: {{message}}"
|
|
108
116
|
}
|
|
@@ -104,5 +104,13 @@
|
|
|
104
104
|
"projectDir.noProject": "プロジェクト \"{{projectCode}}\" は登録されていません。",
|
|
105
105
|
"projectDir.initialized": "プロジェクトディレクトリを初期化しました: {{projectDir}} ({{projectCode}})",
|
|
106
106
|
"projectDir.usageHint": "使い方: set-project-dir --project <code> --path <path> または --default <template>",
|
|
107
|
-
"projectDir.cleaned": "メタデータディレクトリを削除しました: {{metadataDir}}"
|
|
107
|
+
"projectDir.cleaned": "メタデータディレクトリを削除しました: {{metadataDir}}",
|
|
108
|
+
|
|
109
|
+
"cmd.start.docker": "Dockerコンテナ内で実行",
|
|
110
|
+
"docker.notAvailable": "Dockerが利用できません。Docker Desktopが起動していることを確認してください。",
|
|
111
|
+
"docker.building": "Dockerイメージをビルド中...",
|
|
112
|
+
"docker.buildComplete": "Dockerイメージのビルドが完了しました",
|
|
113
|
+
"docker.imageFound": "既存のDockerイメージを使用します ({{version}})",
|
|
114
|
+
"docker.starting": "Dockerコンテナを起動中...",
|
|
115
|
+
"docker.runFailed": "Dockerコンテナの実行に失敗しました: {{message}}"
|
|
108
116
|
}
|
package/dist/types.d.ts
CHANGED
|
@@ -229,7 +229,7 @@ export interface HeartbeatResponse {
|
|
|
229
229
|
success: true;
|
|
230
230
|
configHash?: string;
|
|
231
231
|
}
|
|
232
|
-
export type ChatChunkType = 'delta' | 'tool_call' | 'tool_result' | 'done' | 'error';
|
|
232
|
+
export type ChatChunkType = 'delta' | 'tool_call' | 'tool_result' | 'done' | 'error' | 'system';
|
|
233
233
|
export interface ChatChunk {
|
|
234
234
|
index: number;
|
|
235
235
|
type: ChatChunkType;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
FROM node:24-slim
|
|
2
|
+
|
|
3
|
+
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
4
|
+
curl unzip git openssh-client \
|
|
5
|
+
default-mysql-client postgresql-client \
|
|
6
|
+
gnupg apt-transport-https \
|
|
7
|
+
&& rm -rf /var/lib/apt/lists/*
|
|
8
|
+
|
|
9
|
+
# AWS CLI v2
|
|
10
|
+
RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-$(uname -m).zip" -o /tmp/awscliv2.zip \
|
|
11
|
+
&& unzip /tmp/awscliv2.zip -d /tmp \
|
|
12
|
+
&& /tmp/aws/install \
|
|
13
|
+
&& rm -rf /tmp/aws /tmp/awscliv2.zip
|
|
14
|
+
|
|
15
|
+
# AWS Session Manager Plugin
|
|
16
|
+
RUN ARCH=$(dpkg --print-architecture) \
|
|
17
|
+
&& curl "https://s3.amazonaws.com/session-manager-downloads/plugin/latest/ubuntu_${ARCH}/session-manager-plugin.deb" \
|
|
18
|
+
-o /tmp/session-manager-plugin.deb \
|
|
19
|
+
&& dpkg -i /tmp/session-manager-plugin.deb \
|
|
20
|
+
&& rm /tmp/session-manager-plugin.deb
|
|
21
|
+
|
|
22
|
+
# MSSQL tools (amd64 only)
|
|
23
|
+
RUN ARCH=$(dpkg --print-architecture) && \
|
|
24
|
+
if [ "$ARCH" = "amd64" ]; then \
|
|
25
|
+
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /usr/share/keyrings/microsoft.gpg \
|
|
26
|
+
&& echo "deb [arch=amd64 signed-by=/usr/share/keyrings/microsoft.gpg] https://packages.microsoft.com/debian/12/prod bookworm main" \
|
|
27
|
+
> /etc/apt/sources.list.d/mssql-release.list \
|
|
28
|
+
&& apt-get update \
|
|
29
|
+
&& ACCEPT_EULA=Y apt-get install -y --no-install-recommends mssql-tools18 unixodbc-dev \
|
|
30
|
+
&& rm -rf /var/lib/apt/lists/*; \
|
|
31
|
+
fi
|
|
32
|
+
ENV PATH="$PATH:/opt/mssql-tools18/bin"
|
|
33
|
+
|
|
34
|
+
# Claude Code CLI + AI Support Agent CLI
|
|
35
|
+
ARG AGENT_VERSION=latest
|
|
36
|
+
RUN npm install -g @anthropic-ai/claude-code @ai-support-agent/cli@${AGENT_VERSION}
|
|
37
|
+
|
|
38
|
+
WORKDIR /workspace
|
|
39
|
+
ENTRYPOINT ["ai-support-agent"]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-support-agent/cli",
|
|
3
|
-
"version": "0.0.4-beta.
|
|
3
|
+
"version": "0.0.4-beta.15",
|
|
4
4
|
"description": "AI Support Agent CLI client",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"files": [
|
|
25
25
|
"dist",
|
|
26
|
+
"docker",
|
|
26
27
|
"LICENSE",
|
|
27
28
|
"README.md",
|
|
28
29
|
"CHANGELOG.md"
|