@zihanw/pi-forge 0.5.2 → 0.5.4

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 (88) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +22 -21
  3. package/README.zh-CN.md +22 -21
  4. package/dist/agent-profile.js +5 -5
  5. package/dist/agent-profile.js.map +1 -1
  6. package/dist/codecs/agent-profile.js +4 -4
  7. package/dist/codecs/agent-profile.js.map +1 -1
  8. package/dist/codecs/prompt-stack.d.ts +2 -2
  9. package/dist/codecs/prompt-stack.js +20 -20
  10. package/dist/codecs/prompt-stack.js.map +1 -1
  11. package/dist/compile-cycle.d.ts +6 -1
  12. package/dist/compile-cycle.d.ts.map +1 -1
  13. package/dist/compile-cycle.js +2 -0
  14. package/dist/compile-cycle.js.map +1 -1
  15. package/dist/compiler.d.ts +7 -1
  16. package/dist/compiler.d.ts.map +1 -1
  17. package/dist/compiler.js +70 -2
  18. package/dist/compiler.js.map +1 -1
  19. package/dist/context-diff-history.d.ts +2 -0
  20. package/dist/context-diff-history.d.ts.map +1 -1
  21. package/dist/context-diff-history.js +9 -0
  22. package/dist/context-diff-history.js.map +1 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +4 -2
  25. package/dist/index.js.map +1 -1
  26. package/dist/lifecycle.d.ts.map +1 -1
  27. package/dist/lifecycle.js +12 -3
  28. package/dist/lifecycle.js.map +1 -1
  29. package/dist/preset-command.d.ts +2 -0
  30. package/dist/preset-command.d.ts.map +1 -1
  31. package/dist/preset-command.js +22 -14
  32. package/dist/preset-command.js.map +1 -1
  33. package/dist/preview.d.ts.map +1 -1
  34. package/dist/preview.js +3 -3
  35. package/dist/preview.js.map +1 -1
  36. package/dist/profile-command.d.ts +4 -1
  37. package/dist/profile-command.d.ts.map +1 -1
  38. package/dist/profile-command.js +15 -11
  39. package/dist/profile-command.js.map +1 -1
  40. package/dist/profile-service.js +4 -4
  41. package/dist/profile-service.js.map +1 -1
  42. package/dist/prompt-cache-warning.d.ts +23 -0
  43. package/dist/prompt-cache-warning.d.ts.map +1 -0
  44. package/dist/prompt-cache-warning.js +74 -0
  45. package/dist/prompt-cache-warning.js.map +1 -0
  46. package/dist/repositories/prompt-stack.js +8 -8
  47. package/dist/repositories/prompt-stack.js.map +1 -1
  48. package/dist/runtime/profile-runtime.js +3 -3
  49. package/dist/runtime/profile-runtime.js.map +1 -1
  50. package/dist/runtime/prompt-stack-runtime.js +1 -1
  51. package/dist/runtime/prompt-stack-runtime.js.map +1 -1
  52. package/dist/runtime/tool-policy-runtime.d.ts.map +1 -1
  53. package/dist/runtime/tool-policy-runtime.js +16 -4
  54. package/dist/runtime/tool-policy-runtime.js.map +1 -1
  55. package/dist/runtime/web-editor-runtime.js +7 -7
  56. package/dist/runtime/web-editor-runtime.js.map +1 -1
  57. package/dist/subagent-host.js +4 -4
  58. package/dist/subagent-host.js.map +1 -1
  59. package/dist/web-editor/client-script.generated.d.ts.map +1 -1
  60. package/dist/web-editor/client-script.generated.js +1 -1
  61. package/dist/web-editor/client-script.generated.js.map +1 -1
  62. package/dist/web-editor/client-styles.generated.d.ts.map +1 -1
  63. package/dist/web-editor/client-styles.generated.js +1 -1
  64. package/dist/web-editor/client-styles.generated.js.map +1 -1
  65. package/dist/web-editor/server.js +4 -4
  66. package/dist/web-editor/server.js.map +1 -1
  67. package/dist/web-editor/styles.d.ts.map +1 -1
  68. package/dist/web-editor/styles.js +105 -2
  69. package/dist/web-editor/styles.js.map +1 -1
  70. package/dist/web-editor/types.d.ts +11 -1
  71. package/dist/web-editor/types.d.ts.map +1 -1
  72. package/dist/web-host.d.ts.map +1 -1
  73. package/dist/web-host.js +30 -14
  74. package/dist/web-host.js.map +1 -1
  75. package/docs/README.md +5 -5
  76. package/docs/concepts/prompt-stacks.md +17 -17
  77. package/docs/design/pi-forge-system-update-design-notes.md +229 -0
  78. package/docs/development/roadmap.md +4 -2
  79. package/docs/guides/use-cases.md +1 -1
  80. package/docs/guides/web-editor.md +10 -9
  81. package/docs/zh-CN/README.md +4 -4
  82. package/docs/zh-CN/concepts/prompt-stacks.md +11 -11
  83. package/docs/zh-CN/guides/web-editor.md +8 -7
  84. package/examples/custom-system-status-extension/README.md +5 -6
  85. package/examples/custom-system-status-extension/index.ts +11 -6
  86. package/examples/fake-assistant-direct-output-prompt-stack.json +48 -0
  87. package/examples/minimal-prompt-stack.json +7 -3
  88. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"client-script.generated.js","sourceRoot":"","sources":["../../src/web-editor/client-script.generated.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,CAAC,MAAM,oBAAoB,GAAW,2ouhBAA2ouhB,CAAC"}
1
+ {"version":3,"file":"client-script.generated.js","sourceRoot":"","sources":["../../src/web-editor/client-script.generated.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,CAAC,MAAM,oBAAoB,GAAW,gskiBAAgskiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"client-styles.generated.d.ts","sourceRoot":"","sources":["../../src/web-editor/client-styles.generated.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,oBAAoB,EAAE,MAA08nB,CAAC"}
1
+ {"version":3,"file":"client-styles.generated.d.ts","sourceRoot":"","sources":["../../src/web-editor/client-styles.generated.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,oBAAoB,EAAE,MAA2ttB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  // Generated by scripts/build-web-client.mjs. Do not edit.
2
- export const EDITOR_CLIENT_STYLES = "\n.profile-editor[data-v-9cfe5c37] {\n\tmax-width: 1050px;\n}\n.profile-editor-head[data-v-9cfe5c37] {\n\tdisplay: flex;\n\talign-items: center;\n\tflex-wrap: wrap;\n\tgap: 8px;\n\tpadding-bottom: 12px;\n\tborder-bottom: 1px solid var(--line);\n}\n.profile-editor-title[data-v-9cfe5c37] {\n\tfont-size: 18px;\n\tfont-weight: 700;\n}\n.profile-editor-note[data-v-9cfe5c37],\n.profile-field small[data-v-9cfe5c37] {\n\tdisplay: block;\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.profile-form[data-v-9cfe5c37] {\n\tdisplay: grid;\n\tgrid-template-columns: repeat(2, minmax(0, 1fr));\n\tgap: 14px;\n\tmargin-top: 14px;\n}\n.profile-field[data-v-9cfe5c37] {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 5px;\n\tmin-width: 0;\n}\n.profile-field > span[data-v-9cfe5c37] {\n\tfont-weight: 650;\n}\n.profile-field-wide[data-v-9cfe5c37] {\n\tgrid-column: 1 / -1;\n}\n.profile-field textarea[data-v-9cfe5c37] {\n\tmin-height: 90px;\n}\n.profile-field-warning[data-v-9cfe5c37] {\n\tcolor: var(--warning) !important;\n}\n.profile-check[data-v-9cfe5c37] {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tgap: 8px;\n\tpadding: 10px;\n\tborder: 1px solid var(--line);\n\tborder-radius: 6px;\n\tbackground: var(--pane-soft);\n}\n.profile-check input[data-v-9cfe5c37] {\n\twidth: auto;\n\tmargin-top: 3px;\n}\n.profile-check span[data-v-9cfe5c37] {\n\tdisplay: flex;\n\tflex-direction: column;\n}\n.profile-editor-status[data-v-9cfe5c37],\n.profile-editor-validation[data-v-9cfe5c37] {\n\tmargin-top: 14px;\n}\n.profile-editor-status[data-v-9cfe5c37] {\n\tcolor: var(--success);\n}\n.profile-editor-status.error[data-v-9cfe5c37],\n.profile-editor-validation-summary.error[data-v-9cfe5c37] {\n\tcolor: var(--error);\n}\n.profile-editor-dirty[data-v-9cfe5c37] {\n\tborder: 1px solid var(--warning);\n\tborder-radius: 999px;\n\tpadding: 2px 8px;\n\tbackground: var(--warning-bg);\n\tcolor: var(--warning);\n\tfont-size: 12px;\n}\n.profile-editor-validation-summary.ready[data-v-9cfe5c37] {\n\tcolor: var(--success);\n}\n.profile-editor-validation-summary[data-v-9cfe5c37] {\n\tmargin-bottom: 8px;\n\tfont-weight: 650;\n}\n@media (max-width: 700px) {\n.profile-form[data-v-9cfe5c37] {\n\t\tgrid-template-columns: 1fr;\n}\n.profile-field-wide[data-v-9cfe5c37] {\n\t\tgrid-column: auto;\n}\n}\n\n.profile-surface[data-v-e0385a21] {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n\tbackground: var(--bg);\n}\n.profile-toolbar[data-v-e0385a21] {\n\tmin-height: 64px;\n\tpadding: 10px 12px;\n\tborder-bottom: 1px solid var(--line);\n\tbackground: var(--pane);\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n}\n.profile-toolbar .status[data-v-e0385a21] {\n\tflex: 1 1 120px;\n}\n#profileCreateScope[data-v-e0385a21] {\n\tflex: 0 0 auto;\n\twidth: 110px;\n}\n.profile-heading[data-v-e0385a21] {\n\tfont-size: 17px;\n\tfont-weight: 700;\n}\n.profile-subheading[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.profile-layout[data-v-e0385a21] {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: grid;\n\tgrid-template-columns: minmax(260px, 330px) minmax(0, 1fr);\n}\n.profile-sidebar[data-v-e0385a21] {\n\tmin-width: 0;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n\tborder-right: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.profile-list[data-v-e0385a21] {\n\tflex: 1;\n\tmin-height: 0;\n\tpadding: 8px;\n\toverflow: auto;\n}\n.profile-row[data-v-e0385a21] {\n\tposition: relative;\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: stretch;\n\twidth: 100%;\n\tmargin-bottom: 6px;\n\tpadding: 9px;\n\ttext-align: left;\n\tborder-color: transparent;\n\tbackground: transparent;\n}\n.profile-row[data-v-e0385a21]:hover {\n\tbackground: var(--control-muted);\n}\n.profile-row.selected[data-v-e0385a21] {\n\tborder-color: var(--accent);\n\tbackground: var(--accent-bg);\n}\n.profile-row-title[data-v-e0385a21] {\n\tfont-weight: 700;\n}\n.profile-row-name[data-v-e0385a21],\n.profile-row-meta[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\toverflow-wrap: anywhere;\n}\n.profile-row-state[data-v-e0385a21] {\n\talign-self: flex-start;\n\tmargin-top: 6px;\n\tfont-size: 12px;\n}\n.profile-row-state.ready[data-v-e0385a21],\n.profile-applicability.ready[data-v-e0385a21] {\n\tcolor: var(--success);\n}\n.profile-row-state.warning[data-v-e0385a21] {\n\tcolor: var(--warning);\n}\n.profile-row-state.error[data-v-e0385a21],\n.profile-applicability.error[data-v-e0385a21] {\n\tcolor: var(--error);\n}\n.profile-main[data-v-e0385a21] {\n\tmin-width: 0;\n\tmin-height: 0;\n\toverflow: auto;\n\tpadding: 16px;\n}\n.profile-card[data-v-e0385a21] {\n\tmax-width: 1050px;\n\tmargin: 0 auto 14px;\n\tpadding: 14px;\n\tborder: 1px solid var(--line);\n\tborder-radius: 8px;\n\tbackground: var(--pane);\n}\n.profile-summary-card[data-v-e0385a21] {\n\tdisplay: grid;\n\tgrid-template-columns: minmax(0, 1fr) auto;\n\tgap: 8px 16px;\n}\n.profile-title[data-v-e0385a21] {\n\tfont-size: 19px;\n\tfont-weight: 700;\n}\n.profile-selector[data-v-e0385a21],\n.profile-path[data-v-e0385a21],\n.profile-note[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\toverflow-wrap: anywhere;\n}\n.profile-applicability[data-v-e0385a21] {\n\tfont-weight: 650;\n}\n.profile-summary-actions[data-v-e0385a21] {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n}\n.profile-description[data-v-e0385a21] {\n\tgrid-column: 1 / -1;\n\tmargin: 4px 0 0;\n}\n.profile-card-title[data-v-e0385a21] {\n\tmargin-bottom: 10px;\n\tfont-weight: 700;\n}\n.profile-transition-grid[data-v-e0385a21] {\n\tdisplay: grid;\n\tgrid-template-columns: minmax(100px, .7fr) repeat(2, minmax(180px, 1fr));\n\tgap: 1px;\n\tborder: 1px solid var(--line);\n\tbackground: var(--line);\n}\n.profile-transition-grid > div[data-v-e0385a21] {\n\tmin-width: 0;\n\tpadding: 8px;\n\tbackground: var(--pane);\n\toverflow-wrap: anywhere;\n}\n.profile-transition-head[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\tfont-weight: 650;\n}\n.profile-detail-row[data-v-e0385a21] {\n\tdisplay: grid;\n\tgrid-template-columns: minmax(180px, .8fr) minmax(0, 2fr);\n\tgap: 12px;\n\tmargin-top: 10px;\n}\n.profile-detail-row > span[data-v-e0385a21] {\n\tcolor: var(--muted);\n}\n.profile-detail-row code[data-v-e0385a21] {\n\toverflow-wrap: anywhere;\n\twhite-space: normal;\n}\n.profile-drift[data-v-e0385a21] {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tgap: 8px 16px;\n\tmargin-top: 10px;\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.profile-message[data-v-e0385a21],\n.profile-empty[data-v-e0385a21] {\n\tpadding: 20px;\n\tcolor: var(--muted);\n}\n.profile-message.error[data-v-e0385a21] {\n\tcolor: var(--error);\n}\n.profile-message.warning[data-v-e0385a21] {\n\tcolor: var(--warning);\n}\n@media (max-width: 800px) {\n.profile-layout[data-v-e0385a21] {\n\t\tdisplay: block;\n\t\toverflow: auto;\n}\n.profile-sidebar[data-v-e0385a21] {\n\t\tborder-right: 0;\n\t\tborder-bottom: 1px solid var(--line);\n}\n.profile-list[data-v-e0385a21] {\n\t\tflex: none;\n\t\tmax-height: 35vh;\n}\n.profile-main[data-v-e0385a21] {\n\t\toverflow: visible;\n}\n.profile-transition-grid[data-v-e0385a21] {\n\t\tgrid-template-columns: minmax(80px, .7fr) repeat(2, minmax(120px, 1fr));\n\t\tfont-size: 12px;\n}\n}\n\n.schema-record-row[data-v-f9733942] {\n\tgrid-template-columns: minmax(150px, 220px) repeat(auto-fit, minmax(150px, 1fr)) 92px;\n}\n.record-empty[data-v-f9733942] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\tpadding: 8px 0;\n}\n.schema-field-error[data-v-f9733942] {\n\tcolor: var(--error);\n\tfont-size: 12px;\n\tmargin-top: 4px;\n}\n.record-cell-label[data-v-f9733942] {\n\tdisplay: none;\n}\n@media (max-width: 700px) {\n.schema-record-row[data-v-f9733942] {\n\t\tgrid-template-columns: minmax(0, 1fr);\n}\n.schema-record-row.header[data-v-f9733942] {\n\t\tdisplay: none;\n}\n.record-cell-label[data-v-f9733942] {\n\t\tdisplay: block;\n}\n}\n\n.context-diff-dock[data-v-f794256d] { height: 100%; min-height: 0; display: flex; flex-direction: column; gap: 10px;\n}\n.context-diff-mode-tabs[data-v-f794256d] { display: flex; gap: 6px; flex: 0 0 auto;\n}\n.context-diff-expand[data-v-f794256d] { margin-left: auto;\n}\n.context-diff-mode-tabs button.active[data-v-f794256d] { border-color: var(--accent); background: var(--accent-bg); color: var(--accent);\n}\n.context-diff-panel-head[data-v-f794256d] { display: flex; align-items: center; gap: 8px; flex: 0 0 auto;\n}\n.context-diff-title[data-v-f794256d] { font-weight: 700;\n}\n.context-diff-meta[data-v-f794256d] { color: var(--muted); font-size: 12px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n}\n.context-diff-meta .error[data-v-f794256d], .context-diff-error[data-v-f794256d] { color: var(--error);\n}\n.context-diff-refresh[data-v-f794256d] { margin-left: auto; min-height: 28px; font-size: 12px; padding: 2px 8px;\n}\n.context-diff-compiled[data-v-f794256d], .context-diff-diff[data-v-f794256d] { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 8px; overflow: auto;\n}\n.context-diff-sections[data-v-f794256d], .context-diff-blocks[data-v-f794256d] { display: flex; flex-direction: column; gap: 8px;\n}\n.context-diff-section[data-v-f794256d] { border: 1px solid var(--line); border-radius: 6px; background: var(--pane); overflow: hidden;\n}\n.context-diff-section summary[data-v-f794256d] { display: flex; align-items: center; gap: 8px; padding: 8px 10px; cursor: pointer; list-style: none; border-bottom: 1px solid transparent;\n}\n.context-diff-section[open] summary[data-v-f794256d] { border-bottom-color: var(--line);\n}\n.section-title[data-v-f794256d] { font-weight: 650;\n}\n.section-meta[data-v-f794256d] { color: var(--muted); font-size: 12px;\n}\n.section-text[data-v-f794256d], .block-text[data-v-f794256d] { margin: 0; padding: 10px; background: var(--code-bg); color: var(--code-text); white-space: pre-wrap; overflow: auto; font: 12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n}\n.context-diff-summary[data-v-f794256d] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--pane); font-weight: 650;\n}\n.summary-delta.positive[data-v-f794256d] { color: var(--success);\n}\n.summary-delta.negative[data-v-f794256d] { color: var(--error);\n}\n.summary-delta.neutral[data-v-f794256d] { color: var(--muted);\n}\n.diff-view-controls[data-v-f794256d] { margin-left: auto; display: flex; align-items: center; gap: 8px;\n}\n.diff-view-controls label[data-v-f794256d] { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 11px; font-weight: 500;\n}\n.diff-view-controls select[data-v-f794256d] { width: auto; min-height: 26px; padding: 2px 24px 2px 7px; font-size: 11px;\n}\n.diff-layout-buttons[data-v-f794256d] { display: inline-flex;\n}\n.diff-layout-buttons button[data-v-f794256d] { min-height: 26px; padding: 2px 7px; border-radius: 0; font-size: 11px;\n}\n.diff-layout-buttons button[data-v-f794256d]:first-child { border-radius: 4px 0 0 4px;\n}\n.diff-layout-buttons button[data-v-f794256d]:last-child { margin-left: -1px; border-radius: 0 4px 4px 0;\n}\n.diff-layout-buttons button.active[data-v-f794256d] { position: relative; border-color: var(--accent); background: var(--accent-bg); color: var(--accent);\n}\n.unchanged-toggle[data-v-f794256d] { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 400;\n}\n.unchanged-toggle input[data-v-f794256d] { width: auto;\n}\n.context-diff-details[data-v-f794256d] { border: 1px solid var(--line); border-radius: 6px; padding: 7px 10px; color: var(--muted); font-size: 12px; background: var(--pane-soft);\n}\n.context-diff-details summary[data-v-f794256d] { cursor: pointer; color: var(--text); font-weight: 650;\n}\n.context-diff-details[open] summary[data-v-f794256d] { margin-bottom: 6px;\n}\n.run-metadata-grid[data-v-f794256d] { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 4px 12px;\n}\n.run-metadata-grid strong[data-v-f794256d] { color: var(--text); overflow-wrap: anywhere;\n}\n.metadata-note[data-v-f794256d] { margin: 7px 0 0; line-height: 1.4;\n}\n.context-diff-block[data-v-f794256d] { display: grid; grid-template-columns: 4px minmax(0, 1fr); border: 1px solid var(--line); border-radius: 6px; background: var(--pane); overflow: hidden;\n}\n.block-gutter[data-v-f794256d] { background: var(--line);\n}\n.context-diff-block.added .block-gutter[data-v-f794256d] { background: var(--success);\n}\n.context-diff-block.removed .block-gutter[data-v-f794256d] { background: var(--error);\n}\n.context-diff-block.modified .block-gutter[data-v-f794256d] { background: var(--warning);\n}\n.block-content[data-v-f794256d] { min-width: 0; padding: 9px 10px 10px;\n}\n.block-head[data-v-f794256d] { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; margin-bottom: 7px;\n}\n.block-status[data-v-f794256d] { text-transform: uppercase; font-size: 11px; font-weight: 750; letter-spacing: .03em;\n}\n.context-diff-block.added .block-status[data-v-f794256d] { color: var(--success);\n}\n.context-diff-block.removed .block-status[data-v-f794256d] { color: var(--error);\n}\n.context-diff-block.modified .block-status[data-v-f794256d] { color: var(--warning);\n}\n.block-key[data-v-f794256d] { font-weight: 650;\n}\n.block-role[data-v-f794256d] { color: var(--muted); font-size: 12px;\n}\n.block-token-chip[data-v-f794256d] { margin-left: auto; border: 1px solid var(--line); border-radius: 999px; padding: 1px 8px; font-size: 12px; background: var(--control-muted);\n}\n.metadata-only-change[data-v-f794256d] { padding: 9px 10px; border: 1px solid color-mix(in srgb, var(--warning) 55%, var(--line)); border-radius: 4px; background: color-mix(in srgb, var(--warning) 10%, var(--pane)); color: var(--text); font-size: 12px; line-height: 1.45;\n}\n.git-diff[data-v-f794256d] { overflow: auto; border: 1px solid var(--line); border-radius: 4px; background: var(--code-bg); font: 12px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n}\n.git-line[data-v-f794256d] { min-width: max-content; color: var(--code-text);\n}\n.git-diff.unified .git-line[data-v-f794256d] { display: grid; grid-template-columns: 44px 44px 20px minmax(max-content, 1fr);\n}\n.git-line.added[data-v-f794256d] { background: color-mix(in srgb, var(--success) 12%, var(--code-bg));\n}\n.git-line.removed[data-v-f794256d] { background: color-mix(in srgb, var(--error) 12%, var(--code-bg));\n}\n.git-line.blank[data-v-f794256d] { min-height: 19px; background: var(--pane-soft);\n}\n.git-line code[data-v-f794256d] { display: block; min-height: 1.55em; padding: 0 8px; white-space: pre;\n}\n.git-line mark[data-v-f794256d] { border-radius: 2px; background: color-mix(in srgb, currentColor 22%, transparent); color: inherit; font: inherit;\n}\n.line-number[data-v-f794256d] { padding: 0 7px; border-right: 1px solid var(--line); color: var(--muted); text-align: right; user-select: none;\n}\n.line-marker[data-v-f794256d] { text-align: center; user-select: none;\n}\n.git-line.added .line-marker[data-v-f794256d] { color: var(--success);\n}\n.git-line.removed .line-marker[data-v-f794256d] { color: var(--error);\n}\n.git-line.note[data-v-f794256d] { color: var(--muted); font-style: italic;\n}\n.note-side[data-v-f794256d] { color: var(--text); font-style: normal; font-weight: 650;\n}\n.git-line-separator[data-v-f794256d] { min-width: max-content; padding: 1px 12px; border-block: 1px solid var(--line); background: var(--accent-bg); color: var(--muted); text-align: center;\n}\n.split-header[data-v-f794256d] { position: sticky; top: 0; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 720px; border-bottom: 1px solid var(--line); background: var(--pane); color: var(--muted); font: 600 11px/1.8 system-ui, sans-serif; text-transform: uppercase;\n}\n.split-header span[data-v-f794256d] { padding-left: 52px;\n}\n.split-header span + span[data-v-f794256d] { border-left: 1px solid var(--line);\n}\n.split-line[data-v-f794256d] { display: grid; grid-template-columns: repeat(2, minmax(360px, 1fr)); min-width: 720px;\n}\n.split-line > .git-line[data-v-f794256d] { display: grid; grid-template-columns: 44px 20px minmax(max-content, 1fr);\n}\n.split-line > .git-line + .git-line[data-v-f794256d] { border-left: 1px solid var(--line);\n}\n.split-separator[data-v-f794256d] { min-width: 720px;\n}\n.context-diff-empty[data-v-f794256d] { color: var(--muted); padding: 20px; border: 1px dashed var(--line); border-radius: 6px;\n}\n.context-diff-empty.compact[data-v-f794256d] { padding: 12px;\n}\n.context-diff-error[data-v-f794256d] { padding: 10px; border: 1px solid var(--error); border-radius: 6px; background: var(--error-bg);\n}\n@media (max-width: 1100px) {\n.diff-view-controls[data-v-f794256d] { order: 3; margin-left: 0; width: 100%;\n}\n}\n@media (max-width: 900px) {\n.context-diff-expand[data-v-f794256d] { display: none;\n}\n}\n\n.app-root {\n\theight: 100%;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n.surface-nav {\n\tflex: none;\n\theight: 40px;\n\tpadding: 4px 10px;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n\tborder-bottom: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.surface-brand {\n\tmargin-right: 8px;\n\tfont-weight: 750;\n\tletter-spacing: .02em;\n}\n.surface-nav button {\n\tmin-height: 32px;\n\tborder-color: transparent;\n\tbackground: transparent;\n}\n.surface-nav button.active {\n\tborder-color: var(--accent);\n\tbackground: var(--accent-bg);\n\tcolor: var(--accent);\n}\n.surface-nav-spacer {\n\tflex: 1 1 auto;\n}\n.surface-nav .theme-toggle {\n\tmin-height: 32px;\n\tborder-color: var(--line);\n\tbackground: var(--pane);\n}\n\n/* The global form rule gives every select width:100%; the locale picker in the\n nav bar must hug the right edge instead of stretching across it. */\n.surface-nav .locale-select {\n\tflex: none;\n\twidth: auto;\n\tmin-width: 0;\n\tmin-height: 32px;\n}\n\n/* Keep nav tab labels on one line (zh-CN labels wrapped in narrow headers). */\n.surface-nav button {\n\twhite-space: nowrap;\n}\n.editor-surface {\n\tflex: 1;\n\tmin-height: 0;\n}\n.settings-surface {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n\tbackground: var(--pane-soft);\n}\n.settings-surface-head {\n\tflex: none;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 24px;\n\tpadding: 18px 24px;\n\tborder-bottom: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.settings-surface-head h1 {\n\tmargin: 0;\n\tfont-size: 20px;\n}\n.settings-surface-head p {\n\tmargin: 4px 0 0;\n\tcolor: var(--muted);\n}\n.settings-surface-status {\n\tmargin-left: auto;\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.settings-surface-body {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: grid;\n\tgrid-template-columns: minmax(180px, 240px) minmax(0, 1fr);\n}\n.settings-nav {\n\tmin-width: 0;\n\tpadding: 14px 10px;\n\tborder-right: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.settings-nav button {\n\twidth: 100%;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: flex-start;\n\tmargin-bottom: 6px;\n}\n.settings-nav button.active {\n\tborder-color: var(--accent);\n\tbackground: var(--accent-bg);\n\tcolor: var(--accent);\n}\n.settings-panel {\n\tmin-width: 0;\n\tmin-height: 0;\n\toverflow: auto;\n\tpadding: 20px clamp(16px, 4vw, 48px);\n}\n.settings-panel > .schema-form {\n\twidth: min(100%, 1100px);\n\tmargin: 0 auto;\n}\n.legacy-editor-root {\n\theight: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n.legacy-editor-root .topbar {\n\tflex: none;\n}\n.editor-surface .shell {\n\tflex: 1;\n\tmin-height: 0;\n\theight: auto;\n}\n@media (max-width: 700px) {\n.surface-nav {\n\t\toverflow-x: auto;\n}\n.surface-nav > * {\n\t\tflex-shrink: 0;\n}\n.surface-nav-spacer {\n\t\tdisplay: none;\n}\n.settings-surface-head {\n\t\talign-items: flex-start;\n\t\tpadding: 14px 16px;\n}\n.settings-surface-status {\n\t\tmargin-left: auto;\n}\n.settings-surface-body {\n\t\tgrid-template-columns: minmax(0, 1fr);\n}\n.settings-nav {\n\t\tdisplay: flex;\n\t\tgap: 6px;\n\t\toverflow-x: auto;\n\t\tpadding: 8px;\n\t\tborder-right: 0;\n\t\tborder-bottom: 1px solid var(--line);\n}\n.settings-nav button {\n\t\twidth: auto;\n\t\tflex: 0 0 auto;\n\t\tmargin: 0;\n}\n.settings-panel {\n\t\tpadding: 14px 10px;\n}\n}\n/*$vite$:1*/";
2
+ export const EDITOR_CLIENT_STYLES = "\n.profile-editor[data-v-9cfe5c37] {\n\tmax-width: 1050px;\n}\n.profile-editor-head[data-v-9cfe5c37] {\n\tdisplay: flex;\n\talign-items: center;\n\tflex-wrap: wrap;\n\tgap: 8px;\n\tpadding-bottom: 12px;\n\tborder-bottom: 1px solid var(--line);\n}\n.profile-editor-title[data-v-9cfe5c37] {\n\tfont-size: 18px;\n\tfont-weight: 700;\n}\n.profile-editor-note[data-v-9cfe5c37],\n.profile-field small[data-v-9cfe5c37] {\n\tdisplay: block;\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.profile-form[data-v-9cfe5c37] {\n\tdisplay: grid;\n\tgrid-template-columns: repeat(2, minmax(0, 1fr));\n\tgap: 14px;\n\tmargin-top: 14px;\n}\n.profile-field[data-v-9cfe5c37] {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 5px;\n\tmin-width: 0;\n}\n.profile-field > span[data-v-9cfe5c37] {\n\tfont-weight: 650;\n}\n.profile-field-wide[data-v-9cfe5c37] {\n\tgrid-column: 1 / -1;\n}\n.profile-field textarea[data-v-9cfe5c37] {\n\tmin-height: 90px;\n}\n.profile-field-warning[data-v-9cfe5c37] {\n\tcolor: var(--warning) !important;\n}\n.profile-check[data-v-9cfe5c37] {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tgap: 8px;\n\tpadding: 10px;\n\tborder: 1px solid var(--line);\n\tborder-radius: 6px;\n\tbackground: var(--pane-soft);\n}\n.profile-check input[data-v-9cfe5c37] {\n\twidth: auto;\n\tmargin-top: 3px;\n}\n.profile-check span[data-v-9cfe5c37] {\n\tdisplay: flex;\n\tflex-direction: column;\n}\n.profile-editor-status[data-v-9cfe5c37],\n.profile-editor-validation[data-v-9cfe5c37] {\n\tmargin-top: 14px;\n}\n.profile-editor-status[data-v-9cfe5c37] {\n\tcolor: var(--success);\n}\n.profile-editor-status.error[data-v-9cfe5c37],\n.profile-editor-validation-summary.error[data-v-9cfe5c37] {\n\tcolor: var(--error);\n}\n.profile-editor-dirty[data-v-9cfe5c37] {\n\tborder: 1px solid var(--warning);\n\tborder-radius: 999px;\n\tpadding: 2px 8px;\n\tbackground: var(--warning-bg);\n\tcolor: var(--warning);\n\tfont-size: 12px;\n}\n.profile-editor-validation-summary.ready[data-v-9cfe5c37] {\n\tcolor: var(--success);\n}\n.profile-editor-validation-summary[data-v-9cfe5c37] {\n\tmargin-bottom: 8px;\n\tfont-weight: 650;\n}\n@media (max-width: 700px) {\n.profile-form[data-v-9cfe5c37] {\n\t\tgrid-template-columns: 1fr;\n}\n.profile-field-wide[data-v-9cfe5c37] {\n\t\tgrid-column: auto;\n}\n}\n\n.profile-surface[data-v-e0385a21] {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n\tbackground: var(--bg);\n}\n.profile-toolbar[data-v-e0385a21] {\n\tmin-height: 64px;\n\tpadding: 10px 12px;\n\tborder-bottom: 1px solid var(--line);\n\tbackground: var(--pane);\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n}\n.profile-toolbar .status[data-v-e0385a21] {\n\tflex: 1 1 120px;\n}\n#profileCreateScope[data-v-e0385a21] {\n\tflex: 0 0 auto;\n\twidth: 110px;\n}\n.profile-heading[data-v-e0385a21] {\n\tfont-size: 17px;\n\tfont-weight: 700;\n}\n.profile-subheading[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.profile-layout[data-v-e0385a21] {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: grid;\n\tgrid-template-columns: minmax(260px, 330px) minmax(0, 1fr);\n}\n.profile-sidebar[data-v-e0385a21] {\n\tmin-width: 0;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n\tborder-right: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.profile-list[data-v-e0385a21] {\n\tflex: 1;\n\tmin-height: 0;\n\tpadding: 8px;\n\toverflow: auto;\n}\n.profile-row[data-v-e0385a21] {\n\tposition: relative;\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: stretch;\n\twidth: 100%;\n\tmargin-bottom: 6px;\n\tpadding: 9px;\n\ttext-align: left;\n\tborder-color: transparent;\n\tbackground: transparent;\n}\n.profile-row[data-v-e0385a21]:hover {\n\tbackground: var(--control-muted);\n}\n.profile-row.selected[data-v-e0385a21] {\n\tborder-color: var(--accent);\n\tbackground: var(--accent-bg);\n}\n.profile-row-title[data-v-e0385a21] {\n\tfont-weight: 700;\n}\n.profile-row-name[data-v-e0385a21],\n.profile-row-meta[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\toverflow-wrap: anywhere;\n}\n.profile-row-state[data-v-e0385a21] {\n\talign-self: flex-start;\n\tmargin-top: 6px;\n\tfont-size: 12px;\n}\n.profile-row-state.ready[data-v-e0385a21],\n.profile-applicability.ready[data-v-e0385a21] {\n\tcolor: var(--success);\n}\n.profile-row-state.warning[data-v-e0385a21] {\n\tcolor: var(--warning);\n}\n.profile-row-state.error[data-v-e0385a21],\n.profile-applicability.error[data-v-e0385a21] {\n\tcolor: var(--error);\n}\n.profile-main[data-v-e0385a21] {\n\tmin-width: 0;\n\tmin-height: 0;\n\toverflow: auto;\n\tpadding: 16px;\n}\n.profile-card[data-v-e0385a21] {\n\tmax-width: 1050px;\n\tmargin: 0 auto 14px;\n\tpadding: 14px;\n\tborder: 1px solid var(--line);\n\tborder-radius: 8px;\n\tbackground: var(--pane);\n}\n.profile-summary-card[data-v-e0385a21] {\n\tdisplay: grid;\n\tgrid-template-columns: minmax(0, 1fr) auto;\n\tgap: 8px 16px;\n}\n.profile-title[data-v-e0385a21] {\n\tfont-size: 19px;\n\tfont-weight: 700;\n}\n.profile-selector[data-v-e0385a21],\n.profile-path[data-v-e0385a21],\n.profile-note[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\toverflow-wrap: anywhere;\n}\n.profile-applicability[data-v-e0385a21] {\n\tfont-weight: 650;\n}\n.profile-summary-actions[data-v-e0385a21] {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n}\n.profile-description[data-v-e0385a21] {\n\tgrid-column: 1 / -1;\n\tmargin: 4px 0 0;\n}\n.profile-card-title[data-v-e0385a21] {\n\tmargin-bottom: 10px;\n\tfont-weight: 700;\n}\n.profile-transition-grid[data-v-e0385a21] {\n\tdisplay: grid;\n\tgrid-template-columns: minmax(100px, .7fr) repeat(2, minmax(180px, 1fr));\n\tgap: 1px;\n\tborder: 1px solid var(--line);\n\tbackground: var(--line);\n}\n.profile-transition-grid > div[data-v-e0385a21] {\n\tmin-width: 0;\n\tpadding: 8px;\n\tbackground: var(--pane);\n\toverflow-wrap: anywhere;\n}\n.profile-transition-head[data-v-e0385a21] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\tfont-weight: 650;\n}\n.profile-detail-row[data-v-e0385a21] {\n\tdisplay: grid;\n\tgrid-template-columns: minmax(180px, .8fr) minmax(0, 2fr);\n\tgap: 12px;\n\tmargin-top: 10px;\n}\n.profile-detail-row > span[data-v-e0385a21] {\n\tcolor: var(--muted);\n}\n.profile-detail-row code[data-v-e0385a21] {\n\toverflow-wrap: anywhere;\n\twhite-space: normal;\n}\n.profile-drift[data-v-e0385a21] {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tgap: 8px 16px;\n\tmargin-top: 10px;\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.profile-message[data-v-e0385a21],\n.profile-empty[data-v-e0385a21] {\n\tpadding: 20px;\n\tcolor: var(--muted);\n}\n.profile-message.error[data-v-e0385a21] {\n\tcolor: var(--error);\n}\n.profile-message.warning[data-v-e0385a21] {\n\tcolor: var(--warning);\n}\n@media (max-width: 800px) {\n.profile-layout[data-v-e0385a21] {\n\t\tdisplay: block;\n\t\toverflow: auto;\n}\n.profile-sidebar[data-v-e0385a21] {\n\t\tborder-right: 0;\n\t\tborder-bottom: 1px solid var(--line);\n}\n.profile-list[data-v-e0385a21] {\n\t\tflex: none;\n\t\tmax-height: 35vh;\n}\n.profile-main[data-v-e0385a21] {\n\t\toverflow: visible;\n}\n.profile-transition-grid[data-v-e0385a21] {\n\t\tgrid-template-columns: minmax(80px, .7fr) repeat(2, minmax(120px, 1fr));\n\t\tfont-size: 12px;\n}\n}\n\n.schema-record-row[data-v-f9733942] {\n\tgrid-template-columns: minmax(150px, 220px) repeat(auto-fit, minmax(150px, 1fr)) 92px;\n}\n.record-empty[data-v-f9733942] {\n\tcolor: var(--muted);\n\tfont-size: 12px;\n\tpadding: 8px 0;\n}\n.schema-field-error[data-v-f9733942] {\n\tcolor: var(--error);\n\tfont-size: 12px;\n\tmargin-top: 4px;\n}\n.record-cell-label[data-v-f9733942] {\n\tdisplay: none;\n}\n@media (max-width: 700px) {\n.schema-record-row[data-v-f9733942] {\n\t\tgrid-template-columns: minmax(0, 1fr);\n}\n.schema-record-row.header[data-v-f9733942] {\n\t\tdisplay: none;\n}\n.record-cell-label[data-v-f9733942] {\n\t\tdisplay: block;\n}\n}\n\n.context-diff-dock[data-v-136213cf] { height: 100%; min-height: 0; display: flex; flex-direction: column; gap: 10px;\n}\n.context-diff-mode-tabs[data-v-136213cf] { display: flex; gap: 6px; flex: 0 0 auto;\n}\n.context-diff-expand[data-v-136213cf] { margin-left: auto;\n}\n.context-diff-mode-tabs button.active[data-v-136213cf] { border-color: var(--accent); background: var(--accent-bg); color: var(--accent);\n}\n.context-diff-panel-head[data-v-136213cf] { display: flex; align-items: center; gap: 8px; flex: 0 0 auto;\n}\n.context-diff-title[data-v-136213cf] { font-weight: 700;\n}\n.context-diff-meta[data-v-136213cf] { color: var(--muted); font-size: 12px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n}\n.context-diff-meta .error[data-v-136213cf], .context-diff-error[data-v-136213cf] { color: var(--error);\n}\n.context-diff-refresh[data-v-136213cf] { margin-left: auto; min-height: 28px; font-size: 12px; padding: 2px 8px;\n}\n.context-diff-copy-full[data-v-136213cf], .context-diff-copy-section[data-v-136213cf] { min-height: 28px; font-size: 12px; padding: 2px 8px;\n}\n.context-diff-copy-section[data-v-136213cf] { margin-left: auto;\n}\n.context-diff-diagnostics[data-v-136213cf] { display: flex; flex-direction: column; gap: 4px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--pane); font-size: 12px;\n}\n.context-diff-diagnostic.error[data-v-136213cf] { color: var(--error);\n}\n.context-diff-diagnostic.warning[data-v-136213cf] { color: var(--warning);\n}\n.context-diff-diagnostic.info[data-v-136213cf] { color: var(--muted);\n}\n.context-diff-compiled[data-v-136213cf], .context-diff-diff[data-v-136213cf] { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 8px; overflow: auto;\n}\n.context-diff-sections[data-v-136213cf], .context-diff-blocks[data-v-136213cf] { display: flex; flex-direction: column; gap: 8px;\n}\n.context-diff-group[data-v-136213cf] { border: 1px solid var(--line); border-radius: 6px; background: var(--pane-soft); overflow: hidden;\n}\n.context-diff-group-summary[data-v-136213cf] { display: flex; align-items: center; gap: 8px; padding: 8px 10px; cursor: pointer; list-style: none;\n}\n.context-diff-group-summary[data-v-136213cf]::-webkit-details-marker { display: none;\n}\n.context-diff-group-summary[data-v-136213cf]::before { content: \"▶\"; color: var(--muted); font-size: 10px;\n}\n.context-diff-group[open] > .context-diff-group-summary[data-v-136213cf] { border-bottom: 1px solid var(--line);\n}\n.context-diff-group[open] > .context-diff-group-summary[data-v-136213cf]::before { content: \"▼\";\n}\n.group-title[data-v-136213cf] { font-weight: 700;\n}\n.context-diff-group-messages[data-v-136213cf] { display: flex; flex-direction: column; gap: 8px; padding: 8px;\n}\n.context-diff-section[data-v-136213cf] { border: 1px solid var(--line); border-left-width: 3px; border-radius: 6px; background: var(--pane); overflow: hidden;\n}\n.context-diff-section summary[data-v-136213cf] { display: flex; align-items: center; gap: 8px; padding: 8px 10px; cursor: pointer; list-style: none; border-bottom: 1px solid transparent;\n}\n.context-diff-section summary[data-v-136213cf]::-webkit-details-marker { display: none;\n}\n.context-diff-section[open] summary[data-v-136213cf] { border-bottom-color: var(--line);\n}\n.section-title[data-v-136213cf] { font-weight: 650;\n}\n.section-role[data-v-136213cf] { border: 1px solid currentColor; border-radius: 999px; padding: 0 6px; font-size: 10px; line-height: 16px; font-weight: 700; text-transform: lowercase;\n}\n.section-meta[data-v-136213cf] { color: var(--muted); font-size: 12px;\n}\n.context-diff-section.role-system[data-v-136213cf] { border-left-color: var(--role-system);\n}\n.context-diff-section.role-user[data-v-136213cf] { border-left-color: var(--role-user);\n}\n.context-diff-section.role-assistant[data-v-136213cf] { border-left-color: var(--role-assistant);\n}\n.context-diff-section.role-toolresult[data-v-136213cf] { border-left-color: var(--role-tool-result);\n}\n.section-role.role-system[data-v-136213cf] { color: var(--role-system); background: color-mix(in srgb, var(--role-system) 12%, var(--pane));\n}\n.section-role.role-user[data-v-136213cf] { color: var(--role-user); background: color-mix(in srgb, var(--role-user) 12%, var(--pane));\n}\n.section-role.role-assistant[data-v-136213cf] { color: var(--role-assistant); background: color-mix(in srgb, var(--role-assistant) 12%, var(--pane));\n}\n.section-role.role-toolresult[data-v-136213cf] { color: var(--role-tool-result); background: color-mix(in srgb, var(--role-tool-result) 12%, var(--pane));\n}\n.section-text[data-v-136213cf], .block-text[data-v-136213cf] { margin: 0; padding: 10px; background: var(--code-bg); color: var(--code-text); white-space: pre-wrap; overflow: auto; font: 12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n}\n.context-diff-summary[data-v-136213cf] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--pane); font-weight: 650;\n}\n.summary-delta.positive[data-v-136213cf] { color: var(--success);\n}\n.summary-delta.negative[data-v-136213cf] { color: var(--error);\n}\n.summary-delta.neutral[data-v-136213cf] { color: var(--muted);\n}\n.diff-view-controls[data-v-136213cf] { margin-left: auto; display: flex; align-items: center; gap: 8px;\n}\n.diff-view-controls label[data-v-136213cf] { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 11px; font-weight: 500;\n}\n.diff-view-controls select[data-v-136213cf] { width: auto; min-height: 26px; padding: 2px 24px 2px 7px; font-size: 11px;\n}\n.diff-layout-buttons[data-v-136213cf] { display: inline-flex;\n}\n.diff-layout-buttons button[data-v-136213cf] { min-height: 26px; padding: 2px 7px; border-radius: 0; font-size: 11px;\n}\n.diff-layout-buttons button[data-v-136213cf]:first-child { border-radius: 4px 0 0 4px;\n}\n.diff-layout-buttons button[data-v-136213cf]:last-child { margin-left: -1px; border-radius: 0 4px 4px 0;\n}\n.diff-layout-buttons button.active[data-v-136213cf] { position: relative; border-color: var(--accent); background: var(--accent-bg); color: var(--accent);\n}\n.unchanged-toggle[data-v-136213cf] { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 400;\n}\n.unchanged-toggle input[data-v-136213cf] { width: auto;\n}\n.context-diff-details[data-v-136213cf] { border: 1px solid var(--line); border-radius: 6px; padding: 7px 10px; color: var(--muted); font-size: 12px; background: var(--pane-soft);\n}\n.context-diff-details summary[data-v-136213cf] { cursor: pointer; color: var(--text); font-weight: 650;\n}\n.context-diff-details[open] summary[data-v-136213cf] { margin-bottom: 6px;\n}\n.run-metadata-grid[data-v-136213cf] { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 4px 12px;\n}\n.run-metadata-grid strong[data-v-136213cf] { color: var(--text); overflow-wrap: anywhere;\n}\n.metadata-note[data-v-136213cf] { margin: 7px 0 0; line-height: 1.4;\n}\n.context-diff-block[data-v-136213cf] { display: grid; grid-template-columns: 4px minmax(0, 1fr); border: 1px solid var(--line); border-radius: 6px; background: var(--pane); overflow: hidden;\n}\n.block-gutter[data-v-136213cf] { background: var(--line);\n}\n.context-diff-block.added .block-gutter[data-v-136213cf] { background: var(--success);\n}\n.context-diff-block.removed .block-gutter[data-v-136213cf] { background: var(--error);\n}\n.context-diff-block.modified .block-gutter[data-v-136213cf] { background: var(--warning);\n}\n.block-content[data-v-136213cf] { min-width: 0; padding: 9px 10px 10px;\n}\n.block-head[data-v-136213cf] { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; margin-bottom: 7px;\n}\n.block-status[data-v-136213cf] { text-transform: uppercase; font-size: 11px; font-weight: 750; letter-spacing: .03em;\n}\n.context-diff-block.added .block-status[data-v-136213cf] { color: var(--success);\n}\n.context-diff-block.removed .block-status[data-v-136213cf] { color: var(--error);\n}\n.context-diff-block.modified .block-status[data-v-136213cf] { color: var(--warning);\n}\n.block-key[data-v-136213cf] { font-weight: 650;\n}\n.block-role[data-v-136213cf] { color: var(--muted); font-size: 12px;\n}\n.block-token-chip[data-v-136213cf] { margin-left: auto; border: 1px solid var(--line); border-radius: 999px; padding: 1px 8px; font-size: 12px; background: var(--control-muted);\n}\n.metadata-only-change[data-v-136213cf] { padding: 9px 10px; border: 1px solid color-mix(in srgb, var(--warning) 55%, var(--line)); border-radius: 4px; background: color-mix(in srgb, var(--warning) 10%, var(--pane)); color: var(--text); font-size: 12px; line-height: 1.45;\n}\n.git-diff[data-v-136213cf] { overflow: auto; border: 1px solid var(--line); border-radius: 4px; background: var(--code-bg); font: 12px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n}\n.git-line[data-v-136213cf] { min-width: max-content; color: var(--code-text);\n}\n.git-diff.unified .git-line[data-v-136213cf] { display: grid; grid-template-columns: 44px 44px 20px minmax(max-content, 1fr);\n}\n.git-line.added[data-v-136213cf] { background: color-mix(in srgb, var(--success) 12%, var(--code-bg));\n}\n.git-line.removed[data-v-136213cf] { background: color-mix(in srgb, var(--error) 12%, var(--code-bg));\n}\n.git-line.blank[data-v-136213cf] { min-height: 19px; background: var(--pane-soft);\n}\n.git-line code[data-v-136213cf] { display: block; min-height: 1.55em; padding: 0 8px; white-space: pre;\n}\n.git-line mark[data-v-136213cf] { border-radius: 2px; background: color-mix(in srgb, currentColor 22%, transparent); color: inherit; font: inherit;\n}\n.line-number[data-v-136213cf] { padding: 0 7px; border-right: 1px solid var(--line); color: var(--muted); text-align: right; user-select: none;\n}\n.line-marker[data-v-136213cf] { text-align: center; user-select: none;\n}\n.git-line.added .line-marker[data-v-136213cf] { color: var(--success);\n}\n.git-line.removed .line-marker[data-v-136213cf] { color: var(--error);\n}\n.git-line.note[data-v-136213cf] { color: var(--muted); font-style: italic;\n}\n.note-side[data-v-136213cf] { color: var(--text); font-style: normal; font-weight: 650;\n}\n.git-line-separator[data-v-136213cf] { min-width: max-content; padding: 1px 12px; border-block: 1px solid var(--line); background: var(--accent-bg); color: var(--muted); text-align: center;\n}\n.split-header[data-v-136213cf] { position: sticky; top: 0; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 720px; border-bottom: 1px solid var(--line); background: var(--pane); color: var(--muted); font: 600 11px/1.8 system-ui, sans-serif; text-transform: uppercase;\n}\n.split-header span[data-v-136213cf] { padding-left: 52px;\n}\n.split-header span + span[data-v-136213cf] { border-left: 1px solid var(--line);\n}\n.split-line[data-v-136213cf] { display: grid; grid-template-columns: repeat(2, minmax(360px, 1fr)); min-width: 720px;\n}\n.split-line > .git-line[data-v-136213cf] { display: grid; grid-template-columns: 44px 20px minmax(max-content, 1fr);\n}\n.split-line > .git-line + .git-line[data-v-136213cf] { border-left: 1px solid var(--line);\n}\n.split-separator[data-v-136213cf] { min-width: 720px;\n}\n.context-diff-empty[data-v-136213cf] { color: var(--muted); padding: 20px; border: 1px dashed var(--line); border-radius: 6px;\n}\n.context-diff-empty.compact[data-v-136213cf] { padding: 12px;\n}\n.context-diff-error[data-v-136213cf] { padding: 10px; border: 1px solid var(--error); border-radius: 6px; background: var(--error-bg);\n}\n@media (max-width: 1100px) {\n.diff-view-controls[data-v-136213cf] { order: 3; margin-left: 0; width: 100%;\n}\n}\n@media (max-width: 900px) {\n.context-diff-expand[data-v-136213cf] { display: none;\n}\n}\n\n.app-root {\n\theight: 100%;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n.surface-nav {\n\tflex: none;\n\theight: 40px;\n\tpadding: 4px 10px;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n\tborder-bottom: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.surface-brand {\n\tmargin-right: 8px;\n\tfont-weight: 750;\n\tletter-spacing: .02em;\n}\n.surface-nav button {\n\tmin-height: 32px;\n\tborder-color: transparent;\n\tbackground: transparent;\n}\n.surface-nav button.active {\n\tborder-color: var(--accent);\n\tbackground: var(--accent-bg);\n\tcolor: var(--accent);\n}\n.surface-nav-spacer {\n\tflex: 1 1 auto;\n}\n.surface-nav .theme-toggle {\n\tmin-height: 32px;\n\tborder-color: var(--line);\n\tbackground: var(--pane);\n}\n\n/* The global form rule gives every select width:100%; the locale picker in the\n nav bar must hug the right edge instead of stretching across it. */\n.surface-nav .locale-select {\n\tflex: none;\n\twidth: auto;\n\tmin-width: 0;\n\tmin-height: 32px;\n}\n\n/* Keep nav tab labels on one line (zh-CN labels wrapped in narrow headers). */\n.surface-nav button {\n\twhite-space: nowrap;\n}\n.editor-surface {\n\tflex: 1;\n\tmin-height: 0;\n}\n.settings-surface {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n\tbackground: var(--pane-soft);\n}\n.settings-surface-head {\n\tflex: none;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 24px;\n\tpadding: 18px 24px;\n\tborder-bottom: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.settings-surface-head h1 {\n\tmargin: 0;\n\tfont-size: 20px;\n}\n.settings-surface-head p {\n\tmargin: 4px 0 0;\n\tcolor: var(--muted);\n}\n.settings-surface-status {\n\tmargin-left: auto;\n\tcolor: var(--muted);\n\tfont-size: 12px;\n}\n.settings-surface-body {\n\tflex: 1;\n\tmin-height: 0;\n\tdisplay: grid;\n\tgrid-template-columns: minmax(180px, 240px) minmax(0, 1fr);\n}\n.settings-nav {\n\tmin-width: 0;\n\tpadding: 14px 10px;\n\tborder-right: 1px solid var(--line);\n\tbackground: var(--pane);\n}\n.settings-nav button {\n\twidth: 100%;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: flex-start;\n\tmargin-bottom: 6px;\n}\n.settings-nav button.active {\n\tborder-color: var(--accent);\n\tbackground: var(--accent-bg);\n\tcolor: var(--accent);\n}\n.settings-panel {\n\tmin-width: 0;\n\tmin-height: 0;\n\toverflow: auto;\n\tpadding: 20px clamp(16px, 4vw, 48px);\n}\n.settings-panel > .schema-form {\n\twidth: min(100%, 1100px);\n\tmargin: 0 auto;\n}\n.legacy-editor-root {\n\theight: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n.legacy-editor-root .topbar {\n\tflex: none;\n}\n.editor-surface .shell {\n\tflex: 1;\n\tmin-height: 0;\n\theight: auto;\n}\n@media (max-width: 700px) {\n.surface-nav {\n\t\toverflow-x: auto;\n}\n.surface-nav > * {\n\t\tflex-shrink: 0;\n}\n.surface-nav-spacer {\n\t\tdisplay: none;\n}\n.settings-surface-head {\n\t\talign-items: flex-start;\n\t\tpadding: 14px 16px;\n}\n.settings-surface-status {\n\t\tmargin-left: auto;\n}\n.settings-surface-body {\n\t\tgrid-template-columns: minmax(0, 1fr);\n}\n.settings-nav {\n\t\tdisplay: flex;\n\t\tgap: 6px;\n\t\toverflow-x: auto;\n\t\tpadding: 8px;\n\t\tborder-right: 0;\n\t\tborder-bottom: 1px solid var(--line);\n}\n.settings-nav button {\n\t\twidth: auto;\n\t\tflex: 0 0 auto;\n\t\tmargin: 0;\n}\n.settings-panel {\n\t\tpadding: 14px 10px;\n}\n}\n/*$vite$:1*/";
3
3
  //# sourceMappingURL=client-styles.generated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-styles.generated.js","sourceRoot":"","sources":["../../src/web-editor/client-styles.generated.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,CAAC,MAAM,oBAAoB,GAAW,i8nBAAi8nB,CAAC"}
1
+ {"version":3,"file":"client-styles.generated.js","sourceRoot":"","sources":["../../src/web-editor/client-styles.generated.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,CAAC,MAAM,oBAAoB,GAAW,kttBAAkttB,CAAC"}
@@ -220,7 +220,7 @@ async function handleRequest(host, token, contributionService, req, res) {
220
220
  if (req.method === "GET" && parts[1] === "stacks" && parts.length === 3) {
221
221
  const loaded = host.getStack(parts[2]);
222
222
  if (!loaded) {
223
- sendJson(res, 404, { error: `Unknown prompt stack: ${parts[2]}` });
223
+ sendJson(res, 404, { error: `Unknown preset: ${parts[2]}` });
224
224
  return;
225
225
  }
226
226
  sendJson(res, 200, loaded);
@@ -320,11 +320,11 @@ async function readJsonBody(req) {
320
320
  function readStackPayload(body) {
321
321
  const rawStack = isPlainObject(body) && "stack" in body ? body.stack : body;
322
322
  if (!isPlainObject(rawStack))
323
- return { ok: false, error: "Stack payload must be a JSON object." };
323
+ return { ok: false, error: "Preset payload must be a JSON object." };
324
324
  if (typeof rawStack.id !== "string" || !rawStack.id.trim())
325
- return { ok: false, error: "Stack id must be a non-empty string." };
325
+ return { ok: false, error: "Preset id must be a non-empty string." };
326
326
  if (!Array.isArray(rawStack.items))
327
- return { ok: false, error: "Stack items must be an array." };
327
+ return { ok: false, error: "Preset must contain a Stack items array." };
328
328
  for (const [index, item] of rawStack.items.entries()) {
329
329
  if (!isPlainObject(item))
330
330
  return { ok: false, error: `Item ${index + 1} must be an object.` };
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/web-editor/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/web-editor/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/web-editor/styles.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,QA+sCzB,CAAC"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/web-editor/styles.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,QAszCzB,CAAC"}
@@ -14,6 +14,21 @@ export const EDITOR_STYLES = String.raw `
14
14
  --error: #b42318;
15
15
  --error-bg: #fde8e7;
16
16
  --success: #1f7a3a;
17
+ --role-system: #7564a8;
18
+ --role-user: #2f7d68;
19
+ --role-assistant: #3e76ad;
20
+ --role-tool-result: #b16b2e;
21
+ --item-block: #4f6f9f;
22
+ --item-slot: #8b5fa8;
23
+ --slot-chat-history: #2f8a78;
24
+ --slot-tools: #a36a2c;
25
+ --slot-tool-guidelines: #ad7a32;
26
+ --slot-skills: #4e7fa3;
27
+ --slot-project-context: #6977a8;
28
+ --slot-date: #8b6aa8;
29
+ --slot-date-cwd: #7b6095;
30
+ --slot-built-in: #5f7185;
31
+ --slot-custom: #8a667d;
17
32
  --control: #ffffff;
18
33
  --control-muted: #f3f5f8;
19
34
  --pane-soft: #fbfcfe;
@@ -37,6 +52,21 @@ body[data-theme="dark"] {
37
52
  --error: #f06f64;
38
53
  --error-bg: #3c1d1a;
39
54
  --success: #69c98c;
55
+ --role-system: #b8a8ec;
56
+ --role-user: #65c6a9;
57
+ --role-assistant: #82b9ef;
58
+ --role-tool-result: #e5ad70;
59
+ --item-block: #88a9dc;
60
+ --item-slot: #c59be0;
61
+ --slot-chat-history: #70d0ba;
62
+ --slot-tools: #e5aa68;
63
+ --slot-tool-guidelines: #e7bd74;
64
+ --slot-skills: #8fc5e8;
65
+ --slot-project-context: #a7b4eb;
66
+ --slot-date: #c6a8e9;
67
+ --slot-date-cwd: #b697dc;
68
+ --slot-built-in: #a9bacb;
69
+ --slot-custom: #d0a5c3;
40
70
  --control: #202327;
41
71
  --control-muted: #25292e;
42
72
  --pane-soft: #151719;
@@ -529,6 +559,7 @@ html, body {
529
559
  width: 100%;
530
560
  text-align: left;
531
561
  border: 1px solid var(--line);
562
+ border-left-width: 3px;
532
563
  background: var(--row);
533
564
  border-radius: 6px;
534
565
  padding: 8px;
@@ -543,10 +574,24 @@ html, body {
543
574
  .item-row:active {
544
575
  cursor: grabbing;
545
576
  }
577
+ .item-row.kind-block {
578
+ border-left-color: var(--item-block);
579
+ }
580
+ .item-row.kind-slot {
581
+ border-left-color: var(--item-slot);
582
+ }
546
583
  .item-row.selected {
547
- border-color: var(--accent);
584
+ border-top-color: var(--accent);
585
+ border-right-color: var(--accent);
586
+ border-bottom-color: var(--accent);
548
587
  background: var(--accent-bg);
549
588
  }
589
+ .item-row.selected.kind-block {
590
+ border-left-color: var(--item-block);
591
+ }
592
+ .item-row.selected.kind-slot {
593
+ border-left-color: var(--item-slot);
594
+ }
550
595
  .item-row.disabled {
551
596
  opacity: .62;
552
597
  }
@@ -617,6 +662,39 @@ html, body {
617
662
  background: var(--warning-bg);
618
663
  border-color: var(--warning);
619
664
  }
665
+ .item-kind-badge,
666
+ .item-slot-badge {
667
+ display: inline-block;
668
+ border: 1px solid currentColor;
669
+ border-radius: 999px;
670
+ padding: 0 6px;
671
+ line-height: 17px;
672
+ font-size: 11px;
673
+ font-weight: 650;
674
+ }
675
+ .item-kind-badge {
676
+ margin-right: 4px;
677
+ }
678
+ .item-kind-badge.block {
679
+ color: var(--item-block);
680
+ background: color-mix(in srgb, var(--item-block) 12%, var(--row));
681
+ }
682
+ .item-kind-badge.slot {
683
+ color: var(--item-slot);
684
+ background: color-mix(in srgb, var(--item-slot) 12%, var(--row));
685
+ }
686
+ .item-slot-badge {
687
+ margin-left: 2px;
688
+ }
689
+ .item-slot-badge.slot-chat-history { color: var(--slot-chat-history); background: color-mix(in srgb, var(--slot-chat-history) 12%, var(--row)); }
690
+ .item-slot-badge.slot-tools { color: var(--slot-tools); background: color-mix(in srgb, var(--slot-tools) 12%, var(--row)); }
691
+ .item-slot-badge.slot-tool-guidelines { color: var(--slot-tool-guidelines); background: color-mix(in srgb, var(--slot-tool-guidelines) 12%, var(--row)); }
692
+ .item-slot-badge.slot-skills { color: var(--slot-skills); background: color-mix(in srgb, var(--slot-skills) 12%, var(--row)); }
693
+ .item-slot-badge.slot-project-context { color: var(--slot-project-context); background: color-mix(in srgb, var(--slot-project-context) 12%, var(--row)); }
694
+ .item-slot-badge.slot-date { color: var(--slot-date); background: color-mix(in srgb, var(--slot-date) 12%, var(--row)); }
695
+ .item-slot-badge.slot-date-cwd { color: var(--slot-date-cwd); background: color-mix(in srgb, var(--slot-date-cwd) 12%, var(--row)); }
696
+ .item-slot-badge.slot-built-in { color: var(--slot-built-in); background: color-mix(in srgb, var(--slot-built-in) 12%, var(--row)); }
697
+ .item-slot-badge.slot-custom { color: var(--slot-custom); background: color-mix(in srgb, var(--slot-custom) 12%, var(--row)); }
620
698
  .item-title {
621
699
  font-weight: 650;
622
700
  overflow-wrap: anywhere;
@@ -973,6 +1051,31 @@ html, body {
973
1051
  .variable-row {
974
1052
  grid-template-columns: minmax(160px, 260px) minmax(220px, 1fr) 86px;
975
1053
  }
1054
+ .variable-row.parameter-row {
1055
+ grid-template-columns: minmax(160px, 260px) minmax(220px, 1fr) minmax(90px, 120px) 86px;
1056
+ }
1057
+ .extension-catalog-grid {
1058
+ display: grid;
1059
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1060
+ gap: 12px;
1061
+ }
1062
+ .extension-catalog {
1063
+ display: flex;
1064
+ flex-direction: column;
1065
+ gap: 6px;
1066
+ min-width: 0;
1067
+ }
1068
+ .extension-catalog-entry {
1069
+ display: flex;
1070
+ align-items: baseline;
1071
+ gap: 8px;
1072
+ min-width: 0;
1073
+ }
1074
+ .extension-catalog-entry span {
1075
+ color: var(--muted);
1076
+ font-size: 12px;
1077
+ overflow-wrap: anywhere;
1078
+ }
976
1079
  .definition-row {
977
1080
  grid-template-columns: minmax(150px, 210px) minmax(100px, 140px) minmax(90px, 120px) minmax(180px, 1fr) minmax(190px, 260px) minmax(110px, 130px) minmax(110px, 130px) 86px;
978
1081
  }
@@ -1196,7 +1299,7 @@ html, body {
1196
1299
  .item-list {
1197
1300
  max-height: 260px;
1198
1301
  }
1199
- .variable-row, .definition-row, .session-row, .policy-row, .regex-row {
1302
+ .variable-row, .definition-row, .session-row, .policy-row, .regex-row, .extension-catalog-grid {
1200
1303
  grid-template-columns: 1fr;
1201
1304
  }
1202
1305
  .policy-row:not(.header) .field > label,
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/web-editor/styles.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+sCtC,CAAC"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/web-editor/styles.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAszCtC,CAAC"}
@@ -34,7 +34,7 @@ export interface WebEditorHost {
34
34
  saveProfile(id: string, profile: AgentProfile): Promise<WebEditorOperationResult<WebEditorProfileMutation>>;
35
35
  applyProfile(id: string): Promise<WebEditorOperationResult<WebEditorProfileMutation>>;
36
36
  deleteProfile(id: string): Promise<WebEditorOperationResult<WebEditorProfileMutation>>;
37
- listResources(): WebEditorPolicyResources;
37
+ listResources(): WebEditorResources;
38
38
  getStack(id: string): {
39
39
  stack: PromptStack;
40
40
  filePath: string;
@@ -170,6 +170,16 @@ export interface WebEditorPolicyResources {
170
170
  tools: WebEditorPolicyResource[];
171
171
  skills: WebEditorPolicyResource[];
172
172
  }
173
+ export interface WebEditorExtensionResource {
174
+ name: string;
175
+ description?: string;
176
+ source?: string;
177
+ dependencies: string[];
178
+ }
179
+ export interface WebEditorResources extends WebEditorPolicyResources {
180
+ macros: WebEditorExtensionResource[];
181
+ slots: WebEditorExtensionResource[];
182
+ }
173
183
  export type WebEditorOperationResult<T> = ({
174
184
  ok: true;
175
185
  } & T) | {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/web-editor/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEtE,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,qBAAqB,EAAE,CAAC;CACrC;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,OAAO,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,aAAa;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,IAAI;QAAE,MAAM,EAAE,eAAe,CAAA;KAAE,CAAC;IAC/C,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,wBAAwB,CAAC;QAAE,MAAM,EAAE,eAAe,CAAA;KAAE,CAAC,CAAC;IAChG,UAAU,IAAI,qBAAqB,EAAE,CAAC;IACtC,YAAY,IAAI,0BAA0B,CAAC;IAC3C,cAAc,IAAI,OAAO,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,CAAC,CAAC;IAChF,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,0BAA0B,CAAC;IACtH,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAChI,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAC5G,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACtF,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACvF,aAAa,IAAI,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,qBAAqB,EAAE,CAAA;KAAE,GAAG,SAAS,CAAC;IACjH,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,wBAAwB,CAAC;QAAE,KAAK,EAAE,qBAAqB,CAAC;QAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC,CAAC,CAAC;IAC5K,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,wBAAwB,CAAC;QAAE,KAAK,EAAE,qBAAqB,CAAC;QAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC,CAAC,CAAC;IAChJ,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC,CAAC,CAAC;IACnH,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,qBAAqB,EAAE,CAAC;IAC3D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,wBAAwB,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC;QAAC,WAAW,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC,CAAC;IAC3J,UAAU,IAAI,wBAAwB,CAAC,wBAAwB,CAAC,CAAC;IACjE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,wBAAwB,CAAC,wBAAwB,CAAC,CAAC;IAClF,YAAY,IAAI,wBAAwB,CAAC,wBAAwB,CAAC,CAAC;IACnE,cAAc,IAAI,wBAAwB,CAAC,eAAe,CAAC,CAAC;IAC5D,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,wBAAwB,CAAC;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC,CAAC;IAC5G,aAAa,IAAI,wBAAwB,CAAC;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC,CAAC;IAClG,YAAY,IAAI,OAAO,CAAC,wBAAwB,CAAC;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC,CAAC,CAAC;CAC1G;AAED,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,MAAM,EAAE,yBAAyB,CAAC;IAClC,MAAM,EAAE,2BAA2B,EAAE,CAAC;IACtC,YAAY,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;CAClG;AAED,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,mBAAmB,CAAC;IAC7B,WAAW,EAAE,sBAAsB,EAAE,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACxC,UAAU,EAAE,0BAA0B,CAAC;IACvC,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,uBAAuB,CAAC;IAChC,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,wBAAwB,GACjC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,uBAAuB,CAAA;CAAE,CAAC;AAE5D,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oFAAoF;IACpF,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACxC,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC,MAAM,EAAE,uBAAuB,EAAE,CAAC;CAClC;AAED,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,CAAC;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG,CAAC,CAAC,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7G,MAAM,WAAW,eAAe;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IACtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,qBAAqB,CAAC,EAAE,uBAAuB,CAAC;IAChD,4EAA4E;IAC5E,6BAA6B,CAAC,EAAE,MAAM,CAAC;CACvC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/web-editor/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"web-host.d.ts","sourceRoot":"","sources":["../src/web-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-host.d.ts","sourceRoot":"","sources":["../src/web-host.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAON,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,MAAM,oBAAoB,CAAC;AAe5B,OAAO,EAKN,KAAK,6BAA6B,EAClC,KAAK,0BAA0B,EAC/B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,KAAK,EAEX,eAAe,EACf,aAAa,EACb,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EAExB,gBAAgB,EAIhB,qBAAqB,EACrB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,cAAc;IAC9B,SAAS,IAAI,iBAAiB,EAAE,CAAC;IACjC,SAAS,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAC3C,WAAW,IAAI,MAAM,GAAG,SAAS,CAAC;IAClC,mBAAmB,IAAI,MAAM,GAAG,SAAS,CAAC;IAC1C,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC3C,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG;QACxC,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,gBAAgB,CAAC;QAC1B,WAAW,EAAE,qBAAqB,EAAE,CAAC;KACrC,CAAC;IACF,kBAAkB,IAAI,wBAAwB,CAAC;IAC/C,WAAW,IAAI,kBAAkB,EAAE,CAAC;IACpC,qBAAqB,IAAI,sBAAsB,GAAG,SAAS,CAAC;IAC5D,wBAAwB,IAAI,0BAA0B,CAAC;IACvD,cAAc,CAAC,MAAM,EAAE,kBAAkB,GAAG,oBAAoB,CAAC;IACjE,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,EAAE,CAAC;IAC3D,cAAc,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,IAAI,OAAO,CAAC;IAClB,YAAY,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;IACnF,UAAU,IAAI,wBAAwB,CAAC,wBAAwB,CAAC,CAAC;IACjE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,wBAAwB,CAAC,wBAAwB,CAAC,CAAC;IAClF,YAAY,IAAI,wBAAwB,CAAC,wBAAwB,CAAC,CAAC;IACnE,cAAc,IAAI,wBAAwB,CAAC,eAAe,CAAC,CAAC;CAC5D;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,cAAc,GAAG,aAAa,CAiDjG;AAwSD,wBAAgB,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,iBAAiB,GAAG,SAAS,GAAG,qBAAqB,CAiBpH;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,iBAAiB,GAAG,SAAS,GAAG,qBAAqB,EAAE,CAE1H;AAED,MAAM,WAAW,iBAAiB;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACnB;AAID,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,iBAAiB,CA6C9E;AA2JD,MAAM,MAAM,0BAA0B,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC;AAEtF,2FAA2F;AAC3F,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,0BAA0B,GAAG,MAAM,CAW9E"}
package/dist/web-host.js CHANGED
@@ -3,9 +3,11 @@ import { closeSync, existsSync, fsyncSync, mkdirSync, openSync, readFileSync, re
3
3
  import { basename, dirname, join } from "node:path";
4
4
  import { agentProfilePath, agentProfilesDir, isResolvedAgentProfileUsable, validateAgentProfile, validateAgentProfilePromptStackScope, } from "./agent-profile.js";
5
5
  import { isValidPromptStackId, validatePromptStack, } from "./loader.js";
6
+ import { getRegisteredMacros } from "./macro-engine.js";
6
7
  import { deletePromptStackFile, promptStackTargetPath, writePromptStackFile, } from "./repositories/prompt-stack.js";
7
8
  import { globalAgentProfilePath } from "./storage.js";
8
9
  import { formatResourceKey, parseResourceSelector } from "./resource-identity.js";
10
+ import { getRegisteredSlots } from "./slot-renderers.js";
9
11
  import { resolveResourceSelector } from "./catalog.js";
10
12
  import { createAgentProfilePreview, deleteAgentProfile, getAgentProfileRuntimeStatus, writeAgentProfile, } from "./profile-service.js";
11
13
  export function createWebEditorHost(ctx, runtime) {
@@ -24,7 +26,7 @@ export function createWebEditorHost(ctx, runtime) {
24
26
  saveProfile: (selector, profile) => saveProfileFile(ctx, runtime, selector, profile),
25
27
  applyProfile: (selector) => applyProfileRuntime(ctx, runtime, selector),
26
28
  deleteProfile: (selector) => deleteProfileFile(ctx, runtime, selector),
27
- listResources: () => runtime.getPolicyResources(),
29
+ listResources: () => editorResources(runtime.getPolicyResources()),
28
30
  getStack: (selector) => {
29
31
  const loaded = resolveStack(runtime, selector);
30
32
  return loaded ? { stack: loaded.stack, filePath: loaded.filePath, diagnostics: loaded.diagnostics } : undefined;
@@ -36,7 +38,7 @@ export function createWebEditorHost(ctx, runtime) {
36
38
  previewStack: (id, stack) => {
37
39
  const target = resolveStack(runtime, id);
38
40
  if (!target)
39
- return { ok: false, status: 404, error: `Unknown prompt stack: ${id}` };
41
+ return { ok: false, status: 404, error: `Unknown preset: ${id}` };
40
42
  const diagnostics = validatePromptStack(stack);
41
43
  const preview = runtime.buildPreview({ stack, filePath: target.filePath, scope: target.scope, key: target.key, diagnostics });
42
44
  return { ok: true, text: preview.text, preview: preview.preview, diagnostics: preview.diagnostics };
@@ -47,7 +49,7 @@ export function createWebEditorHost(ctx, runtime) {
47
49
  getContextDiff: () => runtime.getContextDiff(),
48
50
  activateStack: (selector) => {
49
51
  if (!runtime.setActive(selector))
50
- return { ok: false, status: 404, error: `Unknown prompt stack: ${selector}` };
52
+ return { ok: false, status: 404, error: `Unknown preset: ${selector}` };
51
53
  return { ok: true, activeId: runtime.getActiveId(), stacks: stackSummaries(runtime.getStacks(), runtime.getActive()) };
52
54
  },
53
55
  disableStacks: () => {
@@ -60,6 +62,20 @@ export function createWebEditorHost(ctx, runtime) {
60
62
  },
61
63
  };
62
64
  }
65
+ function editorResources(policy) {
66
+ const extensionResource = (definition) => ({
67
+ name: definition.name,
68
+ ...(definition.description ? { description: definition.description } : {}),
69
+ ...(definition.source ? { source: definition.source } : {}),
70
+ dependencies: [...(definition.dependencies ?? [])],
71
+ });
72
+ const byName = (a, b) => a.name.localeCompare(b.name);
73
+ return {
74
+ ...policy,
75
+ macros: getRegisteredMacros().map(extensionResource).sort(byName),
76
+ slots: getRegisteredSlots().map(extensionResource).sort(byName),
77
+ };
78
+ }
63
79
  /** Unqualified selectors address project profiles only; global profiles require `global:<id>`. */
64
80
  function resolveProfilesForMutation(runtime, selector) {
65
81
  const parsed = parseResourceSelector(selector);
@@ -422,16 +438,16 @@ function writeTextFileAtomically(filePath, content) {
422
438
  }
423
439
  async function saveStackFile(ctx, runtime, id, stack) {
424
440
  if (!ctx.isProjectTrusted()) {
425
- return { ok: false, status: 403, error: "Project is not trusted; refusing to save prompt stacks." };
441
+ return { ok: false, status: 403, error: "Project is not trusted; refusing to save presets." };
426
442
  }
427
443
  const target = resolveStack(runtime, id);
428
444
  if (!target)
429
- return { ok: false, status: 404, error: `Unknown prompt stack: ${id}` };
445
+ return { ok: false, status: 404, error: `Unknown preset: ${id}` };
430
446
  const idError = validateWebStackId(stack.id);
431
447
  if (idError)
432
448
  return { ok: false, status: 400, error: idError };
433
449
  if (stack.id !== target.stack.id) {
434
- return { ok: false, status: 400, error: "Stack id is immutable during save; fork the stack to create a new id." };
450
+ return { ok: false, status: 400, error: "Preset id is immutable during save; fork the preset to create a new id." };
435
451
  }
436
452
  const write = writePromptStackFile(ctx.cwd, target.scope, target.filePath, stack, { overwrite: true });
437
453
  if (!write.ok) {
@@ -444,12 +460,12 @@ async function saveStackFile(ctx, runtime, id, stack) {
444
460
  const saved = runtime.getStacks().find((candidate) => candidate.scope === target.scope && candidate.stack.id === target.stack.id)
445
461
  ?? runtime.getStacks().find((candidate) => candidate.filePath === target.filePath);
446
462
  if (!saved)
447
- return { ok: false, status: 500, error: "Saved stack could not be reloaded." };
463
+ return { ok: false, status: 500, error: "Saved preset could not be reloaded." };
448
464
  return { ok: true, stack: stackSummary(saved, runtime.getActive()), stacks: stackSummaries(runtime.getStacks(), runtime.getActive()) };
449
465
  }
450
466
  async function createStackFile(ctx, runtime, stack, options) {
451
467
  if (!ctx.isProjectTrusted()) {
452
- return { ok: false, status: 403, error: "Project is not trusted; refusing to create prompt stacks." };
468
+ return { ok: false, status: 403, error: "Project is not trusted; refusing to create presets." };
453
469
  }
454
470
  const idError = validateWebStackId(stack.id);
455
471
  if (idError)
@@ -457,7 +473,7 @@ async function createStackFile(ctx, runtime, stack, options) {
457
473
  const scope = options.scope ?? "project";
458
474
  const existingById = runtime.getStacks().find((candidate) => candidate.scope === scope && candidate.stack.id === stack.id);
459
475
  if (existingById && !options.overwrite) {
460
- return { ok: false, status: 409, error: `Prompt stack already exists: ${stack.id}` };
476
+ return { ok: false, status: 409, error: `Preset already exists: ${stack.id}` };
461
477
  }
462
478
  const targetPath = existingById && options.overwrite
463
479
  ? existingById.filePath
@@ -474,16 +490,16 @@ async function createStackFile(ctx, runtime, stack, options) {
474
490
  runtime.setActive(createdSelector);
475
491
  const created = runtime.getStacks().find((candidate) => candidate.scope === scope && candidate.filePath === targetPath);
476
492
  if (!created)
477
- return { ok: false, status: 500, error: "Created stack could not be reloaded." };
493
+ return { ok: false, status: 500, error: "Created preset could not be reloaded." };
478
494
  return { ok: true, stack: stackSummary(created, runtime.getActive()), stacks: stackSummaries(runtime.getStacks(), runtime.getActive()) };
479
495
  }
480
496
  async function deleteStackFile(ctx, runtime, id) {
481
497
  if (!ctx.isProjectTrusted()) {
482
- return { ok: false, status: 403, error: "Project is not trusted; refusing to delete prompt stacks." };
498
+ return { ok: false, status: 403, error: "Project is not trusted; refusing to delete presets." };
483
499
  }
484
500
  const target = resolveStack(runtime, id);
485
501
  if (!target)
486
- return { ok: false, status: 404, error: `Unknown prompt stack: ${id}` };
502
+ return { ok: false, status: 404, error: `Unknown preset: ${id}` };
487
503
  const deleted = deletePromptStackFile(ctx.cwd, target.scope, target.filePath);
488
504
  if (!deleted.ok) {
489
505
  const status = stackMutationStatus(deleted.reason);
@@ -514,9 +530,9 @@ export function stackMutationStatus(reason) {
514
530
  }
515
531
  function validateWebStackId(id) {
516
532
  if (!id.trim())
517
- return "Stack id must not be empty.";
533
+ return "Preset id must not be empty.";
518
534
  if (!isValidPromptStackId(id)) {
519
- return "Stack id must start with a letter or number and contain only letters, numbers, dots, underscores, and hyphens.";
535
+ return "Preset id must start with a letter or number and contain only letters, numbers, dots, underscores, and hyphens.";
520
536
  }
521
537
  return undefined;
522
538
  }