@agentuity/cli 3.0.0-alpha.6 → 3.0.0-alpha.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build-report.d.ts +1 -1
- package/dist/build-report.d.ts.map +1 -1
- package/dist/build-report.js +0 -1
- package/dist/build-report.js.map +1 -1
- package/dist/cmd/cloud/deploy.d.ts.map +1 -1
- package/dist/cmd/cloud/deploy.js +101 -46
- package/dist/cmd/cloud/deploy.js.map +1 -1
- package/dist/cmd/cloud/index.d.ts.map +1 -1
- package/dist/cmd/cloud/index.js +0 -4
- package/dist/cmd/cloud/index.js.map +1 -1
- package/dist/cmd/cloud/sandbox/exec.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/exec.js +41 -24
- package/dist/cmd/cloud/sandbox/exec.js.map +1 -1
- package/dist/cmd/cloud/sandbox/job/logs.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/job/logs.js +1 -0
- package/dist/cmd/cloud/sandbox/job/logs.js.map +1 -1
- package/dist/cmd/cloud/sandbox/run.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/run.js +34 -5
- package/dist/cmd/cloud/sandbox/run.js.map +1 -1
- package/dist/cmd/cloud/sandbox/util.d.ts +9 -0
- package/dist/cmd/cloud/sandbox/util.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/util.js +20 -1
- package/dist/cmd/cloud/sandbox/util.js.map +1 -1
- package/dist/cmd/cloud/session/get.d.ts.map +1 -1
- package/dist/cmd/cloud/session/get.js +1 -41
- package/dist/cmd/cloud/session/get.js.map +1 -1
- package/dist/cmd/coder/start.d.ts.map +1 -1
- package/dist/cmd/coder/start.js +2 -0
- package/dist/cmd/coder/start.js.map +1 -1
- package/dist/cmd/coder/tui-init.js +1 -1
- package/dist/cmd/coder/tui-init.js.map +1 -1
- package/dist/cmd/project/create.d.ts.map +1 -1
- package/dist/cmd/project/create.js +0 -2
- package/dist/cmd/project/create.js.map +1 -1
- package/dist/cmd/project/frameworks.d.ts.map +1 -1
- package/dist/cmd/project/frameworks.js +1 -0
- package/dist/cmd/project/frameworks.js.map +1 -1
- package/dist/cmd/project/index.d.ts.map +1 -1
- package/dist/cmd/project/index.js +0 -3
- package/dist/cmd/project/index.js.map +1 -1
- package/dist/cmd/project/template-flow.d.ts +0 -1
- package/dist/cmd/project/template-flow.d.ts.map +1 -1
- package/dist/cmd/project/template-flow.js +1 -104
- package/dist/cmd/project/template-flow.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/onboarding/agentPrompt.d.ts.map +1 -1
- package/dist/onboarding/agentPrompt.js +5 -8
- package/dist/onboarding/agentPrompt.js.map +1 -1
- package/dist/types.d.ts +0 -167
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +6 -20
- package/src/build-report.ts +0 -1
- package/src/cmd/ai/prompt/web.md +43 -17
- package/src/cmd/cloud/deploy.ts +120 -56
- package/src/cmd/cloud/index.ts +0 -4
- package/src/cmd/cloud/sandbox/exec.ts +49 -23
- package/src/cmd/cloud/sandbox/job/logs.ts +1 -0
- package/src/cmd/cloud/sandbox/run.ts +47 -9
- package/src/cmd/cloud/sandbox/util.ts +20 -1
- package/src/cmd/cloud/session/get.ts +1 -51
- package/src/cmd/coder/start.ts +2 -0
- package/src/cmd/coder/tui-init.ts +1 -1
- package/src/cmd/project/create.ts +0 -2
- package/src/cmd/project/frameworks.ts +1 -0
- package/src/cmd/project/index.ts +0 -3
- package/src/cmd/project/template-flow.ts +0 -127
- package/src/cmd/project/templates/vite-react/vite.config.ts +8 -0
- package/src/index.ts +0 -4
- package/src/onboarding/agentPrompt.ts +5 -8
- package/src/runtime-bootstrap.md +2 -3
- package/src/types.ts +0 -186
- package/dist/cmd/build/app-config-extractor.d.ts +0 -27
- package/dist/cmd/build/app-config-extractor.d.ts.map +0 -1
- package/dist/cmd/build/app-config-extractor.js +0 -152
- package/dist/cmd/build/app-config-extractor.js.map +0 -1
- package/dist/cmd/cloud/eval/get.d.ts +0 -2
- package/dist/cmd/cloud/eval/get.d.ts.map +0 -1
- package/dist/cmd/cloud/eval/get.js +0 -80
- package/dist/cmd/cloud/eval/get.js.map +0 -1
- package/dist/cmd/cloud/eval/index.d.ts +0 -2
- package/dist/cmd/cloud/eval/index.d.ts.map +0 -1
- package/dist/cmd/cloud/eval/index.js +0 -16
- package/dist/cmd/cloud/eval/index.js.map +0 -1
- package/dist/cmd/cloud/eval/list.d.ts +0 -2
- package/dist/cmd/cloud/eval/list.d.ts.map +0 -1
- package/dist/cmd/cloud/eval/list.js +0 -124
- package/dist/cmd/cloud/eval/list.js.map +0 -1
- package/dist/cmd/cloud/eval-run/get.d.ts +0 -2
- package/dist/cmd/cloud/eval-run/get.d.ts.map +0 -1
- package/dist/cmd/cloud/eval-run/get.js +0 -107
- package/dist/cmd/cloud/eval-run/get.js.map +0 -1
- package/dist/cmd/cloud/eval-run/index.d.ts +0 -2
- package/dist/cmd/cloud/eval-run/index.d.ts.map +0 -1
- package/dist/cmd/cloud/eval-run/index.js +0 -16
- package/dist/cmd/cloud/eval-run/index.js.map +0 -1
- package/dist/cmd/cloud/eval-run/list.d.ts +0 -2
- package/dist/cmd/cloud/eval-run/list.d.ts.map +0 -1
- package/dist/cmd/cloud/eval-run/list.js +0 -149
- package/dist/cmd/cloud/eval-run/list.js.map +0 -1
- package/dist/cmd/project/auth/generate.d.ts +0 -5
- package/dist/cmd/project/auth/generate.d.ts.map +0 -1
- package/dist/cmd/project/auth/generate.js +0 -102
- package/dist/cmd/project/auth/generate.js.map +0 -1
- package/dist/cmd/project/auth/index.d.ts +0 -2
- package/dist/cmd/project/auth/index.d.ts.map +0 -1
- package/dist/cmd/project/auth/index.js +0 -21
- package/dist/cmd/project/auth/index.js.map +0 -1
- package/dist/cmd/project/auth/init.d.ts +0 -2
- package/dist/cmd/project/auth/init.d.ts.map +0 -1
- package/dist/cmd/project/auth/init.js +0 -213
- package/dist/cmd/project/auth/init.js.map +0 -1
- package/dist/cmd/project/auth/shared.d.ts +0 -93
- package/dist/cmd/project/auth/shared.d.ts.map +0 -1
- package/dist/cmd/project/auth/shared.js +0 -451
- package/dist/cmd/project/auth/shared.js.map +0 -1
- package/dist/utils/bun-version-checker.d.ts +0 -11
- package/dist/utils/bun-version-checker.d.ts.map +0 -1
- package/dist/utils/bun-version-checker.js +0 -56
- package/dist/utils/bun-version-checker.js.map +0 -1
- package/dist/utils/dependency-checker.d.ts +0 -20
- package/dist/utils/dependency-checker.d.ts.map +0 -1
- package/dist/utils/dependency-checker.js +0 -160
- package/dist/utils/dependency-checker.js.map +0 -1
- package/dist/utils/detectSubagent.d.ts +0 -15
- package/dist/utils/detectSubagent.d.ts.map +0 -1
- package/dist/utils/detectSubagent.js +0 -28
- package/dist/utils/detectSubagent.js.map +0 -1
- package/dist/utils/stream-capture.d.ts +0 -9
- package/dist/utils/stream-capture.d.ts.map +0 -1
- package/dist/utils/stream-capture.js +0 -34
- package/dist/utils/stream-capture.js.map +0 -1
- package/dist/utils/string.d.ts +0 -6
- package/dist/utils/string.d.ts.map +0 -1
- package/dist/utils/string.js +0 -6
- package/dist/utils/string.js.map +0 -1
- package/dist/utils/version-mismatch.d.ts +0 -39
- package/dist/utils/version-mismatch.d.ts.map +0 -1
- package/dist/utils/version-mismatch.js +0 -161
- package/dist/utils/version-mismatch.js.map +0 -1
- package/dist/utils/workbench-notify.d.ts +0 -29
- package/dist/utils/workbench-notify.d.ts.map +0 -1
- package/dist/utils/workbench-notify.js +0 -56
- package/dist/utils/workbench-notify.js.map +0 -1
- package/src/cmd/build/app-config-extractor.ts +0 -186
- package/src/cmd/cloud/eval/get.ts +0 -86
- package/src/cmd/cloud/eval/index.ts +0 -16
- package/src/cmd/cloud/eval/list.ts +0 -135
- package/src/cmd/cloud/eval-run/get.ts +0 -114
- package/src/cmd/cloud/eval-run/index.ts +0 -16
- package/src/cmd/cloud/eval-run/list.ts +0 -160
- package/src/cmd/project/auth/generate.ts +0 -116
- package/src/cmd/project/auth/index.ts +0 -21
- package/src/cmd/project/auth/init.ts +0 -256
- package/src/cmd/project/auth/shared.ts +0 -566
- package/src/utils/bun-version-checker.ts +0 -70
- package/src/utils/dependency-checker.ts +0 -205
- package/src/utils/detectSubagent.ts +0 -36
- package/src/utils/stream-capture.ts +0 -39
- package/src/utils/string.ts +0 -6
- package/src/utils/version-mismatch.ts +0 -204
- package/src/utils/workbench-notify.ts +0 -67
package/src/types.ts
CHANGED
|
@@ -74,192 +74,6 @@ export type Config = zod.infer<typeof ConfigSchema>;
|
|
|
74
74
|
|
|
75
75
|
export type LogLevel = 'debug' | 'trace' | 'info' | 'warn' | 'error';
|
|
76
76
|
|
|
77
|
-
/**
|
|
78
|
-
* Build phases for the bundler
|
|
79
|
-
*/
|
|
80
|
-
export type BuildPhase = 'api' | 'web' | 'workbench';
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* Context provided to the build config function
|
|
84
|
-
*/
|
|
85
|
-
export interface BuildContext {
|
|
86
|
-
/**
|
|
87
|
-
* The root directory of the project
|
|
88
|
-
*/
|
|
89
|
-
rootDir: string;
|
|
90
|
-
/**
|
|
91
|
-
* Whether this is a development build
|
|
92
|
-
*/
|
|
93
|
-
dev: boolean;
|
|
94
|
-
/**
|
|
95
|
-
* The output directory for the build
|
|
96
|
-
*/
|
|
97
|
-
outDir: string;
|
|
98
|
-
/**
|
|
99
|
-
* The source directory
|
|
100
|
-
*/
|
|
101
|
-
srcDir: string;
|
|
102
|
-
/**
|
|
103
|
-
* Organization ID (if available)
|
|
104
|
-
*/
|
|
105
|
-
orgId?: string;
|
|
106
|
-
/**
|
|
107
|
-
* Project ID (if available)
|
|
108
|
-
*/
|
|
109
|
-
projectId?: string;
|
|
110
|
-
/**
|
|
111
|
-
* Deployment region
|
|
112
|
-
*/
|
|
113
|
-
region: string;
|
|
114
|
-
/**
|
|
115
|
-
* Logger instance
|
|
116
|
-
*/
|
|
117
|
-
logger: Logger;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* Workbench configuration
|
|
122
|
-
*
|
|
123
|
-
* Presence of this config object implicitly enables workbench in dev mode.
|
|
124
|
-
* To disable workbench, omit this config entirely.
|
|
125
|
-
*/
|
|
126
|
-
export interface WorkbenchConfig {
|
|
127
|
-
/**
|
|
128
|
-
* Route where the workbench UI will be served
|
|
129
|
-
* @default '/workbench'
|
|
130
|
-
*/
|
|
131
|
-
route?: string;
|
|
132
|
-
/**
|
|
133
|
-
* Custom headers to send with workbench requests
|
|
134
|
-
*/
|
|
135
|
-
headers?: Record<string, string>;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
/**
|
|
139
|
-
* Web analytics configuration for SDK-created applications
|
|
140
|
-
*/
|
|
141
|
-
export interface AnalyticsConfig {
|
|
142
|
-
/**
|
|
143
|
-
* Enable/disable analytics
|
|
144
|
-
* @default true
|
|
145
|
-
*/
|
|
146
|
-
enabled?: boolean;
|
|
147
|
-
|
|
148
|
-
/**
|
|
149
|
-
* Require explicit user consent before tracking
|
|
150
|
-
* When true, analytics is no-op until optIn() is called
|
|
151
|
-
* @default false
|
|
152
|
-
*/
|
|
153
|
-
requireConsent?: boolean;
|
|
154
|
-
|
|
155
|
-
/**
|
|
156
|
-
* Track click events on elements with data-analytics attribute
|
|
157
|
-
* @default true
|
|
158
|
-
*/
|
|
159
|
-
trackClicks?: boolean;
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* Track scroll depth (25%, 50%, 75%, 100%)
|
|
163
|
-
* @default true
|
|
164
|
-
*/
|
|
165
|
-
trackScroll?: boolean;
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* Track outbound link clicks
|
|
169
|
-
* @default true
|
|
170
|
-
*/
|
|
171
|
-
trackOutboundLinks?: boolean;
|
|
172
|
-
|
|
173
|
-
/**
|
|
174
|
-
* Track form submissions
|
|
175
|
-
* @default false
|
|
176
|
-
*/
|
|
177
|
-
trackForms?: boolean;
|
|
178
|
-
|
|
179
|
-
/**
|
|
180
|
-
* Track Core Web Vitals
|
|
181
|
-
* @default true
|
|
182
|
-
*/
|
|
183
|
-
trackWebVitals?: boolean;
|
|
184
|
-
|
|
185
|
-
/**
|
|
186
|
-
* Track JavaScript errors
|
|
187
|
-
* @default true
|
|
188
|
-
*/
|
|
189
|
-
trackErrors?: boolean;
|
|
190
|
-
|
|
191
|
-
/**
|
|
192
|
-
* Track SPA navigation (popstate, pushState)
|
|
193
|
-
* Automatically tracks virtual pageviews on client-side route changes
|
|
194
|
-
* @default true
|
|
195
|
-
*/
|
|
196
|
-
trackSPANavigation?: boolean;
|
|
197
|
-
|
|
198
|
-
/**
|
|
199
|
-
* Sample rate (0-1). 1 = 100% of events
|
|
200
|
-
* @default 1
|
|
201
|
-
*/
|
|
202
|
-
sampleRate?: number;
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* URL patterns to exclude from tracking (regex strings)
|
|
206
|
-
*/
|
|
207
|
-
excludePatterns?: string[];
|
|
208
|
-
|
|
209
|
-
/**
|
|
210
|
-
* Custom data to include with every event
|
|
211
|
-
*/
|
|
212
|
-
globalProperties?: Record<string, unknown>;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
/**
|
|
216
|
-
* Agentuity project configuration (declarative)
|
|
217
|
-
*/
|
|
218
|
-
export interface AgentuityConfig {
|
|
219
|
-
/**
|
|
220
|
-
* Rendering mode for the web frontend.
|
|
221
|
-
* - 'spa' (default): Single-page application with client-side routing
|
|
222
|
-
* - 'static': Pre-renders all routes to static HTML at build time (SSG).
|
|
223
|
-
* Requires src/web/entry-server.tsx exporting render(url) and getStaticPaths()
|
|
224
|
-
*/
|
|
225
|
-
render?: 'spa' | 'static';
|
|
226
|
-
|
|
227
|
-
/**
|
|
228
|
-
* Workbench configuration
|
|
229
|
-
*/
|
|
230
|
-
workbench?: WorkbenchConfig;
|
|
231
|
-
|
|
232
|
-
/**
|
|
233
|
-
* Web analytics configuration
|
|
234
|
-
* Set to false to disable, or provide options object
|
|
235
|
-
* @default true (enabled with defaults)
|
|
236
|
-
*/
|
|
237
|
-
analytics?: boolean | AnalyticsConfig;
|
|
238
|
-
|
|
239
|
-
/**
|
|
240
|
-
* Vite plugins for the client build (src/web/).
|
|
241
|
-
* Should include your framework plugin (e.g., @vitejs/plugin-react).
|
|
242
|
-
* If no framework plugin is detected, React is added automatically
|
|
243
|
-
* for backwards compatibility.
|
|
244
|
-
*/
|
|
245
|
-
plugins?: import('vite').PluginOption[];
|
|
246
|
-
/**
|
|
247
|
-
* Additional define constants for code replacement in Vite builds
|
|
248
|
-
* These are merged with Agentuity's default defines
|
|
249
|
-
* Note: Cannot override AGENTUITY_PUBLIC_* or process.env.NODE_ENV
|
|
250
|
-
*/
|
|
251
|
-
define?: Record<string, string>;
|
|
252
|
-
/**
|
|
253
|
-
* Glob patterns for additional files to include in the deployment bundle.
|
|
254
|
-
* Files matching these patterns will be copied into the .agentuity build
|
|
255
|
-
* output directory before the build runs, preserving their relative paths
|
|
256
|
-
* from the project root. Build output will overwrite any conflicting files.
|
|
257
|
-
*
|
|
258
|
-
* @example ['data/**', 'templates/*.json', 'models/weights.bin']
|
|
259
|
-
*/
|
|
260
|
-
bundle?: string[];
|
|
261
|
-
}
|
|
262
|
-
|
|
263
77
|
export interface Profile {
|
|
264
78
|
name: string;
|
|
265
79
|
filename: string;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* App Config Extractor
|
|
3
|
-
*
|
|
4
|
-
* Extracts analytics and workbench config from the user's createApp() call
|
|
5
|
-
* in app.ts. This is the v2 approach where createApp() is the single source
|
|
6
|
-
* of truth for runtime configuration (replacing agentuity.config.ts).
|
|
7
|
-
*
|
|
8
|
-
* Uses TypeScript's compiler API to reliably detect and extract values.
|
|
9
|
-
*/
|
|
10
|
-
import type { Logger } from '../../types';
|
|
11
|
-
/**
|
|
12
|
-
* Extracted runtime config from createApp() call.
|
|
13
|
-
*/
|
|
14
|
-
export interface ExtractedAppConfig {
|
|
15
|
-
/** analytics option value: boolean, object, or undefined if not set */
|
|
16
|
-
analytics?: boolean | Record<string, unknown>;
|
|
17
|
-
/** workbench option value: boolean, string, object, or undefined if not set */
|
|
18
|
-
workbench?: boolean | string | Record<string, unknown>;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Detect and extract analytics/workbench config from app.ts.
|
|
22
|
-
*
|
|
23
|
-
* This is the v2 approach: runtime config lives in createApp() only.
|
|
24
|
-
* The CLI reads these values at build time via AST parsing.
|
|
25
|
-
*/
|
|
26
|
-
export declare function extractAppConfig(rootDir: string, logger: Logger): Promise<ExtractedAppConfig>;
|
|
27
|
-
//# sourceMappingURL=app-config-extractor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-config-extractor.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/app-config-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,uEAAuE;IACvE,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,+EAA+E;IAC/E,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvD;AA+GD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACrC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC,CA2C7B"}
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* App Config Extractor
|
|
3
|
-
*
|
|
4
|
-
* Extracts analytics and workbench config from the user's createApp() call
|
|
5
|
-
* in app.ts. This is the v2 approach where createApp() is the single source
|
|
6
|
-
* of truth for runtime configuration (replacing agentuity.config.ts).
|
|
7
|
-
*
|
|
8
|
-
* Uses TypeScript's compiler API to reliably detect and extract values.
|
|
9
|
-
*/
|
|
10
|
-
import ts from 'typescript';
|
|
11
|
-
import { join } from 'node:path';
|
|
12
|
-
/**
|
|
13
|
-
* Extract analytics and workbench config from a createApp() call.
|
|
14
|
-
*
|
|
15
|
-
* Uses TypeScript AST to find `createApp({ ... })` and extract the values
|
|
16
|
-
* of the `analytics` and `workbench` properties.
|
|
17
|
-
*/
|
|
18
|
-
function extractCreateAppConfig(sourceFile) {
|
|
19
|
-
const result = {};
|
|
20
|
-
// Walk the AST looking for createApp({ ... }) calls
|
|
21
|
-
function visit(node) {
|
|
22
|
-
// Check for createApp(...) call
|
|
23
|
-
if (ts.isCallExpression(node) &&
|
|
24
|
-
ts.isIdentifier(node.expression) &&
|
|
25
|
-
node.expression.text === 'createApp' &&
|
|
26
|
-
node.arguments.length > 0) {
|
|
27
|
-
const firstArg = node.arguments[0];
|
|
28
|
-
if (!firstArg)
|
|
29
|
-
return;
|
|
30
|
-
if (ts.isObjectLiteralExpression(firstArg)) {
|
|
31
|
-
// Found createApp({ ... }) — extract properties
|
|
32
|
-
for (const prop of firstArg.properties) {
|
|
33
|
-
if (!ts.isPropertyAssignment(prop))
|
|
34
|
-
continue;
|
|
35
|
-
const name = ts.isIdentifier(prop.name) ? prop.name.text : undefined;
|
|
36
|
-
if (!name)
|
|
37
|
-
continue;
|
|
38
|
-
// prop.initializer should always exist for PropertyAssignment, but check to satisfy TS
|
|
39
|
-
if (!('initializer' in prop))
|
|
40
|
-
continue;
|
|
41
|
-
const initializer = prop.initializer;
|
|
42
|
-
if (name === 'analytics') {
|
|
43
|
-
const value = extractValue(initializer);
|
|
44
|
-
if (value !== undefined) {
|
|
45
|
-
if (typeof value === 'boolean') {
|
|
46
|
-
result.analytics = value;
|
|
47
|
-
}
|
|
48
|
-
else if (typeof value === 'object') {
|
|
49
|
-
result.analytics = value;
|
|
50
|
-
}
|
|
51
|
-
// Ignore string/number for analytics
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
else if (name === 'workbench') {
|
|
55
|
-
const value = extractValue(initializer);
|
|
56
|
-
if (value !== undefined) {
|
|
57
|
-
if (typeof value === 'boolean' || typeof value === 'string') {
|
|
58
|
-
result.workbench = value;
|
|
59
|
-
}
|
|
60
|
-
else if (typeof value === 'object') {
|
|
61
|
-
result.workbench = value;
|
|
62
|
-
}
|
|
63
|
-
// Ignore number for workbench
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
ts.forEachChild(node, visit);
|
|
70
|
-
}
|
|
71
|
-
visit(sourceFile);
|
|
72
|
-
return result;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Extract a JavaScript value from a TypeScript AST expression node.
|
|
76
|
-
* Handles: boolean literals, string literals, numeric literals,
|
|
77
|
-
* object literals (as Record), and identifier references (by name).
|
|
78
|
-
*/
|
|
79
|
-
function extractValue(node) {
|
|
80
|
-
if (ts.isLiteralExpression(node)) {
|
|
81
|
-
// String literal or numeric literal
|
|
82
|
-
if (ts.isStringLiteral(node)) {
|
|
83
|
-
return node.text;
|
|
84
|
-
}
|
|
85
|
-
if (ts.isNumericLiteral(node)) {
|
|
86
|
-
return Number(node.text);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
if (node.kind === ts.SyntaxKind.TrueKeyword) {
|
|
90
|
-
return true;
|
|
91
|
-
}
|
|
92
|
-
if (node.kind === ts.SyntaxKind.FalseKeyword) {
|
|
93
|
-
return false;
|
|
94
|
-
}
|
|
95
|
-
if (ts.isIdentifier(node)) {
|
|
96
|
-
// Return the identifier name (e.g., a variable reference)
|
|
97
|
-
return node.text;
|
|
98
|
-
}
|
|
99
|
-
if (ts.isObjectLiteralExpression(node)) {
|
|
100
|
-
const obj = {};
|
|
101
|
-
for (const prop of node.properties) {
|
|
102
|
-
if (!ts.isPropertyAssignment(prop))
|
|
103
|
-
continue;
|
|
104
|
-
if (!ts.isIdentifier(prop.name))
|
|
105
|
-
continue;
|
|
106
|
-
const key = prop.name.text;
|
|
107
|
-
obj[key] = extractValue(prop.initializer);
|
|
108
|
-
}
|
|
109
|
-
return obj;
|
|
110
|
-
}
|
|
111
|
-
return undefined;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Detect and extract analytics/workbench config from app.ts.
|
|
115
|
-
*
|
|
116
|
-
* This is the v2 approach: runtime config lives in createApp() only.
|
|
117
|
-
* The CLI reads these values at build time via AST parsing.
|
|
118
|
-
*/
|
|
119
|
-
export async function extractAppConfig(rootDir, logger) {
|
|
120
|
-
// Look for app.ts in root first, then src/
|
|
121
|
-
let appFile = join(rootDir, 'app.ts');
|
|
122
|
-
if (!(await Bun.file(appFile).exists())) {
|
|
123
|
-
appFile = join(rootDir, 'src', 'app.ts');
|
|
124
|
-
if (!(await Bun.file(appFile).exists())) {
|
|
125
|
-
logger.trace('[config-extract] No app.ts found');
|
|
126
|
-
return {};
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
try {
|
|
130
|
-
const source = await Bun.file(appFile).text();
|
|
131
|
-
// Quick bail-out before parsing
|
|
132
|
-
if (!source.includes('createApp')) {
|
|
133
|
-
logger.trace('[config-extract] No createApp call in %s', appFile);
|
|
134
|
-
return {};
|
|
135
|
-
}
|
|
136
|
-
// Parse with TypeScript
|
|
137
|
-
const sourceFile = ts.createSourceFile(appFile, source, ts.ScriptTarget.Latest, true, ts.ScriptKind.TS);
|
|
138
|
-
const config = extractCreateAppConfig(sourceFile);
|
|
139
|
-
if (config.analytics !== undefined) {
|
|
140
|
-
logger.debug('[config-extract] Found analytics in createApp(): %o', config.analytics);
|
|
141
|
-
}
|
|
142
|
-
if (config.workbench !== undefined) {
|
|
143
|
-
logger.debug('[config-extract] Found workbench in createApp(): %o', config.workbench);
|
|
144
|
-
}
|
|
145
|
-
return config;
|
|
146
|
-
}
|
|
147
|
-
catch (error) {
|
|
148
|
-
logger.warn('[config-extract] Failed to parse app.ts:', error);
|
|
149
|
-
return {};
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
//# sourceMappingURL=app-config-extractor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-config-extractor.js","sourceRoot":"","sources":["../../../src/cmd/build/app-config-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/eval/get.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,aAAa,yCAiExB,CAAC"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { createSubcommand } from '../../../types';
|
|
3
|
-
import * as tui from '../../../tui';
|
|
4
|
-
import { APIError, evalGet } from '@agentuity/server';
|
|
5
|
-
import { getCommand } from '../../../command-prefix';
|
|
6
|
-
import { ErrorCode } from '../../../errors';
|
|
7
|
-
const EvalGetResponseSchema = z.object({
|
|
8
|
-
id: z.string().describe('Eval ID'),
|
|
9
|
-
name: z.string().describe('Eval name'),
|
|
10
|
-
identifier: z.string().nullable().describe('Stable eval identifier'),
|
|
11
|
-
agent_identifier: z.string().describe('Agent identifier'),
|
|
12
|
-
created_at: z.string().describe('Creation timestamp'),
|
|
13
|
-
updated_at: z.string().describe('Last updated timestamp'),
|
|
14
|
-
project_id: z.string().describe('Project ID'),
|
|
15
|
-
org_id: z.string().describe('Organization ID'),
|
|
16
|
-
description: z.string().nullable().describe('Eval description'),
|
|
17
|
-
devmode: z.boolean().describe('Whether this is a devmode eval'),
|
|
18
|
-
});
|
|
19
|
-
export const getSubcommand = createSubcommand({
|
|
20
|
-
name: 'get',
|
|
21
|
-
aliases: ['show', 'info'],
|
|
22
|
-
description: 'Get details about a specific eval',
|
|
23
|
-
tags: ['read-only', 'fast', 'requires-auth'],
|
|
24
|
-
examples: [
|
|
25
|
-
{
|
|
26
|
-
command: getCommand('cloud eval get eval_abc123xyz'),
|
|
27
|
-
description: 'Get an eval by ID',
|
|
28
|
-
},
|
|
29
|
-
],
|
|
30
|
-
requires: { auth: true, apiClient: true },
|
|
31
|
-
idempotent: true,
|
|
32
|
-
schema: {
|
|
33
|
-
args: z.object({
|
|
34
|
-
eval_id: z.string().describe('Eval ID'),
|
|
35
|
-
}),
|
|
36
|
-
response: EvalGetResponseSchema,
|
|
37
|
-
},
|
|
38
|
-
async handler(ctx) {
|
|
39
|
-
const { apiClient, args, options } = ctx;
|
|
40
|
-
try {
|
|
41
|
-
const evalData = await evalGet(apiClient, args.eval_id);
|
|
42
|
-
const result = {
|
|
43
|
-
id: evalData.id,
|
|
44
|
-
name: evalData.name,
|
|
45
|
-
identifier: evalData.identifier,
|
|
46
|
-
agent_identifier: evalData.agentIdentifier,
|
|
47
|
-
created_at: evalData.createdAt,
|
|
48
|
-
updated_at: evalData.updatedAt,
|
|
49
|
-
project_id: evalData.projectId,
|
|
50
|
-
org_id: evalData.orgId,
|
|
51
|
-
description: evalData.description,
|
|
52
|
-
devmode: evalData.devmode,
|
|
53
|
-
};
|
|
54
|
-
if (options.json) {
|
|
55
|
-
return result;
|
|
56
|
-
}
|
|
57
|
-
const tableData = {
|
|
58
|
-
ID: evalData.id,
|
|
59
|
-
Name: evalData.name,
|
|
60
|
-
Identifier: evalData.identifier || '-',
|
|
61
|
-
Agent: evalData.agentIdentifier,
|
|
62
|
-
Project: evalData.projectId,
|
|
63
|
-
Organization: evalData.orgId,
|
|
64
|
-
Description: evalData.description || '-',
|
|
65
|
-
Devmode: evalData.devmode ? tui.colorSuccess('✓') : tui.colorError('✗'),
|
|
66
|
-
Created: new Date(evalData.createdAt).toLocaleString(),
|
|
67
|
-
Updated: new Date(evalData.updatedAt).toLocaleString(),
|
|
68
|
-
};
|
|
69
|
-
tui.table([tableData], Object.keys(tableData), { layout: 'vertical', padStart: ' ' });
|
|
70
|
-
return result;
|
|
71
|
-
}
|
|
72
|
-
catch (ex) {
|
|
73
|
-
if (ex instanceof APIError && ex.status === 404) {
|
|
74
|
-
tui.fatal(`Eval ${args.eval_id} not found`, ErrorCode.RESOURCE_NOT_FOUND);
|
|
75
|
-
}
|
|
76
|
-
tui.fatal(`Failed to get eval: ${ex}`, ErrorCode.API_ERROR);
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
});
|
|
80
|
-
//# sourceMappingURL=get.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/eval/get.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/eval/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,sCAUtB,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { createCommand } from '../../../types';
|
|
2
|
-
import { getSubcommand } from './get';
|
|
3
|
-
import { listSubcommand } from './list';
|
|
4
|
-
import { getCommand } from '../../../command-prefix';
|
|
5
|
-
export const evalCommand = createCommand({
|
|
6
|
-
name: 'eval',
|
|
7
|
-
aliases: ['evals'],
|
|
8
|
-
description: 'Manage evals',
|
|
9
|
-
tags: ['requires-auth'],
|
|
10
|
-
examples: [
|
|
11
|
-
{ command: getCommand('cloud eval list'), description: 'List all evals' },
|
|
12
|
-
{ command: getCommand('cloud eval get <id>'), description: 'Get eval details' },
|
|
13
|
-
],
|
|
14
|
-
subcommands: [getSubcommand, listSubcommand],
|
|
15
|
-
});
|
|
16
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/eval/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;IACxC,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,CAAC,OAAO,CAAC;IAClB,WAAW,EAAE,cAAc;IAC3B,IAAI,EAAE,CAAC,eAAe,CAAC;IACvB,QAAQ,EAAE;QACT,EAAE,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE;QACzE,EAAE,OAAO,EAAE,UAAU,CAAC,qBAAqB,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE;KAC/E;IACD,WAAW,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC;CAC5C,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/eval/list.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,cAAc,yCAiHzB,CAAC"}
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { createSubcommand } from '../../../types';
|
|
3
|
-
import * as tui from '../../../tui';
|
|
4
|
-
import { getCommand } from '../../../command-prefix';
|
|
5
|
-
import { ErrorCode } from '../../../errors';
|
|
6
|
-
import { evalList } from '@agentuity/server';
|
|
7
|
-
const EvalListResponseSchema = z.array(z.object({
|
|
8
|
-
id: z.string().describe('Eval ID'),
|
|
9
|
-
name: z.string().describe('Eval name'),
|
|
10
|
-
identifier: z.string().nullable().describe('Stable eval identifier'),
|
|
11
|
-
agent_identifier: z.string().describe('Agent identifier'),
|
|
12
|
-
created_at: z.string().describe('Creation timestamp'),
|
|
13
|
-
updated_at: z.string().describe('Last updated timestamp'),
|
|
14
|
-
project_id: z.string().describe('Project ID'),
|
|
15
|
-
description: z.string().nullable().describe('Eval description'),
|
|
16
|
-
devmode: z.boolean().describe('Whether this is a devmode eval'),
|
|
17
|
-
}));
|
|
18
|
-
export const listSubcommand = createSubcommand({
|
|
19
|
-
name: 'list',
|
|
20
|
-
aliases: ['ls'],
|
|
21
|
-
description: 'List evals',
|
|
22
|
-
tags: ['read-only', 'fast', 'requires-auth'],
|
|
23
|
-
examples: [
|
|
24
|
-
{ command: getCommand('cloud eval list'), description: 'List 10 most recent evals' },
|
|
25
|
-
{
|
|
26
|
-
command: getCommand('cloud eval list --count=25'),
|
|
27
|
-
description: 'List 25 most recent evals',
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
command: getCommand('cloud eval list --project-id=proj_*'),
|
|
31
|
-
description: 'Filter by project',
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
command: getCommand('cloud eval list --agent-id=agent_*'),
|
|
35
|
-
description: 'Filter by agent',
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
command: getCommand('cloud eval list --all'),
|
|
39
|
-
description: 'List all evals regardless of project context',
|
|
40
|
-
},
|
|
41
|
-
],
|
|
42
|
-
requires: { auth: true, apiClient: true },
|
|
43
|
-
optional: { project: true },
|
|
44
|
-
idempotent: true,
|
|
45
|
-
pagination: {
|
|
46
|
-
supported: true,
|
|
47
|
-
defaultLimit: 10,
|
|
48
|
-
maxLimit: 100,
|
|
49
|
-
parameters: {
|
|
50
|
-
limit: 'count',
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
schema: {
|
|
54
|
-
options: z.object({
|
|
55
|
-
orgId: z.string().optional().describe('filter by organization id'),
|
|
56
|
-
count: z.coerce
|
|
57
|
-
.number()
|
|
58
|
-
.int()
|
|
59
|
-
.min(1)
|
|
60
|
-
.max(100)
|
|
61
|
-
.default(10)
|
|
62
|
-
.describe('Number of evals to list (1–100)'),
|
|
63
|
-
projectId: z.string().optional().describe('Filter by project ID'),
|
|
64
|
-
agentId: z.string().optional().describe('Filter by agent ID'),
|
|
65
|
-
all: z.boolean().optional().describe('List all evals regardless of project context'),
|
|
66
|
-
}),
|
|
67
|
-
response: EvalListResponseSchema,
|
|
68
|
-
},
|
|
69
|
-
webUrl: (ctx) => {
|
|
70
|
-
const projectId = ctx.opts?.all ? undefined : ctx.opts?.projectId || ctx.project?.projectId;
|
|
71
|
-
return projectId ? `/projects/${encodeURIComponent(projectId)}/evals` : undefined;
|
|
72
|
-
},
|
|
73
|
-
async handler(ctx) {
|
|
74
|
-
const { apiClient, project, opts, options } = ctx;
|
|
75
|
-
if (opts?.orgId && opts?.projectId) {
|
|
76
|
-
tui.fatal('--org-id and --project-id are mutually exclusive. Use one or the other.');
|
|
77
|
-
}
|
|
78
|
-
const projectId = opts.all || opts.orgId ? undefined : opts.projectId || project?.projectId;
|
|
79
|
-
try {
|
|
80
|
-
const evals = await evalList(apiClient, {
|
|
81
|
-
orgId: opts?.orgId,
|
|
82
|
-
projectId,
|
|
83
|
-
agentId: opts.agentId,
|
|
84
|
-
});
|
|
85
|
-
const result = evals.map((e) => ({
|
|
86
|
-
id: e.id,
|
|
87
|
-
name: e.name,
|
|
88
|
-
identifier: e.identifier,
|
|
89
|
-
agent_identifier: e.agentIdentifier,
|
|
90
|
-
created_at: e.createdAt,
|
|
91
|
-
updated_at: e.updatedAt,
|
|
92
|
-
project_id: e.projectId,
|
|
93
|
-
description: e.description,
|
|
94
|
-
devmode: e.devmode,
|
|
95
|
-
}));
|
|
96
|
-
if (options.json) {
|
|
97
|
-
return result;
|
|
98
|
-
}
|
|
99
|
-
if (evals.length === 0) {
|
|
100
|
-
tui.info('No evals found.');
|
|
101
|
-
return [];
|
|
102
|
-
}
|
|
103
|
-
const tableData = evals.map((e) => ({
|
|
104
|
-
ID: e.id,
|
|
105
|
-
Name: e.name.length > 30 ? e.name.substring(0, 27) + '...' : e.name,
|
|
106
|
-
Agent: e.agentIdentifier || '-',
|
|
107
|
-
Devmode: e.devmode ? '✓' : '✗',
|
|
108
|
-
Created: new Date(e.createdAt).toLocaleString(),
|
|
109
|
-
}));
|
|
110
|
-
tui.table(tableData, [
|
|
111
|
-
{ name: 'ID', alignment: 'left' },
|
|
112
|
-
{ name: 'Name', alignment: 'left' },
|
|
113
|
-
{ name: 'Agent', alignment: 'left' },
|
|
114
|
-
{ name: 'Devmode', alignment: 'center' },
|
|
115
|
-
{ name: 'Created', alignment: 'left' },
|
|
116
|
-
]);
|
|
117
|
-
return result;
|
|
118
|
-
}
|
|
119
|
-
catch (ex) {
|
|
120
|
-
tui.fatal(`Failed to list evals: ${ex}`, ErrorCode.API_ERROR);
|
|
121
|
-
}
|
|
122
|
-
},
|
|
123
|
-
});
|
|
124
|
-
//# sourceMappingURL=list.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/eval/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/eval-run/get.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,aAAa,yCAwFxB,CAAC"}
|