@markusylisiurunen/tau 0.3.60 → 0.3.62

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 (142) hide show
  1. package/dist/core/config/schema.js.map +1 -1
  2. package/dist/core/diff_review/bridge.js +1 -0
  3. package/dist/core/diff_review/bridge.js.map +1 -1
  4. package/dist/core/diff_review/protocol.js +4 -2
  5. package/dist/core/diff_review/protocol.js.map +1 -1
  6. package/dist/core/diff_review/review_instructions.js +2 -1
  7. package/dist/core/diff_review/review_instructions.js.map +1 -1
  8. package/dist/core/diff_review/tool.js +1 -1
  9. package/dist/core/diff_review/tool.js.map +1 -1
  10. package/dist/core/session/compaction.js +8 -7
  11. package/dist/core/session/compaction.js.map +1 -1
  12. package/dist/core/static/tau_docs/configuration.md +1 -1
  13. package/dist/core/static/tau_docs/index.md +1 -0
  14. package/dist/core/static/tau_docs/manifest.json +1 -0
  15. package/dist/core/static/tau_docs/node-sdk.md +8 -0
  16. package/dist/core/static/tau_docs/sdk-diff-review.md +79 -0
  17. package/dist/core/static/tau_docs/session-protocol-methods.md +4 -2
  18. package/dist/core/static/tau_docs/telegram.md +21 -22
  19. package/dist/core/static/tau_docs/troubleshooting.md +1 -1
  20. package/dist/core/static/tau_docs/tui.md +2 -0
  21. package/dist/core/telegram/config.js +20 -2
  22. package/dist/core/telegram/config.js.map +1 -1
  23. package/dist/core/telegram/workspace.js +3 -39
  24. package/dist/core/telegram/workspace.js.map +1 -1
  25. package/dist/core/version.js +1 -1
  26. package/dist/diff_tool/app/dist/assets/{angular-html-DoxI_och.js → angular-html-CNdMT1sj.js} +1 -1
  27. package/dist/diff_tool/app/dist/assets/{angular-ts-C7CUd-D2.js → angular-ts-ByZ1I9zp.js} +1 -1
  28. package/dist/diff_tool/app/dist/assets/{apl-7dieYM-l.js → apl-DTw4IZcL.js} +1 -1
  29. package/dist/diff_tool/app/dist/assets/{astro-Czj3O4jM.js → astro-Cuihy-h6.js} +1 -1
  30. package/dist/diff_tool/app/dist/assets/{blade-ClS0E2cC.js → blade-BRcWKIxm.js} +1 -1
  31. package/dist/diff_tool/app/dist/assets/{c-BKvTh-Jt.js → c-CZrnSPrO.js} +1 -1
  32. package/dist/diff_tool/app/dist/assets/{chapel-qvFrfwEr.js → chapel-BJWGSECM.js} +1 -1
  33. package/dist/diff_tool/app/dist/assets/{cobol-B0vsaB-J.js → cobol-BtqNzZtm.js} +1 -1
  34. package/dist/diff_tool/app/dist/assets/{coffee-BUlcrU75.js → coffee-DV53y0PJ.js} +1 -1
  35. package/dist/diff_tool/app/dist/assets/{cpp-CKqEgX1l.js → cpp-Bn3c6Y8W.js} +1 -1
  36. package/dist/diff_tool/app/dist/assets/{crystal-FCqSmIJ_.js → crystal-4DKOWvUP.js} +1 -1
  37. package/dist/diff_tool/app/dist/assets/{css-zZvYFJFc.js → css-DRAuUHHc.js} +1 -1
  38. package/dist/diff_tool/app/dist/assets/{edge-BKlbCo1f.js → edge-CvBIkt32.js} +1 -1
  39. package/dist/diff_tool/app/dist/assets/{elixir-B2gSxtgZ.js → elixir-WxLR57iz.js} +1 -1
  40. package/dist/diff_tool/app/dist/assets/{elm-DFEdzPJz.js → elm-C8UfKkLs.js} +1 -1
  41. package/dist/diff_tool/app/dist/assets/{erb-DSgn8fHS.js → erb-DDaRKv4Z.js} +1 -1
  42. package/dist/diff_tool/app/dist/assets/{git-rebase-CcgDECQr.js → git-rebase-BfBjC640.js} +1 -1
  43. package/dist/diff_tool/app/dist/assets/{glimmer-js-Dwxi4cX2.js → glimmer-js-5QdPyQJP.js} +1 -1
  44. package/dist/diff_tool/app/dist/assets/{glimmer-ts-BnJVER8W.js → glimmer-ts-Te0TMSCC.js} +1 -1
  45. package/dist/diff_tool/app/dist/assets/{glsl-z7_gU-HN.js → glsl-D4tyKssQ.js} +1 -1
  46. package/dist/diff_tool/app/dist/assets/{graphql-Dt7V-d3L.js → graphql-J0IcMfkN.js} +1 -1
  47. package/dist/diff_tool/app/dist/assets/{hack-jVkr6EC8.js → hack-BcEFuXu_.js} +1 -1
  48. package/dist/diff_tool/app/dist/assets/{haml-BF7cRiOF.js → haml-SbspNdjx.js} +1 -1
  49. package/dist/diff_tool/app/dist/assets/{handlebars-DAhNxR3E.js → handlebars-DH3a4U2h.js} +1 -1
  50. package/dist/diff_tool/app/dist/assets/{html-B7QW5YvU.js → html-CBno8dbY.js} +1 -1
  51. package/dist/diff_tool/app/dist/assets/{html-derivative-B-vyaE-N.js → html-derivative-COFLhWU9.js} +1 -1
  52. package/dist/diff_tool/app/dist/assets/{http-Drkl04RP.js → http-2GnhhV3-.js} +1 -1
  53. package/dist/diff_tool/app/dist/assets/{hurl-7gTFrvcN.js → hurl-BIPzVQmD.js} +1 -1
  54. package/dist/diff_tool/app/dist/assets/index-Cb0TCxCI.js +1550 -0
  55. package/dist/diff_tool/app/dist/assets/index-esno8y5b.css +1 -0
  56. package/dist/diff_tool/app/dist/assets/{java-ZmvXuvs3.js → java-bZo_LLEv.js} +1 -1
  57. package/dist/diff_tool/app/dist/assets/{javascript-C-OECu_Z.js → javascript-7XNFOfdJ.js} +1 -1
  58. package/dist/diff_tool/app/dist/assets/{jinja-hvkV87CG.js → jinja-Yuf1yufJ.js} +1 -1
  59. package/dist/diff_tool/app/dist/assets/{jison-eJBDxKI8.js → jison-DD2vLLcq.js} +1 -1
  60. package/dist/diff_tool/app/dist/assets/{json-BPQU2w0u.js → json-CVOsPviK.js} +1 -1
  61. package/dist/diff_tool/app/dist/assets/{jsx-C19s5MOj.js → jsx-BYrWYIX0.js} +1 -1
  62. package/dist/diff_tool/app/dist/assets/{julia-CYISvCwi.js → julia-BZ_A4I5C.js} +1 -1
  63. package/dist/diff_tool/app/dist/assets/{just-5omBg5pB.js → just-D8W5QT1p.js} +1 -1
  64. package/dist/diff_tool/app/dist/assets/{latex-B_L85F2z.js → latex-BSsqyYVM.js} +1 -1
  65. package/dist/diff_tool/app/dist/assets/{liquid-BxbaQPPS.js → liquid-CD5oivgr.js} +1 -1
  66. package/dist/diff_tool/app/dist/assets/{lua-DQA0z-44.js → lua-BnXOnOdP.js} +1 -1
  67. package/dist/diff_tool/app/dist/assets/{marko-Dj5RV8IH.js → marko-CjeqsSvM.js} +1 -1
  68. package/dist/diff_tool/app/dist/assets/{mdc-CoHI6VJN.js → mdc-Bk-o_FzD.js} +1 -1
  69. package/dist/diff_tool/app/dist/assets/{nginx-COnrY-gb.js → nginx-CU9exOaI.js} +1 -1
  70. package/dist/diff_tool/app/dist/assets/{nim-Ccfp0p1j.js → nim-C4eS-_Qo.js} +1 -1
  71. package/dist/diff_tool/app/dist/assets/{org-RForNsWm.js → org-gZKEwUlv.js} +1 -1
  72. package/dist/diff_tool/app/dist/assets/{perl-DhHRsiUu.js → perl-d_jthyH-.js} +1 -1
  73. package/dist/diff_tool/app/dist/assets/{php-BlxKhJek.js → php-Cldhvias.js} +1 -1
  74. package/dist/diff_tool/app/dist/assets/{pug-o9YxnGzH.js → pug-1Im3v9J7.js} +1 -1
  75. package/dist/diff_tool/app/dist/assets/{qml-Dzf494vL.js → qml-Bugdf4FS.js} +1 -1
  76. package/dist/diff_tool/app/dist/assets/{r-Dp0OUrF6.js → r-DNz8aXhA.js} +1 -1
  77. package/dist/diff_tool/app/dist/assets/{razor-gylahu-m.js → razor-CyO91A7-.js} +1 -1
  78. package/dist/diff_tool/app/dist/assets/{regexp-C0rsDjCm.js → regexp-7IVcp_0b.js} +1 -1
  79. package/dist/diff_tool/app/dist/assets/{rst-D-DRAFtq.js → rst-CPC6Rcsf.js} +1 -1
  80. package/dist/diff_tool/app/dist/assets/{ruby-BnY40vXq.js → ruby-CIw26EG-.js} +1 -1
  81. package/dist/diff_tool/app/dist/assets/{sas-BaSo_s7i.js → sas-CXXipNue.js} +1 -1
  82. package/dist/diff_tool/app/dist/assets/{scss-BX5R-Yyw.js → scss-Cb8mUz_m.js} +1 -1
  83. package/dist/diff_tool/app/dist/assets/{shellscript-CpRFVBRj.js → shellscript-8Dfk6ni5.js} +1 -1
  84. package/dist/diff_tool/app/dist/assets/{shellsession-BGRUDtms.js → shellsession-BBb6xY52.js} +1 -1
  85. package/dist/diff_tool/app/dist/assets/{soy-C2WL9FSb.js → soy-_rneSfGo.js} +1 -1
  86. package/dist/diff_tool/app/dist/assets/{sql-CGmNnOfz.js → sql-CmdLYztO.js} +1 -1
  87. package/dist/diff_tool/app/dist/assets/{stata-CDamV3Uz.js → stata-DmJpPQHj.js} +1 -1
  88. package/dist/diff_tool/app/dist/assets/{surrealql-BqI4o6tP.js → surrealql-D1R_-CBd.js} +1 -1
  89. package/dist/diff_tool/app/dist/assets/{svelte-DPaOUioa.js → svelte-CKPrzNdA.js} +1 -1
  90. package/dist/diff_tool/app/dist/assets/{templ-aqrZIEoc.js → templ-C0Eqag1M.js} +1 -1
  91. package/dist/diff_tool/app/dist/assets/{tex-Bjjtfacp.js → tex-IrZiFLxJ.js} +1 -1
  92. package/dist/diff_tool/app/dist/assets/{ts-tags-BGFnsvdQ.js → ts-tags-09-sH-my.js} +1 -1
  93. package/dist/diff_tool/app/dist/assets/{tsx-C_rOxPqZ.js → tsx-CSPybM8Z.js} +1 -1
  94. package/dist/diff_tool/app/dist/assets/{twig-DYqVwCOf.js → twig-C17vnjiX.js} +1 -1
  95. package/dist/diff_tool/app/dist/assets/{typescript-CppQYc7K.js → typescript-CvHNDrui.js} +1 -1
  96. package/dist/diff_tool/app/dist/assets/{typst-KIbA0FZG.js → typst-Ct_9rHAw.js} +1 -1
  97. package/dist/diff_tool/app/dist/assets/{vue-iOYoJEJi.js → vue-A0j7pYML.js} +1 -1
  98. package/dist/diff_tool/app/dist/assets/{vue-html-DcZpMui9.js → vue-html-DiVQf4vL.js} +1 -1
  99. package/dist/diff_tool/app/dist/assets/{vue-vine-C6v6c0Lr.js → vue-vine-CBf6VIg0.js} +1 -1
  100. package/dist/diff_tool/app/dist/assets/{xml-zR0RltJO.js → xml-BvQnnFTL.js} +1 -1
  101. package/dist/diff_tool/app/dist/assets/{xsl-B9pBLsIV.js → xsl-Dj-x_YCW.js} +1 -1
  102. package/dist/diff_tool/app/dist/assets/{yaml-sicIihvu.js → yaml-D6eQJHya.js} +1 -1
  103. package/dist/diff_tool/app/dist/index.html +2 -2
  104. package/dist/diff_tool/http_server.js +335 -56
  105. package/dist/diff_tool/http_server.js.map +1 -1
  106. package/dist/diff_tool/index.js.map +1 -1
  107. package/dist/diff_tool/review_prompts.js +168 -28
  108. package/dist/diff_tool/review_prompts.js.map +1 -1
  109. package/dist/diff_tool/review_state.js +213 -69
  110. package/dist/diff_tool/review_state.js.map +1 -1
  111. package/dist/diff_tool/review_state_persistence.js +282 -0
  112. package/dist/diff_tool/review_state_persistence.js.map +1 -0
  113. package/dist/diff_tool/shared_types.js +12 -0
  114. package/dist/diff_tool/shared_types.js.map +1 -1
  115. package/dist/host/hosted_ephemeral_agent_session.js +14 -2
  116. package/dist/host/hosted_ephemeral_agent_session.js.map +1 -1
  117. package/dist/host/local_session_host.js +67 -59
  118. package/dist/host/local_session_host.js.map +1 -1
  119. package/dist/host/session_protocol_handler.js +2 -0
  120. package/dist/host/session_protocol_handler.js.map +1 -1
  121. package/dist/protocol/session_protocol.d.ts +2 -0
  122. package/dist/protocol/session_protocol.js +9 -2
  123. package/dist/protocol/session_protocol.js.map +1 -1
  124. package/dist/sdk/diff_review.d.ts +40 -0
  125. package/dist/sdk/diff_review.js +112 -0
  126. package/dist/sdk/diff_review.js.map +1 -0
  127. package/dist/sdk/index.d.ts +2 -1
  128. package/dist/sdk/index.js +1 -0
  129. package/dist/sdk/index.js.map +1 -1
  130. package/dist/sdk/session.js +2 -0
  131. package/dist/sdk/session.js.map +1 -1
  132. package/dist/sdk/session_tool_execution_backend.d.ts +16 -0
  133. package/dist/sdk/session_tool_execution_backend.js +157 -0
  134. package/dist/sdk/session_tool_execution_backend.js.map +1 -0
  135. package/dist/sdk/types.d.ts +5 -2
  136. package/dist/tui/session_chat_controller.js +1 -0
  137. package/dist/tui/session_chat_controller.js.map +1 -1
  138. package/dist/tui/session_tool_execution_backend.js +1 -156
  139. package/dist/tui/session_tool_execution_backend.js.map +1 -1
  140. package/package.json +6 -6
  141. package/dist/diff_tool/app/dist/assets/index-Az_6lupE.css +0 -1
  142. package/dist/diff_tool/app/dist/assets/index-C9CiIimI.js +0 -1550
@@ -1 +0,0 @@
1
- *,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4;font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;line-height:1.15}body{margin:0}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentColor}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:var(--font-size-ui);cursor:pointer;white-space:nowrap;border-radius:0;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.btn:hover{background:var(--surface-hover)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn.primary{background:var(--accent-primary);color:var(--text-inverse);border-color:#0000;font-weight:500}.btn.primary:hover{background:var(--accent-primary-hover)}.btn.ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-hover);color:var(--text)}.btn-group{align-items:center;gap:2px;display:inline-flex}.icon-btn{aspect-ratio:1;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.icon-btn.active{background:var(--surface-hover);border-color:var(--border);color:var(--text)}.icon-btn.ghost{color:var(--text-muted)}.icon-btn.ghost:hover{color:var(--text)}.text-input-area{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:0;padding:6px 8px;display:block}.text-input-area:focus{border-color:var(--border-focus);outline:none}@font-face{font-family:JetBrains Mono;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Medium.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-SemiBold.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Bold.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:400;font-style:italic;font-display:swap;src:url(/fonts/JetBrainsMono-Italic.woff2)format("woff2")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111;--surface:#121212;--surface-hover:#171717;--file-header-bg:color-mix(in srgb, var(--bg) 97%, var(--text));--file-header-bg-hover:color-mix(in srgb, var(--bg) 95%, var(--text));--border:#1f1f1f;--border-focus:#333;--text:#bdbdbd;--text-muted:#666;--accent-add:#5ae28c;--accent-del:#f86363;--accent-change:#b38bf9;--accent-del-muted:#f87272b8;--accent-del-subtle:#f8727214;--accent-del-subtle-hover:#f8727224;--accent-primary:#e0e0e0;--text-inverse:#090909;--accent-primary-hover:#f0f0f0;--thread-border-muted:#d6d6d626;--thread-border-strong:#d6d6d629;--thread-border-subtle:#d6d6d614;--thread-surface-subtle:#ffffff05;--thread-agent-surface:color-mix(in srgb, var(--accent-add) 4%, transparent);--sidebar-status-add:color-mix(in srgb, var(--accent-add) 55%, var(--text-muted));--sidebar-status-del:color-mix(in srgb, var(--accent-del) 45%, var(--text-muted));--sidebar-status-change:color-mix(in srgb, var(--accent-change) 45%, var(--text-muted));--dialog-backdrop:#000c;--popover-shadow:#00000073;--button-split-border:color-mix(in srgb, var(--text-inverse) 18%, transparent);--code-inline-bg:color-mix(in srgb, var(--accent-add) 7%, transparent);--code-inline-text:color-mix(in srgb, var(--accent-add) 82%, var(--text));--bar-height:48px;--sidebar-width:300px;--content-padding-x:12px;--file-gap:12px;--font-size-ui:1rem;--font-size-lg:1.07143rem;--font-size-sm:.928571rem;--font-size-xs:.857143rem;--font-size-code:.928571rem;--font-weight-ui:400;--font-weight-code:400;--letter-spacing-ui:0;--letter-spacing-code:0;--font-family-ui:system-ui, sans-serif;--font-family-code:"JetBrains Mono", monospace;--line-height-ui:1.5;--diffs-font-family:var(--font-family-code);--diffs-line-height:1.75;font-family:var(--font-family-ui);font-size:14px;font-weight:var(--font-weight-ui);letter-spacing:var(--letter-spacing-ui);line-height:var(--line-height-ui)}*,:before,:after{box-sizing:border-box;margin:0}body{background:var(--bg);color:var(--text);min-height:100vh}button,input,textarea{color:inherit;font:inherit}.app{min-height:100vh}.content{min-height:calc(100vh - var(--bar-height));padding:var(--content-padding-x)}.app.sidebar-open .content{margin-left:var(--sidebar-width)}.submit-popover{background:var(--surface);border:1px solid var(--border);box-shadow:0 18px 48px var(--popover-shadow);z-index:35;flex-direction:column;gap:12px;width:min(420px,100vw - 24px);padding:12px;display:flex;position:fixed}.submit-popover-input{resize:vertical;min-height:calc(7.5em + 1.5rem)}.submit-popover-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.empty{color:var(--text-muted);padding:32px 16px}.diff-stats{align-items:center;gap:6px;display:inline-flex}.stat-add{color:var(--accent-add)}.stat-del{color:var(--accent-del)}.brief-dialog-body-wrap{flex:auto;min-height:0;display:block;overflow:auto}.brief-dialog-empty{color:var(--text-muted);padding:1rem;font-size:16px}.brief-dialog-body{padding:1rem;font-size:16px}.dialog-backdrop{background:var(--dialog-backdrop);z-index:40;justify-content:center;align-items:flex-start;padding-block:40px 20px;padding-inline:20px;display:flex;position:fixed;inset:0}.dialog{background:var(--surface);border:1px solid var(--border);flex-direction:column;width:min(760px,100%);min-height:0;max-height:calc(100vh - 60px);display:flex;overflow:hidden}.dialog-header{background:var(--bg);border-bottom:1px solid var(--border);z-index:1;justify-content:space-between;align-items:center;gap:8px;padding:1rem;display:flex;position:sticky;top:0}.dialog-heading{min-width:0}.dialog-title{color:var(--text);font-size:16px}.dialog-actions{flex-shrink:0}.dialog-close{width:24px;height:24px;padding:0}.dialog-body-wrap{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:auto}.markdown-content{--markdown-code-block-border-color:color-mix(in srgb, var(--border) 86%, var(--bg));line-height:var(--line-height-ui);--markdown-code-block-font-size:calc(14 / 15 * 1rem);--markdown-code-block-margin-block:1em;--markdown-code-block-padding:8px 10px;--markdown-heading-letter-spacing:-.01em;--markdown-heading-margin-block:1em .75em;--markdown-heading-size:1.2em;--markdown-heading-weight:650;--markdown-inline-code-font-size:.9375em;--markdown-inline-code-padding-x:5px;--markdown-inline-code-padding-y:1px;--markdown-list-item-gap:.125em;--markdown-list-margin-block:1em;--markdown-list-nested-gap:.25em;--markdown-list-padding:1.5em;--markdown-paragraph-margin-block:1em;--markdown-prose-color:color-mix(in srgb, var(--text) 74%, var(--text-muted));--markdown-blockquote-color:color-mix(in srgb, var(--text) 47%, var(--text-muted));overflow-wrap:anywhere;white-space:normal;width:100%;min-width:0;max-width:100%}.markdown-content>:first-child{margin-block-start:0!important}.markdown-content>:last-child{margin-block-end:0!important}.markdown-content :where(h1,h2,h3,h4,h5,h6){color:var(--text);font-size:var(--markdown-heading-size);font-weight:var(--markdown-heading-weight);letter-spacing:var(--markdown-heading-letter-spacing);margin-block:var(--markdown-heading-margin-block);line-height:1.2}.markdown-content p{margin-block:var(--markdown-paragraph-margin-block)}.markdown-content p,.markdown-content li{color:var(--markdown-prose-color)}.markdown-content code{background:var(--code-inline-bg);color:var(--code-inline-text);font-family:var(--font-family-code);font-size:var(--markdown-inline-code-font-size);font-weight:var(--font-weight-code);letter-spacing:var(--letter-spacing-code);padding-block:var(--markdown-inline-code-padding-y);padding-inline:var(--markdown-inline-code-padding-x)}.markdown-content pre{border:1px solid var(--markdown-code-block-border-color);box-sizing:border-box;contain:inline-size;margin-block:var(--markdown-code-block-margin-block);min-width:0;max-width:100%;padding:var(--markdown-code-block-padding);white-space:pre;overflow-x:auto;background:var(--bg)!important}.markdown-content pre code{color:var(--text-muted);font-size:var(--markdown-code-block-font-size);min-width:0;max-width:100%;white-space:inherit;background:0 0;padding:0;display:block}.markdown-content ul,.markdown-content ol{margin-block:var(--markdown-list-margin-block);padding-left:var(--markdown-list-padding)}.markdown-content :where(h1,h2,h3,h4,h5,h6)+ul,.markdown-content :where(h1,h2,h3,h4,h5,h6)+ol{margin-block-start:0}.markdown-content ul{list-style:outside}.markdown-content ol{list-style:decimal}.markdown-content li+li{margin-top:var(--markdown-list-item-gap)}.markdown-content li::marker{color:var(--text-muted)}.markdown-content li>p{margin:0}.markdown-content li>p+p{margin-top:var(--markdown-list-nested-gap)}.markdown-content li>ul,.markdown-content li>ol{margin-block:var(--markdown-list-nested-gap) 0}.markdown-content blockquote{border-inline-start:2px solid var(--text-muted);color:var(--markdown-blockquote-color);padding-inline-start:.75em}.markdown-content strong{color:var(--text);font-weight:600}.markdown-content hr{border-bottom:0;border-inline:0;border-top:1px solid var(--thread-border-subtle);margin:1.5em 0}.markdown-content a{color:var(--text);text-underline-offset:2px;text-decoration:underline}.checkbox-btn{color:var(--text-muted);cursor:pointer;font-size:var(--font-size-xs);white-space:nowrap;align-items:center;gap:6px;padding:4px 0;display:inline-flex;position:relative}.checkbox-btn:hover{color:var(--text)}.checkbox-input{opacity:0;position:absolute;inset:0}.checkbox-box{border:1px solid var(--text-muted);color:var(--text-inverse);background:0 0;border-radius:0;flex:0 0 14px;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.checkbox-btn:hover .checkbox-box{border-color:var(--text)}.checkbox-input:focus-visible+.checkbox-box{border-color:var(--border-focus)}.checkbox-input:checked+.checkbox-box{background:var(--accent-add);border-color:var(--accent-add);color:var(--text-inverse)}.detached-thread-dialog-body-wrap{flex:auto;min-height:0;font-size:15px;display:flex;overflow:hidden}.detached-thread-dialog-layout{flex-direction:column;flex:auto;min-height:0;display:flex}.detached-thread-dialog-messages{flex:auto;min-height:0;overflow:auto}.detached-thread-dialog-message{padding:1rem}.detached-thread-dialog-message+.detached-thread-dialog-message{border-top:1px solid var(--border)}.detached-thread-dialog-message-assistant{background:var(--thread-agent-surface)}.detached-thread-dialog-message-header{justify-content:flex-start;align-items:center;gap:8px;margin-bottom:.5rem;display:flex}.detached-thread-dialog-role{color:var(--text);font-weight:600;display:inline-block}.detached-thread-dialog-delete{appearance:none;color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:.125rem;display:inline-flex}.detached-thread-dialog-delete:hover{color:var(--text)}.detached-thread-dialog-thinking{color:var(--text-muted);display:block}.detached-thread-dialog-composer{background:var(--bg);border-top:1px solid var(--border);flex:none;padding:1rem}.detached-thread-dialog-composer .btn,.detached-thread-dialog-composer .checkbox-btn{font-size:15px}.detached-thread-dialog-input{resize:vertical;min-height:96px}.detached-thread-dialog-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:.5rem;display:flex}.detached-thread-dialog-secondary{border-color:var(--thread-border-subtle);color:var(--text-muted);background:0 0}.detached-thread-dialog-secondary:hover{border-color:var(--border);background:var(--surface-hover);color:var(--text)}.comment-editor{border:1px solid var(--border);border-left:2px solid var(--thread-border-muted);background:var(--surface);box-sizing:border-box;font-size:var(--font-size-ui);border-radius:0;max-width:800px;margin:6px 10px 8px;padding:8px 10px 8px 12px}.comment-input{min-height:56px;font-size:var(--font-size-ui);resize:vertical}.comment-actions{justify-content:flex-end;align-items:center;gap:4px;margin-top:6px;display:flex}.comment-actions .checkbox-btn{font-size:var(--font-size-ui);margin-inline-end:auto}.thread-card{background:var(--surface);border:1px solid var(--border);font-size:var(--font-size-lg);max-width:800px;margin:.25rem}.thread-card.resolved{border-color:var(--thread-border-strong)}.thread-header-row,.thread-collapsed-row{font-size:var(--font-size-sm);padding-block:.375rem;padding-inline:1rem}.thread-toggle{appearance:none;color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.25rem;margin-block:0;margin-inline:-.5rem;padding-block:.25rem;padding-inline:.5rem;display:inline-flex}.thread-toggle:hover{color:var(--text)}.thread-msg{padding-block:1rem;padding-inline:1rem}.thread-messages>:first-child{padding-block-start:0;padding-inline:1rem}.thread-msg+.thread-msg{border-top:1px solid var(--border)}.thread-msg-assistant{background:var(--thread-agent-surface)}.thread-msg-header{justify-content:flex-start;align-items:center;gap:8px;margin-block-end:.25rem;display:flex}.thread-msg-role{color:var(--text);font-weight:600;display:inline-block}.thread-msg-delete{appearance:none;color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:.125rem;display:inline-flex}.thread-msg-delete:hover{color:var(--text)}.thread-msg-thinking{color:var(--text-muted);display:block}.thread-footer{background:var(--bg);border-block-start:1px solid var(--border);padding-block:.5rem;padding-inline:1rem}.thread-reply-input{resize:vertical;min-height:calc(4.5em + 1.5rem);padding:.75rem}.thread-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.25rem;display:flex}.thread-reply-input+.thread-actions{margin-block-start:.75rem}.thread-actions .checkbox-btn{font-size:var(--font-size-ui);margin-inline-end:auto}.file-section{border:1px solid var(--border);background:var(--surface);scroll-margin-top:calc(var(--bar-height) + var(--file-gap));border-radius:0}.file-section+.file-section{margin-top:var(--file-gap)}.file-header{top:var(--bar-height);z-index:10;padding:0 var(--content-padding-x);background:var(--file-header-bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;height:36px;display:flex;position:sticky}.file-header:hover{background:var(--file-header-bg-hover)}.file-section.collapsed .file-header{border-bottom:none}.file-toggle{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;min-width:0;padding:0;display:flex}.file-toggle:hover{color:var(--text)}.file-path{font-size:var(--font-size-ui);color:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.file-thread-count{color:var(--text-muted);font-size:var(--font-size-xs);flex-shrink:0;align-items:center;gap:4px;margin-left:4px;display:inline-flex}.file-meta{font-size:var(--font-size-ui);flex-shrink:0;align-items:center;gap:10px;display:flex}.viewed-checkbox{font-size:var(--font-size-xs)}.file-body{background:var(--bg);border-bottom-right-radius:8px;border-bottom-left-radius:8px}.diff-view{width:100%;font-size:var(--font-size-code);font-weight:var(--font-weight-code);letter-spacing:var(--letter-spacing-code);display:block}.diff-placeholder{color:var(--text-muted);font-size:var(--font-size-ui);padding:1rem var(--content-padding-x)}.sidebar{background:var(--surface);border-right:1px solid var(--border);bottom:0;left:0;top:var(--bar-height);width:var(--sidebar-width);z-index:15;flex-direction:column;gap:12px;padding-block:12px;display:flex;position:fixed;overflow-y:auto;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-section{flex-direction:column;gap:6px;display:flex}.sidebar-section-header{justify-content:space-between;align-items:center;gap:8px;padding-inline:12px;display:flex}.sidebar-section-title{color:var(--text);font-size:var(--font-size-sm);font-weight:500}.sidebar-action{min-height:28px;padding:0 8px}.sidebar-conversations,.sidebar-file-list{flex-direction:column;display:flex}.sidebar-divider{background:var(--border);flex:0 0 1px;height:1px}.sidebar-empty{color:var(--text-muted);font-size:var(--font-size-sm);padding-inline:12px}.sidebar-thread-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding-block:4px;padding-inline:12px;display:block}.sidebar-thread-item:hover,.sidebar-thread-item.selected{background:var(--surface-hover)}.sidebar-thread-item.resolved{color:var(--text-muted)}.sidebar-thread-row{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.sidebar-thread-kind{color:currentColor;opacity:.5;flex:none}.sidebar-thread-name{color:currentColor;font-size:var(--font-size-ui);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;display:block;overflow:hidden}.sidebar-thread-status-dot{background:var(--text-muted);border-radius:999px;flex:0 0 6px;width:6px;height:6px}.sidebar-thread-status-dot.active{background:var(--accent-add)}.sidebar-file-group{flex-direction:column;display:flex}.sidebar-file-directory{color:var(--text-muted);font-family:var(--font-family-code);text-overflow:ellipsis;white-space:nowrap;height:28px;padding:4px 12px;line-height:1.25;overflow:hidden}.sidebar-item{color:var(--text);cursor:pointer;font-family:var(--font-family-code);text-align:left;background:0 0;border:none;width:100%;height:28px;padding:4px 12px 4px 18px;line-height:1.25;display:block}.sidebar-row{justify-content:space-between;align-items:center;gap:8px;width:100%;height:100%;display:flex}.sidebar-item:hover{background:var(--surface-hover)}.sidebar-item.viewed{color:var(--text-muted)}.sidebar-item.viewed .sidebar-file-status,.sidebar-item.viewed .stat-add,.sidebar-item.viewed .stat-del{opacity:.55}.sidebar-file-status{color:var(--text-muted);flex:none}.sidebar-file-status.added{color:var(--sidebar-status-add)}.sidebar-file-status.deleted{color:var(--sidebar-status-del)}.sidebar-file-status.modified,.sidebar-file-status.renamed,.sidebar-file-status.copied,.sidebar-file-status.type-changed,.sidebar-file-status.unmerged{color:var(--sidebar-status-change)}.sidebar-file-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;display:block;overflow:hidden}.sidebar-stats{flex-shrink:0;gap:8px;display:flex}.top-bar{--top-bar-gap:8px;z-index:20;width:100%;max-width:100vw;height:var(--bar-height);background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:0 12px;display:flex;position:sticky;top:0;overflow:hidden}.top-bar-left,.top-bar-right{align-items:center;gap:var(--top-bar-gap);min-width:0;display:flex}.top-bar-left{flex:1 1 0;overflow:hidden}.top-bar-right{flex:none}.top-bar-meta{color:var(--text-muted);font-size:var(--font-size-sm)}.top-bar-meta-dim{opacity:.5}.top-bar-status{font-size:var(--font-size-xs)}.top-bar-brief-action{border-color:var(--thread-border-subtle);min-height:26px;color:var(--text);background:0 0;padding:0 8px}.top-bar-brief-action:hover{background:var(--surface-hover)}.top-bar-diff-meta{align-items:center;gap:var(--top-bar-gap);min-width:0;font-size:var(--font-size-sm);flex:1 1 0;display:inline-flex;overflow:hidden}.top-bar-diff-meta .diff-stats{flex:none}.top-bar-diff-command{text-overflow:ellipsis;white-space:nowrap;opacity:.4;flex:auto;min-width:0;overflow:hidden}.top-bar-viewed{align-items:center;gap:var(--top-bar-gap);color:var(--text-muted);font-size:var(--font-size-sm);white-space:nowrap;display:inline-flex}.top-bar-viewed-ring{border-radius:999px;flex:0 0 16px;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.top-bar-viewed-ring-inner{background:var(--surface);border-radius:999px;width:10px;height:10px;display:block}.top-bar-viewed-text{color:var(--text-muted)}.top-bar-toggle{align-items:center;gap:var(--top-bar-gap);color:var(--text-muted);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:2px 0;display:inline-flex}.top-bar-toggle:hover{color:var(--text)}.top-bar-toggle-switch{border:1px solid var(--border);background:var(--surface-hover);border-radius:0;align-items:center;width:24px;height:14px;padding:1px;display:inline-flex}.top-bar-toggle-thumb{background:var(--text-muted);border-radius:0;width:10px;height:10px;display:block}.top-bar-toggle.active{color:var(--text)}.top-bar-toggle.active .top-bar-toggle-switch{background:var(--accent-add);border-color:var(--accent-add)}.top-bar-toggle.active .top-bar-toggle-thumb{background:var(--text-inverse);transform:translate(10px)}.top-bar-action{border:1px solid var(--border);background:var(--surface);min-height:28px;font-size:var(--font-size-ui);gap:6px;padding:0 10px}.top-bar-action:hover{background:var(--surface-hover)}.top-bar-action-primary{color:var(--text-inverse);border-color:var(--accent-primary);background:var(--accent-primary);font-weight:500}.top-bar-action-primary:hover{color:var(--text-inverse);background:var(--accent-primary-hover)}.top-bar-submit-group{display:inline-flex}.top-bar-submit-main{border-right-color:var(--button-split-border)}.top-bar-submit-menu{justify-content:center;min-width:28px;padding-inline:6px}.top-bar-submit-main+.top-bar-submit-menu{border-left:0}.top-bar-action-cancel{min-width:28px;color:var(--accent-del-muted);background:var(--accent-del-subtle);border-color:#0000;justify-content:center;padding:0}.top-bar-action-cancel:hover{color:var(--accent-del);background:var(--accent-del-subtle-hover);border-color:#0000}.toggle-group{border:1px solid var(--border);border-radius:0;display:inline-flex;overflow:hidden}.toggle-group-item{color:var(--text-muted);font-size:var(--font-size-ui);cursor:pointer;background:0 0;border:none;padding:4px 10px}.toggle-group-item.active{background:var(--surface-hover);color:var(--text)}.toggle-group-item:hover:not(.active){color:var(--text)}