@agentuity/cli 0.0.101 → 0.0.102

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 (210) hide show
  1. package/AGENTS.md +19 -188
  2. package/bin/cli.ts +13 -6
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +41 -12
  5. package/dist/cli.js.map +1 -1
  6. package/dist/cmd/ai/index.d.ts.map +1 -1
  7. package/dist/cmd/ai/index.js +6 -1
  8. package/dist/cmd/ai/index.js.map +1 -1
  9. package/dist/cmd/ai/prompt/agent.d.ts +7 -0
  10. package/dist/cmd/ai/prompt/agent.d.ts.map +1 -1
  11. package/dist/cmd/ai/prompt/agent.js +12 -323
  12. package/dist/cmd/ai/prompt/agent.js.map +1 -1
  13. package/dist/cmd/ai/prompt/api.d.ts +7 -0
  14. package/dist/cmd/ai/prompt/api.d.ts.map +1 -1
  15. package/dist/cmd/ai/prompt/api.js +12 -260
  16. package/dist/cmd/ai/prompt/api.js.map +1 -1
  17. package/dist/cmd/ai/prompt/version.d.ts +35 -0
  18. package/dist/cmd/ai/prompt/version.d.ts.map +1 -0
  19. package/dist/cmd/ai/prompt/version.js +55 -0
  20. package/dist/cmd/ai/prompt/version.js.map +1 -0
  21. package/dist/cmd/ai/prompt/web.d.ts +7 -0
  22. package/dist/cmd/ai/prompt/web.d.ts.map +1 -1
  23. package/dist/cmd/ai/prompt/web.js +12 -283
  24. package/dist/cmd/ai/prompt/web.js.map +1 -1
  25. package/dist/cmd/ai/skills/generate.d.ts +3 -0
  26. package/dist/cmd/ai/skills/generate.d.ts.map +1 -0
  27. package/dist/cmd/ai/skills/generate.js +65 -0
  28. package/dist/cmd/ai/skills/generate.js.map +1 -0
  29. package/dist/cmd/ai/skills/generator.d.ts +4 -0
  30. package/dist/cmd/ai/skills/generator.d.ts.map +1 -0
  31. package/dist/cmd/ai/skills/generator.js +402 -0
  32. package/dist/cmd/ai/skills/generator.js.map +1 -0
  33. package/dist/cmd/ai/skills/index.d.ts +4 -0
  34. package/dist/cmd/ai/skills/index.d.ts.map +1 -0
  35. package/dist/cmd/ai/skills/index.js +21 -0
  36. package/dist/cmd/ai/skills/index.js.map +1 -0
  37. package/dist/cmd/auth/signup.d.ts.map +1 -1
  38. package/dist/cmd/auth/signup.js +1 -0
  39. package/dist/cmd/auth/signup.js.map +1 -1
  40. package/dist/cmd/build/entry-generator.d.ts.map +1 -1
  41. package/dist/cmd/build/entry-generator.js +40 -5
  42. package/dist/cmd/build/entry-generator.js.map +1 -1
  43. package/dist/cmd/build/vite/bun-dev-server.d.ts +7 -1
  44. package/dist/cmd/build/vite/bun-dev-server.d.ts.map +1 -1
  45. package/dist/cmd/build/vite/bun-dev-server.js +52 -26
  46. package/dist/cmd/build/vite/bun-dev-server.js.map +1 -1
  47. package/dist/cmd/build/vite/metadata-generator.d.ts.map +1 -1
  48. package/dist/cmd/build/vite/metadata-generator.js +58 -7
  49. package/dist/cmd/build/vite/metadata-generator.js.map +1 -1
  50. package/dist/cmd/build/vite/prompt-generator.d.ts +23 -0
  51. package/dist/cmd/build/vite/prompt-generator.d.ts.map +1 -0
  52. package/dist/cmd/build/vite/prompt-generator.js +123 -0
  53. package/dist/cmd/build/vite/prompt-generator.js.map +1 -0
  54. package/dist/cmd/build/vite/registry-generator.d.ts.map +1 -1
  55. package/dist/cmd/build/vite/registry-generator.js +28 -11
  56. package/dist/cmd/build/vite/registry-generator.js.map +1 -1
  57. package/dist/cmd/build/vite/server-bundler.d.ts +4 -0
  58. package/dist/cmd/build/vite/server-bundler.d.ts.map +1 -1
  59. package/dist/cmd/build/vite/server-bundler.js +45 -16
  60. package/dist/cmd/build/vite/server-bundler.js.map +1 -1
  61. package/dist/cmd/build/vite/vite-asset-server-config.d.ts.map +1 -1
  62. package/dist/cmd/build/vite/vite-asset-server-config.js +4 -0
  63. package/dist/cmd/build/vite/vite-asset-server-config.js.map +1 -1
  64. package/dist/cmd/build/vite/vite-builder.d.ts.map +1 -1
  65. package/dist/cmd/build/vite/vite-builder.js +99 -87
  66. package/dist/cmd/build/vite/vite-builder.js.map +1 -1
  67. package/dist/cmd/cloud/deploy.d.ts.map +1 -1
  68. package/dist/cmd/cloud/deploy.js +78 -27
  69. package/dist/cmd/cloud/deploy.js.map +1 -1
  70. package/dist/cmd/cloud/keyvalue/create-namespace.d.ts.map +1 -1
  71. package/dist/cmd/cloud/keyvalue/create-namespace.js +3 -1
  72. package/dist/cmd/cloud/keyvalue/create-namespace.js.map +1 -1
  73. package/dist/cmd/cloud/keyvalue/delete-namespace.d.ts.map +1 -1
  74. package/dist/cmd/cloud/keyvalue/delete-namespace.js +3 -1
  75. package/dist/cmd/cloud/keyvalue/delete-namespace.js.map +1 -1
  76. package/dist/cmd/cloud/keyvalue/delete.d.ts.map +1 -1
  77. package/dist/cmd/cloud/keyvalue/delete.js +3 -1
  78. package/dist/cmd/cloud/keyvalue/delete.js.map +1 -1
  79. package/dist/cmd/cloud/keyvalue/set.d.ts.map +1 -1
  80. package/dist/cmd/cloud/keyvalue/set.js +4 -2
  81. package/dist/cmd/cloud/keyvalue/set.js.map +1 -1
  82. package/dist/cmd/cloud/stream/get.d.ts.map +1 -1
  83. package/dist/cmd/cloud/stream/get.js +2 -13
  84. package/dist/cmd/cloud/stream/get.js.map +1 -1
  85. package/dist/cmd/cloud/vector/delete-namespace.d.ts +3 -0
  86. package/dist/cmd/cloud/vector/delete-namespace.d.ts.map +1 -0
  87. package/dist/cmd/cloud/vector/delete-namespace.js +77 -0
  88. package/dist/cmd/cloud/vector/delete-namespace.js.map +1 -0
  89. package/dist/cmd/cloud/vector/index.d.ts.map +1 -1
  90. package/dist/cmd/cloud/vector/index.js +21 -4
  91. package/dist/cmd/cloud/vector/index.js.map +1 -1
  92. package/dist/cmd/cloud/vector/list-namespaces.d.ts +3 -0
  93. package/dist/cmd/cloud/vector/list-namespaces.d.ts.map +1 -0
  94. package/dist/cmd/cloud/vector/list-namespaces.js +42 -0
  95. package/dist/cmd/cloud/vector/list-namespaces.js.map +1 -0
  96. package/dist/cmd/cloud/vector/stats.d.ts +3 -0
  97. package/dist/cmd/cloud/vector/stats.d.ts.map +1 -0
  98. package/dist/cmd/cloud/vector/stats.js +142 -0
  99. package/dist/cmd/cloud/vector/stats.js.map +1 -0
  100. package/dist/cmd/cloud/vector/upsert.d.ts +3 -0
  101. package/dist/cmd/cloud/vector/upsert.d.ts.map +1 -0
  102. package/dist/cmd/cloud/vector/upsert.js +192 -0
  103. package/dist/cmd/cloud/vector/upsert.js.map +1 -0
  104. package/dist/cmd/dev/file-watcher.d.ts.map +1 -1
  105. package/dist/cmd/dev/file-watcher.js +90 -31
  106. package/dist/cmd/dev/file-watcher.js.map +1 -1
  107. package/dist/cmd/dev/index.d.ts.map +1 -1
  108. package/dist/cmd/dev/index.js +213 -57
  109. package/dist/cmd/dev/index.js.map +1 -1
  110. package/dist/cmd/dev/skills.d.ts +10 -0
  111. package/dist/cmd/dev/skills.d.ts.map +1 -0
  112. package/dist/cmd/dev/skills.js +57 -0
  113. package/dist/cmd/dev/skills.js.map +1 -0
  114. package/dist/cmd/dev/sync.js +7 -7
  115. package/dist/cmd/dev/sync.js.map +1 -1
  116. package/dist/cmd/index.d.ts.map +1 -1
  117. package/dist/cmd/index.js +1 -0
  118. package/dist/cmd/index.js.map +1 -1
  119. package/dist/cmd/project/create.d.ts.map +1 -1
  120. package/dist/cmd/project/create.js +3 -0
  121. package/dist/cmd/project/create.js.map +1 -1
  122. package/dist/cmd/project/template-flow.d.ts +1 -0
  123. package/dist/cmd/project/template-flow.d.ts.map +1 -1
  124. package/dist/cmd/project/template-flow.js +30 -5
  125. package/dist/cmd/project/template-flow.js.map +1 -1
  126. package/dist/cmd/setup/index.d.ts.map +1 -1
  127. package/dist/cmd/setup/index.js +1 -0
  128. package/dist/cmd/setup/index.js.map +1 -1
  129. package/dist/cmd/upgrade/index.d.ts +15 -0
  130. package/dist/cmd/upgrade/index.d.ts.map +1 -1
  131. package/dist/cmd/upgrade/index.js +59 -4
  132. package/dist/cmd/upgrade/index.js.map +1 -1
  133. package/dist/domain.d.ts +45 -0
  134. package/dist/domain.d.ts.map +1 -0
  135. package/dist/domain.js +200 -0
  136. package/dist/domain.js.map +1 -0
  137. package/dist/schema-generator.d.ts +2 -0
  138. package/dist/schema-generator.d.ts.map +1 -1
  139. package/dist/schema-generator.js +18 -0
  140. package/dist/schema-generator.js.map +1 -1
  141. package/dist/steps.d.ts +1 -1
  142. package/dist/steps.d.ts.map +1 -1
  143. package/dist/steps.js +16 -5
  144. package/dist/steps.js.map +1 -1
  145. package/dist/tui/prompt.d.ts +1 -2
  146. package/dist/tui/prompt.d.ts.map +1 -1
  147. package/dist/tui/prompt.js +8 -4
  148. package/dist/tui/prompt.js.map +1 -1
  149. package/dist/tui.d.ts +16 -0
  150. package/dist/tui.d.ts.map +1 -1
  151. package/dist/tui.js +23 -2
  152. package/dist/tui.js.map +1 -1
  153. package/dist/types.d.ts +9 -2
  154. package/dist/types.d.ts.map +1 -1
  155. package/dist/types.js +3 -3
  156. package/dist/types.js.map +1 -1
  157. package/package.json +4 -4
  158. package/src/cli.ts +47 -12
  159. package/src/cmd/ai/index.ts +6 -1
  160. package/src/cmd/ai/prompt/agent.md +306 -0
  161. package/src/cmd/ai/prompt/agent.ts +12 -322
  162. package/src/cmd/ai/prompt/api.md +360 -0
  163. package/src/cmd/ai/prompt/api.ts +13 -260
  164. package/src/cmd/ai/prompt/version.ts +61 -0
  165. package/src/cmd/ai/prompt/web.md +509 -0
  166. package/src/cmd/ai/prompt/web.ts +12 -282
  167. package/src/cmd/ai/skills/generate.ts +75 -0
  168. package/src/cmd/ai/skills/generator.ts +519 -0
  169. package/src/cmd/ai/skills/index.ts +23 -0
  170. package/src/cmd/auth/signup.ts +1 -0
  171. package/src/cmd/build/entry-generator.ts +43 -7
  172. package/src/cmd/build/vite/bun-dev-server.ts +57 -27
  173. package/src/cmd/build/vite/metadata-generator.ts +73 -7
  174. package/src/cmd/build/vite/prompt-generator.ts +169 -0
  175. package/src/cmd/build/vite/registry-generator.ts +33 -10
  176. package/src/cmd/build/vite/server-bundler.ts +53 -22
  177. package/src/cmd/build/vite/vite-asset-server-config.ts +5 -0
  178. package/src/cmd/build/vite/vite-builder.ts +107 -87
  179. package/src/cmd/cloud/deploy.ts +99 -31
  180. package/src/cmd/cloud/keyvalue/create-namespace.ts +3 -1
  181. package/src/cmd/cloud/keyvalue/delete-namespace.ts +3 -1
  182. package/src/cmd/cloud/keyvalue/delete.ts +3 -1
  183. package/src/cmd/cloud/keyvalue/set.ts +4 -2
  184. package/src/cmd/cloud/stream/get.ts +2 -9
  185. package/src/cmd/cloud/vector/delete-namespace.ts +89 -0
  186. package/src/cmd/cloud/vector/index.ts +21 -4
  187. package/src/cmd/cloud/vector/list-namespaces.ts +46 -0
  188. package/src/cmd/cloud/vector/stats.ts +160 -0
  189. package/src/cmd/cloud/vector/upsert.ts +216 -0
  190. package/src/cmd/dev/file-watcher.ts +101 -32
  191. package/src/cmd/dev/index.ts +304 -111
  192. package/src/cmd/dev/skills.ts +82 -0
  193. package/src/cmd/dev/sync.ts +7 -7
  194. package/src/cmd/index.ts +1 -0
  195. package/src/cmd/project/create.ts +3 -0
  196. package/src/cmd/project/template-flow.ts +37 -5
  197. package/src/cmd/setup/index.ts +1 -0
  198. package/src/cmd/upgrade/index.ts +68 -4
  199. package/src/domain.ts +273 -0
  200. package/src/schema-generator.ts +23 -0
  201. package/src/steps.ts +16 -5
  202. package/src/tui/prompt.ts +11 -5
  203. package/src/tui.ts +21 -2
  204. package/src/types/md.d.ts +8 -0
  205. package/src/types.ts +12 -3
  206. package/dist/cmd/cloud/domain.d.ts +0 -17
  207. package/dist/cmd/cloud/domain.d.ts.map +0 -1
  208. package/dist/cmd/cloud/domain.js +0 -79
  209. package/dist/cmd/cloud/domain.js.map +0 -1
  210. package/src/cmd/cloud/domain.ts +0 -100
package/AGENTS.md CHANGED
@@ -6,85 +6,27 @@ Bun-native CLI framework for Agentuity applications. Provides command structure,
6
6
 
7
7
  ## Commands
8
8
 
9
- - **Build**: `bun run build` (generates type declarations only)
10
- - **Typecheck**: `bun run typecheck` (runs TypeScript type checking)
11
- - **Clean**: `bun run clean` (removes dist/)
12
- - **Test CLI**: `bun bin/cli.ts` (run CLI directly during development)
9
+ - **Build**: `bun run build`
10
+ - **Typecheck**: `bun run typecheck`
11
+ - **Clean**: `bun run clean`
12
+ - **Test CLI**: `bun bin/cli.ts [command]`
13
13
 
14
14
  ## Architecture
15
15
 
16
16
  - **Runtime**: Bun 1.3+ (required for YAML support)
17
- - **CLI Framework**: commander.js for command parsing and routing
18
- - **Build target**: Distributes TypeScript source (no bundling needed)
19
- - **Config**: YAML files loaded from `~/.config/agentuity/production.yaml`
17
+ - **Framework**: commander.js
18
+ - **Config**: YAML from `~/.config/agentuity/production.yaml`
20
19
  - **Commands**: Auto-discovered from `src/cmd/` directories
21
20
 
22
- ## Structure
23
-
24
- ```text
25
- src/
26
- ├── index.ts # Public API exports
27
- ├── cli.ts # CLI framework setup
28
- ├── runtime.ts # Bun runtime validation
29
- ├── config.ts # YAML config loader
30
- ├── logger.ts # Structured logger with log levels
31
- ├── banner.ts # Startup banner display
32
- ├── types.ts # TypeScript type definitions
33
- └── cmd/
34
- ├── index.ts # Command auto-discovery
35
- ├── auth/ # Authentication commands
36
- ├── project/ # Project management commands
37
- ├── version/ # Version information
38
- ├── build/ # Build command (alias: bundle)
39
- ├── dev/ # Development server
40
- ├── profile/ # Profile management (hidden - internal use)
41
- ├── cloud/ # Cloud commands group
42
- │ ├── keyvalue/ # Key-value storage
43
- │ ├── agents/ # Agent management
44
-
45
- │ ├── env/ # Environment variables
46
- │ ├── secret/ # Secrets management
47
- │ └── ... # Other cloud commands
48
- └── ai/ # AI commands group
49
- ├── capabilities/ # CLI capabilities
50
- ├── prompt/ # Prompt generation
51
- └── schema/ # Schema output
52
- bin/
53
- └── cli.ts # CLI entry point
54
- ```
55
-
56
- ## Code Style
57
-
58
- - **Bun-specific** - Uses Bun 1.3+ features (YAML, semver, colors)
59
- - **TypeScript** - All code is TypeScript with strict mode
60
- - **Type-safe options** - Always define interfaces for command options
61
- - **Commander.js patterns** - Follow commander.js best practices
62
- - **Async/await** - All I/O operations are async
63
-
64
- ## Important Conventions
65
-
66
- - **Command structure** - Each command is a directory in `src/cmd/` with index.ts
67
- - **Subcommands** - Define in separate files, export as `SubcommandDefinition`
68
- - **Type safety** - Always create interfaces for command options (never use `any`)
69
- - **TUI Output** - Use `tui.*` helpers for formatted output without log prefixes:
70
- - `tui.success()`, `tui.error()`, `tui.warning()`, `tui.info()` for semantic messages
71
- - `tui.bold()`, `tui.muted()`, `tui.link()` for text formatting
72
- - See [src/tui.md](src/tui.md) for full documentation
73
- - **Logging** - Use `ctx.logger` for standard logging (includes prefixes like `[INFO]`):
74
- - `logger.fatal(message)` - Log error and exit with code 1 (returns `never`)
75
- - Use `logger.fatal()` instead of `logger.error()` + `process.exit(1)`
76
- - **Config** - Commands validate their own config requirements
77
- - **Bun** - Always use Bun provided APIs vs legacy Node.JS APIs. For example use `Bun.file(f).exists()` instead of `existsSync(f)`
21
+ ## Code Conventions
78
22
 
79
- ## Creating New Commands
23
+ - **Command structure**: Each command is a directory in `src/cmd/` with `index.ts`
24
+ - **Type safety**: Always define interfaces for command options (never `any`)
25
+ - **TUI output**: Use `tui.*` helpers for formatted output (see `src/tui.md`)
26
+ - **Logging**: Use `ctx.logger`; `logger.fatal()` logs and exits with code 1
27
+ - **Bun APIs**: Use `Bun.file(f).exists()` not `existsSync(f)`
80
28
 
81
- 1. Create directory in `src/cmd/`, e.g., `src/cmd/deploy/`
82
- 2. Create `index.ts` with `CommandDefinition`
83
- 3. For subcommands, create separate files with `SubcommandDefinition`
84
- 4. Export default from index.ts
85
- 5. Command is auto-discovered on next run
86
-
87
- Example:
29
+ ## Creating Commands
88
30
 
89
31
  ```typescript
90
32
  // src/cmd/deploy/index.ts
@@ -99,24 +41,13 @@ interface DeployOptions {
99
41
  export const deployCommand: CommandDefinition = {
100
42
  name: 'deploy',
101
43
  description: 'Deploy to an environment',
102
-
103
44
  register(program: Command, ctx: CommandContext) {
104
45
  program
105
46
  .command('deploy <environment>')
106
- .description('Deploy to an environment')
107
47
  .option('-f, --force', 'Force deployment', false)
108
48
  .option('--dry-run', 'Dry run mode', false)
109
49
  .action(async (environment: string, options: DeployOptions) => {
110
- const { logger, config } = ctx;
111
-
112
- logger.info(`Deploying to: ${environment}`);
113
-
114
- if (options.dryRun) {
115
- logger.info('Dry run mode - no changes made');
116
- return;
117
- }
118
-
119
- // Implementation here
50
+ ctx.logger.info(`Deploying to: ${environment}`);
120
51
  });
121
52
  },
122
53
  };
@@ -124,112 +55,12 @@ export const deployCommand: CommandDefinition = {
124
55
  export default deployCommand;
125
56
  ```
126
57
 
127
- ## Build Architecture (Vite + Bun)
128
-
129
- The CLI uses a hybrid Vite + Bun build system:
130
-
131
- ### Production Builds (`agentuity build`)
132
-
133
- 1. **Client Assets** - Vite builds frontend code:
134
- - Input: `src/web/index.html` + React components
135
- - Output: `.agentuity/client/` with manifest
136
- - CDN support for production deployments
137
- - Environment variables: `VITE_*`, `AGENTUITY_PUBLIC_*`, `PUBLIC_*`
138
-
139
- 2. **Workbench** - Vite builds workbench UI (if enabled):
140
- - Input: `.agentuity/workbench-src/` (generated)
141
- - Output: `.agentuity/workbench/` with manifest
142
- - Base path: configured workbench route
143
-
144
- 3. **Server Bundle** - Bun.build creates single server file:
145
- - Input: `src/generated/app.ts`
146
- - Output: `.agentuity/app.js`
147
- - Externals: Heavy runtime deps (bun, fsevents, sharp, ws, etc.)
148
- - Minification: Controlled by `--dev` flag
149
-
150
- ### Development Server (`agentuity dev`)
151
-
152
- Single Bun server + Vite asset server architecture:
153
-
154
- - **Bun Server (port 3500):**
155
- - Handles ALL HTTP + WebSocket requests
156
- - Routes API calls, serves workbench
157
- - Proxies frontend assets to Vite
158
- - Uses native Bun WebSocket support (`hono/bun`)
159
-
160
- - **Vite Asset Server (dynamic port, typically 5173):**
161
- - HMR and React Fast Refresh ONLY
162
- - Asset transformation (TypeScript, JSX, CSS)
163
- - Browser never connects directly to Vite
164
- - Proxied through Bun server
165
-
166
- ### Build Utilities
167
-
168
- - **`bun-version-checker.ts`** - Enforces minimum Bun version (>=1.3.3)
169
- - **`dependency-checker.ts`** - Auto-upgrades `@agentuity/*` packages
170
- - **`metadata-generator.ts`** - Creates `agentuity.metadata.json`
171
- - **`agent-discovery.ts`** - AST-based agent discovery
172
- - **`route-discovery.ts`** - AST-based route discovery
173
- - **`registry-generator.ts`** - Generates type-safe registries
174
-
175
- ### Build Flags
176
-
177
- - `--dev` - Development build (no minification, inline sourcemaps, faster)
178
- - `--skipTypeCheck` - Skip TypeScript validation after build
179
- - `--outdir` - Custom output directory (default: `.agentuity`)
180
-
181
- ## Testing
182
-
183
- - Test by running: `bun bin/cli.ts [command]`
184
- - Test with log levels: `bun bin/cli.ts --log-level=debug [command]`
185
- - Test with custom config: `bun bin/cli.ts --config=/path/to/production.yaml [command]`
186
- - Debug mode: `bun bin/cli.ts --log-level=debug [command]` (shows API request/response details)
187
-
188
- ### Test Suite
189
-
190
- - **`test:create`** - Integration test for create command (uses source CLI)
191
- - **`test:bundled-create`** - Tests bundled executable create command (requires pre-built binary)
192
- - **`test:exit-codes`** - Tests CLI exit codes
193
- - **`test:response-schema`** - Tests response schema validation
194
- - **`test:batch`** - Tests batch reporting
195
- - **`test:envelope`** - Tests response envelope
196
-
197
- ### Testing Bundled Executable
198
-
199
- To test the bundled executable (prevents regressions like missing dependencies):
200
-
201
- ```bash
202
- # 1. Build executable for your platform
203
- ./scripts/build-executables.ts --skip-sign --platform=darwin-arm64
204
-
205
- # 2. Run bundled create test
206
- bun test:bundled-create
207
-
208
- # Or specify binary path
209
- bun scripts/test-bundled-create.ts --binary=./dist/bin/agentuity-darwin-arm64
210
- ```
211
-
212
- This test verifies:
213
-
214
- - Bundled executable can run `create` command without "Cannot find package" errors
215
- - All dependencies are properly bundled or dynamically imported
216
- - Project files are created correctly
217
-
218
- ### Version Check Bypass (Development Only)
219
-
220
- For local development, version checks can be bypassed (in priority order):
221
-
222
- 1. **CLI flag** (highest): `--skip-version-check`
223
- 2. **Environment variable**: `AGENTUITY_SKIP_VERSION_CHECK=1`
224
- 3. **Config override**: Add `skip_version_check: true` to profile's `overrides` section
225
- 4. **Auto-detection** (lowest): Versions `0.0.x` or `dev` are automatically skipped
58
+ ## Build Architecture
226
59
 
227
- See `.dev-notes.md` for more development tips.
60
+ See [docs/build-architecture.md](docs/build-architecture.md) for Vite + Bun build system details.
228
61
 
229
- ## Publishing Checklist
62
+ ## Publishing
230
63
 
231
- 1. Run `bun run build` to generate type declarations
64
+ 1. Run `bun run build`
232
65
  2. Test CLI with `bun bin/cli.ts`
233
- 3. Verify banner displays correctly with no args
234
- 4. Test example commands work
235
- 5. Depends on `@agentuity/core` and `commander` (published separately)
66
+ 3. Depends on `@agentuity/core` and `commander`
package/bin/cli.ts CHANGED
@@ -23,7 +23,10 @@ function cleanupAndExit() {
23
23
  process.stdout.write('\x1B[?25h'); // Restore cursor
24
24
  }
25
25
  process.exitCode = 0;
26
- process.exit(0);
26
+ // Use the reserved exit function if available (for dev mode with runtime protection)
27
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
+ const exit = (globalThis as any).AGENTUITY_PROCESS_EXIT || process.exit;
29
+ exit(0);
27
30
  }
28
31
 
29
32
  // Handle Ctrl+C gracefully
@@ -66,7 +69,9 @@ if (
66
69
  const commands = await discoverCommands();
67
70
  const cliSchema = generateCLISchema(program, commands, version);
68
71
  console.log(JSON.stringify(cliSchema, null, 2));
69
- process.exit(0);
72
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
+ const exit = (globalThis as any).AGENTUITY_PROCESS_EXIT || process.exit;
74
+ exit(0);
70
75
  }
71
76
 
72
77
  // Check for legacy CLI and warn user (skip if --skip-legacy-check flag is present)
@@ -146,6 +151,8 @@ await registerCommands(program, commands, ctx as unknown as CommandContext);
146
151
  try {
147
152
  await program.parseAsync(process.argv);
148
153
  } catch (error) {
154
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
155
+ const exit = (globalThis as any).AGENTUITY_PROCESS_EXIT || process.exit;
149
156
  // Don't log error if it's from Ctrl+C, user cancellation, or signal termination
150
157
  if (error instanceof Error) {
151
158
  const msg = error.message.toLowerCase();
@@ -157,15 +164,15 @@ try {
157
164
  msg.includes('canceled') || // US
158
165
  msg === ''
159
166
  ) {
160
- process.exit(0);
167
+ exit(0);
161
168
  }
162
169
  if ('name' in error && error.name === 'AbortError') {
163
- process.exit(0);
170
+ exit(0);
164
171
  }
165
172
  }
166
173
  // Also exit cleanly if error is empty/undefined (user cancellation)
167
174
  if (!error) {
168
- process.exit(0);
175
+ exit(0);
169
176
  }
170
177
  const errorWithMessage = error as { message?: string };
171
178
  if (isStructuredError(error)) {
@@ -177,5 +184,5 @@ try {
177
184
  error
178
185
  );
179
186
  }
180
- process.exit(1);
187
+ exit(1);
181
188
  }
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EACX,iBAAiB,EAEjB,cAAc,EAQd,MAAM,SAAS,CAAC;AAqUjB,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA2MjE;AAs2BD,wBAAsB,gBAAgB,CACrC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC,CAgMf"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EACX,iBAAiB,EAEjB,cAAc,EAQd,MAAM,SAAS,CAAC;AAwWjB,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA2MjE;AAs2BD,wBAAsB,gBAAgB,CACrC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC,CAgMf"}
package/dist/cli.js CHANGED
@@ -102,33 +102,62 @@ async function executeOrValidate(ctx, commandName, handler, hasResponseSchema, w
102
102
  /**
103
103
  * Handle validation error - output structured result in validate mode, otherwise log and exit
104
104
  */
105
+ /**
106
+ * Format a user-friendly message for a validation issue
107
+ */
108
+ function formatValidationIssueMessage(field, message) {
109
+ // Detect "expected X, received undefined" pattern (missing required value)
110
+ if (message.includes('received undefined')) {
111
+ if (field && field !== 'unknown') {
112
+ return `Missing required option: --${field}`;
113
+ }
114
+ return 'Missing required value';
115
+ }
116
+ // Detect "expected X, received Y" pattern (wrong type)
117
+ const typeMatch = message.match(/expected (\w+), received (\w+)/i);
118
+ if (typeMatch) {
119
+ const [, expected, received] = typeMatch;
120
+ if (field && field !== 'unknown') {
121
+ return `Invalid value for --${field}: expected ${expected}, got ${received}`;
122
+ }
123
+ return `Invalid value: expected ${expected}, got ${received}`;
124
+ }
125
+ // Default: include the field name if we have it
126
+ if (field && field !== 'unknown') {
127
+ return `--${field}: ${message}`;
128
+ }
129
+ return message;
130
+ }
105
131
  function handleValidationError(error, commandName, baseCtx) {
106
132
  if (error && typeof error === 'object' && 'issues' in error) {
107
133
  const issues = error.issues;
134
+ const formattedIssues = issues.map((issue) => {
135
+ const field = issue.path?.length ? issue.path.join('.') : 'unknown';
136
+ return {
137
+ field,
138
+ message: issue.message,
139
+ formatted: formatValidationIssueMessage(field, issue.message),
140
+ };
141
+ });
108
142
  if (isValidateMode(baseCtx.options)) {
109
143
  // In validate mode, output structured validation result
110
144
  const result = {
111
145
  valid: false,
112
146
  command: commandName,
113
- errors: issues.map((issue) => ({
114
- field: issue.path?.length ? issue.path.join('.') : 'unknown',
115
- message: issue.message,
116
- })),
147
+ errors: formattedIssues.map(({ field, message }) => ({ field, message })),
117
148
  };
118
149
  outputValidation(result, baseCtx.options);
119
150
  process.exit(ExitCode.VALIDATION_ERROR);
120
151
  }
121
152
  else {
122
- // Use centralized error handling
153
+ // Build a clear, actionable error message
154
+ const errorMessages = formattedIssues.map((i) => i.formatted);
155
+ const primaryMessage = errorMessages.length === 1 ? errorMessages[0] : 'Invalid options or arguments';
123
156
  exitWithError({
124
157
  code: ErrorCode.VALIDATION_FAILED,
125
- message: 'Validation error',
126
- details: {
127
- issues: issues.map((issue) => ({
128
- field: issue.path?.length ? issue.path.join('.') : 'unknown',
129
- message: issue.message,
130
- })),
131
- },
158
+ message: primaryMessage,
159
+ details: errorMessages.length > 1 ? { errors: errorMessages } : undefined,
160
+ suggestions: [`Run 'agentuity ${commandName} --help' for usage information`],
132
161
  }, baseCtx.logger, baseCtx.options.errorFormat ?? 'text');
133
162
  }
134
163
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO,mCAgBlB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,OAAO,mCAoBlB,CAAC"}
@@ -2,6 +2,7 @@ import { createCommand } from '../../types';
2
2
  import capabilitiesCommand from './capabilities';
3
3
  import promptCommand from './prompt';
4
4
  import schemaCommand from './schema';
5
+ import skillsCommand from './skills';
5
6
  import { getCommand } from '../../command-prefix';
6
7
  export const command = createCommand({
7
8
  name: 'ai',
@@ -17,7 +18,11 @@ export const command = createCommand({
17
18
  command: getCommand('ai schema show'),
18
19
  description: 'Output CLI schema for AI consumption',
19
20
  },
21
+ {
22
+ command: getCommand('ai skills generate --output ./skills'),
23
+ description: 'Generate Agent Skills from CLI schema',
24
+ },
20
25
  ],
21
- subcommands: [capabilitiesCommand, promptCommand, schemaCommand],
26
+ subcommands: [capabilitiesCommand, promptCommand, schemaCommand, skillsCommand],
22
27
  });
23
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,mBAAmB,MAAM,gBAAgB,CAAC;AACjD,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC;IACpC,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,kCAAkC;IAC/C,gBAAgB,EAAE,IAAI;IACtB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,QAAQ,EAAE;QACT;YACC,OAAO,EAAE,UAAU,CAAC,sBAAsB,CAAC;YAC3C,WAAW,EAAE,qCAAqC;SAClD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,gBAAgB,CAAC;YACrC,WAAW,EAAE,sCAAsC;SACnD;KACD;IACD,WAAW,EAAE,CAAC,mBAAmB,EAAE,aAAa,EAAE,aAAa,CAAC;CAChE,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,mBAAmB,MAAM,gBAAgB,CAAC;AACjD,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC;IACpC,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,kCAAkC;IAC/C,gBAAgB,EAAE,IAAI;IACtB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,QAAQ,EAAE;QACT;YACC,OAAO,EAAE,UAAU,CAAC,sBAAsB,CAAC;YAC3C,WAAW,EAAE,qCAAqC;SAClD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,gBAAgB,CAAC;YACrC,WAAW,EAAE,sCAAsC;SACnD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,sCAAsC,CAAC;YAC3D,WAAW,EAAE,uCAAuC;SACpD;KACD;IACD,WAAW,EAAE,CAAC,mBAAmB,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC;CAC/E,CAAC,CAAC"}
@@ -1,3 +1,10 @@
1
1
  export declare const agentSubcommand: import("../../..").SubcommandDefinition;
2
+ /**
3
+ * Get the raw prompt content without hash.
4
+ */
5
+ export declare function getPromptContent(): string;
6
+ /**
7
+ * Generate the agent prompt with hash comment.
8
+ */
2
9
  export declare function generateLLMPrompt(): string;
3
10
  //# sourceMappingURL=agent.d.ts.map