poe-code 3.0.68 → 3.0.70

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 (42) hide show
  1. package/README.md +31 -19
  2. package/dist/cli/bootstrap.js +2 -2
  3. package/dist/cli/bootstrap.js.map +1 -1
  4. package/dist/cli/commands/configure-payload.js +3 -1
  5. package/dist/cli/commands/configure-payload.js.map +1 -1
  6. package/dist/cli/commands/login.js +8 -28
  7. package/dist/cli/commands/login.js.map +1 -1
  8. package/dist/cli/commands/spawn.js +86 -3
  9. package/dist/cli/commands/spawn.js.map +1 -1
  10. package/dist/cli/commands/usage.js +5 -2
  11. package/dist/cli/commands/usage.js.map +1 -1
  12. package/dist/cli/container.js +10 -1
  13. package/dist/cli/container.js.map +1 -1
  14. package/dist/cli/errors.d.ts +5 -0
  15. package/dist/cli/errors.js +14 -0
  16. package/dist/cli/errors.js.map +1 -1
  17. package/dist/cli/logger.js +7 -0
  18. package/dist/cli/logger.js.map +1 -1
  19. package/dist/cli/options.d.ts +5 -0
  20. package/dist/cli/options.js +102 -12
  21. package/dist/cli/options.js.map +1 -1
  22. package/dist/index.js +446 -129
  23. package/dist/index.js.map +4 -4
  24. package/dist/providers/claude-code.js +85 -1
  25. package/dist/providers/claude-code.js.map +4 -4
  26. package/dist/providers/codex.js +85 -1
  27. package/dist/providers/codex.js.map +4 -4
  28. package/dist/providers/kimi.js +85 -1
  29. package/dist/providers/kimi.js.map +4 -4
  30. package/dist/providers/opencode.js +85 -1
  31. package/dist/providers/opencode.js.map +4 -4
  32. package/dist/providers/spawn-options.d.ts +2 -1
  33. package/dist/sdk/container.js +2 -1
  34. package/dist/sdk/container.js.map +1 -1
  35. package/dist/sdk/spawn-core.d.ts +3 -1
  36. package/dist/sdk/spawn-core.js +1 -0
  37. package/dist/sdk/spawn-core.js.map +1 -1
  38. package/dist/sdk/spawn.d.ts +3 -0
  39. package/dist/sdk/spawn.js +22 -2
  40. package/dist/sdk/spawn.js.map +1 -1
  41. package/dist/sdk/types.d.ts +3 -1
  42. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/cli/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,WAAW,EACpB,UAAU,EACV,GAAG,EACH,IAAI,EACJ,KAAK,EACL,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AA0C1B,SAAS,QAAQ,CAAC,IAAY,EAAE,QAAgB;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,WAAW,GAAG,EAAE,CAAC;IAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;aAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC5D,WAAW,IAAI,GAAG,GAAG,IAAI,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,OAAkB,EAClB,KAAmB;IAEnB,IAAI,WAAoC,CAAC;IAEzC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEzC,MAAM,IAAI,GAAG,CACX,KAA4C,EAC5C,OAAe,EACT,EAAE;QACR,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,CAAC,CAAC;YACjB,OAAO;QACT,CAAC;QACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO;QACT,CAAC;QACD,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,UAAyB,EAAE,EAAgB,EAAE;QAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;QACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,MAAM,aAAa,GAAG,CAAC,OAAe,EAAU,EAAE,CAChD,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QAEvD,MAAM,MAAM,GAAiB;YAC3B,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE;YAClD,IAAI,CAAC,OAAO;gBACV,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,CAAC,OAAO;gBACb,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,OAAO;gBACV,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACvC,CAAC;YACD,KAAK,CAAC,OAAO;gBACX,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,CAAC;YACD,aAAa,CAAC,KAAK,EAAE,KAAK;gBACxB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;oBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBACD,MAAM,MAAM,GAAG,KAAK,EAAE,WAAW,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,QAAQ,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,cAAc,CAAC,KAAK,EAAE,YAAY;gBAChC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBAE5C,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,WAAW,GAAiB;wBAChC,GAAG,YAAY;wBACf,KAAK;wBACL,SAAS,EAAE,KAAK;qBACjB,CAAC;oBACF,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBAC3C,CAAC;qBAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YACD,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY;gBACzC,IAAI,CACF,OAAO,EACP,aAAa,CAAC,gBAAgB,SAAS,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAC7D,CAAC;gBAEF,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,WAAW,GAAiB;wBAChC,GAAG,YAAY;wBACf,SAAS;wBACT,KAAK;wBACL,SAAS,EAAE,KAAK;qBACjB,CAAC;oBACF,WAAW,CAAC,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;gBACpE,CAAC;qBAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YACD,MAAM,CAAC,OAAO;gBACZ,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,CAAC,OAAO;gBACb,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO;gBACT,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;gBACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;oBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;oBACpD,OAAO;gBACT,CAAC;gBACD,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,KAAK,CAAC,KAAK;gBACT,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,KAAK,CAAC,CAAC;oBACf,OAAO;gBACT,CAAC;gBACD,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;oBACjB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC/B,OAAO;gBACT,CAAC;gBACD,WAAW,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,QAAQ,CAAC,KAAK,EAAE,KAAK;gBACnB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;oBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBACD,MAAM,MAAM,GAAG,KAAK,EAAE,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC3D,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,QAAQ,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,SAAS,CAAC,KAAK;gBACb,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,OAAO;gBACT,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1B,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC/B,CAAC;YACD,QAAQ,CAAC,KAAK,EAAE,GAAG;gBACjB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,KAAK,IAAI,GAAG,EAAE,CAAC,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBACD,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;YACtC,CAAC;YACD,KAAK,CAAC,IAAI;gBACR,OAAO,MAAM,CAAC;oBACZ,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,MAAM;oBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,OAAO;oBAChC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK;iBAC3B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAC5E,WAAW;QACX,MAAM;QACN,cAAc,CAAC,MAAmB;YAChC,WAAW,GAAG,MAAM,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/cli/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,WAAW,EACpB,UAAU,EACV,GAAG,EACH,IAAI,EACJ,KAAK,EACL,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAwC5C,SAAS,QAAQ,CAAC,IAAY,EAAE,QAAgB;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,WAAW,GAAG,EAAE,CAAC;IAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;aAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC5D,WAAW,IAAI,GAAG,GAAG,IAAI,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,OAAkB,EAClB,KAAmB;IAEnB,IAAI,WAAoC,CAAC;IAEzC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEzC,MAAM,IAAI,GAAG,CACX,KAA4C,EAC5C,OAAe,EACT,EAAE;QACR,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,CAAC,CAAC;YACjB,OAAO;QACT,CAAC;QACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO;QACT,CAAC;QACD,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,UAAyB,EAAE,EAAgB,EAAE;QAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;QACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,MAAM,aAAa,GAAG,CAAC,OAAe,EAAU,EAAE,CAChD,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QAEvD,MAAM,MAAM,GAAiB;YAC3B,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE;YAClD,IAAI,CAAC,OAAO;gBACV,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,CAAC,OAAO;gBACb,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,OAAO;gBACV,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACvC,CAAC;YACD,KAAK,CAAC,OAAO;gBACX,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,CAAC;YACD,aAAa,CAAC,KAAK,EAAE,KAAK;gBACxB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;oBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBACD,MAAM,MAAM,GAAG,KAAK,EAAE,WAAW,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,QAAQ,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,cAAc,CAAC,KAAK,EAAE,YAAY;gBAChC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBAE5C,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,WAAW,GAAiB;wBAChC,GAAG,YAAY;wBACf,KAAK;wBACL,SAAS,EAAE,KAAK;qBACjB,CAAC;oBACF,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBAC3C,CAAC;qBAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YACD,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY;gBACzC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,OAAO;gBACT,CAAC;gBACD,IAAI,CACF,OAAO,EACP,aAAa,CAAC,gBAAgB,SAAS,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAC7D,CAAC;gBAEF,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,WAAW,GAAiB;wBAChC,GAAG,YAAY;wBACf,SAAS;wBACT,KAAK;wBACL,SAAS,EAAE,KAAK;qBACjB,CAAC;oBACF,WAAW,CAAC,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;gBACpE,CAAC;qBAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YACD,MAAM,CAAC,OAAO;gBACZ,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,CAAC,OAAO;gBACb,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO;gBACT,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;gBACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;oBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;oBACpD,OAAO;gBACT,CAAC;gBACD,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,KAAK,CAAC,KAAK;gBACT,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,KAAK,CAAC,CAAC;oBACf,OAAO;gBACT,CAAC;gBACD,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;oBACjB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC/B,OAAO;gBACT,CAAC;gBACD,WAAW,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,QAAQ,CAAC,KAAK,EAAE,KAAK;gBACnB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBACD,IAAI,mBAAmB,EAAE,KAAK,UAAU,EAAE,CAAC;oBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBACD,MAAM,MAAM,GAAG,KAAK,EAAE,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC3D,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,QAAQ,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,SAAS,CAAC,KAAK;gBACb,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,OAAO;gBACT,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1B,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC/B,CAAC;YACD,QAAQ,CAAC,KAAK,EAAE,GAAG;gBACjB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,KAAK,IAAI,GAAG,EAAE,CAAC,CAAC;oBAC3B,OAAO;gBACT,CAAC;gBACD,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;YACtC,CAAC;YACD,KAAK,CAAC,IAAI;gBACR,OAAO,MAAM,CAAC;oBACZ,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,MAAM;oBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,OAAO;oBAChC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK;iBAC3B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAC5E,WAAW;QACX,MAAM;QACN,cAAc,CAAC,MAAmB;YAChC,WAAW,GAAG,MAAM,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -11,7 +11,10 @@ export interface EnsureOptionInput<TName extends string = string> {
11
11
  }
12
12
  export interface ResolveApiKeyInput {
13
13
  value?: string;
14
+ envValue?: string;
14
15
  dryRun: boolean;
16
+ assumeYes?: boolean;
17
+ allowStored?: boolean;
15
18
  }
16
19
  export interface ResolveModelInput {
17
20
  value?: string;
@@ -41,5 +44,7 @@ export interface OptionResolverInit {
41
44
  prompts: PromptFn;
42
45
  promptLibrary: PromptLibrary;
43
46
  apiKeyStore: ApiKeyStore;
47
+ confirm: (message: string) => Promise<boolean>;
44
48
  }
49
+ export declare function isValidApiKeyFormat(key: string): boolean;
45
50
  export declare function createOptionResolvers(init: OptionResolverInit): OptionResolvers;
@@ -14,6 +14,45 @@ function stripBracketedPaste(value) {
14
14
  .replace(/undefined$/, "")
15
15
  .replace(/ndefined$/, "");
16
16
  }
17
+ function isAlphanumeric(value) {
18
+ for (let i = 0; i < value.length; i++) {
19
+ const code = value.charCodeAt(i);
20
+ const isDigit = code >= 48 && code <= 57;
21
+ const isUpper = code >= 65 && code <= 90;
22
+ const isLower = code >= 97 && code <= 122;
23
+ if (!isDigit && !isUpper && !isLower)
24
+ return false;
25
+ }
26
+ return value.length > 0;
27
+ }
28
+ function isAlphanumericWithSeparators(value) {
29
+ for (let i = 0; i < value.length; i++) {
30
+ const code = value.charCodeAt(i);
31
+ const isDigit = code >= 48 && code <= 57;
32
+ const isUpper = code >= 65 && code <= 90;
33
+ const isLower = code >= 97 && code <= 122;
34
+ const isHyphen = code === 45;
35
+ const isUnderscore = code === 95;
36
+ if (!isDigit && !isUpper && !isLower && !isHyphen && !isUnderscore)
37
+ return false;
38
+ }
39
+ return value.length > 0;
40
+ }
41
+ const API_KEY_REFERENCE_LENGTH = 43;
42
+ const API_KEY_MIN_LENGTH_RATIO = 0.8;
43
+ const MIN_API_KEY_LENGTH = Math.ceil(API_KEY_REFERENCE_LENGTH * API_KEY_MIN_LENGTH_RATIO);
44
+ function hasMinimumApiKeyLength(value) {
45
+ return value.length >= MIN_API_KEY_LENGTH;
46
+ }
47
+ export function isValidApiKeyFormat(key) {
48
+ if (key.length === 0)
49
+ return false;
50
+ if (key.startsWith("sk-poe-")) {
51
+ const hash = key.slice(7);
52
+ return hasMinimumApiKeyLength(hash) && isAlphanumeric(hash);
53
+ }
54
+ return hasMinimumApiKeyLength(key) && isAlphanumericWithSeparators(key);
55
+ }
17
56
  export function createOptionResolvers(init) {
18
57
  const ensure = async (input) => {
19
58
  if (input.value != null) {
@@ -37,29 +76,80 @@ export function createOptionResolvers(init) {
37
76
  }
38
77
  return trimmed;
39
78
  };
79
+ const confirmKeyFormat = async (apiKey, assumeYes) => {
80
+ if (isValidApiKeyFormat(apiKey))
81
+ return true;
82
+ if (assumeYes)
83
+ return false;
84
+ return await init.confirm("Key doesn't match expected API key format. Use it anyway?");
85
+ };
40
86
  const resolveApiKey = async (input) => {
87
+ const assumeYes = input.assumeYes ?? false;
88
+ const allowStored = input.allowStored ?? true;
41
89
  if (input.value != null) {
42
90
  const apiKey = normalizeApiKey(input.value);
91
+ const accepted = await confirmKeyFormat(apiKey, assumeYes);
92
+ if (!accepted) {
93
+ throw new Error("API key rejected.");
94
+ }
43
95
  if (!input.dryRun) {
44
96
  await init.apiKeyStore.write(apiKey);
45
97
  }
46
98
  return apiKey;
47
99
  }
48
- const stored = await init.apiKeyStore.read();
49
- if (stored) {
50
- return normalizeApiKey(stored);
100
+ const envValue = input.envValue;
101
+ if (typeof envValue === "string" && envValue.trim().length > 0) {
102
+ const useEnv = assumeYes ||
103
+ await init.confirm("Use API key from POE_API_KEY environment variable?");
104
+ if (useEnv) {
105
+ const apiKey = normalizeApiKey(envValue);
106
+ const accepted = await confirmKeyFormat(apiKey, assumeYes);
107
+ if (accepted) {
108
+ if (!input.dryRun) {
109
+ await init.apiKeyStore.write(apiKey);
110
+ }
111
+ return apiKey;
112
+ }
113
+ if (assumeYes) {
114
+ throw new Error("API key rejected.");
115
+ }
116
+ // Fall back to stored credentials or prompt for a key when user
117
+ // explicitly declined using the environment value.
118
+ }
51
119
  }
52
- const descriptor = init.promptLibrary.loginApiKey();
53
- const response = await init.prompts(descriptor);
54
- const result = response[descriptor.name];
55
- if (typeof result !== "string") {
56
- throw new Error("POE API key is required.");
120
+ if (allowStored) {
121
+ const stored = await init.apiKeyStore.read();
122
+ if (stored) {
123
+ return normalizeApiKey(stored);
124
+ }
57
125
  }
58
- const apiKey = normalizeApiKey(result);
59
- if (!input.dryRun) {
60
- await init.apiKeyStore.write(apiKey);
126
+ while (true) {
127
+ const descriptor = init.promptLibrary.loginApiKey();
128
+ const response = await init.prompts(descriptor);
129
+ const result = response[descriptor.name];
130
+ if (typeof result !== "string") {
131
+ continue;
132
+ }
133
+ let apiKey;
134
+ try {
135
+ apiKey = normalizeApiKey(result);
136
+ }
137
+ catch (error) {
138
+ if (error instanceof Error &&
139
+ error.message === "POE API key cannot be empty.") {
140
+ continue;
141
+ }
142
+ throw error;
143
+ }
144
+ const accepted = await confirmKeyFormat(apiKey, assumeYes);
145
+ if (!accepted) {
146
+ continue;
147
+ }
148
+ if (!input.dryRun) {
149
+ await init.apiKeyStore.write(apiKey);
150
+ }
151
+ return apiKey;
61
152
  }
62
- return apiKey;
63
153
  };
64
154
  const resolveModel = async ({ value, assumeDefault, defaultValue, choices, label, onResolve }) => {
65
155
  if (value != null) {
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK;SACT,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;SAC1B,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;SAC1B,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACjC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;SACzB,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAC9B,CAAC;AAuDD,MAAM,UAAU,qBAAqB,CACnC,IAAwB;IAExB,MAAM,MAAM,GAAG,KAAK,EAClB,KAA+B,EACd,EAAE;QACnB,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC,KAAK,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,QAAQ,CAAC;QACxB,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAU,EAAE;QAChD,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,EACzB,KAAyB,EACR,EAAE;QACnB,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,EAAE,EAC1B,KAAK,EACL,aAAa,EACb,YAAY,EACZ,OAAO,EACP,KAAK,EACL,SAAS,EACS,EAAmB,EAAE;QACvC,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC1B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC;QAC3B,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACjC,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YAC1C,KAAK;YACL,YAAY;YACZ,OAAO;SACR,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,sBAAsB,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAC9B,KAAK,EACL,YAAY,EACZ,KAAK,EACiB,EAAmB,EAAE,CAC3C,MAAM,MAAM,CAAC;QACX,KAAK;QACL,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;YAC7C,KAAK;YACL,YAAY;SACb,CAAC;QACF,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IAEL,MAAM,iBAAiB,GAAG,KAAK,EAC7B,KAAyB,EACzB,YAAoB,EACH,EAAE,CACnB,MAAM,MAAM,CAAC;QACX,KAAK;QACL,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,YAAY,CAAC;QACvD,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IAEL,OAAO;QACL,MAAM;QACN,YAAY;QACZ,gBAAgB;QAChB,iBAAiB;QACjB,aAAa;QACb,eAAe;KAChB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"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"}