@agentworkforce/cli 0.1.0 → 0.1.1

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/CHANGELOG.md ADDED
@@ -0,0 +1,8 @@
1
+ # Changelog
2
+
3
+ All notable changes to `@agentworkforce/cli` will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
package/README.md CHANGED
@@ -6,11 +6,17 @@ built-in one from `/personas/`, or a user-local one that extends a built-in.
6
6
 
7
7
  ```
8
8
  agent-workforce agent <persona>[@<tier>] [task...]
9
+ agent-workforce list [flags]
10
+ agent-workforce harness check
9
11
  ```
10
12
 
11
- - No `task` drops you into an interactive session with the harness.
12
- - `task...` given runs one-shot (via `usePersona().sendMessage()`) and streams
13
- output to stdout/stderr.
13
+ - `agent` — no `task` drops you into an interactive session with the harness;
14
+ a `task...` argument runs one-shot (via `usePersona().sendMessage()`) and
15
+ streams output to stdout/stderr.
16
+ - `list` — print the persona catalog as a table (or JSON). See
17
+ [`## List`](#list) below for every flag.
18
+ - `harness check` — probe which harnesses (`claude`, `codex`, `opencode`)
19
+ are installed. See [`## Harness check`](#harness-check) below.
14
20
 
15
21
  ## Install
16
22
 
@@ -53,6 +59,67 @@ agent-workforce agent posthog@best
53
59
  agent-workforce agent my-posthog@best
54
60
  ```
55
61
 
62
+ ## List
63
+
64
+ ```
65
+ agent-workforce list [flags]
66
+ ```
67
+
68
+ Prints the merged persona catalog — everything the `agent` subcommand would
69
+ accept as a selector — including cascade source (`library`, `home`, `pwd`),
70
+ harness, model, description, and tier ("rating"). One row per persona-tier
71
+ combination; by default only the **recommended tier per intent** is shown
72
+ (as declared in
73
+ `packages/workload-router/routing-profiles/default.json`).
74
+
75
+ ### Flags
76
+
77
+ | Flag | Default | Effect |
78
+ | --- | --- | --- |
79
+ | `--all` | off | Show every tier of every persona. Alias: `--no-recommended`. |
80
+ | `--recommended` | on | Only show the recommended tier per intent. Implicit default; mostly useful for undoing `--all` earlier in a wrapper script. |
81
+ | `--filter-rating <tier>` | — | Restrict to a single tier (`best` \| `best-value` \| `minimum`). **Implicitly turns off the recommended-only default**, so filtering by `best` shows every persona's `best` row even when that's not the recommended tier. |
82
+ | `--filter-harness <harness>` | — | Restrict to a single harness (`claude` \| `codex` \| `opencode`). Composable with `--filter-rating` and `--all`. |
83
+ | `--no-display-description` | off | Hide the `DESCRIPTION` column. `--display-description` re-enables it. |
84
+ | `--json` | off | Emit `{ "personas": [...] }` with one object per row. Same field set as the table, useful for scripting. |
85
+ | `-h`, `--help` | — | Print a one-line usage string and exit. |
86
+
87
+ Invalid values for `--filter-rating` / `--filter-harness` fail fast and list
88
+ the allowed values.
89
+
90
+ ### Examples
91
+
92
+ ```sh
93
+ # Default: one row per persona, recommended tier only
94
+ agent-workforce list
95
+
96
+ # See every tier
97
+ agent-workforce list --all
98
+
99
+ # Only the top tier across the catalog — independent of recommendations
100
+ agent-workforce list --filter-rating best
101
+
102
+ # All claude-harness personas (any tier)
103
+ agent-workforce list --all --filter-harness claude
104
+
105
+ # Compact table for a narrow terminal
106
+ agent-workforce list --no-display-description
107
+
108
+ # Machine-readable
109
+ agent-workforce list --json --filter-harness claude
110
+ ```
111
+
112
+ ## Harness check
113
+
114
+ ```
115
+ agent-workforce harness check
116
+ ```
117
+
118
+ Probes your PATH for each supported harness binary (`claude`, `codex`,
119
+ `opencode`) and prints a table with status (`ok` / `missing`), resolved
120
+ version, and the resolved path (or the error, for missing ones). Exit
121
+ code is always `0` — this command is diagnostic, not a gate.
122
+
56
123
  ## Personas
57
124
 
58
125
  A persona is a JSON object describing *what harness runs, which model, with
package/dist/cli.js CHANGED
@@ -1,15 +1,33 @@
1
1
  #!/usr/bin/env node
2
2
  import { spawn, spawnSync } from 'node:child_process';
3
3
  import { constants } from 'node:os';
4
- import { PERSONA_TIERS, personaCatalog, useSelection } from '@agentworkforce/workload-router';
5
- import { buildInteractiveSpec, formatDropWarnings, resolveMcpServersLenient, resolveStringMapLenient } from '@agentworkforce/harness-kit';
4
+ import { HARNESS_VALUES, PERSONA_TAGS, PERSONA_TIERS, personaCatalog, routingProfiles, useSelection } from '@agentworkforce/workload-router';
5
+ import { buildInteractiveSpec, detectHarnesses, formatDropWarnings, resolveMcpServersLenient, resolveStringMapLenient } from '@agentworkforce/harness-kit';
6
6
  import { loadLocalPersonas } from './local-personas.js';
7
- const USAGE = `Usage: agent-workforce agent <persona>[@<tier>] [task...]
7
+ const USAGE = `Usage: agent-workforce <command> [args...]
8
8
 
9
- <persona> repo persona id, repo intent, or local persona id
10
- <tier> ${PERSONA_TIERS.join(' | ')} (default: best-value)
11
- [task] if provided, runs one-shot non-interactively;
12
- otherwise drops into an interactive harness session
9
+ Commands:
10
+ agent <persona>[@<tier>] [task...]
11
+ Run a persona. Tier one of: ${PERSONA_TIERS.join(' | ')}
12
+ (default: best-value). If [task] is provided, runs one-shot
13
+ non-interactively; otherwise drops into an interactive
14
+ harness session.
15
+ list [flags] List available personas from the cascade (pwd → home →
16
+ library). By default shows one row per persona at the
17
+ recommended tier for its intent; pass --all to see every
18
+ tier. Flags:
19
+ --all show every tier (overrides default)
20
+ --json emit JSON instead of a table
21
+ --filter-rating <tier> only show this tier; disables
22
+ the recommended-only default
23
+ (${PERSONA_TIERS.join(' | ')})
24
+ --filter-harness <harness> only show this harness
25
+ (${HARNESS_VALUES.join(' | ')})
26
+ --filter-tag <tag> only show personas carrying this tag
27
+ (${PERSONA_TAGS.join(' | ')})
28
+ --no-display-description hide the DESCRIPTION column
29
+ harness check Probe which harnesses (claude, codex, opencode) are
30
+ installed and runnable on this machine.
13
31
 
14
32
  Local personas cascade: <cwd>/.agent-workforce/*.json → ~/.agent-workforce/*.json → repo library.
15
33
  Each layer only needs to specify fields it overrides; everything else inherits
@@ -21,6 +39,8 @@ Examples:
21
39
  agent-workforce agent npm-provenance-publisher@best
22
40
  agent-workforce agent my-posthog@best
23
41
  agent-workforce agent review@best-value "look at the diff on this branch"
42
+ agent-workforce list
43
+ agent-workforce harness check
24
44
  `;
25
45
  function die(msg, withUsage = true) {
26
46
  process.stderr.write(`${msg}\n`);
@@ -219,6 +239,203 @@ function runInteractive(selection) {
219
239
  });
220
240
  });
221
241
  }
242
+ function formatAvailabilityTable(results) {
243
+ const rows = results.map((r) => ({
244
+ harness: r.harness,
245
+ status: r.available ? 'ok' : 'missing',
246
+ version: r.available ? (r.version ?? '') : '',
247
+ detail: r.available ? (r.path ?? '') : (r.error ?? '')
248
+ }));
249
+ const headers = { harness: 'HARNESS', status: 'STATUS', version: 'VERSION', detail: 'DETAIL' };
250
+ const cols = ['harness', 'status', 'version', 'detail'];
251
+ const widths = Object.fromEntries(cols.map((c) => [c, Math.max(headers[c].length, ...rows.map((r) => r[c].length))]));
252
+ const line = (row) => cols.map((c) => row[c].padEnd(widths[c])).join(' ').trimEnd();
253
+ return [line(headers), ...rows.map(line)].join('\n') + '\n';
254
+ }
255
+ function collectPersonaRows() {
256
+ const rows = [];
257
+ const pushSpec = (spec, source) => {
258
+ for (const tier of PERSONA_TIERS) {
259
+ rows.push({
260
+ persona: spec.id,
261
+ source,
262
+ harness: spec.tiers[tier].harness,
263
+ model: spec.tiers[tier].model,
264
+ intent: spec.intent,
265
+ tags: spec.tags,
266
+ description: spec.description,
267
+ rating: tier
268
+ });
269
+ }
270
+ };
271
+ const seen = new Set();
272
+ for (const [id, spec] of local.byId) {
273
+ pushSpec(spec, local.sources.get(id) ?? 'library');
274
+ seen.add(id);
275
+ }
276
+ for (const spec of Object.values(personaCatalog)) {
277
+ if (seen.has(spec.id))
278
+ continue;
279
+ pushSpec(spec, 'library');
280
+ }
281
+ const tierOrder = new Map(PERSONA_TIERS.map((t, i) => [t, i]));
282
+ return rows.sort((a, b) => a.persona.localeCompare(b.persona) ||
283
+ (tierOrder.get(a.rating) - tierOrder.get(b.rating)));
284
+ }
285
+ function formatPersonaTable(rows, display) {
286
+ const headers = {
287
+ persona: 'PERSONA',
288
+ source: 'SOURCE',
289
+ harness: 'HARNESS',
290
+ model: 'MODEL',
291
+ rating: 'RATING',
292
+ tags: 'TAGS',
293
+ description: 'DESCRIPTION'
294
+ };
295
+ const rendered = rows.map((r) => ({
296
+ persona: r.persona,
297
+ source: r.source,
298
+ harness: r.harness,
299
+ model: r.model,
300
+ rating: r.rating,
301
+ tags: r.tags.join(','),
302
+ description: r.description
303
+ }));
304
+ const widths = {
305
+ persona: Math.max(headers.persona.length, ...rendered.map((r) => r.persona.length)),
306
+ source: Math.max(headers.source.length, ...rendered.map((r) => r.source.length)),
307
+ harness: Math.max(headers.harness.length, ...rendered.map((r) => r.harness.length)),
308
+ model: Math.max(headers.model.length, ...rendered.map((r) => r.model.length)),
309
+ rating: Math.max(headers.rating.length, ...rendered.map((r) => r.rating.length)),
310
+ tags: Math.max(headers.tags.length, ...rendered.map((r) => r.tags.length)),
311
+ description: headers.description.length
312
+ };
313
+ const termWidth = process.stdout.isTTY && typeof process.stdout.columns === 'number' ? process.stdout.columns : 140;
314
+ const fixed = widths.persona +
315
+ widths.source +
316
+ widths.harness +
317
+ widths.model +
318
+ widths.rating +
319
+ widths.tags +
320
+ (6 + (display.description ? 1 : 0) - 1) * 2;
321
+ const descBudget = Math.max(20, termWidth - fixed - 1);
322
+ const truncate = (s, n) => (s.length <= n ? s : s.slice(0, Math.max(1, n - 1)) + '…');
323
+ const line = (row) => {
324
+ const parts = [
325
+ row.persona.padEnd(widths.persona),
326
+ row.source.padEnd(widths.source),
327
+ row.harness.padEnd(widths.harness),
328
+ row.model.padEnd(widths.model),
329
+ row.rating.padEnd(widths.rating),
330
+ row.tags.padEnd(widths.tags)
331
+ ];
332
+ if (display.description) {
333
+ parts.push(truncate(row.description.replace(/\s+/g, ' ').trim(), descBudget));
334
+ }
335
+ return parts.join(' ').trimEnd();
336
+ };
337
+ return [line(headers), ...rendered.map(line)].join('\n') + '\n';
338
+ }
339
+ function parseListArgs(args) {
340
+ let json = false;
341
+ let filterRating;
342
+ let filterRatingExplicit = false;
343
+ let filterHarness;
344
+ let filterTag;
345
+ let showAll = false;
346
+ const display = { description: true };
347
+ const valueOf = (i, flag) => {
348
+ const v = args[i + 1];
349
+ if (v === undefined || v.startsWith('--')) {
350
+ die(`list: ${flag} requires a value.`);
351
+ }
352
+ return v;
353
+ };
354
+ for (let i = 0; i < args.length; i++) {
355
+ const arg = args[i];
356
+ if (arg === '--json') {
357
+ json = true;
358
+ }
359
+ else if (arg === '-h' || arg === '--help') {
360
+ process.stdout.write('Usage: agent-workforce list [--all] [--json] [--filter-rating <tier>] [--filter-harness <harness>] [--filter-tag <tag>] [--no-display-description]\n');
361
+ process.exit(0);
362
+ }
363
+ else if (arg === '--all' || arg === '--no-recommended') {
364
+ showAll = true;
365
+ }
366
+ else if (arg === '--recommended') {
367
+ showAll = false;
368
+ }
369
+ else if (arg === '--filter-rating') {
370
+ const v = valueOf(i++, arg);
371
+ if (!PERSONA_TIERS.includes(v)) {
372
+ die(`list: invalid --filter-rating "${v}". Must be one of: ${PERSONA_TIERS.join(', ')}`);
373
+ }
374
+ filterRating = v;
375
+ filterRatingExplicit = true;
376
+ }
377
+ else if (arg === '--filter-harness') {
378
+ const v = valueOf(i++, arg);
379
+ if (!HARNESS_VALUES.includes(v)) {
380
+ die(`list: invalid --filter-harness "${v}". Must be one of: ${HARNESS_VALUES.join(', ')}`);
381
+ }
382
+ filterHarness = v;
383
+ }
384
+ else if (arg === '--filter-tag') {
385
+ const v = valueOf(i++, arg);
386
+ if (!PERSONA_TAGS.includes(v)) {
387
+ die(`list: invalid --filter-tag "${v}". Must be one of: ${PERSONA_TAGS.join(', ')}`);
388
+ }
389
+ filterTag = v;
390
+ }
391
+ else if (arg === '--display-description') {
392
+ display.description = true;
393
+ }
394
+ else if (arg === '--no-display-description') {
395
+ display.description = false;
396
+ }
397
+ else {
398
+ die(`list: unexpected argument "${arg}".`);
399
+ }
400
+ }
401
+ return { json, filterRating, filterHarness, filterTag, display, showAll, filterRatingExplicit };
402
+ }
403
+ function runList(args) {
404
+ const { json, filterRating, filterHarness, filterTag, display, showAll, filterRatingExplicit } = parseListArgs(args);
405
+ const recommendedByIntent = routingProfiles.default.intents;
406
+ const applyRecommended = !showAll && !filterRatingExplicit;
407
+ const rows = collectPersonaRows().filter((r) => {
408
+ if (filterRating && r.rating !== filterRating)
409
+ return false;
410
+ if (filterHarness && r.harness !== filterHarness)
411
+ return false;
412
+ if (filterTag && !r.tags.includes(filterTag))
413
+ return false;
414
+ if (applyRecommended) {
415
+ const rule = recommendedByIntent[r.intent];
416
+ if (!rule || r.rating !== rule.tier)
417
+ return false;
418
+ }
419
+ return true;
420
+ });
421
+ if (json) {
422
+ process.stdout.write(JSON.stringify({ personas: rows }, null, 2) + '\n');
423
+ }
424
+ else {
425
+ process.stdout.write(formatPersonaTable(rows, display));
426
+ const uniq = new Set(rows.map((r) => r.persona)).size;
427
+ const suffix = applyRecommended ? ' (recommended tier per intent; pass --all to see every tier)' : '';
428
+ process.stdout.write(`\n${uniq} persona(s), ${rows.length} row(s)${suffix}.\n`);
429
+ }
430
+ process.exit(0);
431
+ }
432
+ function runHarnessCheck() {
433
+ const results = detectHarnesses();
434
+ process.stdout.write(formatAvailabilityTable(results));
435
+ const available = results.filter((r) => r.available).length;
436
+ process.stdout.write(`\n${available}/${results.length} harness(es) available.\n`);
437
+ process.exit(0);
438
+ }
222
439
  async function main() {
223
440
  const argv = process.argv.slice(2);
224
441
  const [subcommand, ...rest] = argv;
@@ -226,6 +443,22 @@ async function main() {
226
443
  process.stdout.write(USAGE);
227
444
  process.exit(subcommand ? 0 : 1);
228
445
  }
446
+ if (subcommand === 'list') {
447
+ runList(rest);
448
+ }
449
+ if (subcommand === 'harness') {
450
+ const [action, ...extra] = rest;
451
+ if (!action || action === '-h' || action === '--help') {
452
+ die('harness: missing action. Expected: check');
453
+ }
454
+ if (action !== 'check') {
455
+ die(`harness: unknown action "${action}". Expected: check`);
456
+ }
457
+ if (extra.length > 0) {
458
+ die(`harness check: unexpected argument "${extra[0]}".`);
459
+ }
460
+ runHarnessCheck();
461
+ }
229
462
  if (subcommand !== 'agent') {
230
463
  die(`Unknown subcommand "${subcommand}".`);
231
464
  }
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,4 +1,4 @@
1
- import { type McpServerSpec, type PersonaPermissions, type PersonaRuntime, type PersonaSpec, type PersonaTier } from '@agentworkforce/workload-router';
1
+ import { type McpServerSpec, type PersonaPermissions, type PersonaRuntime, type PersonaSpec, type PersonaTag, type PersonaTier } from '@agentworkforce/workload-router';
2
2
  /**
3
3
  * User-defined persona override. Local files are partial overlays — only the
4
4
  * fields you specify replace the inherited base; everything else cascades down
@@ -10,6 +10,11 @@ import { type McpServerSpec, type PersonaPermissions, type PersonaRuntime, type
10
10
  export interface LocalPersonaOverride {
11
11
  id: string;
12
12
  extends?: string;
13
+ /**
14
+ * Classification tags. When provided, replaces the inherited base's tags
15
+ * entirely (matching the replace-wholesale semantics used for `skills`).
16
+ */
17
+ tags?: PersonaTag[];
13
18
  description?: string;
14
19
  skills?: PersonaSpec['skills'];
15
20
  env?: Record<string, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"local-personas.d.ts","sourceRoot":"","sources":["../src/local-personas.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,WAAW,EACjB,MAAM,iCAAiC,CAAC;AAEzC;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC3C;;;OAGG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,kGAAkG;IAClG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2FAA2F;IAC3F,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CAC/D;AAED,KAAK,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;AAG5B,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAClC,mGAAmG;IACnG,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/B,6EAA6E;IAC7E,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA0SD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,WAAgB,GAAG,mBAAmB,CA2BhF"}
1
+ {"version":3,"file":"local-personas.d.ts","sourceRoot":"","sources":["../src/local-personas.ts"],"names":[],"mappings":"AAIA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,WAAW,EACjB,MAAM,iCAAiC,CAAC;AAEzC;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC3C;;;OAGG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,kGAAkG;IAClG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2FAA2F;IAC3F,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CAC/D;AAED,KAAK,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;AAG5B,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAClC,mGAAmG;IACnG,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/B,6EAA6E;IAC7E,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAwTD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,WAAgB,GAAG,mBAAmB,CA2BhF"}
@@ -1,7 +1,7 @@
1
1
  import { readFileSync, readdirSync, existsSync } from 'node:fs';
2
2
  import { homedir } from 'node:os';
3
3
  import { join } from 'node:path';
4
- import { personaCatalog, PERSONA_TIERS } from '@agentworkforce/workload-router';
4
+ import { personaCatalog, PERSONA_TAGS, PERSONA_TIERS } from '@agentworkforce/workload-router';
5
5
  const LAYER_ORDER = ['pwd', 'home'];
6
6
  function defaultHomeDir() {
7
7
  const override = process.env.AGENT_WORKFORCE_CONFIG_DIR?.trim();
@@ -61,6 +61,16 @@ function parseOverride(value, context) {
61
61
  if (raw.description !== undefined && typeof raw.description !== 'string') {
62
62
  throw new Error(`${context}.description must be a string if provided`);
63
63
  }
64
+ if (raw.tags !== undefined) {
65
+ if (!Array.isArray(raw.tags) || raw.tags.length === 0) {
66
+ throw new Error(`${context}.tags must be a non-empty array of tags if provided`);
67
+ }
68
+ for (const [idx, tag] of raw.tags.entries()) {
69
+ if (!PERSONA_TAGS.includes(tag)) {
70
+ throw new Error(`${context}.tags[${idx}] must be one of: ${PERSONA_TAGS.join(', ')}`);
71
+ }
72
+ }
73
+ }
64
74
  if (raw.skills !== undefined && !Array.isArray(raw.skills)) {
65
75
  throw new Error(`${context}.skills must be an array if provided`);
66
76
  }
@@ -71,6 +81,7 @@ function parseOverride(value, context) {
71
81
  return {
72
82
  id: raw.id,
73
83
  extends: raw.extends,
84
+ tags: raw.tags,
74
85
  description: raw.description,
75
86
  skills: raw.skills,
76
87
  env: raw.env,
@@ -250,6 +261,7 @@ function mergeOverride(base, override) {
250
261
  return {
251
262
  id: override.id,
252
263
  intent: base.intent,
264
+ tags: override.tags ?? base.tags,
253
265
  description: override.description ?? base.description,
254
266
  skills: override.skills ?? base.skills,
255
267
  tiers,
@@ -1 +1 @@
1
- {"version":3,"file":"local-personas.js","sourceRoot":"","sources":["../src/local-personas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-personas.js","sourceRoot":"","sources":["../src/local-personas.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentworkforce/cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "bin": {
@@ -9,6 +9,7 @@
9
9
  "files": [
10
10
  "dist",
11
11
  "README.md",
12
+ "CHANGELOG.md",
12
13
  "package.json"
13
14
  ],
14
15
  "dependencies": {
@@ -25,6 +26,7 @@
25
26
  },
26
27
  "scripts": {
27
28
  "build": "tsc -p tsconfig.json && chmod +x dist/cli.js",
29
+ "dev": "tsc -p tsconfig.json --watch --preserveWatchOutput",
28
30
  "typecheck": "tsc -p tsconfig.json --noEmit",
29
31
  "test": "tsc -p tsconfig.json && node --test dist/*.test.js",
30
32
  "lint": "tsc -p tsconfig.json --noEmit"
@@ -1,56 +0,0 @@
1
- /**
2
- * Resolve env references in persona `env` / `mcpServers` values against the
3
- * caller's process environment. Two reference forms are supported:
4
- *
5
- * "$VAR" whole-string reference; replaced by the env var value.
6
- * "Bearer ${VAR}" braced reference(s), interpolated anywhere in the
7
- * string. Useful for header prefixes like `Bearer …`.
8
- *
9
- * Bare `$VAR` that appears *inside* a longer string (without braces) is kept
10
- * as a literal — we only interpolate when the intent is unambiguous, so a
11
- * literal `$` in a JSON string doesn't accidentally get eaten.
12
- *
13
- * A missing env var is a hard error naming both the referenced variable and
14
- * the persona field that asked for it.
15
- */
16
- export type EnvRefResolver = (value: string) => string;
17
- export declare class MissingEnvRefError extends Error {
18
- readonly ref: string;
19
- readonly referencedBy: string;
20
- constructor(ref: string, referencedBy: string);
21
- }
22
- export declare function makeEnvRefResolver(processEnv: NodeJS.ProcessEnv): (value: string, field: string) => string;
23
- export declare function resolveStringMap(map: Record<string, string> | undefined, processEnv: NodeJS.ProcessEnv, fieldPrefix: string): Record<string, string> | undefined;
24
- /**
25
- * Like {@link makeEnvRefResolver} but never throws on missing refs. Returns
26
- * a result object the caller can inspect to decide whether a missing ref is
27
- * fatal (e.g. a `url` / `command`) or droppable (e.g. a specific header).
28
- */
29
- export type LenientResult = {
30
- ok: true;
31
- value: string;
32
- } | {
33
- ok: false;
34
- field: string;
35
- ref: string;
36
- };
37
- export declare function makeLenientResolver(processEnv: NodeJS.ProcessEnv): (value: string, field: string) => LenientResult;
38
- export interface DroppedRef {
39
- field: string;
40
- ref: string;
41
- }
42
- /**
43
- * Walk a `Record<string,string>`, resolving each value leniently. Entries
44
- * whose value referenced an unset env var are dropped from the result and
45
- * reported via `dropped`. Literal strings and successfully-resolved refs
46
- * pass through to `value`.
47
- *
48
- * Returns `value: undefined` when every entry was either dropped or the map
49
- * itself was undefined — callers can use that to decide whether to emit a
50
- * flag at all.
51
- */
52
- export declare function resolveStringMapLenient(map: Record<string, string> | undefined, processEnv: NodeJS.ProcessEnv, fieldPrefix: string): {
53
- value: Record<string, string> | undefined;
54
- dropped: DroppedRef[];
55
- };
56
- //# sourceMappingURL=env-refs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-refs.d.ts","sourceRoot":"","sources":["../src/env-refs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAKvD,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;gBAClB,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;CAQ9C;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,CACjE,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,KACV,MAAM,CAsBV;AAED,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACvC,UAAU,EAAE,MAAM,CAAC,UAAU,EAC7B,WAAW,EAAE,MAAM,GAClB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAQpC;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9C,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,CAAC,UAAU,GAC5B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,aAAa,CAYjD;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACvC,UAAU,EAAE,MAAM,CAAC,UAAU,EAC7B,WAAW,EAAE,MAAM,GAClB;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAAC,OAAO,EAAE,UAAU,EAAE,CAAA;CAAE,CAkBtE"}
package/dist/env-refs.js DELETED
@@ -1,105 +0,0 @@
1
- /**
2
- * Resolve env references in persona `env` / `mcpServers` values against the
3
- * caller's process environment. Two reference forms are supported:
4
- *
5
- * "$VAR" whole-string reference; replaced by the env var value.
6
- * "Bearer ${VAR}" braced reference(s), interpolated anywhere in the
7
- * string. Useful for header prefixes like `Bearer …`.
8
- *
9
- * Bare `$VAR` that appears *inside* a longer string (without braces) is kept
10
- * as a literal — we only interpolate when the intent is unambiguous, so a
11
- * literal `$` in a JSON string doesn't accidentally get eaten.
12
- *
13
- * A missing env var is a hard error naming both the referenced variable and
14
- * the persona field that asked for it.
15
- */
16
- const WHOLE_REF = /^\$([A-Z_][A-Z0-9_]*)$/;
17
- const BRACED_REF = /\$\{([A-Z_][A-Z0-9_]*)\}/g;
18
- export class MissingEnvRefError extends Error {
19
- ref;
20
- referencedBy;
21
- constructor(ref, referencedBy) {
22
- super(`Environment variable ${ref} is required by persona field \`${referencedBy}\` but is not set in the current shell. Export it and retry.`);
23
- this.name = 'MissingEnvRefError';
24
- this.ref = ref;
25
- this.referencedBy = referencedBy;
26
- }
27
- }
28
- export function makeEnvRefResolver(processEnv) {
29
- return (value, field) => {
30
- const whole = WHOLE_REF.exec(value);
31
- if (whole) {
32
- const name = whole[1];
33
- const resolved = processEnv[name];
34
- if (resolved === undefined || resolved === '') {
35
- throw new MissingEnvRefError(name, field);
36
- }
37
- return resolved;
38
- }
39
- if (!value.includes('${'))
40
- return value;
41
- return value.replace(BRACED_REF, (_, name) => {
42
- const resolved = processEnv[name];
43
- if (resolved === undefined || resolved === '') {
44
- throw new MissingEnvRefError(name, field);
45
- }
46
- return resolved;
47
- });
48
- };
49
- }
50
- export function resolveStringMap(map, processEnv, fieldPrefix) {
51
- if (!map)
52
- return undefined;
53
- const resolve = makeEnvRefResolver(processEnv);
54
- const out = {};
55
- for (const [key, value] of Object.entries(map)) {
56
- out[key] = resolve(value, `${fieldPrefix}.${key}`);
57
- }
58
- return out;
59
- }
60
- export function makeLenientResolver(processEnv) {
61
- const strict = makeEnvRefResolver(processEnv);
62
- return (value, field) => {
63
- try {
64
- return { ok: true, value: strict(value, field) };
65
- }
66
- catch (err) {
67
- if (err instanceof MissingEnvRefError) {
68
- return { ok: false, field, ref: err.ref };
69
- }
70
- throw err;
71
- }
72
- };
73
- }
74
- /**
75
- * Walk a `Record<string,string>`, resolving each value leniently. Entries
76
- * whose value referenced an unset env var are dropped from the result and
77
- * reported via `dropped`. Literal strings and successfully-resolved refs
78
- * pass through to `value`.
79
- *
80
- * Returns `value: undefined` when every entry was either dropped or the map
81
- * itself was undefined — callers can use that to decide whether to emit a
82
- * flag at all.
83
- */
84
- export function resolveStringMapLenient(map, processEnv, fieldPrefix) {
85
- if (!map)
86
- return { value: undefined, dropped: [] };
87
- const resolve = makeLenientResolver(processEnv);
88
- const out = {};
89
- const dropped = [];
90
- for (const [key, raw] of Object.entries(map)) {
91
- const field = `${fieldPrefix}.${key}`;
92
- const result = resolve(raw, field);
93
- if (result.ok) {
94
- out[key] = result.value;
95
- }
96
- else {
97
- dropped.push({ field: result.field, ref: result.ref });
98
- }
99
- }
100
- return {
101
- value: Object.keys(out).length > 0 ? out : undefined,
102
- dropped
103
- };
104
- }
105
- //# sourceMappingURL=env-refs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-refs.js","sourceRoot":"","sources":["../src/env-refs.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=env-refs.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-refs.test.d.ts","sourceRoot":"","sources":["../src/env-refs.test.ts"],"names":[],"mappings":""}
@@ -1,84 +0,0 @@
1
- import test from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { MissingEnvRefError, makeEnvRefResolver, makeLenientResolver, resolveStringMap, resolveStringMapLenient } from './env-refs.js';
4
- test('resolves $VAR references against the provided env', () => {
5
- const resolve = makeEnvRefResolver({ FOO: 'hello' });
6
- assert.equal(resolve('$FOO', 'x'), 'hello');
7
- });
8
- test('passes literal strings through untouched', () => {
9
- const resolve = makeEnvRefResolver({ FOO: 'hello' });
10
- assert.equal(resolve('plain literal', 'x'), 'plain literal');
11
- assert.equal(resolve('Bearer hello-world', 'x'), 'Bearer hello-world');
12
- });
13
- test('refuses un-braced partial interpolation — prefix-$VAR stays literal', () => {
14
- // Unbraced `$VAR` mid-string is kept as-is so a stray `$` in a JSON value
15
- // doesn't get eaten by accident. Use ${VAR} for partial interpolation.
16
- const resolve = makeEnvRefResolver({ FOO: 'hello' });
17
- assert.equal(resolve('prefix-$FOO', 'x'), 'prefix-$FOO');
18
- });
19
- test('resolves braced ${VAR} interpolation anywhere in a string', () => {
20
- const resolve = makeEnvRefResolver({ POSTHOG_API_KEY: 'phx_abc' });
21
- assert.equal(resolve('Bearer ${POSTHOG_API_KEY}', 'auth'), 'Bearer phx_abc');
22
- assert.equal(resolve('${POSTHOG_API_KEY}-suffix', 'x'), 'phx_abc-suffix');
23
- assert.equal(resolve('${POSTHOG_API_KEY}', 'x'), 'phx_abc');
24
- });
25
- test('interpolates multiple ${VAR} occurrences in the same string', () => {
26
- const resolve = makeEnvRefResolver({ A: 'one', B: 'two' });
27
- assert.equal(resolve('${A}-${B}-${A}', 'x'), 'one-two-one');
28
- });
29
- test('missing ${VAR} inside a longer string errors with the field and var', () => {
30
- const resolve = makeEnvRefResolver({ FOO: 'ok' });
31
- assert.throws(() => resolve('Bearer ${MISSING_KEY}', 'headers.Authorization'), (err) => err instanceof MissingEnvRefError &&
32
- err.ref === 'MISSING_KEY' &&
33
- err.referencedBy === 'headers.Authorization');
34
- });
35
- test('throws MissingEnvRefError with the referenced name and field', () => {
36
- const resolve = makeEnvRefResolver({});
37
- assert.throws(() => resolve('$POSTHOG_API_KEY', 'env.POSTHOG_API_KEY'), (err) => err instanceof MissingEnvRefError &&
38
- err.ref === 'POSTHOG_API_KEY' &&
39
- err.referencedBy === 'env.POSTHOG_API_KEY');
40
- });
41
- test('treats empty-string env vars as missing (explicit unset)', () => {
42
- const resolve = makeEnvRefResolver({ FOO: '' });
43
- assert.throws(() => resolve('$FOO', 'x'), MissingEnvRefError);
44
- });
45
- test('resolveStringMap walks every value and reports the originating field', () => {
46
- const result = resolveStringMap({ A: '$FOO', B: 'literal' }, { FOO: 'ok' }, 'env');
47
- assert.deepEqual(result, { A: 'ok', B: 'literal' });
48
- assert.throws(() => resolveStringMap({ X: '$MISSING' }, {}, 'env'), (err) => err instanceof MissingEnvRefError &&
49
- err.ref === 'MISSING' &&
50
- err.referencedBy === 'env.X');
51
- });
52
- test('resolveStringMap returns undefined for undefined input', () => {
53
- assert.equal(resolveStringMap(undefined, {}, 'env'), undefined);
54
- });
55
- test('lenient resolver reports missing refs instead of throwing', () => {
56
- const resolve = makeLenientResolver({ FOO: 'ok' });
57
- assert.deepEqual(resolve('$FOO', 'x'), { ok: true, value: 'ok' });
58
- assert.deepEqual(resolve('$MISSING', 'env.K'), {
59
- ok: false,
60
- field: 'env.K',
61
- ref: 'MISSING'
62
- });
63
- assert.deepEqual(resolve('Bearer ${MISSING_KEY}', 'headers.Auth'), {
64
- ok: false,
65
- field: 'headers.Auth',
66
- ref: 'MISSING_KEY'
67
- });
68
- });
69
- test('resolveStringMapLenient drops missing entries and reports them', () => {
70
- const result = resolveStringMapLenient({
71
- PRESENT: '$FOO',
72
- MISSING: '$NOPE',
73
- LITERAL: 'plain',
74
- PARTIAL_MISSING: 'Bearer ${NO_KEY}'
75
- }, { FOO: 'value' }, 'env');
76
- assert.deepEqual(result.value, { PRESENT: 'value', LITERAL: 'plain' });
77
- assert.deepEqual(result.dropped.map((d) => `${d.field}:${d.ref}`).sort(), ['env.MISSING:NOPE', 'env.PARTIAL_MISSING:NO_KEY']);
78
- });
79
- test('resolveStringMapLenient returns value=undefined when all entries dropped', () => {
80
- const result = resolveStringMapLenient({ A: '$MISSING' }, {}, 'env');
81
- assert.equal(result.value, undefined);
82
- assert.equal(result.dropped.length, 1);
83
- });
84
- //# sourceMappingURL=env-refs.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-refs.test.js","sourceRoot":"","sources":["../src/env-refs.test.ts"],"names":[],"mappings":"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"}