@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.
@@ -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;CACjB;AA2BD;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,qBAAqB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAqC9B;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,OAAO,CAAC,mBAAmB,CAAC,CAmB9B"}
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
- return `AWS SSO認証の有効期限が切れています(${accountName})。管理画面からSSO再認証を実行してください。`;
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 errorMsg = extractAwsCredentialError(error, account.name);
86
- errors.push(errorMsg);
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 errorMsg = extractAwsCredentialError(error, awsAccountId);
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: [errorMsg] };
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":"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"}
1
+ {"version":3,"file":"aws-credential-builder.js","sourceRoot":"","sources":["../src/aws-credential-builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA,gEA6CC;AAOD,4DAuBC;AApID,kDAAyB;AAGzB,qCAAiC;AAEjC,mCAAyC;AAkBzC;;GAEG;AACH,SAAS,yBAAyB,CAAC,KAAc,EAAE,WAAmB;IACpE,IAAI,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAA;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAA2C,CAAA;QAEvE,IAAI,IAAI,EAAE,CAAC;YACT,6BAA6B;YAC7B,IAAI,IAAI,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;gBACvC,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;gBAC1E,OAAO;oBACL,YAAY,EAAE,yBAAyB,WAAW,0BAA0B;oBAC5E,OAAO,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE;iBACpC,CAAA;YACH,CAAC;YAED,gCAAgC;YAChC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,eAAe,CAAA;YACnE,eAAM,CAAC,KAAK,CAAC,yCAAyC,MAAM,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACzF,OAAO,EAAE,YAAY,EAAE,qBAAqB,WAAW,OAAO,MAAM,KAAK,aAAa,EAAE,EAAE,CAAA;QAC5F,CAAC;QAED,OAAO,EAAE,YAAY,EAAE,qBAAqB,WAAW,WAAW,MAAM,EAAE,EAAE,CAAA;IAC9E,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,qBAAqB,WAAW,MAAM,IAAA,uBAAe,EAAC,KAAK,CAAC,EAAE,EAAE,CAAA;AACzF,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,0BAA0B,CAC9C,MAAiB,EACjB,UAAkB,EAClB,aAAoC;IAEpC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,CAAA;IAC5C,IAAI,CAAC,QAAQ,EAAE,MAAM;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAA;IAEjE,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,CAAA;IACrD,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAA;IACjF,MAAM,aAAa,GAAG,IAAI,GAAG,EAA4C,CAAA;IACzE,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,MAAM,eAAe,GAA0B,EAAE,CAAA;IAEjD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,eAAM,CAAC,IAAI,CAAC,gDAAgD,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,GAAG,CAAC,CAAA;YAC3F,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACxD,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;YAChF,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACzB,IAAI,OAAO,EAAE,CAAC;gBACZ,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC/B,CAAC;YACD,eAAM,CAAC,IAAI,CAAC,4CAA4C,OAAO,CAAC,IAAI,KAAK,IAAA,uBAAe,EAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACpG,CAAC;IACH,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAA;IAEhE,wBAAwB;IACxB,mBAAmB,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC,CAAA;IAE3D,gBAAgB;IAChB,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAA;IAEvE,MAAM,GAAG,GAAG,kBAAkB,CAC5B,UAAU,EACV,WAAW,EACX,cAAc,CAAC,IAAI,EACnB,cAAc,CAAC,MAAM,CACtB,CAAA;IAED,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,CAAA;AACzC,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,wBAAwB,CAC5C,MAAiB,EACjB,YAAgC;IAEhC,IAAI,CAAC,YAAY;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAA;IAE7D,IAAI,CAAC;QACH,eAAM,CAAC,IAAI,CAAC,gDAAgD,YAAY,EAAE,CAAC,CAAA;QAC3E,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;QAC1D,MAAM,GAAG,GAA2B;YAClC,iBAAiB,EAAE,KAAK,CAAC,WAAW;YACpC,qBAAqB,EAAE,KAAK,CAAC,eAAe;YAC5C,kBAAkB,EAAE,KAAK,CAAC,MAAM;YAChC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzE,CAAA;QACD,eAAM,CAAC,IAAI,CAAC,8CAA8C,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;QACzE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAA;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,yBAAyB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;QAChF,MAAM,eAAe,GAA0B,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACvE,eAAM,CAAC,IAAI,CAAC,yCAAyC,IAAA,uBAAe,EAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC9E,OAAO,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE,CAAA;IACpD,CAAC;AACH,CAAC"}
@@ -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,EAAE,WAAW,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAQnH,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
+ {"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 { getAutoAddDirs } = await Promise.resolve().then(() => __importStar(require('../project-dir')));
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
- if (awsResult.errors.length > 0) {
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
- if (awsResult.errors.length > 0) {
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
- logger_1.logger.debug(`[chat] Spawning claude CLI for command [${commandId}]${allowedTools?.length ? ` with allowedTools: ${allowedTools.join(', ')}` : ' (no allowedTools)'}${addDirs?.length ? ` with addDirs: ${addDirs.join(', ')}` : ''}${locale ? ` locale=${locale}` : ''}${awsEnv ? ' with AWS credentials' : ''}${mcpConfigPath ? ' with MCP config' : ''}${history.length > 0 ? ` with ${history.length} history messages` : ''}`);
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":"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"}
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":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -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
  }
@@ -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;
@@ -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.13",
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"