@agentuity/cli 0.0.51 → 0.0.53
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/api.js +68 -0
- package/dist/api.js.map +1 -0
- package/dist/auth.js +225 -0
- package/dist/auth.js.map +1 -0
- package/dist/banner.js +35 -0
- package/dist/banner.js.map +1 -0
- package/dist/cli-logger.js +72 -0
- package/dist/cli-logger.js.map +1 -0
- package/dist/cli.js +822 -0
- package/dist/cli.js.map +1 -0
- package/dist/cmd/ai/capabilities/index.js +10 -0
- package/dist/cmd/ai/capabilities/index.js.map +1 -0
- package/dist/cmd/ai/capabilities/show.js +221 -0
- package/dist/cmd/ai/capabilities/show.js.map +1 -0
- package/dist/cmd/ai/index.js +11 -0
- package/dist/cmd/ai/index.js.map +1 -0
- package/dist/cmd/ai/prompt/index.js +10 -0
- package/dist/cmd/ai/prompt/index.js.map +1 -0
- package/dist/cmd/ai/prompt/llm.js +365 -0
- package/dist/cmd/ai/prompt/llm.js.map +1 -0
- package/dist/cmd/ai/schema/index.js +10 -0
- package/dist/cmd/ai/schema/index.js.map +1 -0
- package/dist/cmd/ai/schema/show.js +23 -0
- package/dist/cmd/ai/schema/show.js.map +1 -0
- package/dist/cmd/auth/api.js +85 -0
- package/dist/cmd/auth/api.js.map +1 -0
- package/dist/cmd/auth/index.js +13 -0
- package/dist/cmd/auth/index.js.map +1 -0
- package/dist/cmd/auth/login.js +84 -0
- package/dist/cmd/auth/login.js.map +1 -0
- package/dist/cmd/auth/logout.js +17 -0
- package/dist/cmd/auth/logout.js.map +1 -0
- package/dist/cmd/auth/signup.js +55 -0
- package/dist/cmd/auth/signup.js.map +1 -0
- package/dist/cmd/auth/ssh/add.js +239 -0
- package/dist/cmd/auth/ssh/add.js.map +1 -0
- package/dist/cmd/auth/ssh/api.js +53 -0
- package/dist/cmd/auth/ssh/api.js.map +1 -0
- package/dist/cmd/auth/ssh/delete.js +126 -0
- package/dist/cmd/auth/ssh/delete.js.map +1 -0
- package/dist/cmd/auth/ssh/index.js +11 -0
- package/dist/cmd/auth/ssh/index.js.map +1 -0
- package/dist/cmd/auth/ssh/list.js +70 -0
- package/dist/cmd/auth/ssh/list.js.map +1 -0
- package/dist/cmd/auth/whoami.js +68 -0
- package/dist/cmd/auth/whoami.js.map +1 -0
- package/dist/cmd/build/ast.js +608 -0
- package/dist/cmd/build/ast.js.map +1 -0
- package/dist/cmd/build/ast.test.js +389 -0
- package/dist/cmd/build/ast.test.js.map +1 -0
- package/dist/cmd/build/bundler.js +304 -0
- package/dist/cmd/build/bundler.js.map +1 -0
- package/dist/cmd/build/file.js +10 -0
- package/dist/cmd/build/file.js.map +1 -0
- package/dist/cmd/build/fix-duplicate-exports.js +167 -0
- package/dist/cmd/build/fix-duplicate-exports.js.map +1 -0
- package/dist/cmd/build/fix-duplicate-exports.test.js +300 -0
- package/dist/cmd/build/fix-duplicate-exports.test.js.map +1 -0
- package/dist/cmd/build/index.d.ts.map +1 -1
- package/dist/cmd/build/index.js +81 -0
- package/dist/cmd/build/index.js.map +1 -0
- package/dist/cmd/build/patch/_util.js +42 -0
- package/dist/cmd/build/patch/_util.js.map +1 -0
- package/dist/cmd/build/patch/aisdk.js +65 -0
- package/dist/cmd/build/patch/aisdk.js.map +1 -0
- package/dist/cmd/build/patch/index.js +97 -0
- package/dist/cmd/build/patch/index.js.map +1 -0
- package/dist/cmd/build/patch/llm.js +18 -0
- package/dist/cmd/build/patch/llm.js.map +1 -0
- package/dist/cmd/build/plugin.d.ts.map +1 -1
- package/dist/cmd/build/plugin.js +581 -0
- package/dist/cmd/build/plugin.js.map +1 -0
- package/dist/cmd/cloud/agents/index.js +133 -0
- package/dist/cmd/cloud/agents/index.js.map +1 -0
- package/dist/cmd/cloud/deploy.js +341 -0
- package/dist/cmd/cloud/deploy.js.map +1 -0
- package/dist/cmd/cloud/deployment/index.js +20 -0
- package/dist/cmd/cloud/deployment/index.js.map +1 -0
- package/dist/cmd/cloud/deployment/list.js +89 -0
- package/dist/cmd/cloud/deployment/list.js.map +1 -0
- package/dist/cmd/cloud/deployment/remove.js +60 -0
- package/dist/cmd/cloud/deployment/remove.js.map +1 -0
- package/dist/cmd/cloud/deployment/rollback.js +80 -0
- package/dist/cmd/cloud/deployment/rollback.js.map +1 -0
- package/dist/cmd/cloud/deployment/show.js +106 -0
- package/dist/cmd/cloud/deployment/show.js.map +1 -0
- package/dist/cmd/cloud/deployment/undeploy.js +45 -0
- package/dist/cmd/cloud/deployment/undeploy.js.map +1 -0
- package/dist/cmd/cloud/deployment/utils.js +10 -0
- package/dist/cmd/cloud/deployment/utils.js.map +1 -0
- package/dist/cmd/cloud/domain.js +77 -0
- package/dist/cmd/cloud/domain.js.map +1 -0
- package/dist/cmd/cloud/env/delete.js +50 -0
- package/dist/cmd/cloud/env/delete.js.map +1 -0
- package/dist/cmd/cloud/env/get.js +65 -0
- package/dist/cmd/cloud/env/get.js.map +1 -0
- package/dist/cmd/cloud/env/import.js +113 -0
- package/dist/cmd/cloud/env/import.js.map +1 -0
- package/dist/cmd/cloud/env/index.js +24 -0
- package/dist/cmd/cloud/env/index.js.map +1 -0
- package/dist/cmd/cloud/env/list.js +58 -0
- package/dist/cmd/cloud/env/list.js.map +1 -0
- package/dist/cmd/cloud/env/pull.js +81 -0
- package/dist/cmd/cloud/env/pull.js.map +1 -0
- package/dist/cmd/cloud/env/push.js +61 -0
- package/dist/cmd/cloud/env/push.js.map +1 -0
- package/dist/cmd/cloud/env/set.js +73 -0
- package/dist/cmd/cloud/env/set.js.map +1 -0
- package/dist/cmd/cloud/index.js +31 -0
- package/dist/cmd/cloud/index.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/create-namespace.js +41 -0
- package/dist/cmd/cloud/keyvalue/create-namespace.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/delete-namespace.js +64 -0
- package/dist/cmd/cloud/keyvalue/delete-namespace.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/delete.js +47 -0
- package/dist/cmd/cloud/keyvalue/delete.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/get.js +65 -0
- package/dist/cmd/cloud/keyvalue/get.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/index.js +32 -0
- package/dist/cmd/cloud/keyvalue/index.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/keys.js +50 -0
- package/dist/cmd/cloud/keyvalue/keys.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/list-namespaces.js +37 -0
- package/dist/cmd/cloud/keyvalue/list-namespaces.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/repl.js +277 -0
- package/dist/cmd/cloud/keyvalue/repl.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/search.js +72 -0
- package/dist/cmd/cloud/keyvalue/search.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/set.js +59 -0
- package/dist/cmd/cloud/keyvalue/set.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/stats.js +82 -0
- package/dist/cmd/cloud/keyvalue/stats.js.map +1 -0
- package/dist/cmd/cloud/keyvalue/util.js +19 -0
- package/dist/cmd/cloud/keyvalue/util.js.map +1 -0
- package/dist/cmd/cloud/objectstore/delete-bucket.js +66 -0
- package/dist/cmd/cloud/objectstore/delete-bucket.js.map +1 -0
- package/dist/cmd/cloud/objectstore/delete.js +56 -0
- package/dist/cmd/cloud/objectstore/delete.js.map +1 -0
- package/dist/cmd/cloud/objectstore/get.js +64 -0
- package/dist/cmd/cloud/objectstore/get.js.map +1 -0
- package/dist/cmd/cloud/objectstore/index.js +28 -0
- package/dist/cmd/cloud/objectstore/index.js.map +1 -0
- package/dist/cmd/cloud/objectstore/list-buckets.js +37 -0
- package/dist/cmd/cloud/objectstore/list-buckets.js.map +1 -0
- package/dist/cmd/cloud/objectstore/list-keys.js +52 -0
- package/dist/cmd/cloud/objectstore/list-keys.js.map +1 -0
- package/dist/cmd/cloud/objectstore/put.js +57 -0
- package/dist/cmd/cloud/objectstore/put.js.map +1 -0
- package/dist/cmd/cloud/objectstore/repl.js +219 -0
- package/dist/cmd/cloud/objectstore/repl.js.map +1 -0
- package/dist/cmd/cloud/objectstore/url.js +55 -0
- package/dist/cmd/cloud/objectstore/url.js.map +1 -0
- package/dist/cmd/cloud/objectstore/util.js +18 -0
- package/dist/cmd/cloud/objectstore/util.js.map +1 -0
- package/dist/cmd/cloud/resource/add.js +70 -0
- package/dist/cmd/cloud/resource/add.js.map +1 -0
- package/dist/cmd/cloud/resource/delete.js +126 -0
- package/dist/cmd/cloud/resource/delete.js.map +1 -0
- package/dist/cmd/cloud/resource/index.js +12 -0
- package/dist/cmd/cloud/resource/index.js.map +1 -0
- package/dist/cmd/cloud/resource/list.js +89 -0
- package/dist/cmd/cloud/resource/list.js.map +1 -0
- package/dist/cmd/cloud/scp/download.js +72 -0
- package/dist/cmd/cloud/scp/download.js.map +1 -0
- package/dist/cmd/cloud/scp/index.js +10 -0
- package/dist/cmd/cloud/scp/index.js.map +1 -0
- package/dist/cmd/cloud/scp/upload.js +75 -0
- package/dist/cmd/cloud/scp/upload.js.map +1 -0
- package/dist/cmd/cloud/secret/delete.js +50 -0
- package/dist/cmd/cloud/secret/delete.js.map +1 -0
- package/dist/cmd/cloud/secret/get.js +69 -0
- package/dist/cmd/cloud/secret/get.js.map +1 -0
- package/dist/cmd/cloud/secret/import.js +88 -0
- package/dist/cmd/cloud/secret/import.js.map +1 -0
- package/dist/cmd/cloud/secret/index.js +24 -0
- package/dist/cmd/cloud/secret/index.js.map +1 -0
- package/dist/cmd/cloud/secret/list.js +58 -0
- package/dist/cmd/cloud/secret/list.js.map +1 -0
- package/dist/cmd/cloud/secret/pull.js +81 -0
- package/dist/cmd/cloud/secret/pull.js.map +1 -0
- package/dist/cmd/cloud/secret/push.js +61 -0
- package/dist/cmd/cloud/secret/push.js.map +1 -0
- package/dist/cmd/cloud/secret/set.js +57 -0
- package/dist/cmd/cloud/secret/set.js.map +1 -0
- package/dist/cmd/cloud/session/get.d.ts.map +1 -1
- package/dist/cmd/cloud/session/get.js +155 -0
- package/dist/cmd/cloud/session/get.js.map +1 -0
- package/dist/cmd/cloud/session/index.js +11 -0
- package/dist/cmd/cloud/session/index.js.map +1 -0
- package/dist/cmd/cloud/session/list.js +132 -0
- package/dist/cmd/cloud/session/list.js.map +1 -0
- package/dist/cmd/cloud/session/logs.js +56 -0
- package/dist/cmd/cloud/session/logs.js.map +1 -0
- package/dist/cmd/cloud/ssh.js +67 -0
- package/dist/cmd/cloud/ssh.js.map +1 -0
- package/dist/cmd/dev/agents.js +103 -0
- package/dist/cmd/dev/agents.js.map +1 -0
- package/dist/cmd/dev/api.js +26 -0
- package/dist/cmd/dev/api.js.map +1 -0
- package/dist/cmd/dev/download.js +77 -0
- package/dist/cmd/dev/download.js.map +1 -0
- package/dist/cmd/dev/index.js +745 -0
- package/dist/cmd/dev/index.js.map +1 -0
- package/dist/cmd/dev/sync.js +229 -0
- package/dist/cmd/dev/sync.js.map +1 -0
- package/dist/cmd/dev/templates.js +75 -0
- package/dist/cmd/dev/templates.js.map +1 -0
- package/dist/cmd/index.js +49 -0
- package/dist/cmd/index.js.map +1 -0
- package/dist/cmd/profile/create.js +89 -0
- package/dist/cmd/profile/create.js.map +1 -0
- package/dist/cmd/profile/delete.js +63 -0
- package/dist/cmd/profile/delete.js.map +1 -0
- package/dist/cmd/profile/index.js +14 -0
- package/dist/cmd/profile/index.js.map +1 -0
- package/dist/cmd/profile/list.js +28 -0
- package/dist/cmd/profile/list.js.map +1 -0
- package/dist/cmd/profile/show.js +68 -0
- package/dist/cmd/profile/show.js.map +1 -0
- package/dist/cmd/profile/use.js +37 -0
- package/dist/cmd/profile/use.js.map +1 -0
- package/dist/cmd/project/create.js +92 -0
- package/dist/cmd/project/create.js.map +1 -0
- package/dist/cmd/project/delete.js +117 -0
- package/dist/cmd/project/delete.js.map +1 -0
- package/dist/cmd/project/download.js +217 -0
- package/dist/cmd/project/download.js.map +1 -0
- package/dist/cmd/project/index.js +12 -0
- package/dist/cmd/project/index.js.map +1 -0
- package/dist/cmd/project/list.js +51 -0
- package/dist/cmd/project/list.js.map +1 -0
- package/dist/cmd/project/show.js +54 -0
- package/dist/cmd/project/show.js.map +1 -0
- package/dist/cmd/project/template-flow.js +315 -0
- package/dist/cmd/project/template-flow.js.map +1 -0
- package/dist/cmd/project/templates.js +31 -0
- package/dist/cmd/project/templates.js.map +1 -0
- package/dist/cmd/repl/index.js +444 -0
- package/dist/cmd/repl/index.js.map +1 -0
- package/dist/cmd/version/index.js +29 -0
- package/dist/cmd/version/index.js.map +1 -0
- package/dist/command-prefix.js +37 -0
- package/dist/command-prefix.js.map +1 -0
- package/dist/config.js +536 -0
- package/dist/config.js.map +1 -0
- package/dist/crypto/box.js +382 -0
- package/dist/crypto/box.js.map +1 -0
- package/dist/crypto/box.test.js +317 -0
- package/dist/crypto/box.test.js.map +1 -0
- package/dist/download.js +64 -0
- package/dist/download.js.map +1 -0
- package/dist/env-util.js +219 -0
- package/dist/env-util.js.map +1 -0
- package/dist/env-util.test.js +146 -0
- package/dist/env-util.test.js.map +1 -0
- package/dist/errors.js +177 -0
- package/dist/errors.js.map +1 -0
- package/dist/explain.js +90 -0
- package/dist/explain.js.map +1 -0
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -0
- package/dist/json.js +29 -0
- package/dist/json.js.map +1 -0
- package/dist/legacy-check.js +104 -0
- package/dist/legacy-check.js.map +1 -0
- package/dist/output.js +207 -0
- package/dist/output.js.map +1 -0
- package/dist/repl.js +1176 -0
- package/dist/repl.js.map +1 -0
- package/dist/runtime.js +19 -0
- package/dist/runtime.js.map +1 -0
- package/dist/schema-generator.js +289 -0
- package/dist/schema-generator.js.map +1 -0
- package/dist/schema-parser.js +145 -0
- package/dist/schema-parser.js.map +1 -0
- package/dist/sound.js +44 -0
- package/dist/sound.js.map +1 -0
- package/dist/steps.js +293 -0
- package/dist/steps.js.map +1 -0
- package/dist/terminal.js +130 -0
- package/dist/terminal.js.map +1 -0
- package/dist/tui.js +1124 -0
- package/dist/tui.js.map +1 -0
- package/dist/types.js +163 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/detectSubagent.js +25 -0
- package/dist/utils/detectSubagent.js.map +1 -0
- package/dist/utils/format.js +21 -0
- package/dist/utils/format.js.map +1 -0
- package/dist/utils/zip.js +33 -0
- package/dist/utils/zip.js.map +1 -0
- package/dist/version.js +24 -0
- package/dist/version.js.map +1 -0
- package/package.json +6 -6
- package/src/banner.ts +1 -1
- package/src/cmd/build/index.ts +18 -22
- package/src/cmd/build/plugin.ts +95 -64
- package/src/cmd/cloud/session/get.ts +20 -14
- package/src/cmd/cloud/session/list.ts +1 -1
package/src/cmd/build/plugin.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { BunPlugin } from 'bun';
|
|
2
2
|
import { dirname, basename, join, resolve } from 'node:path';
|
|
3
|
-
import { existsSync, writeFileSync, mkdirSync } from 'node:fs';
|
|
3
|
+
import { existsSync, writeFileSync, mkdirSync, unlinkSync } from 'node:fs';
|
|
4
4
|
import type { BuildMetadata } from '@agentuity/server';
|
|
5
5
|
import { parseAgentMetadata, parseRoute, parseEvalMetadata } from './ast';
|
|
6
6
|
import { applyPatch, generatePatches } from './patch';
|
|
@@ -123,86 +123,63 @@ function generateAgentRegistry(srcDir: string, agentInfo: Array<Record<string, s
|
|
|
123
123
|
})
|
|
124
124
|
.join('\n');
|
|
125
125
|
|
|
126
|
-
// Generate nested agent type definitions
|
|
127
|
-
const
|
|
126
|
+
// Generate nested agent type definitions for Hono Context augmentation
|
|
127
|
+
const honoAgentTypeLines: string[] = [];
|
|
128
128
|
for (const parentAgent of parentAgents) {
|
|
129
129
|
const parentCamelName = toCamelCase(parentAgent.name);
|
|
130
130
|
const children = subagentsByParent.get(parentAgent.name) || [];
|
|
131
131
|
|
|
132
132
|
if (children.length === 0) {
|
|
133
133
|
// No subagents
|
|
134
|
-
|
|
135
|
-
` ${parentCamelName}: AgentRunner<
|
|
134
|
+
honoAgentTypeLines.push(
|
|
135
|
+
` ${parentCamelName}: AgentRunner<LocalAgentRegistry['${parentCamelName}']['inputSchema'], LocalAgentRegistry['${parentCamelName}']['outputSchema'], LocalAgentRegistry['${parentCamelName}']['stream'] extends true ? true : false>;`
|
|
136
136
|
);
|
|
137
137
|
} else {
|
|
138
138
|
// Has subagents - create intersection type
|
|
139
|
-
|
|
140
|
-
` ${parentCamelName}: AgentRunner<
|
|
139
|
+
honoAgentTypeLines.push(
|
|
140
|
+
` ${parentCamelName}: AgentRunner<LocalAgentRegistry['${parentCamelName}']['inputSchema'], LocalAgentRegistry['${parentCamelName}']['outputSchema'], LocalAgentRegistry['${parentCamelName}']['stream'] extends true ? true : false> & {`
|
|
141
141
|
);
|
|
142
142
|
for (const child of children) {
|
|
143
143
|
const childCamelName = toCamelCase(child.name);
|
|
144
144
|
const fullChildName = toCamelCase(`${parentAgent.name}_${child.name}`);
|
|
145
|
-
|
|
145
|
+
honoAgentTypeLines.push(
|
|
146
146
|
` ${childCamelName}: AgentRunner<typeof ${fullChildName}Agent['inputSchema'], typeof ${fullChildName}Agent['outputSchema'], typeof ${fullChildName}Agent['stream'] extends true ? true : false>;`
|
|
147
147
|
);
|
|
148
148
|
}
|
|
149
|
-
|
|
149
|
+
honoAgentTypeLines.push(` };`);
|
|
150
150
|
}
|
|
151
151
|
}
|
|
152
|
-
const
|
|
152
|
+
const honoAgentTypes = honoAgentTypeLines.join('\n');
|
|
153
153
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
export const agentRegistry = {
|
|
160
|
-
${registry}
|
|
161
|
-
} as const;
|
|
162
|
-
|
|
163
|
-
export type AgentName = keyof typeof agentRegistry;
|
|
164
|
-
export type AgentRegistry = typeof agentRegistry;
|
|
165
|
-
|
|
166
|
-
// Typed runners for each agent
|
|
167
|
-
${typeExports}
|
|
168
|
-
|
|
169
|
-
// Augment Context to provide strongly-typed agents
|
|
170
|
-
declare module "hono" {
|
|
171
|
-
interface Context {
|
|
172
|
-
agentName: AgentName;
|
|
173
|
-
agent: {
|
|
174
|
-
${agentTypes}
|
|
175
|
-
};
|
|
176
|
-
waitUntil: (promise: Promise<void> | (() => void | Promise<void>)) => void;
|
|
177
|
-
logger: Logger;
|
|
178
|
-
kv: KeyValueStorage;
|
|
179
|
-
objectstore: ObjectStorage;
|
|
180
|
-
stream: StreamStorage;
|
|
181
|
-
vector: VectorStorage;
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
`;
|
|
185
|
-
|
|
186
|
-
const agentsDir = join(srcDir, 'agents');
|
|
187
|
-
const registryPath = join(agentsDir, 'registry.generated.ts');
|
|
154
|
+
// Generate agent type definitions for AgentRegistry interface augmentation
|
|
155
|
+
const runtimeAgentTypeLines: string[] = [];
|
|
156
|
+
for (const parentAgent of parentAgents) {
|
|
157
|
+
const parentCamelName = toCamelCase(parentAgent.name);
|
|
158
|
+
const children = subagentsByParent.get(parentAgent.name) || [];
|
|
188
159
|
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
160
|
+
if (children.length === 0) {
|
|
161
|
+
// No subagents - use typeof the imported agent
|
|
162
|
+
runtimeAgentTypeLines.push(
|
|
163
|
+
` ${parentCamelName}: AgentRunner<typeof ${parentCamelName}Agent['inputSchema'], typeof ${parentCamelName}Agent['outputSchema'], typeof ${parentCamelName}Agent['stream'] extends true ? true : false>;`
|
|
164
|
+
);
|
|
165
|
+
} else {
|
|
166
|
+
// Has subagents - create intersection type using typeof
|
|
167
|
+
runtimeAgentTypeLines.push(
|
|
168
|
+
` ${parentCamelName}: AgentRunner<typeof ${parentCamelName}Agent['inputSchema'], typeof ${parentCamelName}Agent['outputSchema'], typeof ${parentCamelName}Agent['stream'] extends true ? true : false> & {`
|
|
169
|
+
);
|
|
170
|
+
for (const child of children) {
|
|
171
|
+
const childCamelName = toCamelCase(child.name);
|
|
172
|
+
const fullChildName = toCamelCase(`${parentAgent.name}_${child.name}`);
|
|
173
|
+
runtimeAgentTypeLines.push(
|
|
174
|
+
` ${childCamelName}: AgentRunner<typeof ${fullChildName}Agent['inputSchema'], typeof ${fullChildName}Agent['outputSchema'], typeof ${fullChildName}Agent['stream'] extends true ? true : false>;`
|
|
175
|
+
);
|
|
176
|
+
}
|
|
177
|
+
runtimeAgentTypeLines.push(` };`);
|
|
178
|
+
}
|
|
192
179
|
}
|
|
193
|
-
|
|
194
|
-
writeFileSync(registryPath, generatedContent, 'utf-8');
|
|
180
|
+
const runtimeAgentTypes = runtimeAgentTypeLines.join('\n');
|
|
195
181
|
|
|
196
182
|
// Generate React client types with nested structure
|
|
197
|
-
const clientImports = agentInfo
|
|
198
|
-
.map(({ name, path, parent }) => {
|
|
199
|
-
const fullName = parent ? `${parent}_${name}` : name;
|
|
200
|
-
const camelName = toCamelCase(fullName);
|
|
201
|
-
const relativePath = path.replace(/^\.\/agents\//, './');
|
|
202
|
-
return `import type ${camelName}Agent from '${relativePath}';`;
|
|
203
|
-
})
|
|
204
|
-
.join('\n');
|
|
205
|
-
|
|
206
183
|
const clientAgentTypeLines: string[] = [];
|
|
207
184
|
for (const parentAgent of parentAgents) {
|
|
208
185
|
const parentCamelName = toCamelCase(parentAgent.name);
|
|
@@ -226,21 +203,75 @@ ${agentTypes}
|
|
|
226
203
|
}
|
|
227
204
|
}
|
|
228
205
|
}
|
|
206
|
+
const reactAgentTypes = clientAgentTypeLines.join('\n');
|
|
229
207
|
|
|
230
|
-
const
|
|
231
|
-
//
|
|
232
|
-
${
|
|
208
|
+
const generatedContent = `/// <reference types="hono" />
|
|
209
|
+
// Auto-generated by Agentuity - do not edit manually
|
|
210
|
+
${imports}${evalsImportsStr}
|
|
211
|
+
import type { AgentRunner, Logger } from '@agentuity/runtime';
|
|
212
|
+
import type { KeyValueStorage, ObjectStorage, StreamStorage, VectorStorage } from '@agentuity/core';
|
|
233
213
|
import type { Agent } from '@agentuity/react';
|
|
234
214
|
|
|
215
|
+
export const agentRegistry = {
|
|
216
|
+
${registry}
|
|
217
|
+
} as const;
|
|
218
|
+
|
|
219
|
+
// Local type aliases for Hono augmentation
|
|
220
|
+
type LocalAgentName = keyof typeof agentRegistry;
|
|
221
|
+
type LocalAgentRegistry = typeof agentRegistry;
|
|
222
|
+
|
|
223
|
+
// Typed runners for each agent
|
|
224
|
+
${typeExports}
|
|
225
|
+
|
|
226
|
+
// Augment @agentuity/runtime types with strongly-typed agents from this project
|
|
227
|
+
declare module "@agentuity/runtime" {
|
|
228
|
+
// Augment the AgentRegistry interface with project-specific strongly-typed agents
|
|
229
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
|
|
230
|
+
export interface AgentRegistry {
|
|
231
|
+
${runtimeAgentTypes}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
// Augment Hono Context to provide strongly-typed agents and runtime services
|
|
236
|
+
// Note: Properties are added to Context via middleware in @agentuity/runtime
|
|
237
|
+
declare module "hono" {
|
|
238
|
+
interface Context {
|
|
239
|
+
agentName: LocalAgentName;
|
|
240
|
+
agent: {
|
|
241
|
+
${honoAgentTypes}
|
|
242
|
+
};
|
|
243
|
+
waitUntil: (promise: Promise<void> | (() => void | Promise<void>)) => void;
|
|
244
|
+
logger: Logger;
|
|
245
|
+
kv: KeyValueStorage;
|
|
246
|
+
objectstore: ObjectStorage;
|
|
247
|
+
stream: StreamStorage;
|
|
248
|
+
vector: VectorStorage;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
// Augment @agentuity/react types with strongly-typed agents from this project
|
|
235
253
|
declare module '@agentuity/react' {
|
|
236
254
|
interface AgentRegistry {
|
|
237
|
-
${
|
|
255
|
+
${reactAgentTypes}
|
|
238
256
|
}
|
|
239
257
|
}
|
|
240
258
|
`;
|
|
241
259
|
|
|
242
|
-
const
|
|
243
|
-
|
|
260
|
+
const agentsDir = join(srcDir, 'agents');
|
|
261
|
+
const registryPath = join(agentsDir, 'registry.generated.ts');
|
|
262
|
+
const legacyTypesPath = join(agentsDir, 'types.generated.d.ts');
|
|
263
|
+
|
|
264
|
+
// Ensure agents directory exists
|
|
265
|
+
if (!existsSync(agentsDir)) {
|
|
266
|
+
mkdirSync(agentsDir, { recursive: true });
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
writeFileSync(registryPath, generatedContent, 'utf-8');
|
|
270
|
+
|
|
271
|
+
// Remove legacy types.generated.d.ts if it exists (now consolidated into registry.generated.ts)
|
|
272
|
+
if (existsSync(legacyTypesPath)) {
|
|
273
|
+
unlinkSync(legacyTypesPath);
|
|
274
|
+
}
|
|
244
275
|
}
|
|
245
276
|
|
|
246
277
|
let metadata: Partial<BuildMetadata>;
|
|
@@ -27,15 +27,19 @@ const SessionGetResponseSchema = z.object({
|
|
|
27
27
|
route_id: z.string().describe('Route ID'),
|
|
28
28
|
thread_id: z.string().describe('Thread ID'),
|
|
29
29
|
agentNames: z.array(z.string()).describe('Agent names'),
|
|
30
|
-
evalRuns: z
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
30
|
+
evalRuns: z
|
|
31
|
+
.array(
|
|
32
|
+
z.object({
|
|
33
|
+
id: z.string(),
|
|
34
|
+
created_at: z.string(),
|
|
35
|
+
eval_id: z.string(),
|
|
36
|
+
pending: z.boolean(),
|
|
37
|
+
success: z.boolean(),
|
|
38
|
+
error: z.string().nullable(),
|
|
39
|
+
result: z.string().nullable(),
|
|
40
|
+
})
|
|
41
|
+
)
|
|
42
|
+
.describe('Eval runs'),
|
|
39
43
|
});
|
|
40
44
|
|
|
41
45
|
export const getSubcommand = createSubcommand({
|
|
@@ -80,7 +84,7 @@ export const getSubcommand = createSubcommand({
|
|
|
80
84
|
route_id: session.route_id,
|
|
81
85
|
thread_id: session.thread_id,
|
|
82
86
|
agentNames: enriched.agentNames,
|
|
83
|
-
evalRuns: enriched.evalRuns.map(run => ({
|
|
87
|
+
evalRuns: enriched.evalRuns.map((run) => ({
|
|
84
88
|
id: run.id,
|
|
85
89
|
eval_id: run.eval_id,
|
|
86
90
|
created_at: run.created_at,
|
|
@@ -122,10 +126,12 @@ export const getSubcommand = createSubcommand({
|
|
|
122
126
|
console.log(tui.bold('Error: ') + tui.error(session.error));
|
|
123
127
|
}
|
|
124
128
|
if (enriched.agentNames.length > 0) {
|
|
125
|
-
const agentDisplay = enriched.agentNames
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
+
const agentDisplay = enriched.agentNames
|
|
130
|
+
.map((name, idx) => {
|
|
131
|
+
const agentId = session.agent_ids[idx];
|
|
132
|
+
return `${name} ${tui.muted(`(${agentId})`)}`;
|
|
133
|
+
})
|
|
134
|
+
.join(', ');
|
|
129
135
|
console.log(tui.bold('Agents: ') + agentDisplay);
|
|
130
136
|
}
|
|
131
137
|
console.log(tui.bold('Route ID: ') + session.route_id);
|
|
@@ -70,7 +70,7 @@ export const listSubcommand = createSubcommand({
|
|
|
70
70
|
async handler(ctx) {
|
|
71
71
|
const { config, logger, auth, project, opts, options } = ctx;
|
|
72
72
|
const catalystClient = getCatalystAPIClient(config, logger, auth);
|
|
73
|
-
|
|
73
|
+
|
|
74
74
|
const projectId = opts.projectId || project?.projectId;
|
|
75
75
|
|
|
76
76
|
try {
|