@ai-support-agent/cli 0.1.35 → 0.2.0-beta.1

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.
Files changed (91) hide show
  1. package/dist/agent-config-sync.d.ts.map +1 -1
  2. package/dist/agent-config-sync.js +9 -1
  3. package/dist/agent-config-sync.js.map +1 -1
  4. package/dist/agent-transport.d.ts.map +1 -1
  5. package/dist/agent-transport.js +1 -0
  6. package/dist/agent-transport.js.map +1 -1
  7. package/dist/api-client.d.ts +6 -1
  8. package/dist/api-client.d.ts.map +1 -1
  9. package/dist/api-client.js +9 -0
  10. package/dist/api-client.js.map +1 -1
  11. package/dist/chat-mode-detector.d.ts +2 -1
  12. package/dist/chat-mode-detector.d.ts.map +1 -1
  13. package/dist/chat-mode-detector.js +21 -4
  14. package/dist/chat-mode-detector.js.map +1 -1
  15. package/dist/cli/ecs-publish-command.d.ts +49 -0
  16. package/dist/cli/ecs-publish-command.d.ts.map +1 -0
  17. package/dist/cli/ecs-publish-command.js +214 -0
  18. package/dist/cli/ecs-publish-command.js.map +1 -0
  19. package/dist/commands/chat-executor.d.ts +1 -0
  20. package/dist/commands/chat-executor.d.ts.map +1 -1
  21. package/dist/commands/chat-executor.js +40 -19
  22. package/dist/commands/chat-executor.js.map +1 -1
  23. package/dist/commands/codex-command.d.ts +7 -0
  24. package/dist/commands/codex-command.d.ts.map +1 -0
  25. package/dist/commands/codex-command.js +34 -0
  26. package/dist/commands/codex-command.js.map +1 -0
  27. package/dist/commands/codex-runner.d.ts +37 -0
  28. package/dist/commands/codex-runner.d.ts.map +1 -0
  29. package/dist/commands/codex-runner.js +264 -0
  30. package/dist/commands/codex-runner.js.map +1 -0
  31. package/dist/commands/index.d.ts +1 -0
  32. package/dist/commands/index.d.ts.map +1 -1
  33. package/dist/commands/index.js +84 -3
  34. package/dist/commands/index.js.map +1 -1
  35. package/dist/constants.d.ts +32 -0
  36. package/dist/constants.d.ts.map +1 -1
  37. package/dist/constants.js +40 -3
  38. package/dist/constants.js.map +1 -1
  39. package/dist/ecs/aws-arn.d.ts +30 -0
  40. package/dist/ecs/aws-arn.d.ts.map +1 -0
  41. package/dist/ecs/aws-arn.js +36 -0
  42. package/dist/ecs/aws-arn.js.map +1 -0
  43. package/dist/ecs/ecr-publisher.d.ts +49 -0
  44. package/dist/ecs/ecr-publisher.d.ts.map +1 -0
  45. package/dist/ecs/ecr-publisher.js +118 -0
  46. package/dist/ecs/ecr-publisher.js.map +1 -0
  47. package/dist/ecs/ecs-launcher.d.ts +25 -0
  48. package/dist/ecs/ecs-launcher.d.ts.map +1 -0
  49. package/dist/ecs/ecs-launcher.js +157 -0
  50. package/dist/ecs/ecs-launcher.js.map +1 -0
  51. package/dist/ecs/launcher-capability.d.ts +26 -0
  52. package/dist/ecs/launcher-capability.d.ts.map +1 -0
  53. package/dist/ecs/launcher-capability.js +86 -0
  54. package/dist/ecs/launcher-capability.js.map +1 -0
  55. package/dist/ecs/task-definition-registrar.d.ts +39 -0
  56. package/dist/ecs/task-definition-registrar.d.ts.map +1 -0
  57. package/dist/ecs/task-definition-registrar.js +80 -0
  58. package/dist/ecs/task-definition-registrar.js.map +1 -0
  59. package/dist/index.js +17 -1
  60. package/dist/index.js.map +1 -1
  61. package/dist/locales/en.json +18 -0
  62. package/dist/locales/ja.json +18 -0
  63. package/dist/oneshot-runner.d.ts +38 -0
  64. package/dist/oneshot-runner.d.ts.map +1 -0
  65. package/dist/oneshot-runner.js +166 -0
  66. package/dist/oneshot-runner.js.map +1 -0
  67. package/dist/project-agent.d.ts.map +1 -1
  68. package/dist/project-agent.js +13 -1
  69. package/dist/project-agent.js.map +1 -1
  70. package/dist/types/chat.d.ts +1 -0
  71. package/dist/types/chat.d.ts.map +1 -1
  72. package/dist/types/command.d.ts +10 -1
  73. package/dist/types/command.d.ts.map +1 -1
  74. package/dist/types/command.js.map +1 -1
  75. package/dist/types/config.d.ts +15 -1
  76. package/dist/types/config.d.ts.map +1 -1
  77. package/dist/types/ecs.d.ts +71 -0
  78. package/dist/types/ecs.d.ts.map +1 -0
  79. package/dist/types/ecs.js +12 -0
  80. package/dist/types/ecs.js.map +1 -0
  81. package/dist/types/index.d.ts +1 -0
  82. package/dist/types/index.d.ts.map +1 -1
  83. package/dist/types/index.js +1 -0
  84. package/dist/types/index.js.map +1 -1
  85. package/dist/types/project.d.ts +7 -0
  86. package/dist/types/project.d.ts.map +1 -1
  87. package/dist/types/server.d.ts +7 -1
  88. package/dist/types/server.d.ts.map +1 -1
  89. package/docker/Dockerfile +1 -1
  90. package/docker/entrypoint.sh +9 -0
  91. package/package.json +7 -1
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+ /**
3
+ * `ecs publish` CLI command.
4
+ *
5
+ * Publishes an ECS execution agent (launcher-agent architecture):
6
+ * 1. Build (or reuse) the image, push it to ECR, resolve its digest
7
+ * — all with the LOCAL AWS credentials (the API never calls AWS).
8
+ * 2. Register a Fargate task definition pinned to that digest
9
+ * (awslogs driver, NO environment variables in the definition).
10
+ * 3. Register the agent with the API
11
+ * (POST /api/:tenantCode/agent/ecs-agents, agent Bearer token).
12
+ *
13
+ * The agentId (`ecs-{uuid}`) is generated on first publish and persisted in
14
+ * the project config keyed by the ECR repository URI, so a re-publish
15
+ * (image update) overwrites the same agent with a new task definition
16
+ * revision instead of creating a new one.
17
+ */
18
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
19
+ if (k2 === undefined) k2 = k;
20
+ var desc = Object.getOwnPropertyDescriptor(m, k);
21
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
22
+ desc = { enumerable: true, get: function() { return m[k]; } };
23
+ }
24
+ Object.defineProperty(o, k2, desc);
25
+ }) : (function(o, m, k, k2) {
26
+ if (k2 === undefined) k2 = k;
27
+ o[k2] = m[k];
28
+ }));
29
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
30
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
31
+ }) : function(o, v) {
32
+ o["default"] = v;
33
+ });
34
+ var __importStar = (this && this.__importStar) || (function () {
35
+ var ownKeys = function(o) {
36
+ ownKeys = Object.getOwnPropertyNames || function (o) {
37
+ var ar = [];
38
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
39
+ return ar;
40
+ };
41
+ return ownKeys(o);
42
+ };
43
+ return function (mod) {
44
+ if (mod && mod.__esModule) return mod;
45
+ var result = {};
46
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
47
+ __setModuleDefault(result, mod);
48
+ return result;
49
+ };
50
+ })();
51
+ Object.defineProperty(exports, "__esModule", { value: true });
52
+ exports.resolveTargetProject = resolveTargetProject;
53
+ exports.runEcsPublish = runEcsPublish;
54
+ exports.registerEcsCommands = registerEcsCommands;
55
+ const crypto = __importStar(require("crypto"));
56
+ const api_client_1 = require("../api-client");
57
+ const config_manager_1 = require("../config-manager");
58
+ const constants_1 = require("../constants");
59
+ const ecr_publisher_1 = require("../ecs/ecr-publisher");
60
+ const aws_arn_1 = require("../ecs/aws-arn");
61
+ const task_definition_registrar_1 = require("../ecs/task-definition-registrar");
62
+ const i18n_1 = require("../i18n");
63
+ const logger_1 = require("../logger");
64
+ const utils_1 = require("../utils");
65
+ /**
66
+ * Resolve the target project registration.
67
+ * `--project tenantCode/projectCode` selects one; when omitted the single
68
+ * registered project is used (ambiguity is an error, no fallback).
69
+ */
70
+ function resolveTargetProject(projects, projectFlag) {
71
+ if (projects.length === 0) {
72
+ throw new Error('No project is registered. Run "ai-support-agent login" first.');
73
+ }
74
+ if (!projectFlag) {
75
+ if (projects.length === 1)
76
+ return projects[0];
77
+ const available = projects.map((p) => `${p.tenantCode}/${p.projectCode}`).join(', ');
78
+ throw new Error(`Multiple projects are registered. Specify one with --project <tenantCode/projectCode>. Available: ${available}`);
79
+ }
80
+ const slashIdx = projectFlag.indexOf('/');
81
+ if (slashIdx < 0) {
82
+ throw new Error(`--project must be in "tenantCode/projectCode" format: ${projectFlag}`);
83
+ }
84
+ const tenantCode = projectFlag.substring(0, slashIdx);
85
+ const projectCode = projectFlag.substring(slashIdx + 1);
86
+ const project = projects.find((p) => p.tenantCode === tenantCode && p.projectCode === projectCode);
87
+ if (!project) {
88
+ throw new Error(`Project not found: ${projectFlag}`);
89
+ }
90
+ return project;
91
+ }
92
+ function parsePositiveInt(value, fallback, label) {
93
+ if (value === undefined)
94
+ return fallback;
95
+ const parsed = Number(value);
96
+ if (!Number.isInteger(parsed) || parsed <= 0) {
97
+ throw new Error(`--${label} must be a positive integer: ${value}`);
98
+ }
99
+ return parsed;
100
+ }
101
+ /**
102
+ * Orchestrate the full publish flow. Throws on failure; the commander action
103
+ * wrapper converts failures into a non-zero exit code.
104
+ */
105
+ async function runEcsPublish(opts) {
106
+ const config = (0, config_manager_1.loadConfig)();
107
+ if (!config) {
108
+ throw new Error('No agent configuration found. Run "ai-support-agent login" first.');
109
+ }
110
+ const project = resolveTargetProject((0, config_manager_1.getProjectList)(config), opts.project);
111
+ const region = (0, aws_arn_1.regionFromArn)(opts.cluster);
112
+ if (!region) {
113
+ throw new Error(`Invalid cluster ARN (region could not be determined): ${opts.cluster}`);
114
+ }
115
+ const repoParts = (0, aws_arn_1.parseEcrRepositoryUri)(opts.repositoryUri);
116
+ if (!repoParts) {
117
+ throw new Error(`Invalid ECR repository URI: ${opts.repositoryUri}`);
118
+ }
119
+ const cpu = parsePositiveInt(opts.cpu, constants_1.DEFAULT_ECS_CPU, 'cpu');
120
+ const memory = parsePositiveInt(opts.memory, constants_1.DEFAULT_ECS_MEMORY, 'memory');
121
+ // Reuse the persisted agentId on re-publish (same ECR repository URI).
122
+ const existingAgentId = project.ecsAgents?.[opts.repositoryUri];
123
+ const agentId = existingAgentId ?? `${constants_1.ECS_AGENT_ID_PREFIX}-${crypto.randomUUID()}`;
124
+ if (existingAgentId) {
125
+ logger_1.logger.info(`[ecs] Re-publishing existing ECS agent: ${agentId}`);
126
+ }
127
+ else {
128
+ logger_1.logger.info(`[ecs] Publishing new ECS agent: ${agentId}`);
129
+ }
130
+ // 1. Build / push the image and resolve its digest
131
+ const image = await (0, ecr_publisher_1.publishImage)({
132
+ repositoryUri: opts.repositoryUri,
133
+ tag: opts.tag,
134
+ dockerfile: opts.dockerfile,
135
+ image: opts.image,
136
+ });
137
+ // 2. Register the task definition (digest pin, awslogs, no env vars)
138
+ const family = `${constants_1.ECS_TASK_FAMILY_PREFIX}-${project.tenantCode}-${agentId}`;
139
+ const logGroupName = opts.logGroup ?? constants_1.DEFAULT_ECS_LOG_GROUP;
140
+ const taskDefinition = await (0, task_definition_registrar_1.registerTaskDefinition)({
141
+ family,
142
+ imageUri: image.imageUri,
143
+ cpu,
144
+ memory,
145
+ region,
146
+ logGroupName,
147
+ executionRoleArn: opts.executionRole,
148
+ taskRoleArn: opts.taskRole,
149
+ });
150
+ // 3. Register the agent with the API (Bearer = agent token)
151
+ const client = new api_client_1.ApiClient(project.apiUrl, project.token);
152
+ client.setTenantCode(project.tenantCode);
153
+ client.setProjectCode(project.projectCode);
154
+ await client.registerEcsAgent({
155
+ agentId,
156
+ displayName: opts.name ?? `${repoParts.repositoryName}:${opts.tag}`,
157
+ capabilities: [],
158
+ ecsConfig: {
159
+ imageUri: image.imageUri,
160
+ imageTag: image.imageTag,
161
+ imageDigest: image.imageDigest,
162
+ cpu,
163
+ memory,
164
+ taskDefinitionArn: taskDefinition.taskDefinitionArn,
165
+ taskDefinitionFamily: taskDefinition.family,
166
+ clusterArn: opts.cluster,
167
+ subnetIds: opts.subnets,
168
+ securityGroupIds: opts.securityGroups,
169
+ ...(opts.assignPublicIp !== undefined && { assignPublicIp: opts.assignPublicIp }),
170
+ logGroupName,
171
+ ...(opts.launcherAgentId && { launcherAgentId: opts.launcherAgentId }),
172
+ registeredBy: config.agentId,
173
+ registeredAt: (0, utils_1.nowIso)(),
174
+ },
175
+ });
176
+ // Persist the agentId so a re-publish reuses it.
177
+ (0, config_manager_1.addProject)({
178
+ ...project,
179
+ ecsAgents: { ...project.ecsAgents, [opts.repositoryUri]: agentId },
180
+ });
181
+ logger_1.logger.success(`[ecs] ECS agent published: agentId=${agentId} taskDefinition=${taskDefinition.taskDefinitionArn}`);
182
+ }
183
+ function registerEcsCommands(program) {
184
+ const ecs = program.command('ecs').description((0, i18n_1.t)('cmd.ecs'));
185
+ ecs
186
+ .command('publish')
187
+ .description((0, i18n_1.t)('cmd.ecsPublish'))
188
+ .requiredOption('--repository-uri <uri>', (0, i18n_1.t)('cmd.ecsPublish.repositoryUri'))
189
+ .requiredOption('--tag <tag>', (0, i18n_1.t)('cmd.ecsPublish.tag'))
190
+ .requiredOption('--cluster <clusterArn>', (0, i18n_1.t)('cmd.ecsPublish.cluster'))
191
+ .requiredOption('--subnets <ids...>', (0, i18n_1.t)('cmd.ecsPublish.subnets'))
192
+ .requiredOption('--security-groups <ids...>', (0, i18n_1.t)('cmd.ecsPublish.securityGroups'))
193
+ .option('--dockerfile <path>', (0, i18n_1.t)('cmd.ecsPublish.dockerfile'))
194
+ .option('--image <name>', (0, i18n_1.t)('cmd.ecsPublish.image'))
195
+ .option('--cpu <n>', (0, i18n_1.t)('cmd.ecsPublish.cpu'))
196
+ .option('--memory <n>', (0, i18n_1.t)('cmd.ecsPublish.memory'))
197
+ .option('--name <name>', (0, i18n_1.t)('cmd.ecsPublish.name'))
198
+ .option('--assign-public-ip', (0, i18n_1.t)('cmd.ecsPublish.assignPublicIp'))
199
+ .option('--log-group <name>', (0, i18n_1.t)('cmd.ecsPublish.logGroup'))
200
+ .option('--execution-role <arn>', (0, i18n_1.t)('cmd.ecsPublish.executionRole'))
201
+ .option('--task-role <arn>', (0, i18n_1.t)('cmd.ecsPublish.taskRole'))
202
+ .option('--launcher-agent-id <id>', (0, i18n_1.t)('cmd.ecsPublish.launcherAgentId'))
203
+ .option('--project <tenantCode/projectCode>', (0, i18n_1.t)('cmd.ecsPublish.project'))
204
+ .action(async (opts) => {
205
+ try {
206
+ await runEcsPublish(opts);
207
+ }
208
+ catch (error) {
209
+ logger_1.logger.error(`[ecs] publish failed: ${(0, utils_1.getErrorMessage)(error)}`);
210
+ process.exitCode = 1;
211
+ }
212
+ });
213
+ }
214
+ //# sourceMappingURL=ecs-publish-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ecs-publish-command.js","sourceRoot":"","sources":["../../src/cli/ecs-publish-command.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export interface ExecuteChatCommandOptions {
18
18
  /**
19
19
  * エージェントチャットモードに応じてチャットメッセージを処理する
20
20
  * - claude_code: Claude Code CLI を使用(デフォルト)
21
+ * - codex: Codex CLI を使用
21
22
  * - api: Anthropic API 直接呼び出し
22
23
  *
23
24
  * activeChatMode はサーバーの chatMode ではなく、エージェント内部の実行方式を指す
@@ -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;AAKzC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAsB,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAe,KAAK,qBAAqB,EAAiB,MAAM,UAAU,CAAA;AAY1M,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAK1F,qCAAqC;AACrC,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,WAAW,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,SAAS,CAAA;IACjB,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,cAAc,CAAC,EAAE,aAAa,CAAA;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,qBAAqB,CAAA;IACrC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC,CAsCnG;AAsUD,wBAAgB,2BAA2B,CAAC,iBAAiB,EAAE,YAAY,EAAE,GAAG,MAAM,CAMrF;AAED,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,CAGR"}
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;AAKzC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAsB,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAe,KAAK,qBAAqB,EAAiB,MAAM,UAAU,CAAA;AAc1M,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAsB1F,qCAAqC;AACrC,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,WAAW,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,SAAS,CAAA;IACjB,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,cAAc,CAAC,EAAE,aAAa,CAAA;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,qBAAqB,CAAA;IACrC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC,CAwCnG;AAoVD,wBAAgB,2BAA2B,CAAC,iBAAiB,EAAE,YAAY,EAAE,GAAG,MAAM,CAMrF;AAED,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,CAGR"}
@@ -14,6 +14,7 @@ const project_dir_1 = require("../project-dir");
14
14
  const claude_settings_1 = require("../utils/claude-settings");
15
15
  const api_chat_executor_1 = require("./api-chat-executor");
16
16
  const claude_code_runner_1 = require("./claude-code-runner");
17
+ const codex_runner_1 = require("./codex-runner");
17
18
  const file_transfer_1 = require("./file-transfer");
18
19
  const process_manager_1 = require("./process-manager");
19
20
  const shared_chat_utils_1 = require("./shared-chat-utils");
@@ -24,9 +25,15 @@ Object.defineProperty(exports, "buildCleanEnv", { enumerable: true, get: functio
24
25
  Object.defineProperty(exports, "_resetCleanEnvCache", { enumerable: true, get: function () { return claude_code_runner_2._resetCleanEnvCache; } });
25
26
  /** 実行中のチャットプロセスを commandId で管理 */
26
27
  const processManager = (0, process_manager_1.getProcessManager)();
28
+ function parseAgentChatModeOverride(value) {
29
+ return value === 'claude_code' || value === 'codex' || value === 'api'
30
+ ? value
31
+ : undefined;
32
+ }
27
33
  /**
28
34
  * エージェントチャットモードに応じてチャットメッセージを処理する
29
35
  * - claude_code: Claude Code CLI を使用(デフォルト)
36
+ * - codex: Codex CLI を使用
30
37
  * - api: Anthropic API 直接呼び出し
31
38
  *
32
39
  * activeChatMode はサーバーの chatMode ではなく、エージェント内部の実行方式を指す
@@ -36,34 +43,36 @@ async function executeChatCommand(options) {
36
43
  if (!agentId) {
37
44
  return (0, types_1.errorResult)(constants_1.ERR_AGENT_ID_REQUIRED);
38
45
  }
39
- const mode = activeChatMode ?? 'claude_code';
46
+ const mode = parseAgentChatModeOverride(payload.agentChatMode) ?? activeChatMode ?? 'claude_code';
40
47
  // API モードでは projectConfig.envVars が反映されないため、Web で
41
48
  // 設定されている envVars がある場合に warn を出す(ユーザーへの hint)。
42
49
  if (mode === 'api' && projectConfig?.envVars && Object.keys(projectConfig.envVars).length > 0) {
43
50
  const keys = Object.keys(projectConfig.envVars).sort().join(', ');
44
51
  logger_1.logger.warn(`[chat] API mode is selected but Web-configured envVars (${keys}) are not applied in API mode. ` +
45
- `These overrides are only effective in claude_code mode.`);
52
+ `These overrides are only effective in CLI modes.`);
46
53
  }
47
54
  switch (mode) {
48
55
  case 'api':
49
56
  return (0, api_chat_executor_1.executeApiChatCommand)(payload, commandId, client, serverConfig, agentId);
57
+ case 'codex':
58
+ return executeCliChat('codex', payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort);
50
59
  case 'claude_code':
51
60
  default:
52
- return executeClaudeCodeChat(payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort);
61
+ return executeCliChat('claude_code', payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort);
53
62
  }
54
63
  }
55
64
  /**
56
- * Claude Code CLI を使用してチャットメッセージを処理する
65
+ * Agent CLI を使用してチャットメッセージを処理する
57
66
  * 失敗した場合に最大 CHAT_MAX_ATTEMPTS 回試行する(キャンセル時を除く)
58
67
  */
59
- async function executeClaudeCodeChat(payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort) {
68
+ async function executeCliChat(mode, payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort) {
60
69
  let lastResult = { success: false, error: 'Chat command failed after all retry attempts' };
61
70
  for (let attempt = 1; attempt <= constants_1.CHAT_MAX_ATTEMPTS; attempt++) {
62
71
  if (attempt > 1) {
63
72
  logger_1.logger.info(`[chat] Retrying chat command [${commandId}] (attempt ${attempt}/${constants_1.CHAT_MAX_ATTEMPTS})`);
64
73
  await (0, utils_1.sleep)(constants_1.CHAT_RETRY_DELAY_MS);
65
74
  }
66
- const result = await executeClaudeCodeChatOnce(payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort);
75
+ const result = await executeCliChatOnce(mode, payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort);
67
76
  if (result.success)
68
77
  return result;
69
78
  // キャンセルされた場合はリトライしない
@@ -78,11 +87,11 @@ async function executeClaudeCodeChat(payload, commandId, client, agentId, server
78
87
  return lastResult;
79
88
  }
80
89
  /**
81
- * Claude Code CLI を使用してチャットメッセージを1回試行する
90
+ * Agent CLI を使用してチャットメッセージを1回試行する
82
91
  * サブプロセスとして起動し、stdout をストリーミングで読み取り、
83
92
  * チャンクとしてAPIに送信する
84
93
  */
85
- async function executeClaudeCodeChatOnce(payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort) {
94
+ async function executeCliChatOnce(mode, payload, commandId, client, agentId, serverConfig, projectDir, projectConfig, mcpConfigPath, tenantCode, browserLocalPort) {
86
95
  const message = (0, utils_1.parseString)(payload.message);
87
96
  if (!message) {
88
97
  return (0, types_1.errorResult)(constants_1.ERR_MESSAGE_REQUIRED);
@@ -119,10 +128,16 @@ async function executeClaudeCodeChatOnce(payload, commandId, client, agentId, se
119
128
  let cleanupDownloads;
120
129
  let cleanupGitCredentials;
121
130
  try {
122
- const allowedTools = serverConfig?.claudeCodeConfig?.allowedTools;
123
- const systemPrompt = serverConfig?.claudeCodeConfig?.systemPrompt;
124
- const model = serverConfig?.claudeCodeConfig?.model;
125
- const serverAddDirs = serverConfig?.claudeCodeConfig?.addDirs ?? [];
131
+ const allowedTools = mode === 'claude_code' ? serverConfig?.claudeCodeConfig?.allowedTools : undefined;
132
+ const systemPrompt = mode === 'codex'
133
+ ? (serverConfig?.codexConfig?.systemPrompt ?? serverConfig?.claudeCodeConfig?.systemPrompt)
134
+ : serverConfig?.claudeCodeConfig?.systemPrompt;
135
+ const model = mode === 'codex'
136
+ ? (serverConfig?.codexConfig?.model ?? serverConfig?.claudeCodeConfig?.model)
137
+ : serverConfig?.claudeCodeConfig?.model;
138
+ const serverAddDirs = mode === 'codex'
139
+ ? (serverConfig?.codexConfig?.addDirs ?? serverConfig?.claudeCodeConfig?.addDirs ?? [])
140
+ : (serverConfig?.claudeCodeConfig?.addDirs ?? []);
126
141
  // Merge project directory auto-add dirs with server-configured dirs
127
142
  let addDirs;
128
143
  if (projectDir) {
@@ -147,13 +162,13 @@ async function executeClaudeCodeChatOnce(payload, commandId, client, agentId, se
147
162
  if (conversationFiles.length > 0) {
148
163
  logger_1.logger.info(`[chat] ${conversationFiles.length} conversation file references embedded for command [${commandId}]`);
149
164
  }
150
- // 会話履歴をメッセージに埋め込む(Claude Code CLI用)
165
+ // 会話履歴をメッセージに埋め込む(CLI用)
151
166
  const history = (0, shared_chat_utils_1.parseHistory)(payload.history);
152
167
  // file_upload ツールに必要なメタデータをメッセージに付加
153
168
  const metadataNotice = buildMetadataNotice(conversationId, commandId, projectCode, mcpConfigPath);
154
169
  const messageWithHistory = (0, shared_chat_utils_1.formatHistoryForClaudeCode)(history, message + filePathsNotice + conversationFileNotice + metadataNotice);
155
170
  // Ensure allowedTools are registered in Claude Code settings.json
156
- if (allowedTools?.length) {
171
+ if (mode === 'claude_code' && allowedTools?.length) {
157
172
  (0, claude_settings_1.ensureAllowedToolsInSettings)(allowedTools);
158
173
  }
159
174
  const logDetails = [
@@ -168,17 +183,16 @@ async function executeClaudeCodeChatOnce(payload, commandId, client, agentId, se
168
183
  payload.files ? `${Array.isArray(payload.files) ? payload.files.length : 0} attached files` : null,
169
184
  conversationFiles.length > 0 ? `${conversationFiles.length} conversation files` : null,
170
185
  ].filter(Boolean).join(', ');
171
- logger_1.logger.debug(`[chat] Spawning claude CLI for command [${commandId}]: ${logDetails}`);
186
+ const cliLogName = mode === 'claude_code' ? 'claude' : 'codex';
187
+ logger_1.logger.debug(`[chat] Spawning ${cliLogName} CLI for command [${commandId}]: ${logDetails}`);
172
188
  logger_1.logger.debug(`[chat] serverConfig.claudeCodeConfig: ${JSON.stringify(serverConfig?.claudeCodeConfig ?? null)}`);
173
189
  const conversationIdStr = conversationId ?? undefined;
174
- const handle = (0, claude_code_runner_1.runClaudeCode)({
190
+ const runnerOptions = {
175
191
  message: messageWithHistory,
176
192
  sendChunk,
177
- allowedTools,
178
193
  addDirs,
179
194
  locale,
180
195
  awsEnv: { ...awsEnv, ...gitEnv },
181
- mcpConfigPath,
182
196
  cwd: projectDir ? (0, project_dir_1.getWorkspaceDir)(projectDir) : undefined,
183
197
  systemPrompt,
184
198
  model,
@@ -196,7 +210,14 @@ async function executeClaudeCodeChatOnce(payload, commandId, client, agentId, se
196
210
  }),
197
211
  },
198
212
  envVarsOverride: projectConfig?.envVars,
199
- });
213
+ };
214
+ const handle = mode === 'codex'
215
+ ? (0, codex_runner_1.runCodex)(runnerOptions)
216
+ : (0, claude_code_runner_1.runClaudeCode)({
217
+ ...runnerOptions,
218
+ allowedTools,
219
+ mcpConfigPath,
220
+ });
200
221
  // プロセスを管理 Map に登録
201
222
  processManager.register(commandId, handle);
202
223
  let result;
@@ -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,7 @@
1
+ export interface CodexInvocation {
2
+ command: string;
3
+ argsPrefix: string[];
4
+ displayCommand: string;
5
+ }
6
+ export declare function resolveCodexInvocation(): CodexInvocation;
7
+ //# sourceMappingURL=codex-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-command.d.ts","sourceRoot":"","sources":["../../src/commands/codex-command.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,sBAAsB,IAAI,eAAe,CAcxD"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.resolveCodexInvocation = resolveCodexInvocation;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ function resolveCodexInvocation() {
10
+ const bundledBin = resolveBundledCodexBin();
11
+ if (bundledBin) {
12
+ return {
13
+ command: process.execPath,
14
+ argsPrefix: [bundledBin],
15
+ displayCommand: 'codex',
16
+ };
17
+ }
18
+ return {
19
+ command: 'codex',
20
+ argsPrefix: [],
21
+ displayCommand: 'codex',
22
+ };
23
+ }
24
+ function resolveBundledCodexBin() {
25
+ try {
26
+ const packageJsonPath = require.resolve('@openai/codex/package.json');
27
+ const binPath = path_1.default.join(path_1.default.dirname(packageJsonPath), 'bin', 'codex.js');
28
+ return fs_1.default.existsSync(binPath) ? binPath : undefined;
29
+ }
30
+ catch {
31
+ return undefined;
32
+ }
33
+ }
34
+ //# sourceMappingURL=codex-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-command.js","sourceRoot":"","sources":["../../src/commands/codex-command.ts"],"names":[],"mappings":";;;;;AASA,wDAcC;AAvBD,4CAAmB;AACnB,gDAAuB;AAQvB,SAAgB,sBAAsB;IACpC,MAAM,UAAU,GAAG,sBAAsB,EAAE,CAAA;IAC3C,IAAI,UAAU,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,QAAQ;YACzB,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,cAAc,EAAE,OAAO;SACxB,CAAA;IACH,CAAC;IACD,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,EAAE;QACd,cAAc,EAAE,OAAO;KACxB,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB;IAC7B,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAA;QACrE,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,cAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QAC3E,OAAO,YAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
@@ -0,0 +1,37 @@
1
+ import type { ChatChunkType } from '../types';
2
+ import type { PolicyContext } from './claude-code-runner';
3
+ export interface CodexResult {
4
+ text: string;
5
+ metadata: {
6
+ args: string[];
7
+ exitCode: number | null;
8
+ hasStderr: boolean;
9
+ durationMs: number;
10
+ };
11
+ }
12
+ export interface CodexHandle {
13
+ result: Promise<CodexResult>;
14
+ cancel: () => void;
15
+ }
16
+ export interface RunCodexOptions {
17
+ message: string;
18
+ sendChunk: (type: ChatChunkType, content: string) => Promise<void>;
19
+ addDirs?: string[];
20
+ locale?: string;
21
+ awsEnv?: Record<string, string>;
22
+ cwd?: string;
23
+ systemPrompt?: string;
24
+ model?: string;
25
+ policyContext?: PolicyContext;
26
+ envVarsOverride?: Record<string, string>;
27
+ }
28
+ export declare function buildCodexArgs(message: string, options?: {
29
+ addDirs?: string[];
30
+ locale?: string;
31
+ cwd?: string;
32
+ systemPrompt?: string;
33
+ model?: string;
34
+ outputLastMessagePath?: string;
35
+ }): string[];
36
+ export declare function runCodex(options: RunCodexOptions): CodexHandle;
37
+ //# sourceMappingURL=codex-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-runner.d.ts","sourceRoot":"","sources":["../../src/commands/codex-runner.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAO7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,EAAE,CAAA;QACd,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,SAAS,EAAE,OAAO,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IAC5B,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACzC;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B,GACA,MAAM,EAAE,CAYV;AAcD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,WAAW,CA6I9D"}