create-byan-agent 2.42.0 → 2.45.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 (71) hide show
  1. package/CHANGELOG.md +118 -0
  2. package/install/bin/byan-kanban.js +1 -1
  3. package/install/bin/create-byan-agent-v2.js +111 -111
  4. package/install/lib/byan-leantime-integration.js +2 -2
  5. package/install/lib/byan-web-integration.js +5 -5
  6. package/install/lib/claude-native-setup.js +11 -11
  7. package/install/lib/codex-native-setup.js +3 -3
  8. package/install/lib/exchange/agent-packager.js +1 -1
  9. package/install/lib/mcp-extensions/gdrive.js +5 -5
  10. package/install/lib/mcp-extensions/index.js +5 -5
  11. package/install/lib/phase2-chat.js +21 -21
  12. package/install/lib/platforms/claude-code.js +2 -2
  13. package/install/lib/project-agents-generator.js +4 -4
  14. package/install/lib/staging-consent.js +1 -1
  15. package/install/lib/subagent-generator.js +2 -3
  16. package/install/lib/utils/logger.js +4 -4
  17. package/install/lib/utils/node-detector.js +1 -1
  18. package/install/lib/yanstaller/agent-launcher.js +1 -1
  19. package/install/lib/yanstaller/index.js +11 -116
  20. package/install/lib/yanstaller/platform-selector.js +11 -11
  21. package/install/src/byan-v2/dispatcher/task-router.js +1 -1
  22. package/install/src/index.js +1 -1
  23. package/install/src/webui/api.js +0 -13
  24. package/install/src/webui/chat/bridge.js +1 -1
  25. package/install/src/webui/chat/cli-detector.js +1 -1
  26. package/install/templates/.claude/CLAUDE.md +1 -0
  27. package/install/templates/.claude/hooks/inject-voice-anchor.js +20 -1
  28. package/install/templates/.claude/hooks/lib/plain-language.js +155 -0
  29. package/install/templates/.claude/hooks/plain-language-check.js +53 -0
  30. package/install/templates/.claude/rules/native-workflows.md +22 -14
  31. package/install/templates/.claude/rules/plain-language.md +73 -0
  32. package/install/templates/.claude/settings.json +4 -0
  33. package/install/templates/_byan/COMPLETION-REPORT.md +0 -1
  34. package/install/templates/_byan/agent/byan/byan-tao.md +12 -0
  35. package/install/templates/_byan/core/activation/soul-activation.md +3 -3
  36. package/install/templates/_byan/mcp/byan-mcp-server/bin/byan-lint-workflows.js +6 -3
  37. package/install/templates/_byan/mcp/byan-mcp-server/lib/native-tiers.js +35 -17
  38. package/install/templates/_byan/mcp/byan-mcp-server/lib/workflows-lint.js +38 -0
  39. package/install/templates/_byan/mcp/byan-mcp-server/server.js +37 -0
  40. package/install/templates/_byan/worker/workers.md +1 -1
  41. package/install/templates/_byan/workflow/simple/byan/data/mantras.yaml +15 -4
  42. package/package.json +1 -1
  43. package/src/byan-v2/dispatcher/task-router.js +1 -1
  44. package/src/byan-v2/lib/layout-resolver.js +3 -6
  45. package/install/lib/yanstaller/installer.js +0 -138
  46. package/install/lib/yanstaller/interviewer.js +0 -88
  47. package/install/lib/yanstaller/recommender.js +0 -102
  48. package/install/lib/yanstaller/troubleshooter.js +0 -89
  49. package/install/lib/yanstaller/validator.js +0 -198
  50. package/install/lib/yanstaller/wizard.js +0 -109
  51. package/install/src/byan-v2/dispatcher/task-tool-interface-mock.js +0 -134
  52. package/install/src/byan-v2/dispatcher/task-tool-interface.js +0 -123
  53. package/install/templates/_bmad/bmb/agents/agent-builder.md +0 -59
  54. package/install/templates/_bmad/bmb/agents/byan-test.md +0 -116
  55. package/install/templates/_bmad/bmb/agents/byan.md +0 -215
  56. package/install/templates/_bmad/bmb/agents/marc.md +0 -303
  57. package/install/templates/_bmad/bmb/agents/module-builder.md +0 -60
  58. package/install/templates/_bmad/bmb/agents/patnote.md +0 -495
  59. package/install/templates/_bmad/bmb/agents/rachid.md +0 -184
  60. package/install/templates/_bmad/bmb/agents/workflow-builder.md +0 -61
  61. package/install/templates/_bmad/bmb/workflows/byan/data/mantras.yaml +0 -272
  62. package/install/templates/_bmad/bmb/workflows/byan/data/templates.yaml +0 -59
  63. package/install/templates/_bmad/bmb/workflows/byan/delete-agent-workflow.md +0 -657
  64. package/install/templates/_bmad/bmb/workflows/byan/edit-agent-workflow.md +0 -688
  65. package/install/templates/_bmad/bmb/workflows/byan/interview-workflow.md +0 -753
  66. package/install/templates/_bmad/bmb/workflows/byan/quick-create-workflow.md +0 -450
  67. package/install/templates/_bmad/bmb/workflows/byan/templates/base-agent-template.md +0 -79
  68. package/install/templates/_bmad/bmb/workflows/byan/validate-agent-workflow.md +0 -676
  69. package/install/templates/_bmad/core/agents/carmack.md +0 -238
  70. package/src/byan-v2/dispatcher/task-tool-interface-mock.js +0 -134
  71. package/src/byan-v2/dispatcher/task-tool-interface.js +0 -123
package/CHANGELOG.md CHANGED
@@ -9,6 +9,124 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ## [Unreleased]
11
11
 
12
+ ## [2.45.0] - 2026-07-15
13
+
14
+ ### Added - Plain-language guard for every agent (Mantra IA-26 "Parler Reel")
15
+
16
+ - New team-wide rule: agents speak clear, coherent French to the user — no gratuitous
17
+ English when a French word exists ("redemarrer le conteneur", not "cutoff"), no raw
18
+ internal jargon (leaf/tier/downgrade/gate/inline/advisory), no misapplied metaphor
19
+ (you do not "forge" a token). A technical term with no French equivalent (commit,
20
+ cache, token) is kept but explained once. Test: the reader understands with no
21
+ dictionary. This is the sibling of IA-23 (no emoji) and applies to ALL agents.
22
+ - Mechanism, in three layers, none of which re-generates an already-shown reply:
23
+ 1. The rule reaches every agent: mantra `IA-26` (`mantras.yaml` + `mantras-sources.md`),
24
+ `.claude/rules/plain-language.md`, and a pointer in `CLAUDE.md`.
25
+ 2. BYAN's own voice stays fresh: a line in the per-turn reminder
26
+ (`inject-voice-anchor.js`) + entries in `tao.md` Section 4 (Vocabulaire Interdit).
27
+ 3. A forward net (non-blocking): the Stop hook `plain-language-check.js` spots the
28
+ known repeat-offenders in the finished reply and writes a one-turn flag under
29
+ `_byan-output/`; the next-turn reminder reads it, signals it in plain French, and
30
+ clears it. No blocking, no re-answer — the correction is carried to the next turn
31
+ (a blocking guard would force a costly regen and the user has already read the slip).
32
+ - Core logic isolated in `.claude/hooks/lib/plain-language.js` (French-aware word
33
+ boundary so "metier"/"chantier" stay clear of the "tier" match; code spans stripped
34
+ before scanning). Tests: `.claude/__tests__/plain-language.test.js`. Full suite green
35
+ (2629 jest). Shipped via `install/templates/`.
36
+
37
+ ## [2.44.0] - 2026-07-15
38
+
39
+ ### Changed - Revived the Sonnet middle tier for native-workflow model routing
40
+
41
+ - Native-workflow ANALYSIS leaves (score/rank/assess/design/nfr/coverage/
42
+ recommend/synthesize) now auto-route to the balanced tier (`model: 'sonnet'`)
43
+ instead of `deep` (inherit the session model). Before this, the Sonnet rung was
44
+ reachable only through the explicit `mech-` opt-in, so on an Opus (or high-effort)
45
+ session every analysis/verification/implementation leaf ran on Opus — the Sonnet
46
+ tier was effectively dead (ledger: recent workflows logged all-`inherit`).
47
+ - This deliberately overrides the session model for analysis leaves; a genuinely
48
+ frontier analysis opts back to the session model with the `deep-` label prefix
49
+ (`deep-assess-architecture`), the mirror of the `mech-` opt-in. VERIFICATION and
50
+ IMPLEMENTATION are untouched — a wrong check or a code-write still inherits the
51
+ session model (no silent downgrade of the dangerous classes).
52
+ - Propagated through the enforcement stack: `modelRoutingViolations` accepts sonnet
53
+ on an analysis leaf (its tier) and still blocks haiku (`analysis-below-tier`) and
54
+ any downgrade on a protected leaf; added a non-blocking `untiered-analysis`
55
+ advisory (surfaces an analysis leaf running deep, suggests `model: 'sonnet'`).
56
+ Files: `native-tiers.js` (tierFor + `DEEP_PREFIX` + `synthes` keyword),
57
+ `workflows-lint.js`, `bin/byan-lint-workflows.js`, native-workflows.md.
58
+ - The 21 committed workflows still pass the contract; MCP 792 + jest 2606 green.
59
+
60
+ ## [2.43.0] - 2026-07-10
61
+
62
+ ### Removed - Purged the Gen1 `_bmad/` legacy layer
63
+
64
+ - Removed the Gen1 `_bmad/` fallback from the layout resolver
65
+ (`src/byan-v2/lib/layout-resolver.js`): `resolveAgent` / `agentDirs` now resolve
66
+ Gen3 (`_byan/agent/<name>/`) and Gen2 (`_byan/agents/`, `_byan/<module>/agents/`)
67
+ only. A pre-Gen3 project on the raw `_bmad/` layout is migrated with
68
+ `scripts/migrate-bmad-to-byan.js` (agents land under `_byan/`, resolved by the
69
+ Gen2 branches). Added a regression test locking Gen1 resolution to null.
70
+ - Deleted the frozen Gen1 content: `_bmad/` (677 files) and the dead shipped
71
+ template `install/templates/_bmad/` (17 files) that the installer does not copy
72
+ (it scaffolds `templates/_byan/`). Neither carried a live code path.
73
+ - Removed the dead `marc` agent residues (a GitHub Copilot CLI specialist for the
74
+ already-removed Copilot platform, present only under `_bmad/`): the
75
+ `subagent-generator` model-map key, an `agent-launcher` jsdoc example, and the
76
+ `marc.md` entry in the migrator's agent list.
77
+ - Migrated `_bmad` doc references to `_byan` (CLAUDE.md, QUICK-START,
78
+ GUIDE-UTILISATION, soul-activation, workers) and cleaned stale Gen1
79
+ comments / dead branches (agent-packager, bridge, cli-detector, index example).
80
+ - Kept the migration back-compat intact: the webui legacy-install detection, the
81
+ `migrate-bmad-to-byan` script, `stub-sync`, and the `_bmad-output` user-data scan.
82
+
83
+ ### Note - Known follow-up
84
+
85
+ - `install/install.sh` (a dormant legacy shell installer) still scaffolds a Gen1
86
+ `_bmad/` tree and promotes GitHub Copilot CLI. It ships but is not run by the
87
+ npx flow. It needs a dedicated rework to align with the Gen3-only, Copilot-free
88
+ product; deliberately left out of this purge to avoid touching an untested
89
+ installer path.
90
+
91
+ ## [2.42.1] - 2026-07-06
92
+
93
+ ### Changed - Excised the dead stub half of the yanstaller module
94
+
95
+ - Removed six pure-stub files under `install/lib/yanstaller/` that had no caller
96
+ (`installer.js`, `validator.js`, `recommender.js`, `interviewer.js`,
97
+ `troubleshooter.js`, `wizard.js`). `installer.js` faked a successful install
98
+ without touching the disk; `validator.js` returned `passed: true` for its ten
99
+ checks without inspecting anything. The real installer is
100
+ `install/bin/create-byan-agent-v2.js`.
101
+ - Dropped the half-implemented `install()`/`uninstall()` orchestrator from
102
+ `install/lib/yanstaller/index.js`. The live surface consumed by the CLI
103
+ (`update` / `rollback` / `backups` / `check`) and the web UI is untouched:
104
+ `update`, `rollback`, `listBackups`, plus the `detector` / `platformSelector`
105
+ / `updater` / `backuper` modules.
106
+ - Removed the dead `yanstaller.install()` call from the web UI install path
107
+ (`install/src/webui/api.js`); it already had its own directory/config
108
+ fallback and had logged that call as a stub.
109
+ - Added `install/__tests__/yanstaller/no-stub-guard.test.js`, a regression guard
110
+ that keeps the excised stubs from creeping back and locks the surviving public
111
+ surface. Net: -853 / +11 lines shipped to npm consumers.
112
+
113
+ ### Changed - Purged emoji from the installer CLI output (Mantra IA-23)
114
+
115
+ - Removed every emoji from the 16 live installer files under `install/lib/` and
116
+ `install/bin/` (201 occurrences). Status glyphs became bracket tags matching
117
+ the existing `[DEBUG]` idiom: `[OK]` / `[INFO]` / `[WARN]` / `[ERROR]` / `[x]`;
118
+ decorative glyphs were dropped and the arrow `->` de-symbolized. Message text,
119
+ colors, and control flow are unchanged (a `git diff -w` is emoji-only).
120
+ - Updated the two coupled tests in lockstep: `install/__tests__/utils/logger.test.js`
121
+ and `install/__tests__/integration/platform-integration.test.js`.
122
+
123
+ ### Removed - Dead Copilot-era task-tool-interface stub
124
+
125
+ - Deleted `task-tool-interface.js` + `-mock.js` from both `src/byan-v2/dispatcher/`
126
+ and `install/src/byan-v2/dispatcher/`, plus their test. The module had no caller
127
+ outside its own test. Scrubbed the five stale `TaskToolInterface` doc references
128
+ it left behind (`task-router` JSDoc + `COMPLETION-REPORT.md`).
129
+
12
130
  ## [2.42.0] - 2026-07-06
13
131
 
14
132
  ### Fixed - Shipped Claude Code hooks no longer spam MODULE_NOT_FOUND
@@ -86,7 +86,7 @@ function renderStandups(entries) {
86
86
  const blockers = e.blockers && e.blockers.length > 0
87
87
  ? FG(COLORS.blocked, ` blockers=${e.blockers.join('|')}`)
88
88
  : '';
89
- return `${e.timestamp} ${e.agent}: ${e.did || '-'}${blockers} ${e.next || '-'}`;
89
+ return `${e.timestamp} ${e.agent}: ${e.did || '-'}${blockers} -> ${e.next || '-'}`;
90
90
  })
91
91
  .join('\n');
92
92
  }