clavue-v1 1.2.0 → 1.3.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.
package/README.md CHANGED
@@ -35,6 +35,7 @@ Canonical primary command surfaces:
35
35
  - `/provider`: configure, switch, validate, repair, copy, edit, delete, or save provider profiles.
36
36
  - `/permissions` (`/approvals` compatibility alias): set the default permission mode so trusted development environments can run with less friction; use `/permissions autonomous` for an opt-in high-autonomy local development lane.
37
37
  - `/team`: inspect local team readiness, active team config, and capability state.
38
+ - `/goal`: run a durable, evidence-gated goal loop with a persistent ledger and a bounded auto-continuation budget.
38
39
  - `/retro`: run a multi-round repo retrospective and upgrade loop.
39
40
  - `/tasks`: inspect task-board state for long-running work.
40
41
  - `/resume`: continue saved sessions.
@@ -64,8 +65,8 @@ npx -y clavue-v1
64
65
  Run a specific version with `npx`:
65
66
 
66
67
  ```bash
67
- npx -y clavue-v1@1.2.0 --version
68
- npx -y clavue-v1@1.2.0
68
+ npx -y clavue-v1@1.3.0 --version
69
+ npx -y clavue-v1@1.3.0
69
70
  ```
70
71
 
71
72
  Install globally from npm when you want the `clavue-v1` command to stay available:
@@ -87,7 +88,7 @@ curl -fsSL https://unpkg.com/clavue-v1/install.sh | bash
87
88
  Install a specific version globally:
88
89
 
89
90
  ```bash
90
- curl -fsSL https://unpkg.com/clavue-v1@1.2.0/install.sh | bash -s -- 1.2.0
91
+ curl -fsSL https://unpkg.com/clavue-v1@1.3.0/install.sh | bash -s -- 1.3.0
91
92
  ```
92
93
 
93
94
  ## Quick Start: Official Clavue Cloud
@@ -96,10 +97,10 @@ Official mode is a provider profile, not a second runtime: the same tools,
96
97
  compaction, permissions, and route inspection as every custom-API profile —
97
98
  only the credential source and the model catalog differ.
98
99
 
99
- 1. Create a member API key at `https://www.clavue.com/account` (`cv_live_…`).
100
- 2. Start `clavue-v1`, choose `自定义 API 配置` → `1. 添加配置`, pick the
101
- `Clavue 官方` preset (API URL `https://api.clavue.com`), paste the key as
102
- the auth token, and set model slots from the official family:
100
+ 1. Run `clavue-v1 auth login` (or choose `使用 clavue OAuth` during first
101
+ launch), sign in at `www.clavue.com`, and approve the device code.
102
+ 2. Clavue stores the session as the `Clavue 官方` provider profile and activates
103
+ the official family automatically:
103
104
 
104
105
  ```text
105
106
  主模型: clavue-2.1 (official 27B coding model, 128K, premium pool)
@@ -109,8 +110,11 @@ Opus: clavue-2.1-rev (review-oriented; a different family from clavue-2.1
109
110
  also works as CLAVUE_COMBO_REVIEW for cross-family review)
110
111
  ```
111
112
 
113
+ Manual fallback: create a member API key at `https://www.clavue.com/account`,
114
+ then add the `Clavue 官方` preset in `clavue-v1 provider`.
115
+
112
116
  `auto` is also accepted. The CLI talks to `api.clavue.com/v1/messages`
113
- (Anthropic Messages API) and `/provider current` shows your plan and remaining
117
+ (Anthropic Messages-compatible protocol) and `/provider current` shows your plan and remaining
114
118
  points from the `x-clavue-points-*` response headers. Official identity is
115
119
  decided by exact host match only — a third-party gateway can never be
116
120
  mistaken for the official cloud.
@@ -145,7 +149,8 @@ clavue-v1 provider doctor # diagnose source-of-truth, drift, validation, and nex
145
149
  clavue-v1 provider validate
146
150
  ```
147
151
 
148
- Use `clavue-v1 auth login` only if you want the official Anthropic login path. Custom API users do not need official login.
152
+ `clavue-v1 auth login` is the clavue OAuth entry point. Custom API users can
153
+ continue to use `clavue-v1 provider` without an OAuth login.
149
154
 
150
155
  ## First Useful Session
151
156
 
@@ -163,13 +168,13 @@ On first launch, Clavue should make the setup choice obvious:
163
168
 
164
169
  ```text
165
170
  请选择 API 配置模式:
166
- 使用官方登录
171
+ 使用 clavue OAuth
167
172
  自定义 API 配置
168
173
  使用 CCR 代理
169
174
  跳过(稍后手动配置)
170
175
  ```
171
176
 
172
- - Use official login when you want the official Anthropic account flow.
177
+ - Use clavue OAuth when you want the official Clavue membership flow.
173
178
  - Use custom API configuration when you have an API base URL plus API key or auth token.
174
179
  - Use CCR proxy when your environment already standardizes on a compatible proxy route.
175
180
  - Skip only when you want to configure later with `clavue-v1 provider` or `/provider`.
@@ -224,6 +229,27 @@ CLAVUE_COMBO_REVIEW_FIX_LOOP=1 # opt-in: a chain-end "P0:" verdict gra
224
229
  `docs/evals/combo-review/`), so the defaults do not spend your time until
225
230
  the discriminating experiment justifies it.
226
231
 
232
+ ## Subagent Model Matching
233
+
234
+ Subagents (`Agent` tool, `/agents` definitions, `Explore`, `Plan`, teams) pick their model in this order:
235
+
236
+ 1. `CLAUDE_CODE_SUBAGENT_MODEL` (written by a provider profile's subagent slot) — an explicit global override that wins over everything.
237
+ 2. The `model` the caller or agent definition asked for:
238
+ - a combo slot name — `light`, `main`, `plan`, `review` — resolves to that `CLAVUE_COMBO_*` model verbatim; an unconfigured `light` falls back to `haiku`, the other slots to `inherit`;
239
+ - `haiku` is the fast tier: with `CLAVUE_COMBO_LIGHT` set it runs there (this is what `Explore` uses), otherwise it follows `ANTHROPIC_DEFAULT_HAIKU_MODEL`;
240
+ - `sonnet` / `opus` follow the parent's exact model when the parent is the same tier, else `ANTHROPIC_DEFAULT_*_MODEL`.
241
+ 3. `inherit` (the default) uses the parent conversation's model.
242
+
243
+ Safety net for non-Claude routes: a bare tier alias that is not pinned by any of the variables above, on a gateway whose parent model is not a Claude model, inherits the parent instead of asking the route for a `claude-*` ID it cannot serve. Set `CLAVUE_COMBO_LIGHT` (or the `ANTHROPIC_DEFAULT_*_MODEL` pins that provider profiles write) to route tiers deliberately.
244
+
245
+ ```bash
246
+ CLAVUE_COMBO_MAIN=deepseek-v4 # developer
247
+ CLAVUE_COMBO_LIGHT=deepseek-v4-flash # Explore / haiku-tier subagents / agents with `model: light`
248
+ CLAVUE_COMBO_REVIEW=glm-5.3 # cross-family reviewer; agents with `model: review` run here too
249
+ ```
250
+
251
+ The `/agents` wizard lists configured slots first and shows what each tier currently resolves to, so an agent can be pinned to "the fast slot" without knowing the underlying model ID. Parallel subagents run through the same concurrency-safe tool batching as every other tool (`CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY`, default 10); use `run_in_background` for independent work and foreground for results you need before continuing.
252
+
227
253
  ## Long-Running Session Memory
228
254
 
229
255
  Clavue automatically restarts normal long-running sessions with `--max-old-space-size=8192` before loading the full CLI. This prevents the common Node default ~4GB heap limit from killing large coding sessions with `Reached heap limit Allocation failed - JavaScript heap out of memory`.
@@ -244,7 +270,7 @@ Version check:
244
270
 
245
271
  ```bash
246
272
  npx -y clavue-v1 --version
247
- npx -y clavue-v1@1.2.0 --version
273
+ npx -y clavue-v1@1.3.0 --version
248
274
  # available after a global install
249
275
  clavue-v1 --version
250
276
  ```
@@ -255,14 +281,28 @@ Provider/config entry point:
255
281
  clavue-v1 provider
256
282
  ```
257
283
 
258
- Anthropic account login/token commands:
284
+ clavue OAuth:
259
285
 
260
286
  ```bash
261
287
  clavue-v1 auth login
262
- clavue-v1 setup-token
288
+ clavue-v1 auth status --text
289
+ clavue-v1 auth logout
263
290
  ```
264
291
 
265
- `clavue-v1 auth login` and `clavue-v1 setup-token` are only for Anthropic account auth flows. They are not the provider-profile entrypoint.
292
+ The legacy Anthropic OAuth and long-lived `setup-token` flow are no longer
293
+ user-facing login paths. Protocol-compatible API providers remain available
294
+ through `clavue-v1 provider`.
295
+
296
+ Canonical configuration names:
297
+
298
+ ```text
299
+ ~/.clavue/.clavue.json global application state
300
+ ~/.clavue/settings.json user settings
301
+ <project>/.clavue/settings.json shared project settings
302
+ <project>/.clavue/settings.local.json private project overrides
303
+ <project>/clavue.md project instructions
304
+ <project>/clavue.local.md private project instructions
305
+ ```
266
306
 
267
307
  ## In-Session Workflows
268
308
 
@@ -297,7 +337,22 @@ The Mao supervisor ledger is still used internally by delivery gates; user-facin
297
337
 
298
338
  Typing `agent teams` at the start of a prompt opens the same native `/team` flow instead of sending that phrase to the model as plain text. Agent teams are enabled by default in Clavue; set `CLAVUE_DISABLE_AGENT_TEAMS=1` or `CLAVUE_AGENT_TEAMS=0` before launch only if you need to disable them. Use `/team check` for a concrete readiness report.
299
339
 
300
- `/retro` runs a multi-round repo retrospective and upgrade loop guided by `PRODUCT.md` and `ARCHITECTURE.md`, with `tisheng.md` treated as historical context only when it still agrees.
340
+ `/goal` turns a one-line objective into a durable mission. Clavue writes a ledger under `.clavue/goals/`, defines the plan itself, and keeps working across turns until evidence proves the objective, the budget runs out, or a real blocker appears. The loop is bounded: 20 auto-continued turns or 6 hours, whichever comes first. Exhaustion pauses the goal with an explicit `budget_exhausted` event; `/goal resume` grants a fresh budget. Completion is refused until at least one piece of evidence is on record, and starting a new goal supersedes the live one with an audit event.
341
+
342
+ ```text
343
+ /goal ship the 1.3.0 release and verify npm, GitHub, and the website
344
+ /goal criteria npm run check passes on main
345
+ /goal evidence npm run test:fast passed (24 files)
346
+ /goal status
347
+ /goal pause waiting for the registry token
348
+ /goal resume
349
+ /goal complete release verified on npm and GitHub
350
+ /goal stop superseded by hotfix
351
+ ```
352
+
353
+ Only completed model turns advance the loop; `/goal status`, `/goal evidence`, and the other local subcommands never spend a turn or queue a duplicate mission prompt.
354
+
355
+ `/retro` runs a multi-round repo retrospective and upgrade loop guided by `PRODUCT.md` and `ARCHITECTURE.md`, with `AGENTS.md` as the contributor contract and older planning notes under `docs/` treated as historical context only when they still agree. When a `/goal` is active, `/retro` treats that objective as the outer mission and records kept slices as goal evidence.
301
356
 
302
357
  ```text
303
358
  /retro
@@ -305,6 +360,16 @@ Typing `agent teams` at the start of a prompt opens the same native `/team` flow
305
360
  /retro onboarding and route validation
306
361
  ```
307
362
 
363
+ `/review` reviews a pull request or local work with one rubric: findings anchored as `path:line`, severity markers `P0:`/`P1:`/`P2:`/`nit:` shared with the cross-family combo review hop, verified-vs-suspected labelling, and a single `Verdict:` line. With no argument it reviews the working tree when dirty, otherwise the current branch against its base.
364
+
365
+ ```text
366
+ /review
367
+ /review --staged
368
+ /review --base origin/main
369
+ /review 128
370
+ /review 128 concurrency and error paths
371
+ ```
372
+
308
373
  Companion commands are still available and can either follow the current app provider or bind to a saved `/provider` profile independently.
309
374
 
310
375
  ```text