wiggum-cli 0.17.2 → 0.18.3

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 (71) hide show
  1. package/README.md +58 -14
  2. package/dist/agent/orchestrator.d.ts +21 -3
  3. package/dist/agent/orchestrator.js +394 -187
  4. package/dist/agent/resolve-config.js +1 -1
  5. package/dist/agent/scheduler.d.ts +29 -0
  6. package/dist/agent/scheduler.js +1149 -0
  7. package/dist/agent/tools/backlog.d.ts +6 -0
  8. package/dist/agent/tools/backlog.js +23 -4
  9. package/dist/agent/tools/execution.js +1 -1
  10. package/dist/agent/tools/introspection.js +26 -4
  11. package/dist/agent/types.d.ts +113 -0
  12. package/dist/ai/conversation/url-fetcher.js +46 -13
  13. package/dist/ai/enhancer.js +1 -2
  14. package/dist/ai/providers.js +4 -4
  15. package/dist/commands/agent.d.ts +1 -0
  16. package/dist/commands/agent.js +53 -1
  17. package/dist/commands/config.js +100 -6
  18. package/dist/commands/run.d.ts +2 -0
  19. package/dist/commands/run.js +47 -2
  20. package/dist/commands/sync.js +2 -2
  21. package/dist/generator/config.js +13 -2
  22. package/dist/index.js +11 -3
  23. package/dist/repl/command-parser.d.ts +1 -1
  24. package/dist/repl/command-parser.js +1 -1
  25. package/dist/templates/config/ralph.config.cjs.tmpl +9 -2
  26. package/dist/templates/prompts/PROMPT_e2e.md.tmpl +16 -89
  27. package/dist/templates/prompts/PROMPT_e2e_fix.md.tmpl +55 -0
  28. package/dist/templates/prompts/PROMPT_feature.md.tmpl +12 -98
  29. package/dist/templates/prompts/PROMPT_review_auto.md.tmpl +52 -49
  30. package/dist/templates/prompts/PROMPT_review_manual.md.tmpl +30 -2
  31. package/dist/templates/prompts/PROMPT_review_merge.md.tmpl +59 -69
  32. package/dist/templates/prompts/PROMPT_verify.md.tmpl +7 -0
  33. package/dist/templates/root/README.md.tmpl +2 -3
  34. package/dist/templates/scripts/feature-loop.sh.tmpl +835 -93
  35. package/dist/templates/scripts/loop.sh.tmpl +5 -1
  36. package/dist/templates/scripts/ralph-monitor.sh.tmpl +0 -2
  37. package/dist/tui/app.d.ts +5 -1
  38. package/dist/tui/app.js +22 -3
  39. package/dist/tui/components/HeaderContent.d.ts +4 -1
  40. package/dist/tui/components/HeaderContent.js +4 -2
  41. package/dist/tui/hooks/useAgentOrchestrator.d.ts +2 -1
  42. package/dist/tui/hooks/useAgentOrchestrator.js +86 -33
  43. package/dist/tui/hooks/useInit.d.ts +5 -1
  44. package/dist/tui/hooks/useInit.js +20 -2
  45. package/dist/tui/screens/AgentScreen.js +3 -1
  46. package/dist/tui/screens/InitScreen.js +12 -1
  47. package/dist/tui/screens/MainShell.js +70 -6
  48. package/dist/tui/screens/RunScreen.d.ts +6 -2
  49. package/dist/tui/screens/RunScreen.js +48 -6
  50. package/dist/tui/utils/loop-status.d.ts +15 -0
  51. package/dist/tui/utils/loop-status.js +89 -27
  52. package/dist/tui/utils/polishGoal.js +14 -1
  53. package/dist/utils/config.d.ts +7 -0
  54. package/dist/utils/config.js +14 -0
  55. package/dist/utils/env.js +7 -1
  56. package/dist/utils/github.d.ts +13 -0
  57. package/dist/utils/github.js +63 -4
  58. package/dist/utils/logger.js +1 -1
  59. package/package.json +9 -7
  60. package/src/templates/config/ralph.config.cjs.tmpl +9 -2
  61. package/src/templates/prompts/PROMPT_e2e.md.tmpl +16 -89
  62. package/src/templates/prompts/PROMPT_e2e_fix.md.tmpl +55 -0
  63. package/src/templates/prompts/PROMPT_feature.md.tmpl +12 -98
  64. package/src/templates/prompts/PROMPT_review_auto.md.tmpl +52 -49
  65. package/src/templates/prompts/PROMPT_review_manual.md.tmpl +30 -2
  66. package/src/templates/prompts/PROMPT_review_merge.md.tmpl +59 -69
  67. package/src/templates/prompts/PROMPT_verify.md.tmpl +7 -0
  68. package/src/templates/root/README.md.tmpl +2 -3
  69. package/src/templates/scripts/feature-loop.sh.tmpl +835 -93
  70. package/src/templates/scripts/loop.sh.tmpl +5 -1
  71. package/src/templates/scripts/ralph-monitor.sh.tmpl +0 -2
@@ -22,7 +22,7 @@ export async function resolveAgentEnv(projectRoot, options) {
22
22
  : null;
23
23
  const provider = validConfigProvider || getAvailableProvider();
24
24
  if (!provider) {
25
- throw new Error('No AI provider configured. Run `wiggum init` or set ANTHROPIC_API_KEY, OPENAI_API_KEY, or OPENROUTER_API_KEY.');
25
+ throw new Error('No AI provider configured. Run `wiggum init` or set a supported provider API key.');
26
26
  }
27
27
  // 2. Detect GitHub remote
28
28
  const remote = await detectGitHubRemote(projectRoot);
@@ -0,0 +1,29 @@
1
+ import type { MemoryStore } from './memory/store.js';
2
+ import type { AgentConfig, AgentIssueState, BacklogCandidate, DependencyEdge, ScopeExpansion } from './types.js';
3
+ import { type GitHubIssueDetail, type ListIssuesResult } from '../utils/github.js';
4
+ import { type FeatureState } from './tools/feature-state.js';
5
+ import { loadContext } from '../context/index.js';
6
+ export interface RankedBacklog {
7
+ queue: BacklogCandidate[];
8
+ actionable: BacklogCandidate[];
9
+ blocked: BacklogCandidate[];
10
+ expansions: ScopeExpansion[];
11
+ errors: string[];
12
+ }
13
+ export interface SchedulerRunCache {
14
+ listed?: ListIssuesResult;
15
+ listedUnfiltered?: ListIssuesResult;
16
+ issueDetails: Map<number, GitHubIssueDetail | null>;
17
+ featureStates: Map<number, FeatureState>;
18
+ persistedContext?: Awaited<ReturnType<typeof loadContext>> | null;
19
+ }
20
+ export declare function createSchedulerRunCache(): SchedulerRunCache;
21
+ export declare function invalidateSchedulerRunCache(cache: SchedulerRunCache, issueNumbers?: number[]): void;
22
+ export declare function extractDependencyHints(body: string, backlogIssues?: Array<{
23
+ number: number;
24
+ title: string;
25
+ }>, currentIssueNumber?: number): number[];
26
+ export declare function deriveFeatureNameFromTitle(title: string): string;
27
+ export declare function dedupeEdges(edges: DependencyEdge[]): DependencyEdge[];
28
+ export declare function buildRankedBacklog(config: AgentConfig, store: MemoryStore, cache?: SchedulerRunCache): Promise<RankedBacklog>;
29
+ export declare function toIssueStates(queue: BacklogCandidate[]): AgentIssueState[];