@brutalist/mcp 1.8.0 → 1.9.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 (118) hide show
  1. package/README.md +26 -0
  2. package/dist/brutalist-server.d.ts +31 -9
  3. package/dist/brutalist-server.d.ts.map +1 -1
  4. package/dist/brutalist-server.js +107 -673
  5. package/dist/brutalist-server.js.map +1 -1
  6. package/dist/cli-adapters/claude-adapter.d.ts +25 -0
  7. package/dist/cli-adapters/claude-adapter.d.ts.map +1 -0
  8. package/dist/cli-adapters/claude-adapter.js +245 -0
  9. package/dist/cli-adapters/claude-adapter.js.map +1 -0
  10. package/dist/cli-adapters/codex-adapter.d.ts +23 -0
  11. package/dist/cli-adapters/codex-adapter.d.ts.map +1 -0
  12. package/dist/cli-adapters/codex-adapter.js +173 -0
  13. package/dist/cli-adapters/codex-adapter.js.map +1 -0
  14. package/dist/cli-adapters/gemini-adapter.d.ts +50 -0
  15. package/dist/cli-adapters/gemini-adapter.d.ts.map +1 -0
  16. package/dist/cli-adapters/gemini-adapter.js +196 -0
  17. package/dist/cli-adapters/gemini-adapter.js.map +1 -0
  18. package/dist/cli-adapters/index.d.ts +75 -0
  19. package/dist/cli-adapters/index.d.ts.map +1 -0
  20. package/dist/cli-adapters/index.js +29 -0
  21. package/dist/cli-adapters/index.js.map +1 -0
  22. package/dist/cli-adapters/shared.d.ts +12 -0
  23. package/dist/cli-adapters/shared.d.ts.map +1 -0
  24. package/dist/cli-adapters/shared.js +99 -0
  25. package/dist/cli-adapters/shared.js.map +1 -0
  26. package/dist/cli-agents.d.ts +64 -2
  27. package/dist/cli-agents.d.ts.map +1 -1
  28. package/dist/cli-agents.js +417 -401
  29. package/dist/cli-agents.js.map +1 -1
  30. package/dist/debate/constitutional.d.ts +27 -0
  31. package/dist/debate/constitutional.d.ts.map +1 -0
  32. package/dist/debate/constitutional.js +74 -0
  33. package/dist/debate/constitutional.js.map +1 -0
  34. package/dist/debate/debate-orchestrator.d.ts +154 -0
  35. package/dist/debate/debate-orchestrator.d.ts.map +1 -0
  36. package/dist/debate/debate-orchestrator.js +699 -0
  37. package/dist/debate/debate-orchestrator.js.map +1 -0
  38. package/dist/debate/index.d.ts +18 -0
  39. package/dist/debate/index.d.ts.map +1 -0
  40. package/dist/debate/index.js +18 -0
  41. package/dist/debate/index.js.map +1 -0
  42. package/dist/debate/refusal-detection.d.ts +27 -0
  43. package/dist/debate/refusal-detection.d.ts.map +1 -0
  44. package/dist/debate/refusal-detection.js +62 -0
  45. package/dist/debate/refusal-detection.js.map +1 -0
  46. package/dist/debate/synthesis.d.ts +22 -0
  47. package/dist/debate/synthesis.d.ts.map +1 -0
  48. package/dist/debate/synthesis.js +117 -0
  49. package/dist/debate/synthesis.js.map +1 -0
  50. package/dist/logger.d.ts +204 -1
  51. package/dist/logger.d.ts.map +1 -1
  52. package/dist/logger.js +398 -18
  53. package/dist/logger.js.map +1 -1
  54. package/dist/metrics/counter.d.ts +24 -0
  55. package/dist/metrics/counter.d.ts.map +1 -0
  56. package/dist/metrics/counter.js +60 -0
  57. package/dist/metrics/counter.js.map +1 -0
  58. package/dist/metrics/histogram.d.ts +42 -0
  59. package/dist/metrics/histogram.d.ts.map +1 -0
  60. package/dist/metrics/histogram.js +114 -0
  61. package/dist/metrics/histogram.js.map +1 -0
  62. package/dist/metrics/index.d.ts +26 -0
  63. package/dist/metrics/index.d.ts.map +1 -0
  64. package/dist/metrics/index.js +22 -0
  65. package/dist/metrics/index.js.map +1 -0
  66. package/dist/metrics/registry.d.ts +96 -0
  67. package/dist/metrics/registry.d.ts.map +1 -0
  68. package/dist/metrics/registry.js +113 -0
  69. package/dist/metrics/registry.js.map +1 -0
  70. package/dist/metrics/safe-metric.d.ts +25 -0
  71. package/dist/metrics/safe-metric.d.ts.map +1 -0
  72. package/dist/metrics/safe-metric.js +41 -0
  73. package/dist/metrics/safe-metric.js.map +1 -0
  74. package/dist/metrics/types.d.ts +82 -0
  75. package/dist/metrics/types.d.ts.map +1 -0
  76. package/dist/metrics/types.js +121 -0
  77. package/dist/metrics/types.js.map +1 -0
  78. package/dist/registry/argument-spaces.d.ts.map +1 -1
  79. package/dist/registry/argument-spaces.js +20 -0
  80. package/dist/registry/argument-spaces.js.map +1 -1
  81. package/dist/registry/domains.d.ts.map +1 -1
  82. package/dist/registry/domains.js +17 -1
  83. package/dist/registry/domains.js.map +1 -1
  84. package/dist/streaming/circuit-breaker.d.ts +13 -1
  85. package/dist/streaming/circuit-breaker.d.ts.map +1 -1
  86. package/dist/streaming/circuit-breaker.js +13 -1
  87. package/dist/streaming/circuit-breaker.js.map +1 -1
  88. package/dist/streaming/intelligent-buffer.d.ts +13 -1
  89. package/dist/streaming/intelligent-buffer.d.ts.map +1 -1
  90. package/dist/streaming/intelligent-buffer.js +13 -1
  91. package/dist/streaming/intelligent-buffer.js.map +1 -1
  92. package/dist/streaming/output-parser.d.ts +16 -2
  93. package/dist/streaming/output-parser.d.ts.map +1 -1
  94. package/dist/streaming/output-parser.js +16 -2
  95. package/dist/streaming/output-parser.js.map +1 -1
  96. package/dist/streaming/progress-tracker.d.ts +14 -1
  97. package/dist/streaming/progress-tracker.d.ts.map +1 -1
  98. package/dist/streaming/progress-tracker.js +14 -1
  99. package/dist/streaming/progress-tracker.js.map +1 -1
  100. package/dist/streaming/session-manager.d.ts +14 -1
  101. package/dist/streaming/session-manager.d.ts.map +1 -1
  102. package/dist/streaming/session-manager.js +14 -1
  103. package/dist/streaming/session-manager.js.map +1 -1
  104. package/dist/streaming/sse-transport.d.ts +12 -1
  105. package/dist/streaming/sse-transport.d.ts.map +1 -1
  106. package/dist/streaming/sse-transport.js +12 -1
  107. package/dist/streaming/sse-transport.js.map +1 -1
  108. package/dist/streaming/streaming-orchestrator.d.ts +15 -1
  109. package/dist/streaming/streaming-orchestrator.d.ts.map +1 -1
  110. package/dist/streaming/streaming-orchestrator.js +15 -1
  111. package/dist/streaming/streaming-orchestrator.js.map +1 -1
  112. package/dist/system-prompts.d.ts.map +1 -1
  113. package/dist/system-prompts.js +490 -4
  114. package/dist/system-prompts.js.map +1 -1
  115. package/dist/tool-definitions-generated.d.ts.map +1 -1
  116. package/dist/tool-definitions-generated.js +3 -1
  117. package/dist/tool-definitions-generated.js.map +1 -1
  118. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"brutalist-server.js","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brutalist-server.js","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAkB,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EACL,qBAAqB,EACrB,UAAU,GAEX,MAAM,oBAAoB,CAAC;AAc5B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,yDAAyD;AACzD,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,OAAO,CAAC;AAEnE;;;;;;;;;GASG;AACH,MAAM,OAAO,eAAe;IACnB,MAAM,CAAY;IAClB,MAAM,CAAwB;IAErC,yEAAyE;IACzE,4DAA4D;IAC5D,wDAAwD;IAChD,gBAAgB,CAAwB;IACxC,aAAa,CAAgB;IAErC,oBAAoB;IACZ,SAAS,CAAoB;IAC7B,WAAW,CAAc;IACzB,kBAAkB,CAAsB;IACxC,aAAa,CAAiB;IAEtC;;;;;;OAMG;IACgB,OAAO,GAAoB,qBAAqB,EAAE,CAAC;IAEtE;;;;;;;;OAQG;IACc,MAAM,CAAe;IACrB,YAAY,CAAe;IAE5C,IAAY,eAAe;QACzB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IACD,IAAY,eAAe,CAAC,KAA2B;QACrD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,IAAI,CAAC,kBAAkB,CAAC,eAAe,GAAG,KAAK,CAAC;QAClD,CAAC;IACH,CAAC;IAED,gCAAgC;IACxB,cAAc,GAAG,IAAI,GAAG,EAI5B,CAAC;IAEL,gCAAgC;IACf,YAAY,GAAG,KAAK,CAAC;IACrB,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;IAC1D,mBAAmB,CAAkB;IAE7C,YAAY,SAAgC,EAAE;QAC5C,IAAI,CAAC,MAAM,GAAG;YACZ,gBAAgB,EAAE,OAAO,CAAC,GAAG,EAAE;YAC/B,cAAc,EAAE,OAAO,EAAE,2CAA2C;YACpE,SAAS,EAAE,OAAO,EAAE,8CAA8C;YAClE,QAAQ,EAAE,IAAI;YACd,GAAG,MAAM;SACV,CAAC;QAEF,kEAAkE;QAClE,qEAAqE;QACrE,wDAAwD;QACxD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/E,oEAAoE;QACpE,wCAAwC;QACxC,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,GAAG,IAAI,oBAAoB,CAAC;YAC9C,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,EAAE,IAAI,CAAC,MAAM;SACjB,CAAC,CAAC;QAEH,kDAAkD;QAClD,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QACjF,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACrC,QAAQ,EAAE,aAAa;YACvB,UAAU,EAAE,EAAE;YACd,cAAc,EAAE,GAAG;YACnB,cAAc,EAAE,EAAE;YAClB,sBAAsB,EAAE,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,sCAAsC,aAAa,WAAW,CAAC,CAAC;QAE5E,sCAAsC;QACtC,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1F,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,2BAA2B;QAC7D,MAAM,CAAC,IAAI,CAAC,kDAAkD,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QAEpF,+BAA+B;QAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAChC,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,oBAAoB,EACzB,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,8BAA8B;SAClE,CAAC;QAEF,qEAAqE;QACrE,iEAAiE;QACjE,sEAAsE;QACtE,uEAAuE;QACvE,oEAAoE;QACpE,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC;YAC/C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,gBAAgB,EAAE,IAAI,CAAC,oBAAoB;YAC3C,gBAAgB,EAAE,IAAI,CAAC,oBAAoB;YAC3C,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;SAChE,CAAC,CAAC;QAEH,wBAAwB;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CACzB;YACE,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,eAAe;SACzB,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,EAAE;gBACX,sFAAsF;aACvF;SACF,CACF,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAE7D,uEAAuE;QACvE,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAE7D,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChC,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAC3D,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,kCAAkC;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CACpC,IAAI,CAAC,MAAM,EACX,CAAC,SAAS,EAAE,EAAE;YACZ,uCAAuC;YACvC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC,CACF,CAAC;QAEF,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAClD,CAAC;IAED,sDAAsD;IAC/C,aAAa;QAClB,OAAO,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC;IAC7C,CAAC;IAED,kCAAkC;IAC3B,KAAK,CAAC,IAAI;QACf,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAChD,IAAI,GAAG,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBACrD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC/B,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,cAAc,OAAO,qBAAqB,IAAI,CAAC,cAAc,GAAG,OAAO,SAAS,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,qBAAqB;QAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACrD,6CAA6C;YAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC1D,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACtC,MAAM,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,yEAAyE;IAClE,KAAK,CAAC,OAAO;QAClB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC/B,CAAC;QACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACxC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;gBACP,qCAAqC;YACvC,CAAC;QACH,CAAC;QACD,MAAM,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACK,oBAAoB,GAAG,CAAC,KAAqB,EAAE,EAAE;QACvD,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBACxF,OAAO;YACT,CAAC;YAED,gEAAgE;YAChE,iEAAiE;YACjE,gEAAgE;YAChE,0DAA0D;YAC1D,+DAA+D;YAC/D,8DAA8D;YAC9D,2DAA2D;YAC3D,MAAM,SAAS,GAAqB,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YACxF,MAAM,eAAe,GAA4D;gBAC/E,SAAS;gBACT,UAAU,EAAE,KAAK,CAAC,IAAI;aACvB,CAAC;YACF,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,0BAA0B,EAAE,GAAG,EAAE;gBAC7D,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,gCAAgC,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,KAAK,eAAe,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAE3I,+EAA+E;YAC/E,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC;YACjE,IAAI,qBAAqB,EAAE,CAAC;gBAC1B,IAAI,CAAC;oBACH,4DAA4D;oBAC5D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;wBAC9B,MAAM,EAAE,uBAAuB;wBAC/B,MAAM,EAAE;4BACN,KAAK,EAAE,MAAM;4BACb,IAAI,EAAE;gCACJ,IAAI,EAAE,iBAAiB;gCACvB,SAAS,EAAE,KAAK,CAAC,SAAS;gCAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;gCAClB,SAAS,EAAE,KAAK,CAAC,IAAI;gCACrB,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,sBAAsB;gCAClE,SAAS,EAAE,KAAK,CAAC,SAAS;6BAC3B;4BACD,MAAM,EAAE,yBAAyB;yBAClC;qBACF,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,iBAAiB,EAAE,CAAC;oBAC3B,+DAA+D;oBAC/D,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;gBACpG,CAAC;YACH,CAAC;YACD,wDAAwD;iBACnD,CAAC;gBACJ,IAAI,CAAC;oBACH,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;wBAC7B,KAAK,EAAE,MAAM;wBACb,IAAI,EAAE;4BACJ,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;4BAClB,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,6BAA6B;yBACxE;wBACD,MAAM,EAAE,yBAAyB;qBAClC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,YAAY,EAAE,CAAC;oBACtB,iDAAiD;oBACjD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;gBACtF,CAAC;YACH,CAAC;YAED,0BAA0B;YAC1B,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAE,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtE,CAAC;QAEH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,kDAAkD,EAAE;gBAC1E,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;aAC5C,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF;;OAEG;IACK,oBAAoB,GAAG,CAC7B,aAA8B,EAC9B,QAAgB,EAChB,KAAyB,EACzB,OAAe,EACf,SAAkB,EAClB,EAAE;QACF,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,WAAW,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBAClF,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,cAAc,QAAQ,EAAE,CAAC;YAC9F,WAAW,CAAC,KAAK,CAAC,wBAAwB,aAAa,gBAAgB,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAEvG,wEAAwE;YACxE,kFAAkF;YAClF,IAAI,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;oBAC9B,MAAM,EAAE,wBAAwB;oBAChC,MAAM,EAAE;wBACN,aAAa;wBACb,QAAQ;wBACR,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzC,OAAO,EAAE,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,EAAE;wBACpD,SAAS;qBACV;iBACF,CAAC,CAAC;gBACH,WAAW,CAAC,KAAK,CAAC,gDAAgD,aAAa,EAAE,CAAC,CAAC;YACrF,CAAC;YAAC,OAAO,iBAAiB,EAAE,CAAC;gBAC3B,gEAAgE;gBAChE,WAAW,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,KAAK,CAAC,yCAAyC,EAAE;gBAC3D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;aACtC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF;;;;;;OAMG;IACK,aAAa;QACnB,2FAA2F;QAC3F,8DAA8D;QAC9D,4FAA4F;QAE5F,kCAAkC;QAClC,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACK,oBAAoB;QAC1B,iEAAiE;QACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,OAAO,EACP,wcAAwc,EACxc;YACE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC;gBACb,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe;gBAC5E,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO;aAC/F,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oHAAoH,CAAC;YACjJ,yBAAyB;YACzB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2PAA2P,CAAC;YACpS,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACnH,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;gBACf,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aAC9B,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0IAA0I,CAAC;YAClK,aAAa;YACb,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAClE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC9E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC3D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YACpF,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAChE,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC9D,8DAA8D;YAC9D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YACrE,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACpF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YAC3E,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YAC9E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YAC/D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC7D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAC9E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YAC3E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;YACzE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC7D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACzD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC7D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACxE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YACrE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC1D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YACtE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC9D,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YAC7D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACnE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;YACvG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YAC7E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;YACtG,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8NAA8N,CAAC;YACnQ,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qLAAqL,CAAC;YAC/N,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2HAA2H,CAAC;YACzK,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2JAA2J,CAAC;YACpM,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gIAAgI,qBAAqB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC;SAC5P,EACD,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAC5D,CAAC;QAEF,sEAAsE;QACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kBAAkB,EAClB,sVAAsV,EACtV;YACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;YACzF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;YACzF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oHAAoH,CAAC;YAC5J,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;iBACxE,QAAQ,CAAC,+BAA+B,CAAC;YAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;iBACnD,QAAQ,CAAC,sCAAsC,CAAC;YACnD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kHAAkH,CAAC;YAC3J,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;gBACf,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aAC9B,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YAC7D,2CAA2C;YAC3C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YACpF,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAChF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;YACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE;YAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC7B,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAC/B,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8EAA8E,qBAAqB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;SACzK,EACD,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;YACpB,8BAA8B;YAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,GAAG,EAAE,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;gBACvE,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,gHAAgH;yBACvH,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC,CACF,CAAC;QAEF,kDAAkD;QAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,oBAAoB,EACpB,yGAAyG,EACzG;YACE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4FAA4F,CAAC;SAC1H,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAEjD,IAAI,QAAQ,GAAG,qCAAqC,CAAC;YACrD,QAAQ,IAAI,0BAA0B,IAAI,CAAC,MAAM,OAAO,CAAC;YAEzD,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,QAAQ,IAAI,4EAA4E,CAAC;gBACzF,QAAQ,IAAI,0EAA0E,CAAC;gBACvF,QAAQ,IAAI,wFAAwF,CAAC;YACvG,CAAC;iBAAM,CAAC;gBACN,QAAQ,IAAI,SAAS,eAAe,CAAC,MAAM,0BAA0B,CAAC;gBACtE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,6DAA6D;oBAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACjD,QAAQ,IAAI,OAAO,MAAM,IAAI,CAAC;oBAC9B,QAAQ,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC;oBACtC,QAAQ,IAAI,oBAAoB,MAAM,yBAAyB,CAAC;gBAClE,CAAC;YACH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;aACrD,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,qDAAqD;QACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kBAAkB,EAClB,iMAAiM,EACjM,EAAE,EACF,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,IAAI,CAAC;gBACH,IAAI,MAAM,GAAG,mCAAmC,CAAC;gBAEjD,MAAM,IAAI,0CAA0C,CAAC;gBAErD,MAAM,IAAI,uCAAuC,CAAC;gBAClD,MAAM,IAAI,4FAA4F,CAAC;gBACvG,MAAM,IAAI,2BAA2B,CAAC;gBACtC,MAAM,IAAI,iFAAiF,CAAC;gBAC5F,MAAM,IAAI,uDAAuD,CAAC;gBAClE,MAAM,IAAI,oEAAoE,CAAC;gBAC/E,MAAM,IAAI,sDAAsD,CAAC;gBACjE,MAAM,IAAI,mDAAmD,CAAC;gBAC9D,MAAM,IAAI,yBAAyB,CAAC;gBACpC,MAAM,IAAI,kDAAkD,CAAC;gBAC7D,MAAM,IAAI,8CAA8C,CAAC;gBACzD,MAAM,IAAI,2CAA2C,CAAC;gBACtD,MAAM,IAAI,8CAA8C,CAAC;gBACzD,MAAM,IAAI,wCAAwC,CAAC;gBACnD,MAAM,IAAI,iDAAiD,CAAC;gBAC5D,MAAM,IAAI,uFAAuF,CAAC;gBAClG,MAAM,IAAI,6KAA6K,CAAC;gBAExL,MAAM,IAAI,2DAA2D,CAAC;gBACtE,MAAM,IAAI,qDAAqD,CAAC;gBAEhE,MAAM,IAAI,qDAAqD,CAAC;gBAChE,MAAM,IAAI,oEAAoE,CAAC;gBAE/E,MAAM,IAAI,sCAAsC,CAAC;gBACjD,MAAM,IAAI,4CAA4C,CAAC;gBAEvD,MAAM,IAAI,6BAA6B,CAAC;gBACxC,MAAM,IAAI,2EAA2E,CAAC;gBACtF,MAAM,IAAI,6DAA6D,CAAC;gBACxE,MAAM,IAAI,iFAAiF,CAAC;gBAE5F,8BAA8B;gBAC9B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;gBACjE,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;gBAC1D,MAAM,IAAI,0BAA0B,CAAC;gBACrC,MAAM,IAAI,uBAAuB,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,MAAM,CAAC;gBAE9F,iCAAiC;gBACjC,MAAM,IAAI,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC;gBAClE,MAAM,IAAI,IAAI,CAAC;gBAEf,MAAM,IAAI,uBAAuB,CAAC;gBAClC,MAAM,IAAI,uEAAuE,CAAC;gBAClF,MAAM,IAAI,gFAAgF,CAAC;gBAC3F,MAAM,IAAI,4EAA4E,CAAC;gBAEvF,MAAM,IAAI,6CAA6C,CAAC;gBACxD,MAAM,IAAI,kDAAkD,CAAC;gBAC7D,MAAM,IAAI,gDAAgD,CAAC;gBAC3D,MAAM,IAAI,qEAAqE,CAAC;gBAChF,MAAM,IAAI,8FAA8F,CAAC;gBACzG,MAAM,IAAI,oEAAoE,CAAC;gBAC/E,MAAM,IAAI,4EAA4E,CAAC;gBACvF,MAAM,IAAI,2DAA2D,CAAC;gBACtE,MAAM,IAAI,6FAA6F,CAAC;gBACxG,MAAM,IAAI,4BAA4B,CAAC;gBAEvC,sBAAsB;gBACtB,MAAM,cAAc,GAAG,qBAAqB,EAAE,CAAC;gBAC/C,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,MAAM,IAAI,6BAA6B,CAAC;oBACxC,MAAM,IAAI,uEAAuE,CAAC;oBAClF,MAAM,IAAI,0BAA0B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClE,MAAM,IAAI,oFAAoF,CAAC;oBAC/F,MAAM,IAAI,gGAAgG,CAAC;gBAC7G,CAAC;gBAED,MAAM,IAAI,2BAA2B,CAAC;gBACtC,MAAM,IAAI,8FAA8F,CAAC;gBAEzG,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;iBACnD,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACnD,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAC9B,IAgBC,EACD,KAAU;QAEV,8BAA8B;QAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,GAAG,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;YACpE,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,gHAAgH;qBACvH,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,0BAA0B,IAAI,CAAC,MAAM,sKAAsK;qBAClN,CAAC;aACH,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,iEAAiE;QACjE,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAa,CAAC,CAAC,CAAC,EAAc,CAAC;YACxG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACvC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChC,CAAC;YACD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAChC,CAAC;QAED,mCAAmC;QACnC,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAE9C,oDAAoD;QACpD,MAAM,UAAU,GAA4B,EAAE,GAAG,IAAI,EAAE,CAAC;QACxD,OAAO,UAAU,CAAC,MAAM,CAAC;QACzB,OAAO,UAAU,CAAC,MAAM,CAAC;QAEzB,wDAAwD;QACxD,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QACpC,IAAI,MAAM,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;YACtC,6DAA6D;YAC7D,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QAC1C,CAAC;QAED,kCAAkC;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IACzE,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAE5E;;;;OAIG;IACK,KAAK,CAAC,yBAAyB,CAAC,IAAS,EAAE,KAAW;QAC5D,OAAO,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB,CAAC,IAAS;QACtC,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;CACF"}
@@ -0,0 +1,25 @@
1
+ import type { StructuredLogger } from '../logger.js';
2
+ import type { CLIAgentOptions } from '../cli-agents.js';
3
+ import type { ModelResolver } from '../model-resolver.js';
4
+ import type { CLIProvider, CLIBuilderConfig, CLIName } from './index.js';
5
+ export declare class ClaudeAdapter implements CLIProvider {
6
+ readonly name: CLIName;
7
+ getConfig(): CLIBuilderConfig;
8
+ buildCommand(userPrompt: string, systemPrompt: string, options: CLIAgentOptions, modelResolver: ModelResolver, secureEnv: Record<string, string>): Promise<{
9
+ command: string;
10
+ args: string[];
11
+ input: string;
12
+ env: Record<string, string>;
13
+ tempMcpConfigPath?: string;
14
+ }>;
15
+ /**
16
+ * Decode Claude's stream-json NDJSON output into plain text.
17
+ * Extracts text content blocks from all 'assistant' events across all turns.
18
+ * Skips system events, user events (tool results with raw file contents), and
19
+ * tool_use content blocks within assistant events.
20
+ * Falls back to 'result' event if no assistant text was captured.
21
+ */
22
+ decodeOutput(rawOutput: string, args: string[], log?: StructuredLogger): string;
23
+ private decodeClaudeStreamJson;
24
+ }
25
+ //# sourceMappingURL=claude-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-adapter.d.ts","sourceRoot":"","sources":["../../src/cli-adapters/claude-adapter.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAqEzE,qBAAa,aAAc,YAAW,WAAW;IAC/C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAY;IAElC,SAAS,IAAI,gBAAgB;IAIvB,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IAiFF;;;;;;OAMG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,MAAM;IAQ/E,OAAO,CAAC,sBAAsB;CA4F/B"}
@@ -0,0 +1,245 @@
1
+ /**
2
+ * Claude CLI Adapter
3
+ *
4
+ * Encapsulates Claude-specific CLI configuration, command construction,
5
+ * and output decoding (stream-json NDJSON parsing).
6
+ *
7
+ * Pattern A (integrate-observability): logger is threaded via
8
+ * CLIAgentOptions.log (buildCommand) and via the optional `log` parameter
9
+ * on decodeOutput. When absent the adapter falls back to the root logger
10
+ * singleton so legacy test proxies and un-instrumented callers keep
11
+ * working. All emissions flow through a local `log` variable so no
12
+ * `logger.*` direct-import call sites remain in this file.
13
+ */
14
+ import { logger as rootLogger } from '../logger.js';
15
+ import { parseNDJSON } from './shared.js';
16
+ import { resolveServers, listRegisteredServers, writeClaudeMCPConfig, ensurePlaywrightBrowsers, } from '../mcp-registry.js';
17
+ /**
18
+ * Cycle 4 Task T19 (F10 — security): pre-filter caller-supplied MCP
19
+ * server names against the registry-known set BEFORE handing them to
20
+ * `resolveServers`. Unknown names must not reach
21
+ * `mcp-registry.ts:75` where they would be interpolated raw into the
22
+ * warning message. Emits only bounded metadata (counts) via the
23
+ * adapter's scoped logger — never the unknown-name strings
24
+ * themselves, which crossed the trust boundary from the MCP tool
25
+ * caller.
26
+ *
27
+ * Guarded via `typeof listRegisteredServers === 'function'` so that
28
+ * test harnesses which mock the mcp-registry module with a narrower
29
+ * surface (omitting listRegisteredServers) fall through the filter
30
+ * transparently. In production, `listRegisteredServers` is always a
31
+ * function, and the filter runs as intended.
32
+ */
33
+ function sanitizeMcpServerNames(requested, log) {
34
+ if (typeof listRegisteredServers !== 'function') {
35
+ return requested;
36
+ }
37
+ const known = new Set(listRegisteredServers());
38
+ const kept = [];
39
+ let droppedCount = 0;
40
+ for (const name of requested) {
41
+ if (known.has(name)) {
42
+ kept.push(name);
43
+ }
44
+ else {
45
+ droppedCount++;
46
+ }
47
+ }
48
+ if (droppedCount > 0) {
49
+ log.warn('Unknown MCP servers skipped', {
50
+ unknownCount: droppedCount,
51
+ knownCount: kept.length,
52
+ });
53
+ }
54
+ return kept;
55
+ }
56
+ const CLAUDE_CONFIG = {
57
+ command: 'claude',
58
+ defaultArgs: ['--print'],
59
+ modelArgName: '--model',
60
+ mpcEnvCleanup: ['CLAUDE_MCP_CONFIG', 'MCP_ENABLED', 'CLAUDECODE', 'CLAUDE_CODE_ENTRYPOINT'],
61
+ streamingArgs: () => ['--output-format', 'stream-json', '--verbose'],
62
+ mcpSupport: {
63
+ configMethod: 'flag-file',
64
+ configFlag: '--mcp-config',
65
+ strictFlag: '--strict-mcp-config',
66
+ writeProtection: {
67
+ method: 'disallowed-tools',
68
+ flag: '--disallowedTools',
69
+ value: 'Edit,Write,NotebookEdit',
70
+ },
71
+ },
72
+ };
73
+ export class ClaudeAdapter {
74
+ name = 'claude';
75
+ getConfig() {
76
+ return CLAUDE_CONFIG;
77
+ }
78
+ async buildCommand(userPrompt, systemPrompt, options, modelResolver, secureEnv) {
79
+ const log = options.log ?? rootLogger;
80
+ const config = CLAUDE_CONFIG;
81
+ const mcpEnabled = options.mcpServers && options.mcpServers.length > 0;
82
+ // Build args
83
+ const args = [...config.defaultArgs];
84
+ const resolvedModel = modelResolver.resolveModel('claude', options.models?.claude);
85
+ if (resolvedModel) {
86
+ args.push(config.modelArgName, resolvedModel);
87
+ }
88
+ if (config.streamingArgs) {
89
+ args.push(...config.streamingArgs(options));
90
+ }
91
+ // Always enforce write-tool denial and permission bypass for non-interactive
92
+ // tool use. In --print mode, Claude Code silently skips tool calls that
93
+ // would otherwise require approval; for verification-oriented prompts
94
+ // (legal, research, security), this caused agents to fall back to
95
+ // training-data answers instead of invoking WebSearch/WebFetch. Lifting
96
+ // these two flags out of the MCP conditional ensures native web/search
97
+ // tools are usable in every run while preserving the Edit/Write/
98
+ // NotebookEdit barrier. MCP wiring below remains gated on mcpEnabled.
99
+ if (config.mcpSupport) {
100
+ args.push(config.mcpSupport.writeProtection.flag, config.mcpSupport.writeProtection.value);
101
+ args.push('--permission-mode', 'bypassPermissions');
102
+ }
103
+ // MCP configuration
104
+ let tempMcpConfigPath;
105
+ if (mcpEnabled && config.mcpSupport) {
106
+ // Pre-filter via sanitizeMcpServerNames — unknown names are
107
+ // dropped before they reach `mcp-registry.ts:75`
108
+ // (Cycle 4 Task T19 / F10).
109
+ const sanitizedNames = sanitizeMcpServerNames(options.mcpServers, log);
110
+ const servers = resolveServers(sanitizedNames);
111
+ const serverNames = Object.keys(servers);
112
+ // Auto-install Playwright browsers if playwright is requested
113
+ if (servers.playwright) {
114
+ await ensurePlaywrightBrowsers();
115
+ }
116
+ if (serverNames.length > 0) {
117
+ const mcp = config.mcpSupport;
118
+ // Claude: write temp JSON config, pass --mcp-config <path> --strict-mcp-config
119
+ const sessionId = options.sessionId || 'default';
120
+ tempMcpConfigPath = await writeClaudeMCPConfig(servers, sessionId);
121
+ args.push(mcp.configFlag, tempMcpConfigPath);
122
+ args.push(mcp.strictFlag);
123
+ log.info(`\u{1F50C} MCP enabled for claude: [${serverNames.join(', ')}]`);
124
+ }
125
+ }
126
+ // Build prompt -- no promptWrapper for Claude
127
+ const combinedPrompt = `${systemPrompt}\n\n${userPrompt}`;
128
+ // Add CLI-specific env
129
+ const env = { ...secureEnv };
130
+ // Add required API key
131
+ const apiKeys = ['ANTHROPIC_API_KEY'];
132
+ for (const key of apiKeys) {
133
+ if (process.env[key])
134
+ env[key] = process.env[key];
135
+ }
136
+ // Clean up MPC env vars that could cause deadlock -- SKIP when MCP is enabled
137
+ if (!mcpEnabled && config.mpcEnvCleanup) {
138
+ for (const envVar of config.mpcEnvCleanup) {
139
+ delete env[envVar];
140
+ }
141
+ }
142
+ env.BRUTALIST_SUBPROCESS = '1';
143
+ return { command: config.command, args, input: combinedPrompt, env, tempMcpConfigPath };
144
+ }
145
+ /**
146
+ * Decode Claude's stream-json NDJSON output into plain text.
147
+ * Extracts text content blocks from all 'assistant' events across all turns.
148
+ * Skips system events, user events (tool results with raw file contents), and
149
+ * tool_use content blocks within assistant events.
150
+ * Falls back to 'result' event if no assistant text was captured.
151
+ */
152
+ decodeOutput(rawOutput, args, log) {
153
+ // Only decode if Claude was run with stream-json format
154
+ if (!(args.includes('--output-format') && args.includes('stream-json'))) {
155
+ return rawOutput;
156
+ }
157
+ return this.decodeClaudeStreamJson(rawOutput, log ?? rootLogger);
158
+ }
159
+ decodeClaudeStreamJson(ndjsonOutput, log) {
160
+ if (!ndjsonOutput || !ndjsonOutput.trim()) {
161
+ log.warn('decodeClaudeStreamJson: empty input');
162
+ return '';
163
+ }
164
+ const events = parseNDJSON(ndjsonOutput, log);
165
+ if (events.length === 0) {
166
+ log.warn('decodeClaudeStreamJson: no valid JSON events found in output');
167
+ return '';
168
+ }
169
+ const textParts = [];
170
+ let resultText = '';
171
+ // Cycle 4 Task T17 (F8 — security): do NOT retain the raw
172
+ // `typedEvent.error || typedEvent.result` string from a Claude
173
+ // result-error event. The raw value can contain provider-side
174
+ // stdout/stderr fragments, prompt echoes, tool-output snippets,
175
+ // or MCP override content that must not reach the logger (which
176
+ // may flush to an aggregator) or the decoded output (which is
177
+ // returned up to `_executeCLI` and exposed via the
178
+ // `CLIAgentResponse.output` field). Instead, we only track
179
+ // whether an error was present and classify its shape via the
180
+ // event subtype / is_error flag for metadata-only emission.
181
+ let errorPresent = false;
182
+ let errorClass;
183
+ for (const event of events) {
184
+ if (typeof event !== 'object' || event === null)
185
+ continue;
186
+ const typedEvent = event;
187
+ if (typedEvent.type === 'assistant' && typedEvent.message?.content) {
188
+ // Extract only text blocks from assistant messages (skip tool_use blocks)
189
+ const content = typedEvent.message.content;
190
+ if (Array.isArray(content)) {
191
+ for (const item of content) {
192
+ if (item.type === 'text' && item.text) {
193
+ textParts.push(item.text);
194
+ }
195
+ }
196
+ }
197
+ }
198
+ else if (typedEvent.type === 'result') {
199
+ if (typedEvent.subtype === 'error' || typedEvent.is_error) {
200
+ errorPresent = true;
201
+ // errorClass captures only the shape of the error, not its
202
+ // content: the event subtype (static enum) or a fallback
203
+ // tag. Never the underlying `typedEvent.error` /
204
+ // `typedEvent.result` string value.
205
+ errorClass = typeof typedEvent.subtype === 'string' && typedEvent.subtype.length > 0
206
+ ? typedEvent.subtype
207
+ : (typedEvent.is_error ? 'is_error' : 'unknown');
208
+ }
209
+ else if (typedEvent.result) {
210
+ resultText = typedEvent.result;
211
+ }
212
+ }
213
+ // Skip: system, user (tool_result with raw file contents), hooks
214
+ }
215
+ // Handle error — emit metadata only (F8). The raw error string is
216
+ // intentionally never logged and never returned as decoded output.
217
+ if (errorPresent) {
218
+ log.error('decodeClaudeStreamJson: Claude returned error result', {
219
+ errorPresent: true,
220
+ eventCount: events.length,
221
+ errorClass: errorClass ?? 'unknown',
222
+ });
223
+ // Return a content-free marker. Callers see that decodedText is
224
+ // truthy (non-empty) and propagate it to `finalOutput` — the
225
+ // marker itself carries no sensitive content. A future iteration
226
+ // can surface a structured adapter-error signal via a new
227
+ // return shape; for now the marker keeps the existing string
228
+ // return type intact with zero sensitive bytes.
229
+ return '[Claude Error] <redacted>';
230
+ }
231
+ // Use accumulated assistant text if available, fall back to result event
232
+ if (textParts.length > 0) {
233
+ return textParts.join('\n\n');
234
+ }
235
+ if (resultText) {
236
+ return resultText;
237
+ }
238
+ log.warn('decodeClaudeStreamJson: no text content found in stream-json output', {
239
+ eventCount: events.length,
240
+ eventTypes: events.map(e => e.type).filter(Boolean)
241
+ });
242
+ return '';
243
+ }
244
+ }
245
+ //# sourceMappingURL=claude-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-adapter.js","sourceRoot":"","sources":["../../src/cli-adapters/claude-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { StructuredLogger } from '../logger.js';
2
+ import type { CLIAgentOptions } from '../cli-agents.js';
3
+ import type { ModelResolver } from '../model-resolver.js';
4
+ import type { CLIProvider, CLIBuilderConfig, CLIName } from './index.js';
5
+ export declare class CodexAdapter implements CLIProvider {
6
+ readonly name: CLIName;
7
+ getConfig(): CLIBuilderConfig;
8
+ buildCommand(userPrompt: string, systemPrompt: string, options: CLIAgentOptions, modelResolver: ModelResolver, secureEnv: Record<string, string>): Promise<{
9
+ command: string;
10
+ args: string[];
11
+ input: string;
12
+ env: Record<string, string>;
13
+ tempMcpConfigPath?: string;
14
+ }>;
15
+ /**
16
+ * Extract only the agent messages from Codex JSON output.
17
+ * Filters for item.type === 'agent_message', skipping reasoning,
18
+ * command_execution, and error events.
19
+ */
20
+ decodeOutput(rawOutput: string, args: string[], log?: StructuredLogger): string;
21
+ private extractCodexAgentMessage;
22
+ }
23
+ //# sourceMappingURL=codex-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-adapter.d.ts","sourceRoot":"","sources":["../../src/cli-adapters/codex-adapter.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAoEzE,qBAAa,YAAa,YAAW,WAAW;IAC9C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAW;IAEjC,SAAS,IAAI,gBAAgB;IAIvB,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IAiEF;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,MAAM;IAQ/E,OAAO,CAAC,wBAAwB;CAqCjC"}
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Codex CLI Adapter
3
+ *
4
+ * Encapsulates Codex-specific CLI configuration, command construction,
5
+ * and output decoding (agent_message extraction from NDJSON).
6
+ *
7
+ * Pattern A (integrate-observability): logger is threaded via
8
+ * CLIAgentOptions.log (buildCommand) and the optional `log` parameter on
9
+ * decodeOutput. Falls back to the root logger singleton when absent so
10
+ * legacy test proxies keep working.
11
+ */
12
+ import { logger as rootLogger } from '../logger.js';
13
+ import { parseNDJSON } from './shared.js';
14
+ import { resolveServers, listRegisteredServers, buildCodexMCPOverride, } from '../mcp-registry.js';
15
+ /**
16
+ * Cycle 4 Task T19 (F10 — security): pre-filter caller-supplied MCP
17
+ * server names against the registry-known set BEFORE handing them to
18
+ * `resolveServers`. Unknown names must not reach
19
+ * `mcp-registry.ts:75` where they would be interpolated raw into the
20
+ * warning message. Emits only bounded metadata (counts) via the
21
+ * adapter's scoped logger — never the unknown-name strings
22
+ * themselves, which crossed the trust boundary from the MCP tool
23
+ * caller.
24
+ *
25
+ * Guarded via `typeof listRegisteredServers === 'function'` so that
26
+ * test harnesses which mock the mcp-registry module with a narrower
27
+ * surface (omitting listRegisteredServers) fall through the filter
28
+ * transparently. In production, `listRegisteredServers` is always a
29
+ * function, and the filter runs as intended.
30
+ */
31
+ function sanitizeMcpServerNames(requested, log) {
32
+ if (typeof listRegisteredServers !== 'function') {
33
+ return requested;
34
+ }
35
+ const known = new Set(listRegisteredServers());
36
+ const kept = [];
37
+ let droppedCount = 0;
38
+ for (const name of requested) {
39
+ if (known.has(name)) {
40
+ kept.push(name);
41
+ }
42
+ else {
43
+ droppedCount++;
44
+ }
45
+ }
46
+ if (droppedCount > 0) {
47
+ log.warn('Unknown MCP servers skipped', {
48
+ unknownCount: droppedCount,
49
+ knownCount: kept.length,
50
+ });
51
+ }
52
+ return kept;
53
+ }
54
+ const CODEX_CONFIG = {
55
+ command: 'codex',
56
+ defaultArgs: ['exec', '--sandbox', 'read-only', '--skip-git-repo-check'],
57
+ modelArgName: '--model',
58
+ jsonFlag: '--json',
59
+ mpcEnvCleanup: ['CODEX_MCP_CONFIG', 'MCP_ENABLED'],
60
+ promptWrapper: (sys, user) => `${sys}\n\n${user}\n\nUse your shell tools to read files (cat, ls, find, grep, head, etc.) and analyze the codebase. You ARE allowed to run read-only commands. Explore the directory structure, read relevant source files, and provide a comprehensive brutal analysis based on what you find.`,
61
+ mcpSupport: {
62
+ configMethod: 'config-override',
63
+ configOverrideKey: 'mcp_servers',
64
+ writeProtection: {
65
+ method: 'sandbox',
66
+ flag: '--sandbox',
67
+ value: 'read-only', // already in defaultArgs
68
+ },
69
+ },
70
+ };
71
+ export class CodexAdapter {
72
+ name = 'codex';
73
+ getConfig() {
74
+ return CODEX_CONFIG;
75
+ }
76
+ async buildCommand(userPrompt, systemPrompt, options, modelResolver, secureEnv) {
77
+ const log = options.log ?? rootLogger;
78
+ const config = CODEX_CONFIG;
79
+ const mcpEnabled = options.mcpServers && options.mcpServers.length > 0;
80
+ // Build args
81
+ const args = [...config.defaultArgs];
82
+ const resolvedModel = modelResolver.resolveModel('codex', options.models?.codex);
83
+ if (resolvedModel) {
84
+ args.push(config.modelArgName, resolvedModel);
85
+ }
86
+ if (config.jsonFlag && process.env.CODEX_USE_JSON !== 'false') {
87
+ args.push(config.jsonFlag);
88
+ }
89
+ // MCP configuration
90
+ let tempMcpConfigPath;
91
+ if (mcpEnabled && config.mcpSupport) {
92
+ // Pre-filter via sanitizeMcpServerNames — unknown names are
93
+ // dropped before they reach `mcp-registry.ts:75`
94
+ // (Cycle 4 Task T19 / F10).
95
+ const sanitizedNames = sanitizeMcpServerNames(options.mcpServers, log);
96
+ const servers = resolveServers(sanitizedNames);
97
+ const serverNames = Object.keys(servers);
98
+ if (serverNames.length > 0) {
99
+ const mcp = config.mcpSupport;
100
+ // Codex: -c 'mcp_servers={...}' -- replaces all configured servers (excludes brutalist)
101
+ const tomlOverride = buildCodexMCPOverride(servers);
102
+ args.push('-c', `${mcp.configOverrideKey}=${tomlOverride}`);
103
+ // Write protection already in defaultArgs (--sandbox read-only)
104
+ log.info(`\u{1F50C} MCP enabled for codex: [${serverNames.join(', ')}]`);
105
+ }
106
+ }
107
+ // Build prompt -- skip CLI-specific wrapper in debate mode (prevents Codex
108
+ // from exploring the brutalist repo and reading its own control prompts)
109
+ const combinedPrompt = (config.promptWrapper && !options.debateMode)
110
+ ? config.promptWrapper(systemPrompt, userPrompt)
111
+ : `${systemPrompt}\n\n${userPrompt}`;
112
+ // Add CLI-specific env
113
+ const env = { ...secureEnv };
114
+ // Add required API key
115
+ const apiKeys = ['OPENAI_API_KEY'];
116
+ for (const key of apiKeys) {
117
+ if (process.env[key])
118
+ env[key] = process.env[key];
119
+ }
120
+ // Clean up MPC env vars that could cause deadlock -- SKIP when MCP is enabled
121
+ if (!mcpEnabled && config.mpcEnvCleanup) {
122
+ for (const envVar of config.mpcEnvCleanup) {
123
+ delete env[envVar];
124
+ }
125
+ }
126
+ env.BRUTALIST_SUBPROCESS = '1';
127
+ return { command: config.command, args, input: combinedPrompt, env, tempMcpConfigPath };
128
+ }
129
+ /**
130
+ * Extract only the agent messages from Codex JSON output.
131
+ * Filters for item.type === 'agent_message', skipping reasoning,
132
+ * command_execution, and error events.
133
+ */
134
+ decodeOutput(rawOutput, args, log) {
135
+ // Only decode if Codex was run with --json flag
136
+ if (!args.includes('--json')) {
137
+ return rawOutput;
138
+ }
139
+ return this.extractCodexAgentMessage(rawOutput, log ?? rootLogger);
140
+ }
141
+ extractCodexAgentMessage(jsonOutput, log) {
142
+ if (!jsonOutput || !jsonOutput.trim()) {
143
+ log.debug('extractCodexAgentMessage: empty input');
144
+ return '';
145
+ }
146
+ const agentMessages = [];
147
+ const events = parseNDJSON(jsonOutput, log);
148
+ log.debug(`extractCodexAgentMessage: processing ${events.length} JSON events`);
149
+ for (const event of events) {
150
+ if (typeof event !== 'object' || event === null)
151
+ continue;
152
+ const typedEvent = event;
153
+ log.debug(`extractCodexAgentMessage: parsed event type=${typedEvent.type}, item.type=${typedEvent.item?.type}`);
154
+ // Codex --json outputs events with structure: {"type":"item.completed","item":{...}}
155
+ // Only extract agent_message type - this is the actual response
156
+ if (typedEvent.type === 'item.completed' && typedEvent.item) {
157
+ if (typedEvent.item.type === 'agent_message' && typedEvent.item.text) {
158
+ // Agent's actual response text
159
+ log.info(`\u2705 extractCodexAgentMessage: found agent_message with ${typedEvent.item.text.length} chars`);
160
+ agentMessages.push(typedEvent.item.text);
161
+ }
162
+ // Skip all other types:
163
+ // - reasoning: internal thinking steps
164
+ // - command_execution: file reads, bash commands
165
+ // - error: will be in stderr
166
+ }
167
+ }
168
+ const result = agentMessages.join('\n\n').trim();
169
+ log.info(`extractCodexAgentMessage: extracted ${agentMessages.length} messages, total ${result.length} chars`);
170
+ return result;
171
+ }
172
+ }
173
+ //# sourceMappingURL=codex-adapter.js.map