@pugi/cli 0.1.0-beta.56 → 0.1.0-beta.57

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.
@@ -193,12 +193,37 @@ function getJobRegistrySafely() {
193
193
  }
194
194
  }
195
195
  /**
196
- * Anvil persona slug to invoke per command. Today every command routes
197
- * to `oes-dev` (Sigma) — the Tier-2 reviewer persona already configured
198
- * for Pugi runtime work. When we add per-command personas (e.g. `pugi-
199
- * planner`, `pugi-coder`) this is the single switch to update.
196
+ * Anvil persona slug to invoke per command. Routes each engine command
197
+ * to the appropriate Tier-1 persona from PERSONA_REGISTRY (admin-api/
198
+ * src/pugi-runtime/personas/persona-dispatch.ts):
199
+ *
200
+ * - code / fix / build → 'dev' (Hiroshi, coder, Sonnet codegen tag)
201
+ * - plan → 'architect' (Marcus, architect, Sonnet reason)
202
+ * - explain → 'main' (Pugi orchestrator, DeepSeek reason)
203
+ *
204
+ * Previously this returned 'oes-dev' unconditionally — that is an OES
205
+ * C++ reviewer persona, wrong tool set + wrong system prompt for
206
+ * customer dispatches. CEO live trace 2026-05-29 #53.
207
+ *
208
+ * Operator override: PUGI_ENGINE_PERSONA_<COMMAND> env (e.g.
209
+ * PUGI_ENGINE_PERSONA_CODE=frontend pins Mia for the next dispatch).
200
210
  */
201
- export function personaSlugFor(_kind) {
202
- return 'oes-dev';
211
+ export function personaSlugFor(kind) {
212
+ const envKey = `PUGI_ENGINE_PERSONA_${kind.toUpperCase()}`;
213
+ const override = process.env[envKey];
214
+ if (override && override.length > 0)
215
+ return override;
216
+ switch (kind) {
217
+ case 'code':
218
+ case 'fix':
219
+ case 'build':
220
+ return 'dev';
221
+ case 'plan':
222
+ return 'architect';
223
+ case 'explain':
224
+ return 'main';
225
+ default:
226
+ return 'main';
227
+ }
203
228
  }
204
229
  //# sourceMappingURL=prompts.js.map
@@ -44,7 +44,7 @@ export function sanitizeSemver(raw) {
44
44
  * during import). When bumping the CLI version BOTH literals must be
45
45
  * updated; the release smoke-test (`pack:smoke`) verifies they agree.
46
46
  */
47
- export const PUGI_CLI_VERSION = sanitizeSemver('0.1.0-beta.56');
47
+ export const PUGI_CLI_VERSION = sanitizeSemver('0.1.0-beta.57');
48
48
  /**
49
49
  * Outbound: the CLI's installed semver. Read at request time by
50
50
  * `version-interceptor.ts` and injected on every `fetch` call.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pugi/cli",
3
- "version": "0.1.0-beta.56",
3
+ "version": "0.1.0-beta.57",
4
4
  "description": "Pugi CLI - terminal-native software execution system",
5
5
  "homepage": "https://pugi.io",
6
6
  "repository": {
@@ -55,7 +55,7 @@
55
55
  "undici": "^8.3.0",
56
56
  "zod": "^3.23.0",
57
57
  "@pugi/personas": "0.1.2",
58
- "@pugi/sdk": "0.1.0-beta.56"
58
+ "@pugi/sdk": "0.1.0-beta.57"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@types/node": "^22.0.0",