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.
Files changed (125) hide show
  1. package/CLAUDE.md +19 -4
  2. package/RAF/ahtahs-token-reaper/decisions.md +37 -0
  3. package/RAF/ahtahs-token-reaper/input.md +20 -0
  4. package/RAF/ahtahs-token-reaper/outcomes/01-extend-token-tracker-data-model.md +42 -0
  5. package/RAF/ahtahs-token-reaper/outcomes/02-accumulate-usage-in-retry-loop.md +31 -0
  6. package/RAF/ahtahs-token-reaper/outcomes/03-per-attempt-display-formatting.md +60 -0
  7. package/RAF/ahtahs-token-reaper/outcomes/04-add-model-name-to-claude-call-logs.md +57 -0
  8. package/RAF/ahtahs-token-reaper/outcomes/05-handle-invalid-config-in-raf-config.md +46 -0
  9. package/RAF/ahtahs-token-reaper/outcomes/06-fix-verbose-toggle-timer-display.md +38 -0
  10. package/RAF/ahtahs-token-reaper/plans/01-extend-token-tracker-data-model.md +36 -0
  11. package/RAF/ahtahs-token-reaper/plans/02-accumulate-usage-in-retry-loop.md +36 -0
  12. package/RAF/ahtahs-token-reaper/plans/03-per-attempt-display-formatting.md +43 -0
  13. package/RAF/ahtahs-token-reaper/plans/04-add-model-name-to-claude-call-logs.md +38 -0
  14. package/RAF/ahtahs-token-reaper/plans/05-handle-invalid-config-in-raf-config.md +36 -0
  15. package/RAF/ahtahs-token-reaper/plans/06-fix-verbose-toggle-timer-display.md +40 -0
  16. package/RAF/ahvrih-rate-forge/decisions.md +70 -0
  17. package/RAF/ahvrih-rate-forge/input.md +44 -0
  18. package/RAF/ahvrih-rate-forge/outcomes/01-remove-claude-command-config.md +58 -0
  19. package/RAF/ahvrih-rate-forge/outcomes/02-fix-mixed-attempt-cost.md +46 -0
  20. package/RAF/ahvrih-rate-forge/outcomes/03-rate-limit-estimation.md +82 -0
  21. package/RAF/ahvrih-rate-forge/outcomes/04-show-version-in-do-logs.md +45 -0
  22. package/RAF/ahvrih-rate-forge/outcomes/05-sync-main-before-worktree.md +96 -0
  23. package/RAF/ahvrih-rate-forge/outcomes/06-sync-readme-with-codebase.md +45 -0
  24. package/RAF/ahvrih-rate-forge/outcomes/07-no-session-persistence.md +26 -0
  25. package/RAF/ahvrih-rate-forge/outcomes/08-plan-execution-metadata.md +130 -0
  26. package/RAF/ahvrih-rate-forge/plans/01-remove-claude-command-config.md +36 -0
  27. package/RAF/ahvrih-rate-forge/plans/02-fix-mixed-attempt-cost.md +33 -0
  28. package/RAF/ahvrih-rate-forge/plans/03-rate-limit-estimation.md +82 -0
  29. package/RAF/ahvrih-rate-forge/plans/04-show-version-in-do-logs.md +32 -0
  30. package/RAF/ahvrih-rate-forge/plans/05-sync-main-before-worktree.md +40 -0
  31. package/RAF/ahvrih-rate-forge/plans/06-sync-readme-with-codebase.md +61 -0
  32. package/RAF/ahvrih-rate-forge/plans/07-no-session-persistence.md +28 -0
  33. package/RAF/ahvrih-rate-forge/plans/08-plan-execution-metadata.md +123 -0
  34. package/README.md +27 -7
  35. package/dist/commands/config.d.ts.map +1 -1
  36. package/dist/commands/config.js +24 -7
  37. package/dist/commands/config.js.map +1 -1
  38. package/dist/commands/do.d.ts.map +1 -1
  39. package/dist/commands/do.js +122 -27
  40. package/dist/commands/do.js.map +1 -1
  41. package/dist/commands/plan.d.ts.map +1 -1
  42. package/dist/commands/plan.js +79 -3
  43. package/dist/commands/plan.js.map +1 -1
  44. package/dist/core/claude-runner.d.ts +6 -6
  45. package/dist/core/claude-runner.d.ts.map +1 -1
  46. package/dist/core/claude-runner.js +9 -10
  47. package/dist/core/claude-runner.js.map +1 -1
  48. package/dist/core/failure-analyzer.d.ts.map +1 -1
  49. package/dist/core/failure-analyzer.js +3 -3
  50. package/dist/core/failure-analyzer.js.map +1 -1
  51. package/dist/core/pull-request.d.ts.map +1 -1
  52. package/dist/core/pull-request.js +5 -3
  53. package/dist/core/pull-request.js.map +1 -1
  54. package/dist/core/state-derivation.d.ts +5 -0
  55. package/dist/core/state-derivation.d.ts.map +1 -1
  56. package/dist/core/state-derivation.js +14 -4
  57. package/dist/core/state-derivation.js.map +1 -1
  58. package/dist/core/worktree.d.ts +32 -0
  59. package/dist/core/worktree.d.ts.map +1 -1
  60. package/dist/core/worktree.js +215 -0
  61. package/dist/core/worktree.js.map +1 -1
  62. package/dist/prompts/amend.d.ts.map +1 -1
  63. package/dist/prompts/amend.js +26 -11
  64. package/dist/prompts/amend.js.map +1 -1
  65. package/dist/prompts/planning.d.ts.map +1 -1
  66. package/dist/prompts/planning.js +26 -11
  67. package/dist/prompts/planning.js.map +1 -1
  68. package/dist/types/config.d.ts +30 -13
  69. package/dist/types/config.d.ts.map +1 -1
  70. package/dist/types/config.js +14 -10
  71. package/dist/types/config.js.map +1 -1
  72. package/dist/utils/config.d.ts +53 -4
  73. package/dist/utils/config.d.ts.map +1 -1
  74. package/dist/utils/config.js +197 -30
  75. package/dist/utils/config.js.map +1 -1
  76. package/dist/utils/frontmatter.d.ts +43 -0
  77. package/dist/utils/frontmatter.d.ts.map +1 -0
  78. package/dist/utils/frontmatter.js +85 -0
  79. package/dist/utils/frontmatter.js.map +1 -0
  80. package/dist/utils/name-generator.d.ts.map +1 -1
  81. package/dist/utils/name-generator.js +2 -3
  82. package/dist/utils/name-generator.js.map +1 -1
  83. package/dist/utils/session-parser.d.ts +44 -0
  84. package/dist/utils/session-parser.d.ts.map +1 -0
  85. package/dist/utils/session-parser.js +122 -0
  86. package/dist/utils/session-parser.js.map +1 -0
  87. package/dist/utils/terminal-symbols.d.ts +28 -5
  88. package/dist/utils/terminal-symbols.d.ts.map +1 -1
  89. package/dist/utils/terminal-symbols.js +77 -18
  90. package/dist/utils/terminal-symbols.js.map +1 -1
  91. package/dist/utils/token-tracker.d.ts +31 -1
  92. package/dist/utils/token-tracker.d.ts.map +1 -1
  93. package/dist/utils/token-tracker.js +94 -4
  94. package/dist/utils/token-tracker.js.map +1 -1
  95. package/package.json +1 -1
  96. package/src/commands/config.ts +26 -7
  97. package/src/commands/do.ts +157 -29
  98. package/src/commands/plan.ts +89 -2
  99. package/src/core/claude-runner.ts +16 -17
  100. package/src/core/failure-analyzer.ts +3 -3
  101. package/src/core/pull-request.ts +5 -3
  102. package/src/core/state-derivation.ts +20 -4
  103. package/src/core/worktree.ts +230 -0
  104. package/src/prompts/amend.ts +26 -11
  105. package/src/prompts/config-docs.md +91 -29
  106. package/src/prompts/planning.ts +26 -11
  107. package/src/types/config.ts +46 -21
  108. package/src/utils/config.ts +222 -33
  109. package/src/utils/frontmatter.ts +110 -0
  110. package/src/utils/name-generator.ts +2 -3
  111. package/src/utils/session-parser.ts +161 -0
  112. package/src/utils/terminal-symbols.ts +105 -18
  113. package/src/utils/token-tracker.ts +109 -4
  114. package/tests/unit/claude-runner-interactive.test.ts +8 -6
  115. package/tests/unit/claude-runner.test.ts +5 -66
  116. package/tests/unit/config-command.test.ts +84 -5
  117. package/tests/unit/config.test.ts +292 -45
  118. package/tests/unit/frontmatter.test.ts +182 -0
  119. package/tests/unit/post-execution-picker.test.ts +5 -0
  120. package/tests/unit/session-parser.test.ts +301 -0
  121. package/tests/unit/terminal-symbols.test.ts +263 -33
  122. package/tests/unit/timer-verbose-integration.test.ts +170 -0
  123. package/tests/unit/token-tracker.test.ts +653 -17
  124. package/tests/unit/validation.test.ts +6 -4
  125. package/tests/unit/worktree.test.ts +242 -0
@@ -380,4 +380,219 @@ export function resolveWorktreeProjectByIdentifier(repoBasename, identifier) {
380
380
  // Ambiguous or no match
381
381
  return null;
382
382
  }
383
+ /**
384
+ * Detect the main branch name from the remote.
385
+ * Uses refs/remotes/origin/HEAD, falling back to main/master.
386
+ * Reuses the same logic as detectBaseBranch from pull-request.ts.
387
+ */
388
+ export function detectMainBranch(cwd) {
389
+ // Try to find the default branch from the remote
390
+ try {
391
+ const output = execSync('git symbolic-ref refs/remotes/origin/HEAD', {
392
+ encoding: 'utf-8',
393
+ stdio: 'pipe',
394
+ ...(cwd ? { cwd } : {}),
395
+ }).trim();
396
+ // Output is like "refs/remotes/origin/main"
397
+ const parts = output.split('/');
398
+ return parts[parts.length - 1] ?? null;
399
+ }
400
+ catch {
401
+ // Fallback: check for common branch names
402
+ }
403
+ // Try common default branches
404
+ for (const branch of ['main', 'master']) {
405
+ try {
406
+ execSync(`git rev-parse --verify "refs/heads/${branch}"`, {
407
+ encoding: 'utf-8',
408
+ stdio: 'pipe',
409
+ ...(cwd ? { cwd } : {}),
410
+ });
411
+ return branch;
412
+ }
413
+ catch {
414
+ // Try next
415
+ }
416
+ }
417
+ return null;
418
+ }
419
+ /**
420
+ * Pull the main branch from remote before worktree creation.
421
+ * Uses fetch + merge --ff-only to safely update the main branch.
422
+ * This ensures the worktree is created from the latest remote state.
423
+ *
424
+ * Only pulls if currently on the main branch or if the main branch exists.
425
+ * Fails gracefully if there are conflicts or the branch has diverged.
426
+ *
427
+ * @param cwd - The directory to run git commands in (defaults to current directory)
428
+ */
429
+ export function pullMainBranch(cwd) {
430
+ const mainBranch = detectMainBranch(cwd);
431
+ if (!mainBranch) {
432
+ return {
433
+ success: false,
434
+ mainBranch: null,
435
+ hadChanges: false,
436
+ error: 'Could not detect main branch (no origin/HEAD or main/master found)',
437
+ };
438
+ }
439
+ // Get current branch to check if we need to switch
440
+ const currentBranch = getCurrentBranch();
441
+ // If not on main, we need to fetch and update the main branch ref
442
+ // without checking it out (to avoid disrupting the user's work)
443
+ if (currentBranch !== mainBranch) {
444
+ // Fetch the main branch from origin
445
+ try {
446
+ execSync(`git fetch origin ${mainBranch}:${mainBranch}`, {
447
+ encoding: 'utf-8',
448
+ stdio: 'pipe',
449
+ ...(cwd ? { cwd } : {}),
450
+ });
451
+ logger.debug(`Fetched ${mainBranch} from origin`);
452
+ return {
453
+ success: true,
454
+ mainBranch,
455
+ hadChanges: true, // We fetched updates (may or may not have actual changes)
456
+ };
457
+ }
458
+ catch (error) {
459
+ // This can fail if the local main has diverged from remote
460
+ // Try a simple fetch without updating the local ref
461
+ try {
462
+ execSync(`git fetch origin ${mainBranch}`, {
463
+ encoding: 'utf-8',
464
+ stdio: 'pipe',
465
+ ...(cwd ? { cwd } : {}),
466
+ });
467
+ logger.debug(`Fetched origin/${mainBranch} (local ${mainBranch} diverged, not updated)`);
468
+ return {
469
+ success: true,
470
+ mainBranch,
471
+ hadChanges: false,
472
+ error: `Local ${mainBranch} has diverged from origin, not updated`,
473
+ };
474
+ }
475
+ catch (fetchError) {
476
+ const msg = fetchError instanceof Error ? fetchError.message : String(fetchError);
477
+ return {
478
+ success: false,
479
+ mainBranch,
480
+ hadChanges: false,
481
+ error: `Failed to fetch ${mainBranch}: ${msg}`,
482
+ };
483
+ }
484
+ }
485
+ }
486
+ // Currently on main branch - can do a regular pull with ff-only
487
+ // First, check for uncommitted changes that would block the pull
488
+ try {
489
+ const status = execSync('git status --porcelain', {
490
+ encoding: 'utf-8',
491
+ stdio: 'pipe',
492
+ ...(cwd ? { cwd } : {}),
493
+ }).trim();
494
+ if (status) {
495
+ return {
496
+ success: false,
497
+ mainBranch,
498
+ hadChanges: false,
499
+ error: `Cannot pull ${mainBranch}: uncommitted changes in working directory`,
500
+ };
501
+ }
502
+ }
503
+ catch (error) {
504
+ const msg = error instanceof Error ? error.message : String(error);
505
+ return {
506
+ success: false,
507
+ mainBranch,
508
+ hadChanges: false,
509
+ error: `Failed to check git status: ${msg}`,
510
+ };
511
+ }
512
+ // Fetch and merge with ff-only
513
+ try {
514
+ execSync(`git fetch origin ${mainBranch}`, {
515
+ encoding: 'utf-8',
516
+ stdio: 'pipe',
517
+ ...(cwd ? { cwd } : {}),
518
+ });
519
+ }
520
+ catch (error) {
521
+ const msg = error instanceof Error ? error.message : String(error);
522
+ return {
523
+ success: false,
524
+ mainBranch,
525
+ hadChanges: false,
526
+ error: `Failed to fetch from origin: ${msg}`,
527
+ };
528
+ }
529
+ try {
530
+ const output = execSync(`git merge --ff-only origin/${mainBranch}`, {
531
+ encoding: 'utf-8',
532
+ stdio: 'pipe',
533
+ ...(cwd ? { cwd } : {}),
534
+ });
535
+ const hadChanges = !output.includes('Already up to date');
536
+ return {
537
+ success: true,
538
+ mainBranch,
539
+ hadChanges,
540
+ };
541
+ }
542
+ catch (error) {
543
+ const msg = error instanceof Error ? error.message : String(error);
544
+ return {
545
+ success: false,
546
+ mainBranch,
547
+ hadChanges: false,
548
+ error: `Cannot fast-forward ${mainBranch}: ${msg.includes('Not possible to fast-forward') ? 'branch has diverged from origin' : msg}`,
549
+ };
550
+ }
551
+ }
552
+ /**
553
+ * Push the main branch to remote before PR creation.
554
+ * Ensures the PR base is up to date.
555
+ *
556
+ * @param cwd - The directory to run git commands in (defaults to current directory)
557
+ */
558
+ export function pushMainBranch(cwd) {
559
+ const mainBranch = detectMainBranch(cwd);
560
+ if (!mainBranch) {
561
+ return {
562
+ success: false,
563
+ mainBranch: null,
564
+ hadChanges: false,
565
+ error: 'Could not detect main branch (no origin/HEAD or main/master found)',
566
+ };
567
+ }
568
+ try {
569
+ execSync(`git push origin ${mainBranch}`, {
570
+ encoding: 'utf-8',
571
+ stdio: 'pipe',
572
+ ...(cwd ? { cwd } : {}),
573
+ });
574
+ return {
575
+ success: true,
576
+ mainBranch,
577
+ hadChanges: true,
578
+ };
579
+ }
580
+ catch (error) {
581
+ const msg = error instanceof Error ? error.message : String(error);
582
+ // Check if it's just "already up to date"
583
+ if (msg.includes('Everything up-to-date')) {
584
+ return {
585
+ success: true,
586
+ mainBranch,
587
+ hadChanges: false,
588
+ };
589
+ }
590
+ return {
591
+ success: false,
592
+ mainBranch,
593
+ hadChanges: false,
594
+ error: `Failed to push ${mainBranch}: ${msg}`,
595
+ };
596
+ }
597
+ }
383
598
  //# sourceMappingURL=worktree.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/core/worktree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/core/worktree.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"amend.d.ts","sourceRoot":"","sources":["../../src/prompts/amend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG1D,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,KAAK,CAAC,WAAW,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CA2M3E"}
1
+ {"version":3,"file":"amend.d.ts","sourceRoot":"","sources":["../../src/prompts/amend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG1D,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,KAAK,CAAC,WAAW,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CA0N3E"}
@@ -105,9 +105,11 @@ After interviewing the user about all NEW tasks, create plan files starting from
105
105
  - ${projectPath}/plans/${encodeTaskId(nextTaskNumber + 1)}-task-name.md
106
106
  - etc.
107
107
 
108
- Each plan file should follow this structure:
108
+ Each plan file MUST have Obsidian-style frontmatter at the top, before the \`# Task:\` heading. The frontmatter format uses only a closing \`---\` delimiter (no opening delimiter):
109
109
 
110
110
  \`\`\`markdown
111
+ effort: medium
112
+ ---
111
113
  # Task: [Task Name]
112
114
 
113
115
  ## Objective
@@ -145,6 +147,23 @@ Each plan file should follow this structure:
145
147
  [Reference to existing task outcomes if relevant]
146
148
  \`\`\`
147
149
 
150
+ ### Frontmatter Requirements
151
+
152
+ The \`effort\` field is REQUIRED in every plan file. It indicates task complexity and determines which Claude model will execute the task:
153
+ - \`effort: low\` — Trivial/mechanical changes, simple one-file edits, config changes
154
+ - \`effort: medium\` — Well-scoped feature work, bug fixes with clear plans, multi-file changes following existing patterns
155
+ - \`effort: high\` — Architectural changes, complex logic, tasks requiring deep codebase understanding
156
+
157
+ Optionally, you can add an explicit \`model\` field to override the effort-based model selection:
158
+ \`\`\`markdown
159
+ effort: medium
160
+ model: opus
161
+ ---
162
+ # Task: ...
163
+ \`\`\`
164
+
165
+ This is rarely needed — prefer using the \`effort\` label so the user's config controls the actual model used.
166
+
148
167
  ### Step 5: Confirm Completion
149
168
 
150
169
  After creating all new plan files:
@@ -171,19 +190,15 @@ Planning complete! To exit this session and run your tasks:
171
190
  7. Specify task dependencies using the ## Dependencies section with task IDs only (e.g., "01, 02")
172
191
  8. Tasks without dependencies should omit the Dependencies section entirely
173
192
  9. Be specific - vague plans lead to poor execution
193
+ 10. ALWAYS include the \`effort\` frontmatter field in every plan file — assess each task's complexity
174
194
 
175
195
  ## Plan Output Style
176
196
 
177
- **CRITICAL**: Plans should be HIGH-LEVEL and CONCEPTUAL:
178
- - Describe WHAT needs to be done, not HOW to code it
179
- - Focus on architecture, data flow, and component interactions
180
- - NO code snippets or implementation details in plans
181
- - File paths ARE acceptable when referencing:
182
- - Existing project files to modify
183
- - Previous plan/outcome files for context
184
- - Project structure and directories
185
- - Let the executing agent decide implementation specifics
186
- - Plans guide the work; they don't prescribe exact code`;
197
+ Plans can include whatever level of detail you deem helpful for the executing agent. Use your judgment:
198
+ - Include implementation details when they clarify the approach
199
+ - Code snippets are acceptable when they help illustrate a specific pattern
200
+ - File paths are helpful when referencing existing project files, patterns, or directories
201
+ - Focus on clarity the goal is for the executing agent to understand what needs to be done`;
187
202
  const userMessage = `I want to add the following new tasks to this project:
188
203
 
189
204
  ${newTaskDescription}
@@ -1 +1 @@
1
- {"version":3,"file":"amend.js","sourceRoot":"","sources":["../../src/prompts/amend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"amend.js","sourceRoot":"","sources":["../../src/prompts/amend.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../src/prompts/planning.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CA6KpF"}
1
+ {"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../src/prompts/planning.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CA4LpF"}
@@ -68,9 +68,11 @@ After interviewing the user about all tasks, create plan files in the plans fold
68
68
  - ${projectPath}/plans/02-task-name.md
69
69
  - etc.
70
70
 
71
- Each plan file should follow this structure:
71
+ Each plan file MUST have Obsidian-style frontmatter at the top, before the \`# Task:\` heading. The frontmatter format uses only a closing \`---\` delimiter (no opening delimiter):
72
72
 
73
73
  \`\`\`markdown
74
+ effort: medium
75
+ ---
74
76
  # Task: [Task Name]
75
77
 
76
78
  ## Objective
@@ -105,6 +107,23 @@ Each plan file should follow this structure:
105
107
  [Any additional context, warnings, or considerations]
106
108
  \`\`\`
107
109
 
110
+ ### Frontmatter Requirements
111
+
112
+ The \`effort\` field is REQUIRED in every plan file. It indicates task complexity and determines which Claude model will execute the task:
113
+ - \`effort: low\` — Trivial/mechanical changes, simple one-file edits, config changes
114
+ - \`effort: medium\` — Well-scoped feature work, bug fixes with clear plans, multi-file changes following existing patterns
115
+ - \`effort: high\` — Architectural changes, complex logic, tasks requiring deep codebase understanding
116
+
117
+ Optionally, you can add an explicit \`model\` field to override the effort-based model selection:
118
+ \`\`\`markdown
119
+ effort: medium
120
+ model: opus
121
+ ---
122
+ # Task: ...
123
+ \`\`\`
124
+
125
+ This is rarely needed — prefer using the \`effort\` label so the user's config controls the actual model used.
126
+
108
127
  ### Step 4: Infer Task Dependencies
109
128
 
110
129
  For each task, analyze which other tasks must complete successfully before it can begin. Add a \`## Dependencies\` section to plan files that have prerequisites.
@@ -154,19 +173,15 @@ Planning complete! To exit this session and run your tasks:
154
173
  6. Only add Dependencies section when a task genuinely requires another to complete first
155
174
  7. Dependencies must only reference lower-numbered tasks to prevent circular dependencies
156
175
  8. Be specific - vague plans lead to poor execution
176
+ 9. ALWAYS include the \`effort\` frontmatter field in every plan file — assess each task's complexity
157
177
 
158
178
  ## Plan Output Style
159
179
 
160
- **CRITICAL**: Plans should be HIGH-LEVEL and CONCEPTUAL:
161
- - Describe WHAT needs to be done, not HOW to code it
162
- - Focus on architecture, data flow, and component interactions
163
- - NO code snippets or implementation details in plans
164
- - File paths ARE acceptable when referencing:
165
- - Existing project files to modify
166
- - Previous plan/outcome files for context
167
- - Project structure and directories
168
- - Let the executing agent decide implementation specifics
169
- - Plans guide the work; they don't prescribe exact code`;
180
+ Plans can include whatever level of detail you deem helpful for the executing agent. Use your judgment:
181
+ - Include implementation details when they clarify the approach
182
+ - Code snippets are acceptable when they help illustrate a specific pattern
183
+ - File paths are helpful when referencing existing project files, patterns, or directories
184
+ - Focus on clarity the goal is for the executing agent to understand what needs to be done`;
170
185
  const userMessage = `Here is my project description:
171
186
 
172
187
  ${params.inputContent}
@@ -1 +1 @@
1
- {"version":3,"file":"planning.js","sourceRoot":"","sources":["../../src/prompts/planning.ts"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA4B;IAC5D,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;IAC7C,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAEvD,MAAM,YAAY,GAAG;;;;;;;;;;kBAUL,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BzB,WAAW;;;;;;;;;;;;;;;;;;IAkBX,WAAW;IACX,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCA4EkB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;wDAyBW,CAAC;IAEvD,MAAM,WAAW,GAAG;;EAEpB,MAAM,CAAC,YAAY;;sDAEiC,CAAC;IAErD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"planning.js","sourceRoot":"","sources":["../../src/prompts/planning.ts"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA4B;IAC5D,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;IAC7C,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAEvD,MAAM,YAAY,GAAG;;;;;;;;;;kBAUL,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BzB,WAAW;;;;;;;;;;;;;;;;;;IAkBX,WAAW;IACX,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCA+FkB,YAAY;;;;;;;;;;;;;;;;;;;;;6FAqBgD,CAAC;IAE5F,MAAM,WAAW,GAAG;;EAEpB,MAAM,CAAC,YAAY;;sDAEiC,CAAC;IAErD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;AACvC,CAAC"}
@@ -7,9 +7,9 @@ export type ClaudeModelAlias = 'sonnet' | 'haiku' | 'opus';
7
7
  export type ClaudeModelName = ClaudeModelAlias | (string & {
8
8
  __brand?: 'FullModelId';
9
9
  });
10
- export type EffortLevel = 'low' | 'medium' | 'high';
10
+ /** Task complexity label for per-task effort frontmatter. Maps to models via effortMapping. */
11
+ export type TaskEffortLevel = 'low' | 'medium' | 'high';
11
12
  export type ModelScenario = 'plan' | 'execute' | 'nameGeneration' | 'failureAnalysis' | 'prGeneration' | 'config';
12
- export type EffortScenario = ModelScenario;
13
13
  export type CommitFormatType = 'task' | 'plan' | 'amend';
14
14
  export interface ModelsConfig {
15
15
  plan: ClaudeModelName;
@@ -19,13 +19,14 @@ export interface ModelsConfig {
19
19
  prGeneration: ClaudeModelName;
20
20
  config: ClaudeModelName;
21
21
  }
22
- export interface EffortConfig {
23
- plan: EffortLevel;
24
- execute: EffortLevel;
25
- nameGeneration: EffortLevel;
26
- failureAnalysis: EffortLevel;
27
- prGeneration: EffortLevel;
28
- config: EffortLevel;
22
+ /**
23
+ * Maps task complexity labels to model names.
24
+ * Used to resolve per-task effort frontmatter to a model.
25
+ */
26
+ export interface EffortMappingConfig {
27
+ low: ClaudeModelName;
28
+ medium: ClaudeModelName;
29
+ high: ClaudeModelName;
29
30
  }
30
31
  export interface CommitFormatConfig {
31
32
  task: string;
@@ -48,16 +49,32 @@ export interface PricingConfig {
48
49
  sonnet: ModelPricing;
49
50
  haiku: ModelPricing;
50
51
  }
52
+ /** Display options for token usage summaries. */
53
+ export interface DisplayConfig {
54
+ /** Show estimated 5h rate limit window percentage. Default: true */
55
+ showRateLimitEstimate: boolean;
56
+ /** Show cache token counts in summaries. Default: true */
57
+ showCacheTokens: boolean;
58
+ }
59
+ /** Rate limit window configuration. */
60
+ export interface RateLimitWindowConfig {
61
+ /** Sonnet-equivalent token cap for the 5h window. Default: 88000 */
62
+ sonnetTokenCap: number;
63
+ }
51
64
  export interface RafConfig {
52
65
  models: ModelsConfig;
53
- effort: EffortConfig;
66
+ /** Maps task complexity labels (low/medium/high) to models. Used for per-task effort frontmatter. */
67
+ effortMapping: EffortMappingConfig;
54
68
  timeout: number;
55
69
  maxRetries: number;
56
70
  autoCommit: boolean;
57
71
  worktree: boolean;
72
+ /** Sync main branch with remote before worktree/PR operations. Default: true */
73
+ syncMainBranch: boolean;
58
74
  commitFormat: CommitFormatConfig;
59
- claudeCommand: string;
60
75
  pricing: PricingConfig;
76
+ display: DisplayConfig;
77
+ rateLimitWindow: RateLimitWindowConfig;
61
78
  }
62
79
  export declare const DEFAULT_CONFIG: RafConfig;
63
80
  /** Deep partial type for user config files — all fields optional at every level */
@@ -73,13 +90,13 @@ export declare const VALID_MODEL_ALIASES: readonly ClaudeModelAlias[];
73
90
  export declare const FULL_MODEL_ID_PATTERN: RegExp;
74
91
  /** @deprecated Use VALID_MODEL_ALIASES instead */
75
92
  export declare const VALID_MODELS: readonly ClaudeModelAlias[];
76
- export declare const VALID_EFFORTS: readonly EffortLevel[];
93
+ /** Valid task effort levels for plan frontmatter. */
94
+ export declare const VALID_TASK_EFFORTS: readonly TaskEffortLevel[];
77
95
  /** @deprecated Use DEFAULT_CONFIG instead */
78
96
  export declare const DEFAULT_RAF_CONFIG: {
79
97
  defaultTimeout: number;
80
98
  defaultMaxRetries: number;
81
99
  autoCommit: boolean;
82
- claudeCommand: string;
83
100
  };
84
101
  export interface PlanCommandOptions {
85
102
  projectName?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
@@ -7,25 +7,22 @@ export const DEFAULT_CONFIG = {
7
7
  prGeneration: 'sonnet',
8
8
  config: 'sonnet',
9
9
  },
10
- effort: {
11
- plan: 'high',
12
- execute: 'medium',
13
- nameGeneration: 'low',
14
- failureAnalysis: 'low',
15
- prGeneration: 'medium',
16
- config: 'medium',
10
+ effortMapping: {
11
+ low: 'haiku',
12
+ medium: 'sonnet',
13
+ high: 'opus',
17
14
  },
18
15
  timeout: 60,
19
16
  maxRetries: 3,
20
17
  autoCommit: true,
21
18
  worktree: false,
19
+ syncMainBranch: true,
22
20
  commitFormat: {
23
21
  task: '{prefix}[{projectId}:{taskId}] {description}',
24
22
  plan: '{prefix}[{projectId}] Plan: {projectName}',
25
23
  amend: '{prefix}[{projectId}] Amend: {projectName}',
26
24
  prefix: 'RAF',
27
25
  },
28
- claudeCommand: 'claude',
29
26
  pricing: {
30
27
  opus: {
31
28
  inputPerMTok: 15,
@@ -46,6 +43,13 @@ export const DEFAULT_CONFIG = {
46
43
  cacheCreatePerMTok: 1.25,
47
44
  },
48
45
  },
46
+ display: {
47
+ showRateLimitEstimate: true,
48
+ showCacheTokens: true,
49
+ },
50
+ rateLimitWindow: {
51
+ sonnetTokenCap: 88000,
52
+ },
49
53
  };
50
54
  export const VALID_MODEL_ALIASES = ['sonnet', 'haiku', 'opus'];
51
55
  /**
@@ -55,13 +59,13 @@ export const VALID_MODEL_ALIASES = ['sonnet', 'haiku', 'opus'];
55
59
  export const FULL_MODEL_ID_PATTERN = /^claude-[a-z]+-\d+(-\d+)*$/;
56
60
  /** @deprecated Use VALID_MODEL_ALIASES instead */
57
61
  export const VALID_MODELS = VALID_MODEL_ALIASES;
58
- export const VALID_EFFORTS = ['low', 'medium', 'high'];
62
+ /** Valid task effort levels for plan frontmatter. */
63
+ export const VALID_TASK_EFFORTS = ['low', 'medium', 'high'];
59
64
  // Keep backward-compat exports used by other modules
60
65
  /** @deprecated Use DEFAULT_CONFIG instead */
61
66
  export const DEFAULT_RAF_CONFIG = {
62
67
  defaultTimeout: DEFAULT_CONFIG.timeout,
63
68
  defaultMaxRetries: DEFAULT_CONFIG.maxRetries,
64
69
  autoCommit: DEFAULT_CONFIG.autoCommit,
65
- claudeCommand: DEFAULT_CONFIG.claudeCommand,
66
70
  };
67
71
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAqEA,MAAM,CAAC,MAAM,cAAc,GAAc;IACvC,MAAM,EAAE;QACN,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,QAAQ;QACxB,eAAe,EAAE,OAAO;QACxB,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,QAAQ;KACjB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,QAAQ;QACjB,cAAc,EAAE,KAAK;QACrB,eAAe,EAAE,KAAK;QACtB,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,QAAQ;KACjB;IACD,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,KAAK;IACf,YAAY,EAAE;QACZ,IAAI,EAAE,8CAA8C;QACpD,IAAI,EAAE,2CAA2C;QACjD,KAAK,EAAE,4CAA4C;QACnD,MAAM,EAAE,KAAK;KACd;IACD,aAAa,EAAE,QAAQ;IACvB,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,EAAE;YACjB,gBAAgB,EAAE,GAAG;YACrB,kBAAkB,EAAE,KAAK;SAC1B;QACD,MAAM,EAAE;YACN,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,EAAE;YACjB,gBAAgB,EAAE,GAAG;YACrB,kBAAkB,EAAE,IAAI;SACzB;QACD,KAAK,EAAE;YACL,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,gBAAgB,EAAE,GAAG;YACrB,kBAAkB,EAAE,IAAI;SACzB;KACF;CACF,CAAC;AASF,MAAM,CAAC,MAAM,mBAAmB,GAAgC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAE5F;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,4BAA4B,CAAC;AAElE,kDAAkD;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAChD,MAAM,CAAC,MAAM,aAAa,GAA2B,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAE/E,qDAAqD;AACrD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,cAAc,CAAC,OAAO;IACtC,iBAAiB,EAAE,cAAc,CAAC,UAAU;IAC5C,UAAU,EAAE,cAAc,CAAC,UAAU;IACrC,aAAa,EAAE,cAAc,CAAC,aAAa;CAC5C,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAyFA,MAAM,CAAC,MAAM,cAAc,GAAc;IACvC,MAAM,EAAE;QACN,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,QAAQ;QACxB,eAAe,EAAE,OAAO;QACxB,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,QAAQ;KACjB;IACD,aAAa,EAAE;QACb,GAAG,EAAE,OAAO;QACZ,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,MAAM;KACb;IACD,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,KAAK;IACf,cAAc,EAAE,IAAI;IACpB,YAAY,EAAE;QACZ,IAAI,EAAE,8CAA8C;QACpD,IAAI,EAAE,2CAA2C;QACjD,KAAK,EAAE,4CAA4C;QACnD,MAAM,EAAE,KAAK;KACd;IACD,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,EAAE;YACjB,gBAAgB,EAAE,GAAG;YACrB,kBAAkB,EAAE,KAAK;SAC1B;QACD,MAAM,EAAE;YACN,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,EAAE;YACjB,gBAAgB,EAAE,GAAG;YACrB,kBAAkB,EAAE,IAAI;SACzB;QACD,KAAK,EAAE;YACL,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,gBAAgB,EAAE,GAAG;YACrB,kBAAkB,EAAE,IAAI;SACzB;KACF;IACD,OAAO,EAAE;QACP,qBAAqB,EAAE,IAAI;QAC3B,eAAe,EAAE,IAAI;KACtB;IACD,eAAe,EAAE;QACf,cAAc,EAAE,KAAK;KACtB;CACF,CAAC;AASF,MAAM,CAAC,MAAM,mBAAmB,GAAgC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAE5F;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,4BAA4B,CAAC;AAElE,kDAAkD;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAEhD,qDAAqD;AACrD,MAAM,CAAC,MAAM,kBAAkB,GAA+B,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAExF,qDAAqD;AACrD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,cAAc,CAAC,OAAO;IACtC,iBAAiB,EAAE,cAAc,CAAC,UAAU;IAC5C,UAAU,EAAE,cAAc,CAAC,UAAU;CACtC,CAAC"}