@chanl/eval-cli 0.4.0

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 (98) hide show
  1. package/LICENSE +21 -0
  2. package/dist/agent-loader.d.ts +39 -0
  3. package/dist/agent-loader.d.ts.map +1 -0
  4. package/dist/agent-loader.js +166 -0
  5. package/dist/agent-loader.js.map +1 -0
  6. package/dist/analytics.d.ts +15 -0
  7. package/dist/analytics.d.ts.map +1 -0
  8. package/dist/analytics.js +94 -0
  9. package/dist/analytics.js.map +1 -0
  10. package/dist/assertions.d.ts +73 -0
  11. package/dist/assertions.d.ts.map +1 -0
  12. package/dist/assertions.js +282 -0
  13. package/dist/assertions.js.map +1 -0
  14. package/dist/baseline.d.ts +100 -0
  15. package/dist/baseline.d.ts.map +1 -0
  16. package/dist/baseline.js +327 -0
  17. package/dist/baseline.js.map +1 -0
  18. package/dist/bin/chanl.d.ts +3 -0
  19. package/dist/bin/chanl.d.ts.map +1 -0
  20. package/dist/bin/chanl.js +11 -0
  21. package/dist/bin/chanl.js.map +1 -0
  22. package/dist/client.d.ts +40 -0
  23. package/dist/client.d.ts.map +1 -0
  24. package/dist/client.js +99 -0
  25. package/dist/client.js.map +1 -0
  26. package/dist/commands/analytics.d.ts +3 -0
  27. package/dist/commands/analytics.d.ts.map +1 -0
  28. package/dist/commands/analytics.js +44 -0
  29. package/dist/commands/analytics.js.map +1 -0
  30. package/dist/commands/compare.d.ts +51 -0
  31. package/dist/commands/compare.d.ts.map +1 -0
  32. package/dist/commands/compare.js +429 -0
  33. package/dist/commands/compare.js.map +1 -0
  34. package/dist/commands/config.d.ts +3 -0
  35. package/dist/commands/config.d.ts.map +1 -0
  36. package/dist/commands/config.js +94 -0
  37. package/dist/commands/config.js.map +1 -0
  38. package/dist/commands/dataset.d.ts +6 -0
  39. package/dist/commands/dataset.d.ts.map +1 -0
  40. package/dist/commands/dataset.js +225 -0
  41. package/dist/commands/dataset.js.map +1 -0
  42. package/dist/commands/executions.d.ts +3 -0
  43. package/dist/commands/executions.d.ts.map +1 -0
  44. package/dist/commands/executions.js +249 -0
  45. package/dist/commands/executions.js.map +1 -0
  46. package/dist/commands/generate.d.ts +3 -0
  47. package/dist/commands/generate.d.ts.map +1 -0
  48. package/dist/commands/generate.js +159 -0
  49. package/dist/commands/generate.js.map +1 -0
  50. package/dist/commands/init.d.ts +29 -0
  51. package/dist/commands/init.d.ts.map +1 -0
  52. package/dist/commands/init.js +545 -0
  53. package/dist/commands/init.js.map +1 -0
  54. package/dist/commands/login.d.ts +3 -0
  55. package/dist/commands/login.d.ts.map +1 -0
  56. package/dist/commands/login.js +65 -0
  57. package/dist/commands/login.js.map +1 -0
  58. package/dist/commands/personas.d.ts +3 -0
  59. package/dist/commands/personas.d.ts.map +1 -0
  60. package/dist/commands/personas.js +269 -0
  61. package/dist/commands/personas.js.map +1 -0
  62. package/dist/commands/scenarios.d.ts +16 -0
  63. package/dist/commands/scenarios.d.ts.map +1 -0
  64. package/dist/commands/scenarios.js +755 -0
  65. package/dist/commands/scenarios.js.map +1 -0
  66. package/dist/commands/scorecards.d.ts +3 -0
  67. package/dist/commands/scorecards.d.ts.map +1 -0
  68. package/dist/commands/scorecards.js +220 -0
  69. package/dist/commands/scorecards.js.map +1 -0
  70. package/dist/commands/server.d.ts +8 -0
  71. package/dist/commands/server.d.ts.map +1 -0
  72. package/dist/commands/server.js +357 -0
  73. package/dist/commands/server.js.map +1 -0
  74. package/dist/commands/test.d.ts +3 -0
  75. package/dist/commands/test.d.ts.map +1 -0
  76. package/dist/commands/test.js +410 -0
  77. package/dist/commands/test.js.map +1 -0
  78. package/dist/commands/tool-fixtures.d.ts +3 -0
  79. package/dist/commands/tool-fixtures.d.ts.map +1 -0
  80. package/dist/commands/tool-fixtures.js +324 -0
  81. package/dist/commands/tool-fixtures.js.map +1 -0
  82. package/dist/config.d.ts +32 -0
  83. package/dist/config.d.ts.map +1 -0
  84. package/dist/config.js +132 -0
  85. package/dist/config.js.map +1 -0
  86. package/dist/index.d.ts +8 -0
  87. package/dist/index.d.ts.map +1 -0
  88. package/dist/index.js +146 -0
  89. package/dist/index.js.map +1 -0
  90. package/dist/output.d.ts +30 -0
  91. package/dist/output.d.ts.map +1 -0
  92. package/dist/output.js +77 -0
  93. package/dist/output.js.map +1 -0
  94. package/dist/update-check.d.ts +6 -0
  95. package/dist/update-check.d.ts.map +1 -0
  96. package/dist/update-check.js +50 -0
  97. package/dist/update-check.js.map +1 -0
  98. package/package.json +42 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenarios.js","sourceRoot":"","sources":["../../src/commands/scenarios.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function registerScorecardsCommand(program: Command): void;
3
+ //# sourceMappingURL=scorecards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scorecards.d.ts","sourceRoot":"","sources":["../../src/commands/scorecards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2LhE"}
@@ -0,0 +1,220 @@
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.registerScorecardsCommand = registerScorecardsCommand;
37
+ const client_1 = require("../client");
38
+ const output_1 = require("../output");
39
+ function registerScorecardsCommand(program) {
40
+ const scorecards = program
41
+ .command('scorecards')
42
+ .description('Manage scorecards');
43
+ // --- list ---
44
+ scorecards
45
+ .command('list')
46
+ .description('List all scorecards')
47
+ .option('--status <status>', 'Filter by status')
48
+ .option('--page <page>', 'Page number', '1')
49
+ .option('--limit <limit>', 'Results per page', '20')
50
+ .action(async (options) => {
51
+ try {
52
+ const params = {
53
+ page: options.page,
54
+ limit: options.limit,
55
+ };
56
+ if (options.status)
57
+ params.status = options.status;
58
+ const result = await (0, client_1.get)('/scorecards', params);
59
+ const items = result.scorecards || [];
60
+ const format = program.opts().format;
61
+ const headers = ['ID', 'Name', 'Status', 'Threshold', 'Algorithm', 'Tags'];
62
+ const rows = items.map((sc) => [
63
+ sc.id || sc._id || '',
64
+ (0, output_1.truncate)(sc.name || '', 30),
65
+ sc.status || '',
66
+ sc.passingThreshold !== undefined ? String(sc.passingThreshold) : '-',
67
+ sc.scoringAlgorithm || '-',
68
+ (sc.tags || []).join(', ') || '-',
69
+ ]);
70
+ (0, output_1.printOutput)(format, headers, rows, result);
71
+ if (format !== 'json' && result.pagination) {
72
+ const pg = result.pagination;
73
+ console.log(`\nShowing page ${pg.page}/${pg.totalPages} (${result.total} total)`);
74
+ }
75
+ }
76
+ catch (err) {
77
+ (0, output_1.printError)((0, client_1.formatError)(err));
78
+ process.exit(1);
79
+ }
80
+ });
81
+ // --- create ---
82
+ scorecards
83
+ .command('create')
84
+ .description('Create a new scorecard')
85
+ .requiredOption('--name <name>', 'Scorecard name')
86
+ .option('--description <description>', 'Description')
87
+ .option('--status <status>', 'Status (active, inactive, draft)', 'active')
88
+ .option('--threshold <threshold>', 'Passing threshold (0-100)', '70')
89
+ .option('--algorithm <algorithm>', 'Scoring algorithm (weighted_average, simple_average, minimum_all, pass_fail)', 'weighted_average')
90
+ .option('--tags <tags>', 'Comma-separated tags')
91
+ .option('--from-template <template>', 'Create from a template name (e.g., customer-service)')
92
+ .action(async (options) => {
93
+ try {
94
+ const dto = {
95
+ name: options.name,
96
+ status: options.status,
97
+ passingThreshold: parseInt(options.threshold, 10),
98
+ scoringAlgorithm: options.algorithm,
99
+ };
100
+ if (options.description)
101
+ dto.description = options.description;
102
+ if (options.tags)
103
+ dto.tags = options.tags.split(',').map((t) => t.trim());
104
+ // If a template name is given, use the template name as a convention
105
+ // The server will use it in the future; for now we set a sensible default
106
+ if (options.fromTemplate) {
107
+ dto.name = dto.name || formatTemplateName(options.fromTemplate);
108
+ dto.tags = dto.tags || [options.fromTemplate];
109
+ }
110
+ const result = await (0, client_1.post)('/scorecards', dto);
111
+ const scorecard = result.scorecard;
112
+ const format = program.opts().format;
113
+ if (format === 'json') {
114
+ console.log(JSON.stringify(result, null, 2));
115
+ }
116
+ else {
117
+ (0, output_1.printSuccess)(`Created scorecard: ${scorecard.name} (${scorecard.id || scorecard._id})`);
118
+ }
119
+ }
120
+ catch (err) {
121
+ (0, output_1.printError)((0, client_1.formatError)(err));
122
+ process.exit(1);
123
+ }
124
+ });
125
+ // --- get ---
126
+ scorecards
127
+ .command('get <id>')
128
+ .description('Get scorecard details')
129
+ .action(async (id) => {
130
+ try {
131
+ const result = await (0, client_1.get)(`/scorecards/${id}`);
132
+ const format = program.opts().format;
133
+ if (format === 'json') {
134
+ console.log(JSON.stringify(result, null, 2));
135
+ }
136
+ else {
137
+ const sc = result.scorecard;
138
+ console.log(`Name: ${sc.name}`);
139
+ console.log(`ID: ${sc.id || sc._id}`);
140
+ console.log(`Status: ${sc.status}`);
141
+ console.log(`Threshold: ${sc.passingThreshold}`);
142
+ console.log(`Algorithm: ${sc.scoringAlgorithm}`);
143
+ if (sc.description) {
144
+ console.log(`Description: ${sc.description}`);
145
+ }
146
+ if (sc.tags && sc.tags.length > 0) {
147
+ console.log(`Tags: ${sc.tags.join(', ')}`);
148
+ }
149
+ }
150
+ }
151
+ catch (err) {
152
+ (0, output_1.printError)((0, client_1.formatError)(err));
153
+ process.exit(1);
154
+ }
155
+ });
156
+ // --- delete ---
157
+ scorecards
158
+ .command('delete <id>')
159
+ .description('Delete a scorecard')
160
+ .option('--force', 'Skip confirmation prompt')
161
+ .action(async (id, options) => {
162
+ try {
163
+ if (!options.force) {
164
+ const inquirer = await Promise.resolve().then(() => __importStar(require('inquirer')));
165
+ const answers = await inquirer.default.prompt([
166
+ {
167
+ type: 'confirm',
168
+ name: 'confirm',
169
+ message: `Delete scorecard ${id}?`,
170
+ default: false,
171
+ },
172
+ ]);
173
+ if (!answers.confirm) {
174
+ console.log('Cancelled.');
175
+ return;
176
+ }
177
+ }
178
+ await (0, client_1.del)(`/scorecards/${id}`);
179
+ (0, output_1.printSuccess)(`Deleted scorecard: ${id}`);
180
+ }
181
+ catch (err) {
182
+ (0, output_1.printError)((0, client_1.formatError)(err));
183
+ process.exit(1);
184
+ }
185
+ });
186
+ // --- default ---
187
+ scorecards
188
+ .command('default')
189
+ .description('Get the default scorecard')
190
+ .action(async () => {
191
+ try {
192
+ const result = await (0, client_1.get)('/scorecards/default');
193
+ const format = program.opts().format;
194
+ if (format === 'json') {
195
+ console.log(JSON.stringify(result, null, 2));
196
+ }
197
+ else {
198
+ const data = result.data;
199
+ const sc = data.scorecard;
200
+ console.log(`Default Scorecard: ${sc.name} (${sc.id || sc._id})`);
201
+ console.log(`Source: ${data.source}`);
202
+ console.log(`Status: ${sc.status}`);
203
+ }
204
+ }
205
+ catch (err) {
206
+ (0, output_1.printError)((0, client_1.formatError)(err));
207
+ process.exit(1);
208
+ }
209
+ });
210
+ }
211
+ /**
212
+ * Format a template slug into a display name.
213
+ */
214
+ function formatTemplateName(template) {
215
+ return template
216
+ .split('-')
217
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
218
+ .join(' ') + ' Scorecard';
219
+ }
220
+ //# sourceMappingURL=scorecards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scorecards.js","sourceRoot":"","sources":["../../src/commands/scorecards.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Check if the server is running. Used by other commands before making API calls.
4
+ * Throws with a helpful message if not reachable.
5
+ */
6
+ export declare function ensureServerRunning(): Promise<void>;
7
+ export declare function registerServerCommand(program: Command): void;
8
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0JpC;;;GAGG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAWzD;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAuL5D"}
@@ -0,0 +1,357 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.ensureServerRunning = ensureServerRunning;
40
+ exports.registerServerCommand = registerServerCommand;
41
+ const child_process_1 = require("child_process");
42
+ const fs = __importStar(require("fs"));
43
+ const path = __importStar(require("path"));
44
+ const os = __importStar(require("os"));
45
+ const chalk_1 = __importDefault(require("chalk"));
46
+ const ora_1 = __importDefault(require("ora"));
47
+ const axios_1 = __importDefault(require("axios"));
48
+ const config_1 = require("../config");
49
+ const output_1 = require("../output");
50
+ /** Detect docker compose command variant. */
51
+ function getDockerComposeCmd() {
52
+ try {
53
+ require('child_process').execFileSync('docker', ['compose', 'version'], {
54
+ stdio: 'pipe',
55
+ });
56
+ return { cmd: 'docker', args: ['compose'] };
57
+ }
58
+ catch {
59
+ // fall through
60
+ }
61
+ try {
62
+ require('child_process').execFileSync('docker-compose', ['version'], {
63
+ stdio: 'pipe',
64
+ });
65
+ return { cmd: 'docker-compose', args: [] };
66
+ }
67
+ catch {
68
+ // fall through
69
+ }
70
+ return null;
71
+ }
72
+ /** Find docker-compose.yml location. */
73
+ function findComposeFile() {
74
+ const candidates = [
75
+ path.resolve('docker-compose.yml'),
76
+ path.resolve('docker-compose.yaml'),
77
+ path.join(os.homedir(), '.chanl', 'docker-compose.yml'),
78
+ ];
79
+ for (const candidate of candidates) {
80
+ if (fs.existsSync(candidate)) {
81
+ return candidate;
82
+ }
83
+ }
84
+ return null;
85
+ }
86
+ /** Generate a default docker-compose.yml in ~/.chanl/ and return its path. */
87
+ function generateDefaultComposeFile() {
88
+ const chanlDir = path.join(os.homedir(), '.chanl');
89
+ if (!fs.existsSync(chanlDir)) {
90
+ fs.mkdirSync(chanlDir, { recursive: true });
91
+ }
92
+ const filePath = path.join(chanlDir, 'docker-compose.yml');
93
+ fs.writeFileSync(filePath, `version: '3.8'
94
+
95
+ services:
96
+ mongodb:
97
+ image: mongo:7
98
+ ports:
99
+ - "27217:27017"
100
+ volumes:
101
+ - chanl-mongo-data:/data/db
102
+ healthcheck:
103
+ test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
104
+ interval: 10s
105
+ timeout: 5s
106
+ retries: 5
107
+
108
+ redis:
109
+ image: redis:7-alpine
110
+ ports:
111
+ - "6479:6379"
112
+ healthcheck:
113
+ test: ["CMD", "redis-cli", "ping"]
114
+ interval: 10s
115
+ timeout: 5s
116
+ retries: 5
117
+
118
+ server:
119
+ image: ghcr.io/chanl-ai/chanl-eval-server:latest
120
+ ports:
121
+ - "18005:18005"
122
+ environment:
123
+ - MONGODB_URI=mongodb://mongodb:27017/chanl-eval
124
+ - REDIS_URL=redis://redis:6379
125
+ - PORT=18005
126
+ depends_on:
127
+ mongodb:
128
+ condition: service_healthy
129
+ redis:
130
+ condition: service_healthy
131
+
132
+ volumes:
133
+ chanl-mongo-data:
134
+ `, 'utf-8');
135
+ return filePath;
136
+ }
137
+ /** Run a docker compose command and return stdout. */
138
+ function runDockerCompose(composeFile, subArgs) {
139
+ return new Promise((resolve, reject) => {
140
+ const dc = getDockerComposeCmd();
141
+ if (!dc) {
142
+ reject(new Error('Docker not found'));
143
+ return;
144
+ }
145
+ const fullArgs = [...dc.args, '-f', composeFile, ...subArgs];
146
+ (0, child_process_1.execFile)(dc.cmd, fullArgs, { timeout: 60000 }, (error, stdout, stderr) => {
147
+ if (error) {
148
+ reject(new Error(stderr || error.message));
149
+ return;
150
+ }
151
+ resolve(stdout);
152
+ });
153
+ });
154
+ }
155
+ /** Poll server health endpoint until ready. */
156
+ async function waitForServer(serverUrl, timeoutMs = 60000) {
157
+ const start = Date.now();
158
+ const interval = 2000;
159
+ while (Date.now() - start < timeoutMs) {
160
+ try {
161
+ const res = await axios_1.default.get(`${serverUrl}/health`, { timeout: 3000 });
162
+ if (res.data?.status === 'ok') {
163
+ return res.data;
164
+ }
165
+ }
166
+ catch {
167
+ // Server not ready yet
168
+ }
169
+ await new Promise((r) => setTimeout(r, interval));
170
+ }
171
+ throw new Error('Server did not become healthy within timeout');
172
+ }
173
+ /**
174
+ * Check if the server is running. Used by other commands before making API calls.
175
+ * Throws with a helpful message if not reachable.
176
+ */
177
+ async function ensureServerRunning() {
178
+ const config = (0, config_1.loadConfig)();
179
+ try {
180
+ await axios_1.default.get(`${config.server}/health`, { timeout: 3000 });
181
+ }
182
+ catch {
183
+ throw new Error(`Server not running at ${config.server}\n\n` +
184
+ ` Start it with: chanl server start\n` +
185
+ ` Or run init: chanl init`);
186
+ }
187
+ }
188
+ function registerServerCommand(program) {
189
+ const server = program
190
+ .command('server')
191
+ .description('Manage the chanl-eval server (Docker)');
192
+ // --- start ---
193
+ server
194
+ .command('start')
195
+ .description('Start the server (docker compose up)')
196
+ .action(async () => {
197
+ try {
198
+ const dc = getDockerComposeCmd();
199
+ if (!dc) {
200
+ (0, output_1.printError)('Docker not found. Install Docker Desktop: https://docs.docker.com/get-docker/');
201
+ process.exit(1);
202
+ }
203
+ let composeFile = findComposeFile();
204
+ if (!composeFile) {
205
+ composeFile = generateDefaultComposeFile();
206
+ console.log(chalk_1.default.dim(` Generated ${composeFile}`));
207
+ }
208
+ const spinner = (0, ora_1.default)('Starting server...').start();
209
+ try {
210
+ await runDockerCompose(composeFile, ['up', '-d']);
211
+ spinner.text = 'Containers started, waiting for server to be healthy...';
212
+ }
213
+ catch (err) {
214
+ spinner.fail('Failed to start containers');
215
+ (0, output_1.printError)(err.message);
216
+ process.exit(1);
217
+ }
218
+ const config = (0, config_1.loadConfig)();
219
+ try {
220
+ const health = await waitForServer(config.server);
221
+ spinner.succeed('Server is running');
222
+ console.log('');
223
+ console.log(` URL: ${config.server}`);
224
+ console.log(` Version: ${health.version}`);
225
+ console.log(` Seeded: ${health.seeded ? 'yes' : 'no'}`);
226
+ console.log('');
227
+ console.log(chalk_1.default.dim(' View logs: chanl server logs'));
228
+ }
229
+ catch {
230
+ spinner.warn('Containers started but server not yet healthy');
231
+ console.log(` Check logs: chanl server logs server`);
232
+ }
233
+ }
234
+ catch (err) {
235
+ (0, output_1.printError)(err.message);
236
+ process.exit(1);
237
+ }
238
+ });
239
+ // --- stop ---
240
+ server
241
+ .command('stop')
242
+ .description('Stop the server (docker compose down)')
243
+ .action(async () => {
244
+ try {
245
+ const composeFile = findComposeFile();
246
+ if (!composeFile) {
247
+ (0, output_1.printError)('docker-compose.yml not found');
248
+ process.exit(1);
249
+ }
250
+ const spinner = (0, ora_1.default)('Stopping server...').start();
251
+ await runDockerCompose(composeFile, ['down']);
252
+ spinner.succeed('Server stopped');
253
+ }
254
+ catch (err) {
255
+ (0, output_1.printError)(err.message);
256
+ process.exit(1);
257
+ }
258
+ });
259
+ // --- status ---
260
+ server
261
+ .command('status')
262
+ .description('Show server status')
263
+ .action(async () => {
264
+ try {
265
+ const composeFile = findComposeFile();
266
+ const config = (0, config_1.loadConfig)();
267
+ // Check health endpoint
268
+ let serverHealthy = false;
269
+ let healthData = null;
270
+ try {
271
+ const res = await axios_1.default.get(`${config.server}/health`, {
272
+ timeout: 3000,
273
+ });
274
+ if (res.data?.status === 'ok') {
275
+ serverHealthy = true;
276
+ healthData = res.data;
277
+ }
278
+ }
279
+ catch {
280
+ // not reachable
281
+ }
282
+ if (serverHealthy) {
283
+ (0, output_1.printSuccess)(`Server running at ${config.server}`);
284
+ console.log(` Version: ${healthData.version}`);
285
+ console.log(` Seeded: ${healthData.seeded ? 'yes' : 'no'}`);
286
+ }
287
+ else {
288
+ console.log(chalk_1.default.red('Server:') + ' not running');
289
+ console.log(` Expected: ${config.server}`);
290
+ }
291
+ // Show container status if compose file found
292
+ if (composeFile) {
293
+ console.log('');
294
+ console.log(chalk_1.default.bold('Containers:'));
295
+ try {
296
+ const ps = await runDockerCompose(composeFile, ['ps', '--format', 'table']);
297
+ console.log(ps);
298
+ }
299
+ catch {
300
+ console.log(chalk_1.default.dim(' (docker compose not available)'));
301
+ }
302
+ }
303
+ }
304
+ catch (err) {
305
+ (0, output_1.printError)(err.message);
306
+ process.exit(1);
307
+ }
308
+ });
309
+ // --- logs ---
310
+ server
311
+ .command('logs [service]')
312
+ .description('View server logs (streams live)')
313
+ .option('-n, --lines <n>', 'Number of lines to show', '50')
314
+ .action(async (service, options) => {
315
+ try {
316
+ const dc = getDockerComposeCmd();
317
+ if (!dc) {
318
+ (0, output_1.printError)('Docker not found');
319
+ process.exit(1);
320
+ }
321
+ const composeFile = findComposeFile();
322
+ if (!composeFile) {
323
+ (0, output_1.printError)('docker-compose.yml not found');
324
+ process.exit(1);
325
+ }
326
+ const logArgs = [
327
+ ...dc.args,
328
+ '-f',
329
+ composeFile,
330
+ 'logs',
331
+ '-f',
332
+ '--tail',
333
+ options.lines,
334
+ ];
335
+ if (service) {
336
+ logArgs.push(service);
337
+ }
338
+ const child = (0, child_process_1.spawn)(dc.cmd, logArgs, {
339
+ stdio: 'inherit',
340
+ });
341
+ child.on('error', (err) => {
342
+ (0, output_1.printError)(`Failed to stream logs: ${err.message}`);
343
+ process.exit(1);
344
+ });
345
+ // Let Ctrl+C kill gracefully
346
+ process.on('SIGINT', () => {
347
+ child.kill('SIGINT');
348
+ process.exit(0);
349
+ });
350
+ }
351
+ catch (err) {
352
+ (0, output_1.printError)(err.message);
353
+ process.exit(1);
354
+ }
355
+ });
356
+ }
357
+ //# sourceMappingURL=server.js.map