@entelligentsia/forgecli 0.9.0 → 0.9.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.
Files changed (3) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +165 -2
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.9.1] — 2026-05-18
11
+
12
+ ### Changed
13
+ - **README: Model setup documentation** — new section walks users through
14
+ the three-knob tier setup (Heavy / Standard / Light) with screen-by-screen
15
+ examples, scope toggle, verification, advanced overrides, and
16
+ non-interactive CLI alternatives.
17
+
10
18
  ## [0.9.0] — 2026-05-18
11
19
 
12
20
  ### Added
package/README.md CHANGED
@@ -95,11 +95,172 @@ CHAIN /forge:plan plan
95
95
  ASK /forge:health KB freshness + store integrity
96
96
  /forge:status Sprint + task status
97
97
  /forge:ask <q> Ask the Tomoshibi concierge
98
- /forge:config Inspect or change project config
98
+ /forge:config Set up AI models for your workflow
99
99
  ```
100
100
 
101
101
  → [Full reference](docs/cli-reference.md) · [Non-interactive mode](docs/non-interactive.md) · [Hook safety net](docs/hook-safety-net.md) · [Custom tools](docs/custom-tools.md) · [Publishing](docs/publishing.md)
102
102
 
103
+ ## Model setup
104
+
105
+ Forge routes each step of your pipeline — plan, review, implement, validate, approve, writeback, commit — to a **specific AI model** via a persona. Out of the box, every step inherits whatever model pi is currently running. The `/forge:config` screen lets you assign models in about 30 seconds.
106
+
107
+ ### The three-knob setup
108
+
109
+ Forge groups its nine personas into three workload tiers:
110
+
111
+ | Tier | Personas | What this model does |
112
+ |------|----------|---------------------|
113
+ | **Heavy** | 🗻 architect · 🌿 supervisor | Review, sign-off, gates |
114
+ | **Standard** | 🌱 engineer · 🐛 bug-fixer · 🍵 qa-engineer · 📋 product-manager | Planning, implementation, validation |
115
+ | **Light** | 🍃 collator · 📚 librarian · 🌊 orchestrator | Writeback, indexing, task flow |
116
+
117
+ Pick one model per tier and you're done — all nine personas are configured.
118
+
119
+ ### Step by step
120
+
121
+ **1. Open the config screen**
122
+
123
+ ```
124
+ /forge:config
125
+ ```
126
+
127
+ You'll see three tier rows — Heavy, Standard, Light — each showing "not set":
128
+
129
+ ```
130
+ forge config
131
+ ────────────────────────────────────────────────────────────
132
+ Active right now
133
+ ────────────────
134
+ Heavy not set — falls back to pi current (ollama:qwen2.5:0.5b)
135
+ Standard not set — falls back to pi current (ollama:qwen2.5:0.5b)
136
+ Light not set — falls back to pi current (ollama:qwen2.5:0.5b)
137
+ Scope ▸ project ( ~/src/hello ) global
138
+
139
+ Choose models for your AI workflow
140
+ ──────────────────────────────────
141
+ ▸ Heavy (review, sign-off) not set
142
+ Standard (planning, implementation) not set
143
+ Light (writeback, indexing) not set
144
+
145
+ Show what runs at each step
146
+ Advanced — per-persona / per-step overrides
147
+
148
+ enter pick model tab toggle scope q quit
149
+ ```
150
+
151
+ **2. Pick a model for each tier**
152
+
153
+ Press `enter` on Heavy (or press `1`), pick a provider, then a model:
154
+
155
+ ```
156
+ forge config › Heavy › pick provider
157
+ ────────────────────────────────────
158
+ This will run for: 🗻 architect, 🌿 supervisor
159
+
160
+ ▸ anthropic ✓ authenticated 12 models
161
+ ollama ✓ authenticated 24 models
162
+ openai ✓ authenticated 18 models
163
+
164
+ ↑↓ select enter advance esc back
165
+ ```
166
+
167
+ ```
168
+ forge config › Heavy › pick model (provider: anthropic)
169
+ ──────────────────────────────────────────────────────────
170
+ This will run for: 🗻 architect, 🌿 supervisor
171
+
172
+ ▸ claude-opus-4-5-20250514
173
+ claude-sonnet-4-20250514
174
+ claude-haiku-4-20250514
175
+
176
+ ↑↓ select enter save esc back
177
+ ```
178
+
179
+ Pressing `enter` on a model commits it immediately — both personas in that tier are now configured. Repeat for Standard and Light.
180
+
181
+ **3. Done**
182
+
183
+ After all three tiers are set, the landing screen shows your assignments:
184
+
185
+ ```
186
+ Active right now
187
+ ────────────────
188
+ Heavy anthropic:claude-opus-4-5-20250514 (project)
189
+ Standard anthropic:claude-sonnet-4-20250514 (project)
190
+ Light ollama:qwen2.5:0.5b (project)
191
+ Scope project ▸ global
192
+
193
+ Choose models for your AI workflow
194
+ ──────────────────────────────────
195
+ ▸ Heavy (review, sign-off) anthropic:claude-opus-4-5-20250514
196
+ Standard (planning, implementation) anthropic:claude-sonnet-4-20250514
197
+ Light (writeback, indexing) ollama:qwen2.5:0.5b
198
+
199
+ Show what runs at each step
200
+ Advanced — per-persona / per-step overrides
201
+ ```
202
+
203
+ No separate save step — each tier pick writes through instantly.
204
+
205
+ ### Scope: project vs global
206
+
207
+ Press `tab` to toggle scope before picking a tier:
208
+
209
+ - **project** — writes to `.pi/forge-cli/config.json` in the current project. Different projects can use different models.
210
+ - **global** — writes to `~/.pi/agent/forge-cli/config.json`. Applies to every project that doesn't have a project-level override.
211
+
212
+ ### Verify your setup
213
+
214
+ Select **"Show what runs at each step"** (or press `s`) to see which model runs each pipeline step:
215
+
216
+ ```
217
+ forge config › current setup
218
+ ────────────────────────────
219
+ Step Persona Model Source
220
+ ───── ───────── ────── ──────
221
+ plan 🌱 engineer anthropic:claude-sonnet… Standard tier (project)
222
+ review-plan 🌿 supervisor anthropic:claude-opus-… Heavy tier (project)
223
+ implement 🌱 engineer anthropic:claude-sonnet… Standard tier (project)
224
+ review-code 🌿 supervisor anthropic:claude-opus-… Heavy tier (project)
225
+ validate 🍵 qa-engineer anthropic:claude-sonnet… Standard tier (project)
226
+ approve 🗻 architect anthropic:claude-opus-… Heavy tier (project)
227
+ writeback 🍃 collator ollama:qwen2.5:0.5b Light tier (project)
228
+ commit 🌱 engineer anthropic:claude-sonnet… Standard tier (project)
229
+
230
+ How models get picked
231
+ ─────────────────────
232
+ Each step's persona looks for an override at four levels (most specific wins):
233
+ 1. A model set just for this step (Step override)
234
+ 2. A model set just for this persona (Per-persona override)
235
+ 3. The tier baseline you set above (Heavy / Standard / Light)
236
+ 4. Whatever model pi is currently running on (falls back automatically)
237
+ ```
238
+
239
+ ### Advanced overrides
240
+
241
+ Select **"Advanced"** (or press `a`) for fine-grained control:
242
+
243
+ - **Override one persona's model** — change the model for a single persona without affecting the rest of its tier.
244
+ - **Override one step's model** — change the model for a single pipeline step (e.g. always use a specific model for the commit step).
245
+ - **Edit raw persona-models entries** — direct editor for the full persona list.
246
+
247
+ Most users never need these — the three tier knobs cover the 80% path.
248
+
249
+ ### Non-interactive model setup
250
+
251
+ Use the CLI directly (no TUI required):
252
+
253
+ ```sh
254
+ # Print the resolved routing table
255
+ forge config show --resolved
256
+
257
+ # Per-phase dispatch trace (no LLM call)
258
+ forge config dispatch
259
+
260
+ # Validate all resolved models are authenticated
261
+ forge config show --strict-models
262
+ ```
263
+
103
264
  ## Where to go next
104
265
 
105
266
  - **[docs/](docs/)** — CLI flags, non-interactive mode, hook dispatcher, custom tools, publishing
@@ -110,6 +271,7 @@ ASK /forge:health KB freshness + store integrity
110
271
 
111
272
  | Up next | Status |
112
273
  |----------------------------------------------------|---------------------|
274
+ | Per-persona model routing + tiered config TUI | Shipped (0.9.0) |
113
275
  | 4ge brand wordmark in CLI banner + 3 themes | Shipped (0.7.7) |
114
276
  | Slim README + docs/ split | Shipped (0.7.7) |
115
277
  | Subagent audience relaxed to advisory | Shipped (0.7.6) |
@@ -147,6 +309,7 @@ MIT © Entelligentsia
147
309
  Shipped: 0.2.0 · 0.2.1 · 0.3.0 · 0.4.0 ·
148
310
  0.5.0 · 0.5.1 · 0.5.2 · 0.5.3 · 0.5.4 · 0.5.5 · 0.5.6 · 0.5.7 ·
149
311
  0.6.1 · 0.6.2 · 0.6.3 · 0.6.4 · 0.6.5 · 0.6.6 ·
150
- 0.7.0 · 0.7.1 · 0.7.2 · 0.7.3 · 0.7.4 · 0.7.5 · 0.7.6 · 0.7.7
312
+ 0.7.0 · 0.7.1 · 0.7.2 · 0.7.3 · 0.7.4 · 0.7.5 · 0.7.6 · 0.7.7 ·
313
+ 0.8.0 · 0.8.1 · 0.8.2 · 0.8.3 · 0.8.4 · 0.9.0
151
314
  -->
152
315
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@entelligentsia/forgecli",
3
- "version": "0.9.0",
3
+ "version": "0.9.1",
4
4
  "description": "Forge SDLC ported onto @earendil-works/pi-coding-agent — production launcher with three bin aliases (forge/forgecli/4ge). Bundles a curated fork of pi-coding-agent vendored under earendil-works names.",
5
5
  "license": "MIT",
6
6
  "author": "Entelligentsia",