wiggum-cli 0.6.0 → 0.7.2

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 (60) hide show
  1. package/README.md +49 -28
  2. package/dist/commands/init.d.ts +18 -0
  3. package/dist/commands/init.d.ts.map +1 -1
  4. package/dist/commands/init.js +68 -92
  5. package/dist/commands/init.js.map +1 -1
  6. package/dist/commands/new.js +1 -1
  7. package/dist/commands/new.js.map +1 -1
  8. package/dist/commands/run.js +1 -1
  9. package/dist/commands/run.js.map +1 -1
  10. package/dist/generator/config.d.ts +3 -3
  11. package/dist/generator/config.js +3 -3
  12. package/dist/generator/index.js +1 -1
  13. package/dist/generator/index.js.map +1 -1
  14. package/dist/generator/writer.js +1 -1
  15. package/dist/generator/writer.js.map +1 -1
  16. package/dist/index.d.ts +1 -0
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +37 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/repl/command-parser.d.ts +5 -0
  21. package/dist/repl/command-parser.d.ts.map +1 -1
  22. package/dist/repl/command-parser.js +5 -0
  23. package/dist/repl/command-parser.js.map +1 -1
  24. package/dist/repl/repl-loop.d.ts.map +1 -1
  25. package/dist/repl/repl-loop.js +64 -3
  26. package/dist/repl/repl-loop.js.map +1 -1
  27. package/dist/repl/session-state.d.ts +4 -2
  28. package/dist/repl/session-state.d.ts.map +1 -1
  29. package/dist/repl/session-state.js +2 -1
  30. package/dist/repl/session-state.js.map +1 -1
  31. package/dist/templates/root/README.md.tmpl +1 -1
  32. package/dist/templates/scripts/feature-loop.sh.tmpl +17 -17
  33. package/dist/templates/scripts/loop.sh.tmpl +7 -7
  34. package/dist/templates/scripts/ralph-monitor.sh.tmpl +5 -5
  35. package/dist/utils/config.d.ts +7 -7
  36. package/dist/utils/config.js +4 -4
  37. package/dist/utils/config.js.map +1 -1
  38. package/dist/utils/update-check.d.ts +21 -0
  39. package/dist/utils/update-check.d.ts.map +1 -0
  40. package/dist/utils/update-check.js +149 -0
  41. package/dist/utils/update-check.js.map +1 -0
  42. package/package.json +1 -1
  43. package/src/commands/init.ts +92 -108
  44. package/src/commands/new.ts +1 -1
  45. package/src/commands/run.ts +1 -1
  46. package/src/generator/config.ts +3 -3
  47. package/src/generator/index.ts +1 -1
  48. package/src/generator/writer.ts +1 -1
  49. package/src/index.ts +50 -0
  50. package/src/repl/command-parser.ts +5 -0
  51. package/src/repl/repl-loop.ts +73 -3
  52. package/src/repl/session-state.ts +7 -3
  53. package/src/templates/config/ralph.config.cjs.tmpl +38 -0
  54. package/src/templates/root/README.md.tmpl +1 -1
  55. package/src/templates/scripts/feature-loop.sh.tmpl +17 -17
  56. package/src/templates/scripts/loop.sh.tmpl +7 -7
  57. package/src/templates/scripts/ralph-monitor.sh.tmpl +5 -5
  58. package/src/utils/config.ts +9 -9
  59. package/src/utils/update-check.ts +182 -0
  60. /package/{src/templates/config/ralph.config.js.tmpl → dist/templates/config/ralph.config.cjs.tmpl} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/generator/writer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAY,QAAQ,EAAE,IAAI,EAAmB,MAAM,kBAAkB,CAAC;AAC/F,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAepD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAiB;IACjD,aAAa,EAAE,QAAQ;IACvB,aAAa,EAAE,IAAI;IACnB,OAAO,EAAE,KAAK;CACf,CAAC;AAsCF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAe;IAC7C,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACjE,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,WAAW,SAAS,EAAE,CAAC,CAAC;IAE7D,MAAM,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACrC,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAgB,EAChB,OAAe,EACf,UAAwB,qBAAqB;IAE7C,MAAM,MAAM,GAAgB;QAC1B,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,SAAS;KAClB,CAAC;IAEF,IAAI,CAAC;QACH,0BAA0B;QAC1B,MAAM,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEnC,uBAAuB;QACvB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC9B,KAAK,MAAM;oBACT,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;oBAC1B,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;oBACtB,OAAO,MAAM,CAAC;gBAEhB,KAAK,QAAQ;oBACX,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC1B,MAAM,CAAC,UAAU,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;wBAC/C,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;oBAC9B,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC;oBAChC,CAAC;oBACD,MAAM;gBAER,KAAK,WAAW;oBACd,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC;oBAC9B,MAAM;YACV,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5C,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QAEtB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;QACxB,MAAM,CAAC,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtE,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAA0B,EAC1B,OAAe,EACf,UAAwB,qBAAqB;IAE7C,MAAM,OAAO,GAAiB;QAC5B,KAAK,EAAE,KAAK,CAAC,IAAI;QACjB,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,CAAC;QACd,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,EAAE;KACZ,CAAC;IAEF,KAAK,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACtE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE7B,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;YACtB,KAAK,SAAS;gBACZ,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM;YACR,KAAK,WAAW;gBACd,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM;YACR,KAAK,SAAS;gBACZ,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM;YACR,KAAK,aAAa;gBAChB,OAAO,CAAC,WAAW,EAAE,CAAC;gBACtB,MAAM;YACR,KAAK,OAAO;gBACV,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM;QACV,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE;QACX,gBAAgB;QAChB,eAAe;QACf,cAAc;QACd,gBAAgB;KACjB;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,WAAmB;IAChE,KAAK,MAAM,GAAG,IAAI,yBAAyB,CAAC,WAAW,EAAE,CAAC;QACxD,MAAM,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,eAAoC;IACzE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEzC,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;QACpD,8CAA8C;QAC9C,IAAI,SAAiB,CAAC;QAEtB,IAAI,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACtC,SAAS,GAAG,UAAU,UAAU,EAAE,CAAC;QACrC,CAAC;aAAM,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,SAAS,GAAG,UAAU,UAAU,EAAE,CAAC;QACrC,CAAC;aAAM,IAAI,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,SAAS,GAAG,UAAU,UAAU,EAAE,CAAC;QACrC,CAAC;aAAM,IAAI,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7C,gCAAgC;YAChC,SAAS,GAAG,UAAU,UAAU,EAAE,CAAC;QACrC,CAAC;aAAM,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,uCAAuC;YACvC,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,2BAA2B;YAC3B,SAAS,GAAG,UAAU,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,SAAS,GAAG,UAAU,UAAU,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAqB;IACtD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,cAAc,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAE5C,IAAI,OAAO,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,0BAA0B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1C,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC9B,KAAK,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/generator/writer.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * Main entry point for the Ralph CLI
3
+ * REPL-first: no args = start REPL, otherwise use CLI
3
4
  */
4
5
  export declare function main(): Promise<void>;
5
6
  export { createCli } from './cli.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1C;AAGD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,YAAY,EACV,eAAe,EACf,aAAa,EACb,UAAU,EACV,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,SAAS,EACT,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAuCA;;;GAGG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAe1C;AAGD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,YAAY,EACV,eAAe,EACf,aAAa,EACb,UAAU,EACV,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,SAAS,EACT,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,45 @@
1
1
  import { createCli } from './cli.js';
2
+ import { startRepl, createSessionState } from './repl/index.js';
3
+ import { hasConfig, loadConfigWithDefaults } from './utils/config.js';
4
+ import { getAvailableProvider } from './ai/providers.js';
5
+ import { displayHeader } from './utils/header.js';
6
+ import { notifyIfUpdateAvailable } from './utils/update-check.js';
7
+ /**
8
+ * Start REPL-first mode
9
+ * Called when wiggum is invoked with no arguments
10
+ */
11
+ async function startReplFirst() {
12
+ const projectRoot = process.cwd();
13
+ const provider = getAvailableProvider();
14
+ // Display header
15
+ displayHeader();
16
+ // Check if already initialized
17
+ const isInitialized = hasConfig(projectRoot);
18
+ let config = null;
19
+ if (isInitialized) {
20
+ config = await loadConfigWithDefaults(projectRoot);
21
+ }
22
+ // Create initial state (may not have config yet)
23
+ const initialState = createSessionState(projectRoot, provider, // May be null if no API key
24
+ 'sonnet', // Default model, will be updated after /init
25
+ undefined, // No scan result yet
26
+ config, isInitialized);
27
+ await startRepl(initialState);
28
+ }
2
29
  /**
3
30
  * Main entry point for the Ralph CLI
31
+ * REPL-first: no args = start REPL, otherwise use CLI
4
32
  */
5
33
  export async function main() {
34
+ const args = process.argv.slice(2);
35
+ // Check for updates (non-blocking, fails silently)
36
+ await notifyIfUpdateAvailable();
37
+ // REPL-first: no args = start REPL
38
+ if (args.length === 0) {
39
+ await startReplFirst();
40
+ return;
41
+ }
42
+ // Legacy CLI mode for backward compatibility
6
43
  const program = createCli();
7
44
  await program.parseAsync(process.argv);
8
45
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;IAC5B,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,8BAA8B;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,iBAAiB;AACjB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAQ5E,mBAAmB;AACnB,OAAO,EACL,SAAS,EACT,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,GACnB,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE;;;GAGG;AACH,KAAK,UAAU,cAAc;IAC3B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;IAExC,iBAAiB;IACjB,aAAa,EAAE,CAAC;IAEhB,+BAA+B;IAC/B,MAAM,aAAa,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IAC7C,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,GAAG,MAAM,sBAAsB,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,iDAAiD;IACjD,MAAM,YAAY,GAAG,kBAAkB,CACrC,WAAW,EACX,QAAQ,EAAE,4BAA4B;IACtC,QAAQ,EAAE,6CAA6C;IACvD,SAAS,EAAE,qBAAqB;IAChC,MAAM,EACN,aAAa,CACd,CAAC;IAEF,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,mDAAmD;IACnD,MAAM,uBAAuB,EAAE,CAAC;IAEhC,mCAAmC;IACnC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,cAAc,EAAE,CAAC;QACvB,OAAO;IACT,CAAC;IAED,6CAA6C;IAC7C,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;IAC5B,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,8BAA8B;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,iBAAiB;AACjB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAQ5E,mBAAmB;AACnB,OAAO,EACL,SAAS,EACT,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,GACnB,MAAM,sBAAsB,CAAC"}
@@ -29,6 +29,11 @@ export interface ParsedInput {
29
29
  * Available REPL commands
30
30
  */
31
31
  export declare const REPL_COMMANDS: {
32
+ readonly init: {
33
+ readonly description: "Initialize Wiggum in this project";
34
+ readonly usage: "/init";
35
+ readonly aliases: readonly ["i"];
36
+ };
32
37
  readonly new: {
33
38
  readonly description: "Create a new feature specification";
34
39
  readonly usage: "/new <feature-name>";
@@ -1 +1 @@
1
- {"version":3,"file":"command-parser.d.ts","sourceRoot":"","sources":["../../src/repl/command-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,kBAAkB,GAAG,OAAO,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BhB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,aAAa,CAAC;AAEzD;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAS7D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAcxE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAkBrD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAkBvC"}
1
+ {"version":3,"file":"command-parser.d.ts","sourceRoot":"","sources":["../../src/repl/command-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,kBAAkB,GAAG,OAAO,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BhB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,aAAa,CAAC;AAEzD;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAS7D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAcxE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAkBrD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAkBvC"}
@@ -6,6 +6,11 @@
6
6
  * Available REPL commands
7
7
  */
8
8
  export const REPL_COMMANDS = {
9
+ init: {
10
+ description: 'Initialize Wiggum in this project',
11
+ usage: '/init',
12
+ aliases: ['i'],
13
+ },
9
14
  new: {
10
15
  description: 'Create a new feature specification',
11
16
  usage: '/new <feature-name>',
@@ -1 +1 @@
1
- {"version":3,"file":"command-parser.js","sourceRoot":"","sources":["../../src/repl/command-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-parser.js","sourceRoot":"","sources":["../../src/repl/command-parser.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"repl-loop.d.ts","sourceRoot":"","sources":["../../src/repl/repl-loop.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,eAAe,CAAC;AAMrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAsG7B;;GAEG;AACH,iBAAe,cAAc,CAC3B,WAAW,EAAE,eAAe,EAC5B,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,YAAY,EACnB,EAAE,EAAE,QAAQ,CAAC,SAAS,GACrB,OAAO,CAAC;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAsBvD;AAuBD;;GAEG;AACH,iBAAe,YAAY,CACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,EACnB,EAAE,EAAE,QAAQ,CAAC,SAAS,GACrB,OAAO,CAAC;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CA8BvD;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAgDzE;AAED;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"repl-loop.d.ts","sourceRoot":"","sources":["../../src/repl/repl-loop.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,eAAe,CAAC;AAQrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAiK7B;;GAEG;AACH,iBAAe,cAAc,CAC3B,WAAW,EAAE,eAAe,EAC5B,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,YAAY,EACnB,EAAE,EAAE,QAAQ,CAAC,SAAS,GACrB,OAAO,CAAC;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAyBvD;AAuBD;;GAEG;AACH,iBAAe,YAAY,CACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,EACnB,EAAE,EAAE,QAAQ,CAAC,SAAS,GACrB,OAAO,CAAC;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CA8BvD;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDzE;AAED;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC"}
@@ -8,12 +8,58 @@ import { logger } from '../utils/logger.js';
8
8
  import { simpson } from '../utils/colors.js';
9
9
  import { runCommand } from '../commands/run.js';
10
10
  import { monitorCommand } from '../commands/monitor.js';
11
+ import { runInitWorkflow } from '../commands/init.js';
12
+ import { hasConfig } from '../utils/config.js';
13
+ import { updateSessionState } from './session-state.js';
11
14
  import { parseInput, resolveCommandAlias, formatHelpText, } from './command-parser.js';
12
15
  const PROMPT = `${simpson.yellow('wiggum')}${simpson.brown('>')} `;
13
16
  /**
14
- * Handler for the /new command - will be enhanced in Phase 3
17
+ * Handler for the /init command
18
+ */
19
+ async function handleInitCommand(_args, state, rl) {
20
+ // Check if already initialized
21
+ if (state.initialized && hasConfig(state.projectRoot)) {
22
+ logger.warn('Project is already initialized. Re-running init will update configuration.');
23
+ console.log('');
24
+ }
25
+ // Pause REPL readline to avoid conflicts with subcommand's stdin usage
26
+ rl.pause();
27
+ try {
28
+ const result = await runInitWorkflow(state.projectRoot, {
29
+ yes: false, // Always interactive in REPL
30
+ });
31
+ if (result) {
32
+ // Update state with init result
33
+ return updateSessionState(state, {
34
+ provider: result.provider,
35
+ model: result.model,
36
+ scanResult: result.scanResult,
37
+ config: result.config,
38
+ initialized: true,
39
+ });
40
+ }
41
+ // User cancelled
42
+ return state;
43
+ }
44
+ catch (error) {
45
+ logger.error(`Init failed: ${error instanceof Error ? error.message : String(error)}`);
46
+ return state;
47
+ }
48
+ finally {
49
+ // Resume REPL readline after subcommand completes
50
+ rl.resume();
51
+ }
52
+ }
53
+ /**
54
+ * Handler for the /new command
55
+ * Always uses AI interview mode in REPL (falls back to template if no API key)
15
56
  */
16
57
  async function handleNewCommand(args, state, rl) {
58
+ // Check if initialized
59
+ if (!state.initialized && !hasConfig(state.projectRoot)) {
60
+ logger.warn('Project not initialized. Run /init first.');
61
+ return state;
62
+ }
17
63
  if (args.length === 0) {
18
64
  logger.error('Feature name required. Usage: /new <feature-name>');
19
65
  return state;
@@ -23,12 +69,14 @@ async function handleNewCommand(args, state, rl) {
23
69
  rl.pause();
24
70
  try {
25
71
  // Delegate to the existing new command behavior
72
+ // Always use AI mode in REPL (the command handles fallback to template if no API key)
26
73
  const { newCommand } = await import('../commands/new.js');
27
74
  await newCommand(featureName, {
28
75
  yes: false,
29
76
  scanResult: state.scanResult,
30
- provider: state.provider,
77
+ provider: state.provider ?? undefined,
31
78
  model: state.model,
79
+ ai: true, // Always use AI interview in REPL
32
80
  });
33
81
  }
34
82
  finally {
@@ -41,6 +89,11 @@ async function handleNewCommand(args, state, rl) {
41
89
  * Handler for the /run command
42
90
  */
43
91
  async function handleRunCommand(args, state, rl) {
92
+ // Check if initialized
93
+ if (!state.initialized && !hasConfig(state.projectRoot)) {
94
+ logger.warn('Project not initialized. Run /init first.');
95
+ return state;
96
+ }
44
97
  if (args.length === 0) {
45
98
  logger.error('Feature name required. Usage: /run <feature-name>');
46
99
  return state;
@@ -88,6 +141,8 @@ function handleHelpCommand() {
88
141
  */
89
142
  async function executeCommand(commandName, args, state, rl) {
90
143
  switch (commandName) {
144
+ case 'init':
145
+ return { state: await handleInitCommand(args, state, rl), shouldExit: false };
91
146
  case 'new':
92
147
  return { state: await handleNewCommand(args, state, rl), shouldExit: false };
93
148
  case 'run':
@@ -156,7 +211,13 @@ export async function startRepl(initialState) {
156
211
  let state = initialState;
157
212
  console.log('');
158
213
  console.log(simpson.yellow('Wiggum Interactive Mode'));
159
- console.log(pc.dim('Type /help for commands, /exit to quit'));
214
+ // Show context-aware welcome message
215
+ if (!state.initialized && !hasConfig(state.projectRoot)) {
216
+ console.log(pc.dim('Not initialized. Run /init to set up this project.'));
217
+ }
218
+ else {
219
+ console.log(pc.dim('Type /help for commands, /exit to quit'));
220
+ }
160
221
  console.log('');
161
222
  const rl = readline.createInterface({
162
223
  input: process.stdin,
@@ -1 +1 @@
1
- {"version":3,"file":"repl-loop.js","sourceRoot":"","sources":["../../src/repl/repl-loop.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,cAAc,GAEf,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;AAEnE;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAC7B,IAAc,EACd,KAAmB,EACnB,EAAsB;IAEtB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAE5B,uEAAuE;IACvE,EAAE,CAAC,KAAK,EAAE,CAAC;IAEX,IAAI,CAAC;QACH,gDAAgD;QAChD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAC1D,MAAM,UAAU,CAAC,WAAW,EAAE;YAC5B,GAAG,EAAE,KAAK;YACV,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,kDAAkD;QAClD,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAC7B,IAAc,EACd,KAAmB,EACnB,EAAsB;IAEtB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAE5B,uEAAuE;IACvE,EAAE,CAAC,KAAK,EAAE,CAAC;IAEX,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CACjC,IAAc,EACd,KAAmB,EACnB,EAAsB;IAEtB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAE5B,uEAAuE;IACvE,EAAE,CAAC,KAAK,EAAE,CAAC;IAEX,IAAI,CAAC;QACH,MAAM,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB;IACxB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAC3B,WAA4B,EAC5B,IAAc,EACd,KAAmB,EACnB,EAAsB;IAEtB,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,KAAK;YACR,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAE/E,KAAK,KAAK;YACR,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAE/E,KAAK,SAAS;YACZ,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAEnF,KAAK,MAAM;YACT,iBAAiB,EAAE,CAAC;YACpB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAEtC,KAAK,MAAM;YACT,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAErC;YACE,MAAM,CAAC,IAAI,CAAC,oBAAoB,WAAW,EAAE,CAAC,CAAC;YAC/C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACxC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,qBAAqB,CAClC,IAAY,EACZ,KAAmB;IAEnB,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,yDAAyD;QACzD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC,CAAC;QACrG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,KAAa,EACb,KAAmB,EACnB,EAAsB;IAEtB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAEjC,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,OAAO;YACV,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAEtC,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;YACtC,CAAC;YAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,qBAAqB,OAAO,CAAC,IAAI,sCAAsC,CAAC,CAAC;gBACrF,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;YACtC,CAAC;YAED,OAAO,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACxB,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,MAAM,CAAC,IAAK,EAAE,KAAK,CAAC,CAAC;YAClE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAChD,CAAC;QAED;YACE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACxC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,YAA0B;IACxD,IAAI,KAAK,GAAG,YAAY,CAAC;IAEzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,2BAA2B;IAC3B,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACjC,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,sBAAsB;IACtB,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,MAAM,EAAE,CAAC;IAEZ,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACnD,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAErB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACxB,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"repl-loop.js","sourceRoot":"","sources":["../../src/repl/repl-loop.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export interface SessionState {
14
14
  /** Loaded Ralph configuration */
15
15
  config: RalphConfig | null;
16
16
  /** AI provider being used */
17
- provider: AIProvider;
17
+ provider: AIProvider | null;
18
18
  /** Model to use for AI operations */
19
19
  model: string;
20
20
  /** Cached scan result from init */
@@ -23,11 +23,13 @@ export interface SessionState {
23
23
  conversationMode: boolean;
24
24
  /** Current conversation context (e.g., 'spec-generation') */
25
25
  conversationContext?: string;
26
+ /** Whether /init has been run in this session */
27
+ initialized: boolean;
26
28
  }
27
29
  /**
28
30
  * Create a new session state
29
31
  */
30
- export declare function createSessionState(projectRoot: string, provider: AIProvider, model: string, scanResult?: ScanResult, config?: RalphConfig | null): SessionState;
32
+ export declare function createSessionState(projectRoot: string, provider: AIProvider | null, model: string, scanResult?: ScanResult, config?: RalphConfig | null, initialized?: boolean): SessionState;
31
33
  /**
32
34
  * Update session state immutably
33
35
  */
@@ -1 +1 @@
1
- {"version":3,"file":"session-state.d.ts","sourceRoot":"","sources":["../../src/repl/session-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,6BAA6B;IAC7B,QAAQ,EAAE,UAAU,CAAC;IACrB,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,mEAAmE;IACnE,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,UAAU,EACvB,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAC1B,YAAY,CAUd;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAC7B,YAAY,CAEd"}
1
+ {"version":3,"file":"session-state.d.ts","sourceRoot":"","sources":["../../src/repl/session-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,6BAA6B;IAC7B,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAC;IAC5B,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,mEAAmE;IACnE,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,UAAU,GAAG,IAAI,EAC3B,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,UAAU,EACvB,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,EAC3B,WAAW,CAAC,EAAE,OAAO,GACpB,YAAY,CAWd;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAC7B,YAAY,CAEd"}
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * Create a new session state
7
7
  */
8
- export function createSessionState(projectRoot, provider, model, scanResult, config) {
8
+ export function createSessionState(projectRoot, provider, model, scanResult, config, initialized) {
9
9
  return {
10
10
  projectRoot,
11
11
  config: config ?? null,
@@ -14,6 +14,7 @@ export function createSessionState(projectRoot, provider, model, scanResult, con
14
14
  scanResult,
15
15
  conversationMode: false,
16
16
  conversationContext: undefined,
17
+ initialized: initialized ?? false,
17
18
  };
18
19
  }
19
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"session-state.js","sourceRoot":"","sources":["../../src/repl/session-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA0BH;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAmB,EACnB,QAAoB,EACpB,KAAa,EACb,UAAuB,EACvB,MAA2B;IAE3B,OAAO;QACL,WAAW;QACX,MAAM,EAAE,MAAM,IAAI,IAAI;QACtB,QAAQ;QACR,KAAK;QACL,UAAU;QACV,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,SAAS;KAC/B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAmB,EACnB,OAA8B;IAE9B,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"session-state.js","sourceRoot":"","sources":["../../src/repl/session-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4BH;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAmB,EACnB,QAA2B,EAC3B,KAAa,EACb,UAAuB,EACvB,MAA2B,EAC3B,WAAqB;IAErB,OAAO;QACL,WAAW;QACX,MAAM,EAAE,MAAM,IAAI,IAAI;QACtB,QAAQ;QACR,KAAK;QACL,UAAU;QACV,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,SAAS;QAC9B,WAAW,EAAE,WAAW,IAAI,KAAK;KAClC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAmB,EACnB,OAA8B;IAE9B,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;AAClC,CAAC"}
@@ -58,4 +58,4 @@ Add new feature specs to `.ralph/specs/`:
58
58
 
59
59
  ## Configuration
60
60
 
61
- See `ralph.config.js` in project root for full configuration.
61
+ See `ralph.config.cjs` in project root for full configuration.
@@ -14,23 +14,23 @@ set -o pipefail
14
14
  # Get script directory
15
15
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
16
16
 
17
- # Load config from ralph.config.js if available
18
- if [ -f "$SCRIPT_DIR/../ralph.config.js" ]; then
19
- RALPH_ROOT=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').paths?.root || '.ralph')" 2>/dev/null || echo ".ralph")
20
- SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
21
- PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
22
- DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
23
- PLANNING_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').loop?.planningModel || 'opus')" 2>/dev/null || echo "opus")
24
- DEFAULT_MAX_ITERATIONS=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').loop?.maxIterations || 10)" 2>/dev/null || echo "10")
25
- DEFAULT_MAX_E2E=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').loop?.maxE2eAttempts || 5)" 2>/dev/null || echo "5")
26
- elif [ -f "$SCRIPT_DIR/../../ralph.config.js" ]; then
27
- RALPH_ROOT=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').paths?.root || '.ralph')" 2>/dev/null || echo ".ralph")
28
- SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
29
- PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
30
- DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
31
- PLANNING_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').loop?.planningModel || 'opus')" 2>/dev/null || echo "opus")
32
- DEFAULT_MAX_ITERATIONS=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').loop?.maxIterations || 10)" 2>/dev/null || echo "10")
33
- DEFAULT_MAX_E2E=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').loop?.maxE2eAttempts || 5)" 2>/dev/null || echo "5")
17
+ # Load config from ralph.config.cjs if available
18
+ if [ -f "$SCRIPT_DIR/../ralph.config.cjs" ]; then
19
+ RALPH_ROOT=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').paths?.root || '.ralph')" 2>/dev/null || echo ".ralph")
20
+ SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
21
+ PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
22
+ DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
23
+ PLANNING_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').loop?.planningModel || 'opus')" 2>/dev/null || echo "opus")
24
+ DEFAULT_MAX_ITERATIONS=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').loop?.maxIterations || 10)" 2>/dev/null || echo "10")
25
+ DEFAULT_MAX_E2E=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').loop?.maxE2eAttempts || 5)" 2>/dev/null || echo "5")
26
+ elif [ -f "$SCRIPT_DIR/../../ralph.config.cjs" ]; then
27
+ RALPH_ROOT=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').paths?.root || '.ralph')" 2>/dev/null || echo ".ralph")
28
+ SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
29
+ PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
30
+ DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
31
+ PLANNING_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').loop?.planningModel || 'opus')" 2>/dev/null || echo "opus")
32
+ DEFAULT_MAX_ITERATIONS=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').loop?.maxIterations || 10)" 2>/dev/null || echo "10")
33
+ DEFAULT_MAX_E2E=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').loop?.maxE2eAttempts || 5)" 2>/dev/null || echo "5")
34
34
  else
35
35
  # Default paths
36
36
  RALPH_ROOT=".ralph"
@@ -8,13 +8,13 @@ set -e
8
8
  # Get script directory
9
9
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
10
10
 
11
- # Load config from ralph.config.js if available
12
- if [ -f "$SCRIPT_DIR/../ralph.config.js" ]; then
13
- PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
14
- DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
15
- elif [ -f "$SCRIPT_DIR/../../ralph.config.js" ]; then
16
- PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
17
- DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
11
+ # Load config from ralph.config.cjs if available
12
+ if [ -f "$SCRIPT_DIR/../ralph.config.cjs" ]; then
13
+ PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
14
+ DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
15
+ elif [ -f "$SCRIPT_DIR/../../ralph.config.cjs" ]; then
16
+ PROMPTS_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').paths?.prompts || '.ralph/prompts')" 2>/dev/null || echo ".ralph/prompts")
17
+ DEFAULT_MODEL=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').loop?.defaultModel || 'sonnet')" 2>/dev/null || echo "sonnet")
18
18
  else
19
19
  PROMPTS_DIR=".ralph/prompts"
20
20
  DEFAULT_MODEL="sonnet"
@@ -6,11 +6,11 @@
6
6
  FEATURE="${1:?Usage: ./ralph-monitor.sh <feature-name>}"
7
7
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
8
 
9
- # Load config from ralph.config.js if available
10
- if [ -f "$SCRIPT_DIR/../ralph.config.js" ]; then
11
- SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.js').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
12
- elif [ -f "$SCRIPT_DIR/../../ralph.config.js" ]; then
13
- SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.js').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
9
+ # Load config from ralph.config.cjs if available
10
+ if [ -f "$SCRIPT_DIR/../ralph.config.cjs" ]; then
11
+ SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../ralph.config.cjs').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
12
+ elif [ -f "$SCRIPT_DIR/../../ralph.config.cjs" ]; then
13
+ SPEC_DIR=$(node -e "console.log(require('$SCRIPT_DIR/../../ralph.config.cjs').paths?.specs || '.ralph/specs')" 2>/dev/null || echo ".ralph/specs")
14
14
  else
15
15
  SPEC_DIR=".ralph/specs"
16
16
  fi
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * Configuration Utilities
3
- * Load and parse ralph.config.js files
3
+ * Load and parse ralph.config.cjs files
4
4
  */
5
5
  /**
6
- * Stack configuration in ralph.config.js
6
+ * Stack configuration in ralph.config.cjs
7
7
  */
8
8
  export interface StackConfig {
9
9
  framework: {
@@ -19,7 +19,7 @@ export interface StackConfig {
19
19
  styling: string;
20
20
  }
21
21
  /**
22
- * Commands configuration in ralph.config.js
22
+ * Commands configuration in ralph.config.cjs
23
23
  */
24
24
  export interface CommandsConfig {
25
25
  dev: string;
@@ -29,7 +29,7 @@ export interface CommandsConfig {
29
29
  typecheck: string;
30
30
  }
31
31
  /**
32
- * Paths configuration in ralph.config.js
32
+ * Paths configuration in ralph.config.cjs
33
33
  */
34
34
  export interface PathsConfig {
35
35
  root: string;
@@ -41,7 +41,7 @@ export interface PathsConfig {
41
41
  agents: string;
42
42
  }
43
43
  /**
44
- * Loop configuration in ralph.config.js
44
+ * Loop configuration in ralph.config.cjs
45
45
  */
46
46
  export interface LoopConfig {
47
47
  maxIterations: number;
@@ -50,7 +50,7 @@ export interface LoopConfig {
50
50
  planningModel: string;
51
51
  }
52
52
  /**
53
- * Full ralph.config.js structure
53
+ * Full ralph.config.cjs structure
54
54
  */
55
55
  export interface RalphConfig {
56
56
  name: string;
@@ -64,7 +64,7 @@ export interface RalphConfig {
64
64
  */
65
65
  export declare const DEFAULT_CONFIG: RalphConfig;
66
66
  /**
67
- * Load ralph.config.js from a project directory
67
+ * Load ralph.config.cjs from a project directory
68
68
  * Returns null if config file doesn't exist
69
69
  */
70
70
  export declare function loadConfig(projectRoot: string): Promise<RalphConfig | null>;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Configuration Utilities
3
- * Load and parse ralph.config.js files
3
+ * Load and parse ralph.config.cjs files
4
4
  */
5
5
  import { existsSync } from 'node:fs';
6
6
  import { join } from 'node:path';
@@ -48,11 +48,11 @@ export const DEFAULT_CONFIG = {
48
48
  },
49
49
  };
50
50
  /**
51
- * Load ralph.config.js from a project directory
51
+ * Load ralph.config.cjs from a project directory
52
52
  * Returns null if config file doesn't exist
53
53
  */
54
54
  export async function loadConfig(projectRoot) {
55
- const configPath = join(projectRoot, 'ralph.config.js');
55
+ const configPath = join(projectRoot, 'ralph.config.cjs');
56
56
  if (!existsSync(configPath)) {
57
57
  return null;
58
58
  }
@@ -109,7 +109,7 @@ export async function loadConfigWithDefaults(projectRoot) {
109
109
  * Check if a ralph config exists in the project
110
110
  */
111
111
  export function hasConfig(projectRoot) {
112
- const configPath = join(projectRoot, 'ralph.config.js');
112
+ const configPath = join(projectRoot, 'ralph.config.cjs');
113
113
  return existsSync(configPath);
114
114
  }
115
115
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Update Check Utility
3
+ * Checks npm registry for newer versions and notifies user
4
+ */
5
+ interface UpdateInfo {
6
+ currentVersion: string;
7
+ latestVersion: string;
8
+ updateAvailable: boolean;
9
+ }
10
+ /**
11
+ * Check for updates (with caching)
12
+ * Returns update info if check was performed, null if skipped/failed
13
+ */
14
+ export declare function checkForUpdates(): Promise<UpdateInfo | null>;
15
+ /**
16
+ * Display update notification if available
17
+ * Call this at startup - it's non-blocking and fails silently
18
+ */
19
+ export declare function notifyIfUpdateAvailable(): Promise<void>;
20
+ export {};
21
+ //# sourceMappingURL=update-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-check.d.ts","sourceRoot":"","sources":["../../src/utils/update-check.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAiBH,UAAU,UAAU;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAuFD;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA2BlE;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAiC7D"}