@trikhub/cli 0.6.0 → 0.7.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 (37) hide show
  1. package/README.md +102 -200
  2. package/dist/commands/info.d.ts.map +1 -1
  3. package/dist/commands/info.js +35 -0
  4. package/dist/commands/info.js.map +1 -1
  5. package/dist/commands/init.d.ts.map +1 -1
  6. package/dist/commands/init.js +104 -27
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/install.d.ts.map +1 -1
  9. package/dist/commands/install.js +4 -1
  10. package/dist/commands/install.js.map +1 -1
  11. package/dist/commands/lint.d.ts.map +1 -1
  12. package/dist/commands/lint.js +20 -1
  13. package/dist/commands/lint.js.map +1 -1
  14. package/dist/commands/list.d.ts.map +1 -1
  15. package/dist/commands/list.js +18 -1
  16. package/dist/commands/list.js.map +1 -1
  17. package/dist/commands/mcp.d.ts.map +1 -1
  18. package/dist/commands/mcp.js +2 -8
  19. package/dist/commands/mcp.js.map +1 -1
  20. package/dist/commands/publish.d.ts.map +1 -1
  21. package/dist/commands/publish.js.map +1 -1
  22. package/dist/lib/registry.d.ts.map +1 -1
  23. package/dist/lib/registry.js +4 -14
  24. package/dist/lib/registry.js.map +1 -1
  25. package/dist/templates/python.d.ts +1 -24
  26. package/dist/templates/python.d.ts.map +1 -1
  27. package/dist/templates/python.js +2 -262
  28. package/dist/templates/python.js.map +1 -1
  29. package/dist/templates/typescript.d.ts +13 -11
  30. package/dist/templates/typescript.d.ts.map +1 -1
  31. package/dist/templates/typescript.js +219 -173
  32. package/dist/templates/typescript.js.map +1 -1
  33. package/package.json +5 -8
  34. package/dist/lib/validator.d.ts +0 -33
  35. package/dist/lib/validator.d.ts.map +0 -1
  36. package/dist/lib/validator.js +0 -133
  37. package/dist/lib/validator.js.map +0 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # TrikHub CLI
2
2
 
3
- The official command-line tool for [TrikHub](https://trikhub.com) - install and manage AI skills (triks) for your applications.
3
+ The official command-line tool for [TrikHub](https://trikhub.com) - install and manage AI agent triks for your applications.
4
4
 
5
5
  ## Installation
6
6
 
@@ -13,7 +13,7 @@ npm install -g @trikhub/cli
13
13
  ```bash
14
14
  # Create a new trik
15
15
  trik init ts # TypeScript
16
- trik init py # Python
16
+ trik init py # Python (coming soon)
17
17
 
18
18
  # Search for triks
19
19
  trik search article
@@ -27,6 +27,9 @@ trik list
27
27
  # Get trik info
28
28
  trik info @acme/article-search
29
29
 
30
+ # Validate a trik
31
+ trik lint .
32
+
30
33
  # Upgrade a trik
31
34
  trik upgrade @acme/article-search
32
35
 
@@ -38,14 +41,11 @@ trik uninstall @acme/article-search
38
41
 
39
42
  ### `trik init <language>`
40
43
 
41
- Create a new trik project with boilerplate code.
44
+ Create a new trik project with v2 handoff architecture boilerplate.
42
45
 
43
46
  ```bash
44
47
  # Create a TypeScript trik
45
48
  trik init ts
46
-
47
- # Create a Python trik
48
- trik init py
49
49
  ```
50
50
 
51
51
  The interactive wizard will prompt for:
@@ -58,6 +58,9 @@ The interactive wizard will prompt for:
58
58
  - **Category** - utilities, productivity, developer, etc.
59
59
  - **Storage** - Enable persistent key-value storage
60
60
  - **Configuration** - Enable environment variables (API keys, etc.)
61
+ - **Agent mode** - `conversational` (LLM-powered, multi-turn) or `tool` (export native tools)
62
+ - **Handoff description** - What the trik does (used to generate the handoff tool)
63
+ - **Domain tags** - Expertise areas for routing (e.g., "content curation, article writing")
61
64
  - **Location** - Where to create the project
62
65
 
63
66
  #### Generated Structure
@@ -66,45 +69,51 @@ The interactive wizard will prompt for:
66
69
 
67
70
  ```text
68
71
  my-trik/
69
- ├── manifest.json # Trik definition
70
- ├── trikhub.json # Registry metadata
72
+ ├── manifest.json # v2 trik manifest with agent block
73
+ ├── trikhub.json # Registry metadata
71
74
  ├── package.json
72
75
  ├── tsconfig.json
73
76
  ├── src/
74
- └── index.ts # Main entry point
75
- ├── test.ts # Local test script
77
+ ├── agent.ts # Agent entry point using wrapAgent()
78
+ ├── tools/
79
+ │ │ └── example.ts # Example tool with zod schema
80
+ │ └── prompts/
81
+ │ └── system.md # System prompt (conversational mode)
76
82
  ├── README.md
77
83
  └── .gitignore
78
84
  ```
79
85
 
80
- **Python:**
81
-
82
- ```text
83
- my-trik/
84
- ├── trikhub.json # Registry metadata
85
- ├── pyproject.toml
86
- ├── test.py # Local test script
87
- ├── README.md
88
- ├── .gitignore
89
- └── my_trik/ # Package directory
90
- ├── __init__.py
91
- ├── manifest.json # Trik definition
92
- └── graph.py # Main entry point
93
- ```
94
-
95
86
  #### Testing Your Trik
96
87
 
97
88
  ```bash
98
- # TypeScript
99
89
  cd my-trik
100
90
  npm install
101
- npm test
91
+ npm run build
92
+ trik lint . # Validate manifest and quality score
93
+ ```
102
94
 
103
- # Python
104
- cd my-trik
105
- python test.py
95
+ ### `trik lint <path>`
96
+
97
+ Validate a trik's manifest and source files. Shows errors, warnings, and a quality score.
98
+
99
+ ```bash
100
+ trik lint .
101
+ trik lint /path/to/my-trik
102
+
103
+ # Treat warnings as errors
104
+ trik lint . --warnings-as-errors
105
+
106
+ # Skip specific rules
107
+ trik lint . --skip manifest-completeness
106
108
  ```
107
109
 
110
+ The quality score (0-100) evaluates:
111
+ - Handoff description quality
112
+ - Domain tag specificity
113
+ - System prompt presence (conversational mode)
114
+ - Tool log template coverage
115
+ - Log schema constraint safety
116
+
108
117
  ### `trik install <name>`
109
118
 
110
119
  Install a trik from the registry.
@@ -122,15 +131,13 @@ trik install @scope/trik-name --version 1.2.3
122
131
 
123
132
  The install process:
124
133
 
125
- 1. **Tries npm registry first** - If the package is published to npm, installs via your package manager (npm/pnpm/yarn)
126
- 2. **Falls back to TrikHub registry** - For GitHub-only packages, downloads the tarball from GitHub Releases
127
- 3. Adds the dependency to `package.json` (npm packages use version, TrikHub packages use tarball URL)
128
- 4. Extracts to `node_modules/`
134
+ 1. **Checks TrikHub registry first** - The primary source for triks
135
+ 2. **Same-language triks**: adds git URL to `package.json` and installs via npm/pnpm/yarn
136
+ 3. **Cross-language triks**: downloads to `.trikhub/triks/`
137
+ 4. **Falls back to npm** - If not found on TrikHub, tries npm as fallback
129
138
  5. **Validates** the trik (manifest structure, security rules)
130
139
  6. Registers the trik in `.trikhub/config.json`
131
140
 
132
- This hybrid approach means triks work like regular npm packages while supporting GitHub-only distributions.
133
-
134
141
  ### `trik search <query>`
135
142
 
136
143
  Search for triks in the registry.
@@ -142,22 +149,30 @@ trik search "web scraping"
142
149
 
143
150
  ### `trik list`
144
151
 
145
- List all installed triks.
152
+ List all installed triks with their agent mode.
146
153
 
147
154
  ```bash
148
155
  trik list
149
156
  trik list --json # Output as JSON
150
157
  ```
151
158
 
159
+ Output shows each trik's name, version, description, and agent mode (`[conversational]` or `[tool]`).
160
+
152
161
  ### `trik info <name>`
153
162
 
154
- Show detailed information about a trik.
163
+ Show detailed information about a trik, including v2 agent info for locally installed triks.
155
164
 
156
165
  ```bash
157
166
  trik info @acme/article-search
158
167
  trik info @acme/article-search --json # Output as JSON
159
168
  ```
160
169
 
170
+ For installed triks, displays:
171
+ - **Agent mode** - conversational or tool
172
+ - **Domain tags** - areas of expertise
173
+ - **Tools** - declared tool names
174
+ - **Quality score** - manifest quality (0-100)
175
+
161
176
  ### `trik uninstall <name>`
162
177
 
163
178
  Remove an installed trik.
@@ -191,46 +206,8 @@ trik sync
191
206
 
192
207
  # Preview what would be synced
193
208
  trik sync --dry-run
194
-
195
- # Output as JSON
196
- trik sync --json
197
- ```
198
-
199
- This is useful when you manually add a trik to `package.json` and run `npm install`. The sync command will detect the trik and register it.
200
-
201
- ## Authentication
202
-
203
- ### `trik login`
204
-
205
- Authenticate with TrikHub using your GitHub account.
206
-
207
- ```bash
208
- trik login
209
209
  ```
210
210
 
211
- This starts a device authorization flow:
212
- 1. Opens a browser to GitHub
213
- 2. Displays a code to enter
214
- 3. After authorization, your session is saved locally
215
-
216
- ### `trik logout`
217
-
218
- Remove saved authentication.
219
-
220
- ```bash
221
- trik logout
222
- ```
223
-
224
- ### `trik whoami`
225
-
226
- Show the currently authenticated user.
227
-
228
- ```bash
229
- trik whoami
230
- ```
231
-
232
- ## Publishing
233
-
234
211
  ### `trik publish`
235
212
 
236
213
  Publish a trik to the TrikHub registry.
@@ -242,52 +219,68 @@ trik publish
242
219
  # Or specify a directory
243
220
  trik publish --directory /path/to/my-trik
244
221
 
245
- # Publish a specific version
222
+ # Publish a specific version tag
246
223
  trik publish --tag 1.2.0
247
-
248
- # Skip GitHub release creation (create it manually)
249
- trik publish --skip-release
250
224
  ```
251
225
 
252
226
  **Prerequisites:**
253
227
 
254
228
  - Logged in with `trik login`
255
- - GitHub CLI (`gh`) installed and authenticated
256
- - Write access to the GitHub repository
229
+ - Git tag pushed to remote matching the manifest version
230
+ - `dist/` directory committed (for TypeScript triks)
257
231
 
258
- ### Publishing Flow
232
+ **Publishing flow:**
259
233
 
260
- The CLI will:
261
-
262
- 1. Validate your trik structure (manifest.json, trikhub.json, package.json, dist/)
263
- 2. Create an **npm-compatible tarball** with files inside a `package/` directory
264
- 3. Compute SHA-256 hash for integrity verification
265
- 4. Create a GitHub Release with the tarball attached
266
- 5. Register the trik with the TrikHub registry
267
-
268
- The tarball format is compatible with npm, so users can install directly via the tarball URL.
234
+ 1. Validate trik structure (manifest.json, trikhub.json)
235
+ 2. Verify git tag exists on remote
236
+ 3. Check `dist/` is committed
237
+ 4. Register with the TrikHub registry
269
238
 
270
239
  ### Required Files
271
240
 
272
241
  ```
273
242
  your-trik/
274
- ├── package.json # npm package definition (required)
275
- ├── manifest.json # Trik manifest (required)
243
+ ├── manifest.json # v2 trik manifest (required)
276
244
  ├── trikhub.json # Registry metadata (required)
277
- ├── dist/
278
- └── graph.js # Compiled entry point (required)
279
- └── README.md # Documentation (recommended)
245
+ ├── package.json # npm package definition (required)
246
+ └── dist/
247
+ └── agent.js # Compiled entry point (required)
280
248
  ```
281
249
 
282
250
  ### Manifest Requirements
283
251
 
284
- Your `manifest.json` must pass validation:
252
+ Your `manifest.json` must pass v2 validation:
285
253
 
286
- - Use `enum`, `const`, or `pattern` to constrain strings in `agentDataSchema`
287
- - Template mode requires `responseTemplates`
288
- - Passthrough mode requires `userContentSchema`
254
+ - `schemaVersion: 2` required
255
+ - `agent` block with `mode` and `domain` required
256
+ - Conversational mode requires `handoffDescription` and `systemPrompt`/`systemPromptFile`
257
+ - Log schema strings must be constrained (enum, format, pattern, or maxLength)
289
258
 
290
- See the [Trikhub Manifest Schema](https://trikhub.com/docs/reference/manifest-schema) for manifest schema details.
259
+ ## Authentication
260
+
261
+ ### `trik login`
262
+
263
+ Authenticate with TrikHub using your GitHub account.
264
+
265
+ ```bash
266
+ trik login
267
+ ```
268
+
269
+ ### `trik logout`
270
+
271
+ Remove saved authentication.
272
+
273
+ ```bash
274
+ trik logout
275
+ ```
276
+
277
+ ### `trik whoami`
278
+
279
+ Show the currently authenticated user.
280
+
281
+ ```bash
282
+ trik whoami
283
+ ```
291
284
 
292
285
  ## Trik Names
293
286
 
@@ -302,7 +295,7 @@ Triks use scoped names similar to npm:
302
295
  - **Name**: The trik name (e.g., `article-search`)
303
296
  - **Version**: Optional semver version (e.g., `1.2.3`)
304
297
 
305
- **Note:** All trik names are normalized to lowercase. `@Acme/Article-Search` becomes `@acme/article-search`.
298
+ All trik names are normalized to lowercase.
306
299
 
307
300
  ## How Triks Work with npm
308
301
 
@@ -331,24 +324,6 @@ Triks are installed as regular npm packages in your project's `node_modules/`. T
331
324
 
332
325
  This file is used by the TrikHub Gateway to know which packages to load as triks.
333
326
 
334
- ### TrikHub Registry Packages
335
-
336
- For packages not published to npm (GitHub-only), the CLI:
337
-
338
- 1. Downloads the tarball from GitHub Releases
339
- 2. Extracts to `node_modules/`
340
- 3. Adds the tarball URL to `package.json`
341
-
342
- ```json
343
- {
344
- "dependencies": {
345
- "@acme/article-search": "https://github.com/acme/article-search/releases/download/v1.0.0/article-search-1.0.0.tar.gz"
346
- }
347
- }
348
- ```
349
-
350
- This means `npm install` works natively - npm fetches from the tarball URL.
351
-
352
327
  ## File Locations
353
328
 
354
329
  | Path | Description |
@@ -358,105 +333,32 @@ This means `npm install` works natively - npm fetches from the tarball URL.
358
333
  | `./package.json` | Trik dependencies (managed by npm) |
359
334
  | `./node_modules/` | Installed triks (managed by npm) |
360
335
 
361
- ## Validation
362
-
363
- Every installed trik is validated to ensure security:
364
-
365
- - **Manifest structure** - Required fields, valid schemas
366
- - **Privilege separation** - No unconstrained strings in `agentDataSchema`
367
- - **Entry point** - Compiled code exists at specified path
368
- - **Response mode compliance** - Template mode has templates, passthrough has userContentSchema
369
-
370
- Triks that fail validation are rejected to prevent prompt injection vulnerabilities.
371
-
372
336
  ## Configuration
373
337
 
374
338
  ### Registry URL
375
339
 
376
- The registry URL is determined by environment:
377
-
378
340
  | Environment | Registry URL |
379
341
  | ----------- | ------------ |
380
342
  | Production (default) | `https://api.trikhub.com` |
381
343
  | Development (`--dev` flag) | `http://localhost:3001` |
382
344
 
383
- Use the `--dev` flag for local development:
384
-
385
345
  ```bash
386
346
  trik --dev search article
387
347
  trik --dev install @scope/name
388
348
  ```
389
349
 
390
- Alternatively, set `NODE_ENV=development`:
391
-
392
- ```bash
393
- export NODE_ENV=development
394
- trik search article
395
- ```
396
-
397
- You can also override the registry URL with an environment variable:
350
+ Override with environment variable:
398
351
 
399
352
  ```bash
400
353
  export TRIKHUB_REGISTRY=http://localhost:3000
401
354
  ```
402
355
 
403
- ### Global Config File (`~/.trikhub/config.json`)
404
-
405
- Stores authentication and CLI settings:
406
-
407
- ```json
408
- {
409
- "analytics": true,
410
- "authToken": "...",
411
- "authExpiresAt": "2026-03-09T11:24:12.401Z",
412
- "publisherUsername": "your-github-username"
413
- }
414
- ```
415
-
416
- | Field | Description |
417
- | ----- | ----------- |
418
- | `analytics` | Whether to send anonymous download analytics |
419
- | `authToken` | Authentication token (set by `trik login`) |
420
- | `authExpiresAt` | Token expiration timestamp |
421
- | `publisherUsername` | Authenticated GitHub username |
356
+ ## See Also
422
357
 
423
- ### Project Config File (`.trikhub/config.json`)
424
-
425
- Tracks which npm packages are triks:
426
-
427
- ```json
428
- {
429
- "triks": ["@acme/article-search", "@acme/web-scraper"],
430
- "trikhub": {
431
- "@acme/article-search": "1.0.0"
432
- }
433
- }
434
- ```
435
-
436
- | Field | Description |
437
- | ----- | ----------- |
438
- | `triks` | List of npm package names that are triks |
439
- | `trikhub` | Packages installed from TrikHub registry (version tracking) |
440
-
441
- ## Development
442
-
443
- ```bash
444
- # Clone the repo
445
- git clone https://github.com/trikhub/cli
446
- cd cli
447
-
448
- # Install dependencies
449
- pnpm install
450
-
451
- # Build
452
- pnpm build
453
-
454
- # Run locally
455
- node dist/cli.js --help
456
-
457
- # With local registry
458
- TRIKHUB_REGISTRY=http://localhost:3000 node dist/cli.js search article
459
- ```
358
+ - [@trikhub/gateway](../gateway) - Core gateway library with handoff routing
359
+ - [@trikhub/server](../server) - HTTP server for remote gateway
360
+ - [@trikhub/manifest](../manifest) - Manifest types and validation
361
+ - [@trikhub/sdk](../sdk) - SDK for building triks (`wrapAgent()`, `transferBackTool`)
460
362
 
461
363
  ## License
462
364
 
@@ -1 +1 @@
1
- {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAgGf"}
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAgIf"}
@@ -3,8 +3,11 @@
3
3
  *
4
4
  * Shows detailed information about a trik.
5
5
  */
6
+ import { readFileSync, existsSync } from 'node:fs';
7
+ import { join } from 'node:path';
6
8
  import chalk from 'chalk';
7
9
  import ora from 'ora';
10
+ import { validateManifest } from '@trikhub/manifest';
8
11
  import { parseTrikName } from '../types.js';
9
12
  import { registry } from '../lib/registry.js';
10
13
  import { isTrikInstalled, getInstalledTrik, getTrikPath } from '../lib/storage.js';
@@ -37,6 +40,38 @@ export async function infoCommand(trikInput, options) {
37
40
  console.log(chalk.dim(` Path: ${getTrikPath(fullName)}`));
38
41
  console.log();
39
42
  }
43
+ // V2 Agent Info (from local manifest)
44
+ if (isInstalled) {
45
+ const trikPath = getTrikPath(fullName);
46
+ const manifestPath = join(trikPath, 'manifest.json');
47
+ if (existsSync(manifestPath)) {
48
+ try {
49
+ const manifestData = JSON.parse(readFileSync(manifestPath, 'utf-8'));
50
+ const agent = manifestData.agent;
51
+ if (agent) {
52
+ console.log(chalk.bold('Agent Info'));
53
+ console.log(` Mode: ${chalk.cyan(agent.mode)}`);
54
+ if (agent.domain && agent.domain.length > 0) {
55
+ console.log(` Domain: ${agent.domain.join(', ')}`);
56
+ }
57
+ if (manifestData.tools) {
58
+ const toolNames = Object.keys(manifestData.tools);
59
+ console.log(` Tools: ${toolNames.join(', ')}`);
60
+ }
61
+ const validation = validateManifest(manifestData);
62
+ if (validation.qualityScore !== undefined) {
63
+ const score = validation.qualityScore;
64
+ const color = score >= 80 ? chalk.green : score >= 50 ? chalk.yellow : chalk.red;
65
+ console.log(` Quality: ${color(`${score}/100`)}`);
66
+ }
67
+ console.log();
68
+ }
69
+ }
70
+ catch {
71
+ // Manifest read/parse failed, skip v2 info
72
+ }
73
+ }
74
+ }
40
75
  // Stats
41
76
  console.log(chalk.bold('Stats'));
42
77
  console.log(` Latest version: ${chalk.cyan(trik.latestVersion)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA4DH,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4JpE"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA4DH,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4OpE"}