rafcode 2.2.0 → 2.4.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/CLAUDE.md +19 -4
- package/RAF/ahtahs-token-reaper/decisions.md +37 -0
- package/RAF/ahtahs-token-reaper/input.md +20 -0
- package/RAF/ahtahs-token-reaper/outcomes/01-extend-token-tracker-data-model.md +42 -0
- package/RAF/ahtahs-token-reaper/outcomes/02-accumulate-usage-in-retry-loop.md +31 -0
- package/RAF/ahtahs-token-reaper/outcomes/03-per-attempt-display-formatting.md +60 -0
- package/RAF/ahtahs-token-reaper/outcomes/04-add-model-name-to-claude-call-logs.md +57 -0
- package/RAF/ahtahs-token-reaper/outcomes/05-handle-invalid-config-in-raf-config.md +46 -0
- package/RAF/ahtahs-token-reaper/outcomes/06-fix-verbose-toggle-timer-display.md +38 -0
- package/RAF/ahtahs-token-reaper/plans/01-extend-token-tracker-data-model.md +36 -0
- package/RAF/ahtahs-token-reaper/plans/02-accumulate-usage-in-retry-loop.md +36 -0
- package/RAF/ahtahs-token-reaper/plans/03-per-attempt-display-formatting.md +43 -0
- package/RAF/ahtahs-token-reaper/plans/04-add-model-name-to-claude-call-logs.md +38 -0
- package/RAF/ahtahs-token-reaper/plans/05-handle-invalid-config-in-raf-config.md +36 -0
- package/RAF/ahtahs-token-reaper/plans/06-fix-verbose-toggle-timer-display.md +40 -0
- package/RAF/ahvrih-rate-forge/decisions.md +70 -0
- package/RAF/ahvrih-rate-forge/input.md +44 -0
- package/RAF/ahvrih-rate-forge/outcomes/01-remove-claude-command-config.md +58 -0
- package/RAF/ahvrih-rate-forge/outcomes/02-fix-mixed-attempt-cost.md +46 -0
- package/RAF/ahvrih-rate-forge/outcomes/03-rate-limit-estimation.md +82 -0
- package/RAF/ahvrih-rate-forge/outcomes/04-show-version-in-do-logs.md +45 -0
- package/RAF/ahvrih-rate-forge/outcomes/05-sync-main-before-worktree.md +96 -0
- package/RAF/ahvrih-rate-forge/outcomes/06-sync-readme-with-codebase.md +45 -0
- package/RAF/ahvrih-rate-forge/outcomes/07-no-session-persistence.md +26 -0
- package/RAF/ahvrih-rate-forge/outcomes/08-plan-execution-metadata.md +130 -0
- package/RAF/ahvrih-rate-forge/plans/01-remove-claude-command-config.md +36 -0
- package/RAF/ahvrih-rate-forge/plans/02-fix-mixed-attempt-cost.md +33 -0
- package/RAF/ahvrih-rate-forge/plans/03-rate-limit-estimation.md +82 -0
- package/RAF/ahvrih-rate-forge/plans/04-show-version-in-do-logs.md +32 -0
- package/RAF/ahvrih-rate-forge/plans/05-sync-main-before-worktree.md +40 -0
- package/RAF/ahvrih-rate-forge/plans/06-sync-readme-with-codebase.md +61 -0
- package/RAF/ahvrih-rate-forge/plans/07-no-session-persistence.md +28 -0
- package/RAF/ahvrih-rate-forge/plans/08-plan-execution-metadata.md +123 -0
- package/README.md +27 -7
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +24 -7
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/do.d.ts.map +1 -1
- package/dist/commands/do.js +122 -27
- package/dist/commands/do.js.map +1 -1
- package/dist/commands/plan.d.ts.map +1 -1
- package/dist/commands/plan.js +79 -3
- package/dist/commands/plan.js.map +1 -1
- package/dist/core/claude-runner.d.ts +6 -6
- package/dist/core/claude-runner.d.ts.map +1 -1
- package/dist/core/claude-runner.js +9 -10
- package/dist/core/claude-runner.js.map +1 -1
- package/dist/core/failure-analyzer.d.ts.map +1 -1
- package/dist/core/failure-analyzer.js +3 -3
- package/dist/core/failure-analyzer.js.map +1 -1
- package/dist/core/pull-request.d.ts.map +1 -1
- package/dist/core/pull-request.js +5 -3
- package/dist/core/pull-request.js.map +1 -1
- package/dist/core/state-derivation.d.ts +5 -0
- package/dist/core/state-derivation.d.ts.map +1 -1
- package/dist/core/state-derivation.js +14 -4
- package/dist/core/state-derivation.js.map +1 -1
- package/dist/core/worktree.d.ts +32 -0
- package/dist/core/worktree.d.ts.map +1 -1
- package/dist/core/worktree.js +215 -0
- package/dist/core/worktree.js.map +1 -1
- package/dist/prompts/amend.d.ts.map +1 -1
- package/dist/prompts/amend.js +26 -11
- package/dist/prompts/amend.js.map +1 -1
- package/dist/prompts/planning.d.ts.map +1 -1
- package/dist/prompts/planning.js +26 -11
- package/dist/prompts/planning.js.map +1 -1
- package/dist/types/config.d.ts +30 -13
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js +14 -10
- package/dist/types/config.js.map +1 -1
- package/dist/utils/config.d.ts +53 -4
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +197 -30
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/frontmatter.d.ts +43 -0
- package/dist/utils/frontmatter.d.ts.map +1 -0
- package/dist/utils/frontmatter.js +85 -0
- package/dist/utils/frontmatter.js.map +1 -0
- package/dist/utils/name-generator.d.ts.map +1 -1
- package/dist/utils/name-generator.js +2 -3
- package/dist/utils/name-generator.js.map +1 -1
- package/dist/utils/session-parser.d.ts +44 -0
- package/dist/utils/session-parser.d.ts.map +1 -0
- package/dist/utils/session-parser.js +122 -0
- package/dist/utils/session-parser.js.map +1 -0
- package/dist/utils/terminal-symbols.d.ts +28 -5
- package/dist/utils/terminal-symbols.d.ts.map +1 -1
- package/dist/utils/terminal-symbols.js +77 -18
- package/dist/utils/terminal-symbols.js.map +1 -1
- package/dist/utils/token-tracker.d.ts +31 -1
- package/dist/utils/token-tracker.d.ts.map +1 -1
- package/dist/utils/token-tracker.js +94 -4
- package/dist/utils/token-tracker.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/config.ts +26 -7
- package/src/commands/do.ts +157 -29
- package/src/commands/plan.ts +89 -2
- package/src/core/claude-runner.ts +16 -17
- package/src/core/failure-analyzer.ts +3 -3
- package/src/core/pull-request.ts +5 -3
- package/src/core/state-derivation.ts +20 -4
- package/src/core/worktree.ts +230 -0
- package/src/prompts/amend.ts +26 -11
- package/src/prompts/config-docs.md +91 -29
- package/src/prompts/planning.ts +26 -11
- package/src/types/config.ts +46 -21
- package/src/utils/config.ts +222 -33
- package/src/utils/frontmatter.ts +110 -0
- package/src/utils/name-generator.ts +2 -3
- package/src/utils/session-parser.ts +161 -0
- package/src/utils/terminal-symbols.ts +105 -18
- package/src/utils/token-tracker.ts +109 -4
- package/tests/unit/claude-runner-interactive.test.ts +8 -6
- package/tests/unit/claude-runner.test.ts +5 -66
- package/tests/unit/config-command.test.ts +84 -5
- package/tests/unit/config.test.ts +292 -45
- package/tests/unit/frontmatter.test.ts +182 -0
- package/tests/unit/post-execution-picker.test.ts +5 -0
- package/tests/unit/session-parser.test.ts +301 -0
- package/tests/unit/terminal-symbols.test.ts +263 -33
- package/tests/unit/timer-verbose-integration.test.ts +170 -0
- package/tests/unit/token-tracker.test.ts +653 -17
- package/tests/unit/validation.test.ts +6 -4
- package/tests/unit/worktree.test.ts +242 -0
package/dist/commands/do.js
CHANGED
|
@@ -12,7 +12,8 @@ import { validatePlansExist, resolveModelOption } from '../utils/validation.js';
|
|
|
12
12
|
import { getRafDir, extractProjectNumber, extractProjectName, extractTaskNameFromPlanFile, resolveProjectIdentifierWithDetails, getOutcomeFilePath, parseProjectPrefix } from '../utils/paths.js';
|
|
13
13
|
import { pickPendingProject, getPendingProjects, getPendingWorktreeProjects } from '../ui/project-picker.js';
|
|
14
14
|
import { logger } from '../utils/logger.js';
|
|
15
|
-
import { getConfig,
|
|
15
|
+
import { getConfig, getWorktreeDefault, getModel, getModelShortName, resolveFullModelId, getSyncMainBranch, resolveEffortToModel, applyModelCeiling } from '../utils/config.js';
|
|
16
|
+
import { getVersion } from '../utils/version.js';
|
|
16
17
|
import { createTaskTimer, formatElapsedTime } from '../utils/timer.js';
|
|
17
18
|
import { createStatusLine } from '../utils/status-line.js';
|
|
18
19
|
import { formatProjectHeader, formatSummary, formatTaskProgress, formatTaskTokenSummary, formatTokenTotalSummary, } from '../utils/terminal-symbols.js';
|
|
@@ -20,8 +21,53 @@ import { TokenTracker } from '../utils/token-tracker.js';
|
|
|
20
21
|
import { VerboseToggle } from '../utils/verbose-toggle.js';
|
|
21
22
|
import { deriveProjectState, discoverProjects, getNextExecutableTask, getDerivedStats, getDerivedStatsForTasks, isProjectComplete, hasProjectFailed, parseOutcomeStatus, } from '../core/state-derivation.js';
|
|
22
23
|
import { analyzeFailure } from '../core/failure-analyzer.js';
|
|
23
|
-
import { getRepoRoot, getRepoBasename, getCurrentBranch, computeWorktreePath, computeWorktreeBaseDir, validateWorktree, listWorktreeProjects, mergeWorktreeBranch, removeWorktree, resolveWorktreeProjectByIdentifier, } from '../core/worktree.js';
|
|
24
|
+
import { getRepoRoot, getRepoBasename, getCurrentBranch, computeWorktreePath, computeWorktreeBaseDir, validateWorktree, listWorktreeProjects, mergeWorktreeBranch, removeWorktree, resolveWorktreeProjectByIdentifier, pushMainBranch, pullMainBranch, } from '../core/worktree.js';
|
|
24
25
|
import { createPullRequest, prPreflight } from '../core/pull-request.js';
|
|
26
|
+
/**
|
|
27
|
+
* Resolve the execution model for a task from its frontmatter metadata.
|
|
28
|
+
*
|
|
29
|
+
* Resolution order:
|
|
30
|
+
* 1. Explicit `model` in frontmatter (subject to ceiling)
|
|
31
|
+
* 2. `effort` in frontmatter resolved via effortMapping (subject to ceiling)
|
|
32
|
+
* 3. Fallback to models.execute (the ceiling, with a warning)
|
|
33
|
+
*
|
|
34
|
+
* @param frontmatter - Parsed frontmatter from the plan file
|
|
35
|
+
* @param frontmatterWarnings - Warnings from frontmatter parsing
|
|
36
|
+
* @param ceilingModel - The ceiling model (usually models.execute from config)
|
|
37
|
+
* @param isRetry - Whether this is a retry attempt (escalates to ceiling)
|
|
38
|
+
*/
|
|
39
|
+
function resolveTaskModel(frontmatter, frontmatterWarnings, ceilingModel, isRetry) {
|
|
40
|
+
const warnings = frontmatterWarnings ? [...frontmatterWarnings] : [];
|
|
41
|
+
// Retry escalation: always use the ceiling model on retry
|
|
42
|
+
if (isRetry) {
|
|
43
|
+
return { model: ceilingModel, missingFrontmatter: false, warnings };
|
|
44
|
+
}
|
|
45
|
+
// No frontmatter - fallback to ceiling with warning
|
|
46
|
+
if (!frontmatter) {
|
|
47
|
+
return {
|
|
48
|
+
model: ceilingModel,
|
|
49
|
+
missingFrontmatter: true,
|
|
50
|
+
warnings,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
// Explicit model in frontmatter - apply ceiling
|
|
54
|
+
if (frontmatter.model) {
|
|
55
|
+
const model = applyModelCeiling(frontmatter.model, ceilingModel);
|
|
56
|
+
return { model, missingFrontmatter: false, warnings };
|
|
57
|
+
}
|
|
58
|
+
// Effort-based resolution - apply ceiling
|
|
59
|
+
if (frontmatter.effort) {
|
|
60
|
+
const mappedModel = resolveEffortToModel(frontmatter.effort);
|
|
61
|
+
const model = applyModelCeiling(mappedModel, ceilingModel);
|
|
62
|
+
return { model, missingFrontmatter: false, warnings };
|
|
63
|
+
}
|
|
64
|
+
// Frontmatter present but no effort or model - fallback to ceiling with warning
|
|
65
|
+
return {
|
|
66
|
+
model: ceilingModel,
|
|
67
|
+
missingFrontmatter: true,
|
|
68
|
+
warnings,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
25
71
|
/**
|
|
26
72
|
* Format failure history for console output.
|
|
27
73
|
* Shows attempts that failed before eventual success or final failure.
|
|
@@ -86,6 +132,18 @@ async function runDoCommand(projectIdentifierArg, options) {
|
|
|
86
132
|
const rafRelativePath = path.relative(repoRoot, rafDir);
|
|
87
133
|
// Record original branch before any worktree operations
|
|
88
134
|
originalBranch = getCurrentBranch() ?? undefined;
|
|
135
|
+
// Sync main branch before worktree operations (if enabled)
|
|
136
|
+
if (getSyncMainBranch()) {
|
|
137
|
+
const syncResult = pullMainBranch();
|
|
138
|
+
if (syncResult.success) {
|
|
139
|
+
if (syncResult.hadChanges) {
|
|
140
|
+
logger.info(`Synced ${syncResult.mainBranch} from remote`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
logger.warn(`Could not sync main branch: ${syncResult.error}`);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
89
147
|
if (!projectIdentifier) {
|
|
90
148
|
// Auto-discovery flow
|
|
91
149
|
const selected = await discoverAndPickWorktreeProject(repoBasename, rafDir, rafRelativePath);
|
|
@@ -288,7 +346,6 @@ async function runDoCommand(projectIdentifierArg, options) {
|
|
|
288
346
|
force,
|
|
289
347
|
maxRetries,
|
|
290
348
|
autoCommit,
|
|
291
|
-
showModel: true,
|
|
292
349
|
model,
|
|
293
350
|
worktreeCwd: worktreeRoot,
|
|
294
351
|
});
|
|
@@ -378,6 +435,18 @@ async function executePostAction(action, worktreeRoot, worktreeBranch, originalB
|
|
|
378
435
|
}
|
|
379
436
|
case 'pr': {
|
|
380
437
|
logger.newline();
|
|
438
|
+
// Push main branch to remote before PR creation (if enabled)
|
|
439
|
+
if (getSyncMainBranch()) {
|
|
440
|
+
const syncResult = pushMainBranch();
|
|
441
|
+
if (syncResult.success) {
|
|
442
|
+
if (syncResult.hadChanges) {
|
|
443
|
+
logger.info(`Pushed ${syncResult.mainBranch} to remote`);
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
else {
|
|
447
|
+
logger.warn(`Could not push main branch: ${syncResult.error}`);
|
|
448
|
+
}
|
|
449
|
+
}
|
|
381
450
|
logger.info(`Creating PR for branch "${worktreeBranch}"...`);
|
|
382
451
|
const prResult = await createPullRequest(worktreeBranch, projectPath, { cwd: worktreeRoot });
|
|
383
452
|
if (prResult.success) {
|
|
@@ -506,7 +575,7 @@ async function discoverAndPickWorktreeProject(repoBasename, rafDir, rafRelativeP
|
|
|
506
575
|
}
|
|
507
576
|
}
|
|
508
577
|
async function executeSingleProject(projectPath, projectName, options) {
|
|
509
|
-
const { timeout, verbose, debug, force, maxRetries, autoCommit,
|
|
578
|
+
const { timeout, verbose, debug, force, maxRetries, autoCommit, model, worktreeCwd } = options;
|
|
510
579
|
if (!validatePlansExist(projectPath)) {
|
|
511
580
|
return {
|
|
512
581
|
projectName,
|
|
@@ -540,11 +609,11 @@ async function executeSingleProject(projectPath, projectName, options) {
|
|
|
540
609
|
const sessionTaskIds = new Set(force
|
|
541
610
|
? state.tasks.map((t) => t.id)
|
|
542
611
|
: state.tasks.filter((t) => t.status !== 'completed').map((t) => t.id));
|
|
543
|
-
// Set up shutdown handler
|
|
544
|
-
const claudeRunner = new ClaudeRunner({ model });
|
|
612
|
+
// Set up shutdown handler - we'll register runners dynamically per-task
|
|
545
613
|
const projectManager = new ProjectManager();
|
|
546
614
|
shutdownHandler.init();
|
|
547
|
-
|
|
615
|
+
// The ceiling model for all tasks (can be overridden per-task, subject to this ceiling)
|
|
616
|
+
const ceilingModel = model;
|
|
548
617
|
// Initialize token tracker for usage reporting
|
|
549
618
|
const tokenTracker = new TokenTracker();
|
|
550
619
|
// Set up runtime verbose toggle (Tab key to toggle during execution)
|
|
@@ -552,13 +621,12 @@ async function executeSingleProject(projectPath, projectName, options) {
|
|
|
552
621
|
shutdownHandler.onShutdown(() => verboseToggle.stop());
|
|
553
622
|
// Start project timer
|
|
554
623
|
const projectStartTime = Date.now();
|
|
624
|
+
// Resolve and display version + ceiling model info (before any tasks run)
|
|
625
|
+
const fullCeilingModelId = resolveFullModelId(ceilingModel);
|
|
626
|
+
logger.dim(`RAF v${getVersion()} | Ceiling: ${fullCeilingModelId}`);
|
|
555
627
|
if (verbose) {
|
|
556
628
|
logger.info(`Executing project: ${projectName}`);
|
|
557
629
|
logger.info(`Tasks: ${state.tasks.length}, Task timeout: ${timeout} minutes`);
|
|
558
|
-
// Log Claude model name
|
|
559
|
-
if (showModel && model) {
|
|
560
|
-
logger.info(`Using model: ${model}`);
|
|
561
|
-
}
|
|
562
630
|
logger.newline();
|
|
563
631
|
}
|
|
564
632
|
else {
|
|
@@ -710,24 +778,52 @@ async function executeSingleProject(projectPath, projectName, options) {
|
|
|
710
778
|
let attempts = 0;
|
|
711
779
|
let lastOutput = '';
|
|
712
780
|
let failureReason = '';
|
|
713
|
-
|
|
781
|
+
// Collect usage data from all attempts (for accurate token tracking across retries)
|
|
782
|
+
const attemptUsageData = [];
|
|
714
783
|
// Track failure history for each attempt (attempt number -> reason)
|
|
715
784
|
const failureHistory = [];
|
|
716
785
|
// Set up timer for elapsed time tracking
|
|
717
786
|
const statusLine = createStatusLine();
|
|
718
787
|
const timer = createTaskTimer(verbose ? undefined : (elapsed) => {
|
|
788
|
+
// When verbose is toggled ON at runtime, clear the status line and skip updates
|
|
789
|
+
if (verboseToggle.isVerbose) {
|
|
790
|
+
statusLine.clear();
|
|
791
|
+
return;
|
|
792
|
+
}
|
|
719
793
|
// Show running status with task name and timer (updates in place)
|
|
720
794
|
statusLine.update(formatTaskProgress(taskNumber, totalTasks, 'running', displayName, elapsed, taskId));
|
|
721
795
|
});
|
|
722
796
|
timer.start();
|
|
797
|
+
// Log frontmatter warnings once before the retry loop
|
|
798
|
+
if (task.frontmatterWarnings && task.frontmatterWarnings.length > 0) {
|
|
799
|
+
for (const warning of task.frontmatterWarnings) {
|
|
800
|
+
logger.warn(` Frontmatter warning: ${warning}`);
|
|
801
|
+
}
|
|
802
|
+
}
|
|
723
803
|
while (!success && attempts < maxRetries) {
|
|
724
804
|
attempts++;
|
|
725
|
-
|
|
726
|
-
|
|
805
|
+
const isRetry = attempts > 1;
|
|
806
|
+
// Resolve the model for this attempt (escalates to ceiling on retry)
|
|
807
|
+
const modelResolution = resolveTaskModel(task.frontmatter, undefined, // warnings already logged above
|
|
808
|
+
ceilingModel, isRetry);
|
|
809
|
+
// Log missing frontmatter warning on first attempt only
|
|
810
|
+
if (!isRetry && modelResolution.missingFrontmatter) {
|
|
811
|
+
logger.warn(` No effort frontmatter found — using ceiling model`);
|
|
812
|
+
}
|
|
813
|
+
// Create a runner for this attempt's model
|
|
814
|
+
const taskRunner = new ClaudeRunner({ model: modelResolution.model });
|
|
815
|
+
shutdownHandler.registerClaudeRunner(taskRunner);
|
|
816
|
+
if (verbose && isRetry) {
|
|
817
|
+
const retryModel = resolveFullModelId(modelResolution.model);
|
|
818
|
+
logger.info(` Retry ${attempts}/${maxRetries} for task ${taskLabel} (model: ${retryModel})...`);
|
|
819
|
+
}
|
|
820
|
+
else if (verbose && !isRetry) {
|
|
821
|
+
const taskModel = resolveFullModelId(modelResolution.model);
|
|
822
|
+
logger.info(` Model: ${taskModel}`);
|
|
727
823
|
}
|
|
728
824
|
// Build execution prompt (inside loop to include retry context on retries)
|
|
729
825
|
// Check if previous outcome file exists for retry context
|
|
730
|
-
const previousOutcomeFileForRetry =
|
|
826
|
+
const previousOutcomeFileForRetry = isRetry && fs.existsSync(outcomeFilePath)
|
|
731
827
|
? outcomeFilePath
|
|
732
828
|
: undefined;
|
|
733
829
|
const prompt = getExecutionPrompt({
|
|
@@ -753,21 +849,19 @@ async function executeSingleProject(projectPath, projectName, options) {
|
|
|
753
849
|
outcomeFilePath,
|
|
754
850
|
} : undefined;
|
|
755
851
|
// Run Claude (use worktree root as cwd if in worktree mode)
|
|
756
|
-
const executeEffort = getEffort('execute');
|
|
757
852
|
const runnerOptions = {
|
|
758
853
|
timeout,
|
|
759
854
|
outcomeFilePath,
|
|
760
855
|
commitContext,
|
|
761
856
|
cwd: worktreeCwd,
|
|
762
|
-
effortLevel: executeEffort,
|
|
763
857
|
verboseCheck: () => verboseToggle.isVerbose,
|
|
764
858
|
};
|
|
765
859
|
const result = verbose
|
|
766
|
-
? await
|
|
767
|
-
: await
|
|
860
|
+
? await taskRunner.runVerbose(prompt, runnerOptions)
|
|
861
|
+
: await taskRunner.run(prompt, runnerOptions);
|
|
768
862
|
lastOutput = result.output;
|
|
769
863
|
if (result.usageData) {
|
|
770
|
-
|
|
864
|
+
attemptUsageData.push(result.usageData);
|
|
771
865
|
}
|
|
772
866
|
// Parse result
|
|
773
867
|
const parsed = parseOutput(result.output);
|
|
@@ -880,9 +974,9 @@ Task completed. No detailed report provided.
|
|
|
880
974
|
logger.info(formatTaskProgress(taskNumber, totalTasks, 'completed', displayName, elapsedMs, task.id));
|
|
881
975
|
}
|
|
882
976
|
// Track and display token usage for this task
|
|
883
|
-
if (
|
|
884
|
-
const entry = tokenTracker.addTask(task.id,
|
|
885
|
-
logger.dim(formatTaskTokenSummary(entry
|
|
977
|
+
if (attemptUsageData.length > 0) {
|
|
978
|
+
const entry = tokenTracker.addTask(task.id, attemptUsageData);
|
|
979
|
+
logger.dim(formatTaskTokenSummary(entry, (u) => tokenTracker.calculateCost(u)));
|
|
886
980
|
}
|
|
887
981
|
completedInSession.add(task.id);
|
|
888
982
|
}
|
|
@@ -899,16 +993,17 @@ Task completed. No detailed report provided.
|
|
|
899
993
|
}
|
|
900
994
|
if (verbose) {
|
|
901
995
|
logger.error(` Task ${taskLabel} failed: ${failureReason} (${elapsedFormatted})`);
|
|
902
|
-
|
|
996
|
+
const analysisModel = getModelShortName(getModel('failureAnalysis'));
|
|
997
|
+
logger.info(` Analyzing failure with ${analysisModel}...`);
|
|
903
998
|
}
|
|
904
999
|
else {
|
|
905
1000
|
// Minimal mode: show failed task line
|
|
906
1001
|
logger.info(formatTaskProgress(taskNumber, totalTasks, 'failed', displayName, elapsedMs, task.id));
|
|
907
1002
|
}
|
|
908
1003
|
// Track token usage even for failed tasks (partial data still useful for totals)
|
|
909
|
-
if (
|
|
910
|
-
const entry = tokenTracker.addTask(task.id,
|
|
911
|
-
logger.dim(formatTaskTokenSummary(entry
|
|
1004
|
+
if (attemptUsageData.length > 0) {
|
|
1005
|
+
const entry = tokenTracker.addTask(task.id, attemptUsageData);
|
|
1006
|
+
logger.dim(formatTaskTokenSummary(entry, (u) => tokenTracker.calculateCost(u)));
|
|
912
1007
|
}
|
|
913
1008
|
// Analyze failure and generate structured report
|
|
914
1009
|
const analysisReport = await analyzeFailure(lastOutput, failureReason, task.id);
|
package/dist/commands/do.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"do.js","sourceRoot":"","sources":["../../src/commands/do.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"do.js","sourceRoot":"","sources":["../../src/commands/do.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/commands/plan.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/commands/plan.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8DpC,wBAAgB,iBAAiB,IAAI,OAAO,CAuC3C"}
|
package/dist/commands/plan.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as fs from 'node:fs';
|
|
2
2
|
import * as path from 'node:path';
|
|
3
|
+
import * as crypto from 'node:crypto';
|
|
3
4
|
import { Command } from 'commander';
|
|
4
5
|
import { ProjectManager } from '../core/project-manager.js';
|
|
5
6
|
import { ClaudeRunner } from '../core/claude-runner.js';
|
|
@@ -10,13 +11,16 @@ import { getPlanningPrompt } from '../prompts/planning.js';
|
|
|
10
11
|
import { getAmendPrompt } from '../prompts/amend.js';
|
|
11
12
|
import { validateEnvironment, reportValidation, validateProjectName, resolveModelOption, } from '../utils/validation.js';
|
|
12
13
|
import { logger } from '../utils/logger.js';
|
|
13
|
-
import { getWorktreeDefault } from '../utils/config.js';
|
|
14
|
+
import { getWorktreeDefault, getModel, getModelShortName, getDisplayConfig, getPricingConfig, getSyncMainBranch } from '../utils/config.js';
|
|
15
|
+
import { TokenTracker } from '../utils/token-tracker.js';
|
|
16
|
+
import { parseSessionById } from '../utils/session-parser.js';
|
|
17
|
+
import { formatTokenTotalSummary } from '../utils/terminal-symbols.js';
|
|
14
18
|
import { generateProjectNames } from '../utils/name-generator.js';
|
|
15
19
|
import { pickProjectName } from '../ui/name-picker.js';
|
|
16
20
|
import { getPlansDir, getRafDir, getNextProjectNumber, formatProjectNumber, resolveProjectIdentifier, resolveProjectIdentifierWithDetails, getInputPath, getDecisionsPath, getOutcomesDir, extractTaskNameFromPlanFile, decodeTaskId, encodeTaskId, TASK_ID_PATTERN, } from '../utils/paths.js';
|
|
17
21
|
import { sanitizeProjectName } from '../utils/validation.js';
|
|
18
22
|
import { deriveProjectState, isProjectComplete, } from '../core/state-derivation.js';
|
|
19
|
-
import { getRepoBasename, getRepoRoot, createWorktree, createWorktreeFromBranch, branchExists, validateWorktree, removeWorktree, computeWorktreeBaseDir, } from '../core/worktree.js';
|
|
23
|
+
import { getRepoBasename, getRepoRoot, createWorktree, createWorktreeFromBranch, branchExists, validateWorktree, removeWorktree, computeWorktreeBaseDir, pullMainBranch, } from '../core/worktree.js';
|
|
20
24
|
export function createPlanCommand() {
|
|
21
25
|
const command = new Command('plan')
|
|
22
26
|
.description('Create a new project and interactively plan tasks with Claude')
|
|
@@ -102,7 +106,8 @@ async function runPlanCommand(projectName, model, autoMode = false, worktreeMode
|
|
|
102
106
|
// Get or generate project name
|
|
103
107
|
let finalProjectName = projectName;
|
|
104
108
|
if (!finalProjectName) {
|
|
105
|
-
|
|
109
|
+
const nameModel = getModelShortName(getModel('nameGeneration'));
|
|
110
|
+
logger.info(`Generating project name suggestions with ${nameModel}...`);
|
|
106
111
|
const suggestedNames = await generateProjectNames(cleanInput);
|
|
107
112
|
logger.newline();
|
|
108
113
|
if (autoMode) {
|
|
@@ -127,6 +132,18 @@ async function runPlanCommand(projectName, model, autoMode = false, worktreeMode
|
|
|
127
132
|
const repoBasename = getRepoBasename();
|
|
128
133
|
const repoRoot = getRepoRoot();
|
|
129
134
|
const rafDir = getRafDir();
|
|
135
|
+
// Sync main branch before creating worktree (if enabled)
|
|
136
|
+
if (getSyncMainBranch()) {
|
|
137
|
+
const syncResult = pullMainBranch();
|
|
138
|
+
if (syncResult.success) {
|
|
139
|
+
if (syncResult.hadChanges) {
|
|
140
|
+
logger.info(`Synced ${syncResult.mainBranch} from remote`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
logger.warn(`Could not sync main branch: ${syncResult.error}`);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
130
147
|
// Compute project number from main repo's RAF directory
|
|
131
148
|
const projectNumber = getNextProjectNumber(rafDir);
|
|
132
149
|
const sanitizedName = sanitizeProjectName(finalProjectName);
|
|
@@ -204,15 +221,21 @@ async function runPlanCommand(projectName, model, autoMode = false, worktreeMode
|
|
|
204
221
|
inputContent: userInput,
|
|
205
222
|
worktreeMode,
|
|
206
223
|
});
|
|
224
|
+
// Generate session ID for token tracking
|
|
225
|
+
const sessionId = crypto.randomUUID();
|
|
226
|
+
const sessionCwd = worktreePath ?? process.cwd();
|
|
207
227
|
try {
|
|
208
228
|
const exitCode = await claudeRunner.runInteractive(systemPrompt, userMessage, {
|
|
209
229
|
dangerouslySkipPermissions: autoMode,
|
|
210
230
|
// Run Claude session in the worktree root if in worktree mode
|
|
211
231
|
cwd: worktreePath ?? undefined,
|
|
232
|
+
sessionId,
|
|
212
233
|
});
|
|
213
234
|
if (exitCode !== 0) {
|
|
214
235
|
logger.warn(`Claude exited with code ${exitCode}`);
|
|
215
236
|
}
|
|
237
|
+
// Parse session file and display token usage summary
|
|
238
|
+
displayPlanSessionTokenSummary(sessionId, sessionCwd);
|
|
216
239
|
// Check for created plan files
|
|
217
240
|
const plansDir = getPlansDir(projectPath);
|
|
218
241
|
const planFiles = fs.existsSync(plansDir)
|
|
@@ -335,6 +358,18 @@ async function runAmendCommand(identifier, model, autoMode = false, worktreeMode
|
|
|
335
358
|
}
|
|
336
359
|
else {
|
|
337
360
|
// No branch — create fresh worktree and copy project files
|
|
361
|
+
// Sync main branch before creating worktree (if enabled)
|
|
362
|
+
if (getSyncMainBranch()) {
|
|
363
|
+
const syncResult = pullMainBranch();
|
|
364
|
+
if (syncResult.success) {
|
|
365
|
+
if (syncResult.hadChanges) {
|
|
366
|
+
logger.info(`Synced ${syncResult.mainBranch} from remote`);
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
else {
|
|
370
|
+
logger.warn(`Could not sync main branch: ${syncResult.error}`);
|
|
371
|
+
}
|
|
372
|
+
}
|
|
338
373
|
const result = createWorktree(repoBasename, folderName);
|
|
339
374
|
if (!result.success) {
|
|
340
375
|
logger.error(`Failed to create worktree: ${result.error}`);
|
|
@@ -468,15 +503,21 @@ async function runAmendCommand(identifier, model, autoMode = false, worktreeMode
|
|
|
468
503
|
newTaskDescription: cleanInput,
|
|
469
504
|
worktreeMode,
|
|
470
505
|
});
|
|
506
|
+
// Generate session ID for token tracking
|
|
507
|
+
const sessionId = crypto.randomUUID();
|
|
508
|
+
const sessionCwd = worktreePath ?? process.cwd();
|
|
471
509
|
try {
|
|
472
510
|
const exitCode = await claudeRunner.runInteractive(systemPrompt, userMessage, {
|
|
473
511
|
dangerouslySkipPermissions: autoMode,
|
|
474
512
|
// Run Claude session in the worktree root if in worktree mode
|
|
475
513
|
cwd: worktreePath ?? undefined,
|
|
514
|
+
sessionId,
|
|
476
515
|
});
|
|
477
516
|
if (exitCode !== 0) {
|
|
478
517
|
logger.warn(`Claude exited with code ${exitCode}`);
|
|
479
518
|
}
|
|
519
|
+
// Parse session file and display token usage summary
|
|
520
|
+
displayPlanSessionTokenSummary(sessionId, sessionCwd);
|
|
480
521
|
// Check for new plan files
|
|
481
522
|
const allPlanFiles = fs.existsSync(plansDir)
|
|
482
523
|
? fs.readdirSync(plansDir).filter((f) => f.endsWith('.md')).sort()
|
|
@@ -545,4 +586,39 @@ ${taskList}
|
|
|
545
586
|
# Describe what you want to add below:
|
|
546
587
|
`;
|
|
547
588
|
}
|
|
589
|
+
/**
|
|
590
|
+
* Display token usage summary for a plan/amend session.
|
|
591
|
+
* Parses the Claude session file and displays formatted usage data.
|
|
592
|
+
*/
|
|
593
|
+
function displayPlanSessionTokenSummary(sessionId, cwd) {
|
|
594
|
+
const result = parseSessionById(sessionId, cwd);
|
|
595
|
+
if (!result.success) {
|
|
596
|
+
// Session file not found or couldn't be parsed - just log debug and continue
|
|
597
|
+
logger.debug(`Could not parse session file: ${result.error}`);
|
|
598
|
+
return;
|
|
599
|
+
}
|
|
600
|
+
// Check if there's any usage data
|
|
601
|
+
const totalTokens = result.usage.inputTokens + result.usage.outputTokens;
|
|
602
|
+
if (totalTokens === 0) {
|
|
603
|
+
logger.debug('No token usage data found in session file');
|
|
604
|
+
return;
|
|
605
|
+
}
|
|
606
|
+
// Create tracker and add the session as a single "task"
|
|
607
|
+
const pricingConfig = getPricingConfig();
|
|
608
|
+
const tracker = new TokenTracker(pricingConfig);
|
|
609
|
+
const entry = tracker.addTask('plan', [result.usage]);
|
|
610
|
+
// Get display options
|
|
611
|
+
const displayConfig = getDisplayConfig();
|
|
612
|
+
const options = {
|
|
613
|
+
showCacheTokens: displayConfig.showCacheTokens,
|
|
614
|
+
showRateLimitEstimate: displayConfig.showRateLimitEstimate,
|
|
615
|
+
rateLimitPercentage: displayConfig.showRateLimitEstimate
|
|
616
|
+
? tracker.calculateRateLimitPercentage(entry.cost.totalCost)
|
|
617
|
+
: undefined,
|
|
618
|
+
};
|
|
619
|
+
// Display the summary
|
|
620
|
+
logger.newline();
|
|
621
|
+
const summary = formatTokenTotalSummary(result.usage, entry.cost, options);
|
|
622
|
+
console.log(summary);
|
|
623
|
+
}
|
|
548
624
|
//# sourceMappingURL=plan.js.map
|