@boopkit/cli 0.6.15 → 0.6.16
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/dist/capability-versions.json +1 -1
- package/dist/cli.js +1 -1
- package/dist/commands/loop.d.ts +10 -1
- package/dist/commands/loop.js +21 -3
- package/docs/loop.md +1 -1
- package/package.json +1 -1
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"@boopkit/cap-noticeboard": "0.4.1",
|
|
10
10
|
"@boopkit/cap-oauth-client": "0.1.1",
|
|
11
11
|
"@boopkit/cap-oauth-server": "0.1.4",
|
|
12
|
-
"@boopkit/cap-product-design": "0.6.
|
|
12
|
+
"@boopkit/cap-product-design": "0.6.10",
|
|
13
13
|
"@boopkit/cap-project-mgmt": "0.4.11",
|
|
14
14
|
"@boopkit/cap-services": "0.4.3",
|
|
15
15
|
"@boopkit/cap-skills": "0.5.6",
|
package/dist/cli.js
CHANGED
|
@@ -128,7 +128,7 @@ program
|
|
|
128
128
|
.option('--run', 'actually execute (dry-run by default)')
|
|
129
129
|
.option('--max <n>', 'stop after N issues')
|
|
130
130
|
.option('--budget <amount>', `budget cap per issue in USD (default: ${loop_1.DEFAULT_BUDGET_USD})`)
|
|
131
|
-
.option('--model <model>', 'Claude model to use, applied to every spawned session and nested loop (falls back to $ANTHROPIC_MODEL, then claude-opus-5). Sub-agents keep their own declared model unless they opt into model: inherit.')
|
|
131
|
+
.option('--model <model>', 'Claude model to use, applied to every spawned session and nested loop (falls back to $ANTHROPIC_MODEL, then claude-opus-5-5). Sub-agents keep their own declared model unless they opt into model: inherit.')
|
|
132
132
|
.option('--poll', 'keep polling when no ready issues found')
|
|
133
133
|
.option('--poll-interval <seconds>', 'seconds between polls (default: 60)')
|
|
134
134
|
.option('--resume-limit <n>', 'max resume attempts per issue (default: 3)')
|
package/dist/commands/loop.d.ts
CHANGED
|
@@ -161,10 +161,19 @@ export declare function isStandaloneUsageLimitMessage(text: string): boolean;
|
|
|
161
161
|
* the `ANTHROPIC_MODEL` environment variable, then the built-in default. The env
|
|
162
162
|
* fallback is what lets a nested `boop loop` (spawned by a Claude session that
|
|
163
163
|
* the parent loop launched with ANTHROPIC_MODEL set) inherit the same model
|
|
164
|
-
* instead of silently dropping to the default. Keep the default (claude-opus-5)
|
|
164
|
+
* instead of silently dropping to the default. Keep the default (claude-opus-5-5)
|
|
165
165
|
* in sync with the `--model` help text in cli.ts.
|
|
166
166
|
*/
|
|
167
|
+
export declare const DEFAULT_MODEL = "claude-opus-5-5";
|
|
167
168
|
export declare function resolveModel(optionModel: string | undefined, env?: NodeJS.ProcessEnv): string;
|
|
169
|
+
/**
|
|
170
|
+
* A notice for when ANTHROPIC_MODEL, not the flag or the default, decided the
|
|
171
|
+
* model — so an operator who forgot the variable in their shell sees why the
|
|
172
|
+
* run is not on the default. Silent when --model is given (the variable is
|
|
173
|
+
* ignored) and when the variable matches the default, which is what a nested
|
|
174
|
+
* loop under a default-model parent inherits.
|
|
175
|
+
*/
|
|
176
|
+
export declare function modelEnvNotice(optionModel: string | undefined, env?: NodeJS.ProcessEnv): string | undefined;
|
|
168
177
|
/**
|
|
169
178
|
* Whether the loop should resume an issue that a session left open. A `blocked`
|
|
170
179
|
* issue was deliberately halted by the prior session because it judged it could
|
package/dist/commands/loop.js
CHANGED
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.RESUME_PROMPT = exports.DEFAULT_BUDGET_USD = exports.BD_READ_MAX_BUFFER = void 0;
|
|
36
|
+
exports.RESUME_PROMPT = exports.DEFAULT_BUDGET_USD = exports.DEFAULT_MODEL = exports.BD_READ_MAX_BUFFER = void 0;
|
|
37
37
|
exports.assertDoltServerMode = assertDoltServerMode;
|
|
38
38
|
exports.discoverDoltServer = discoverDoltServer;
|
|
39
39
|
exports.resolveDefaultBranch = resolveDefaultBranch;
|
|
@@ -46,6 +46,7 @@ exports.extractFeatureId = extractFeatureId;
|
|
|
46
46
|
exports.isUsageLimitText = isUsageLimitText;
|
|
47
47
|
exports.isStandaloneUsageLimitMessage = isStandaloneUsageLimitMessage;
|
|
48
48
|
exports.resolveModel = resolveModel;
|
|
49
|
+
exports.modelEnvNotice = modelEnvNotice;
|
|
49
50
|
exports.shouldResumeUnclosedIssue = shouldResumeUnclosedIssue;
|
|
50
51
|
exports.isIssueInScope = isIssueInScope;
|
|
51
52
|
exports.isClaimableReadyIssue = isClaimableReadyIssue;
|
|
@@ -658,11 +659,25 @@ function findClaudeBinary() {
|
|
|
658
659
|
* the `ANTHROPIC_MODEL` environment variable, then the built-in default. The env
|
|
659
660
|
* fallback is what lets a nested `boop loop` (spawned by a Claude session that
|
|
660
661
|
* the parent loop launched with ANTHROPIC_MODEL set) inherit the same model
|
|
661
|
-
* instead of silently dropping to the default. Keep the default (claude-opus-5)
|
|
662
|
+
* instead of silently dropping to the default. Keep the default (claude-opus-5-5)
|
|
662
663
|
* in sync with the `--model` help text in cli.ts.
|
|
663
664
|
*/
|
|
665
|
+
exports.DEFAULT_MODEL = 'claude-opus-5-5';
|
|
664
666
|
function resolveModel(optionModel, env = process.env) {
|
|
665
|
-
return optionModel || env.ANTHROPIC_MODEL ||
|
|
667
|
+
return optionModel || env.ANTHROPIC_MODEL || exports.DEFAULT_MODEL;
|
|
668
|
+
}
|
|
669
|
+
/**
|
|
670
|
+
* A notice for when ANTHROPIC_MODEL, not the flag or the default, decided the
|
|
671
|
+
* model — so an operator who forgot the variable in their shell sees why the
|
|
672
|
+
* run is not on the default. Silent when --model is given (the variable is
|
|
673
|
+
* ignored) and when the variable matches the default, which is what a nested
|
|
674
|
+
* loop under a default-model parent inherits.
|
|
675
|
+
*/
|
|
676
|
+
function modelEnvNotice(optionModel, env = process.env) {
|
|
677
|
+
const envModel = env.ANTHROPIC_MODEL;
|
|
678
|
+
if (optionModel || !envModel || envModel === exports.DEFAULT_MODEL)
|
|
679
|
+
return undefined;
|
|
680
|
+
return `Using model ${envModel} from $ANTHROPIC_MODEL (default is ${exports.DEFAULT_MODEL}; pass --model to override)`;
|
|
666
681
|
}
|
|
667
682
|
/**
|
|
668
683
|
* Whether the loop should resume an issue that a session left open. A `blocked`
|
|
@@ -1232,6 +1247,9 @@ async function runLoop(options) {
|
|
|
1232
1247
|
const resumeLimit = parseInt(options.resumeLimit || '3', 10);
|
|
1233
1248
|
const pollInterval = parseInt(options.pollInterval || '60', 10);
|
|
1234
1249
|
const model = resolveModel(options.model);
|
|
1250
|
+
const envNotice = modelEnvNotice(options.model);
|
|
1251
|
+
if (envNotice)
|
|
1252
|
+
console.log(`\x1b[33m[bd-loop]\x1b[0m ${envNotice}`);
|
|
1235
1253
|
const perIssueBranch = options.perIssueBranch || false;
|
|
1236
1254
|
const noBranch = options.branch === false;
|
|
1237
1255
|
let includeFeatures = options.features || false;
|
package/docs/loop.md
CHANGED
|
@@ -52,7 +52,7 @@ If `--prefix` is also provided, it is passed to the planning session as a naming
|
|
|
52
52
|
| `--resume-limit <n>` | `3` | Maximum resume attempts if issue isn't closed |
|
|
53
53
|
| `--poll` | off | Keep polling when no ready issues found |
|
|
54
54
|
| `--poll-interval <s>` | `60` | Seconds between polls |
|
|
55
|
-
| `--model <model>` | `claude-opus-5` | Claude model to use (falls back to `$ANTHROPIC_MODEL`, then this default) |
|
|
55
|
+
| `--model <model>` | `claude-opus-5-5` | Claude model to use (falls back to `$ANTHROPIC_MODEL`, then this default) |
|
|
56
56
|
| `--per-issue-branch` | off | Create a `fix/<issue-id>` branch per issue (nested inside the worktree) |
|
|
57
57
|
| `--reuse-session` | off | (`--prefix` only) Reuse one Claude session across a coherent run of issues, rotating to a fresh session when its context fills. Mutually exclusive with `--per-issue-branch` |
|
|
58
58
|
| `--no-branch` | off | Opt out of worktree isolation; run in-place on the current branch |
|
package/package.json
CHANGED