@esotech/contextuate 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/README.md +169 -1
  2. package/dist/commands/claude.d.ts +21 -0
  3. package/dist/commands/claude.js +213 -0
  4. package/dist/commands/context.d.ts +1 -0
  5. package/dist/commands/create.d.ts +3 -0
  6. package/dist/commands/index.d.ts +4 -0
  7. package/dist/commands/init.d.ts +7 -0
  8. package/dist/commands/init.js +67 -6
  9. package/dist/commands/install.d.ts +28 -0
  10. package/dist/commands/install.js +116 -11
  11. package/dist/commands/monitor.d.ts +55 -0
  12. package/dist/commands/monitor.js +1007 -0
  13. package/dist/commands/remove.d.ts +3 -0
  14. package/dist/commands/run.d.ts +6 -0
  15. package/dist/index.d.ts +2 -0
  16. package/dist/index.js +113 -1
  17. package/dist/monitor/daemon/circuit-breaker.d.ts +121 -0
  18. package/dist/monitor/daemon/circuit-breaker.js +552 -0
  19. package/dist/monitor/daemon/cli.d.ts +8 -0
  20. package/dist/monitor/daemon/cli.js +82 -0
  21. package/dist/monitor/daemon/index.d.ts +137 -0
  22. package/dist/monitor/daemon/index.js +695 -0
  23. package/dist/monitor/daemon/notifier.d.ts +25 -0
  24. package/dist/monitor/daemon/notifier.js +98 -0
  25. package/dist/monitor/daemon/processor.d.ts +89 -0
  26. package/dist/monitor/daemon/processor.js +455 -0
  27. package/dist/monitor/daemon/state.d.ts +80 -0
  28. package/dist/monitor/daemon/state.js +162 -0
  29. package/dist/monitor/daemon/watcher.d.ts +47 -0
  30. package/dist/monitor/daemon/watcher.js +171 -0
  31. package/dist/monitor/daemon/wrapper-manager.d.ts +106 -0
  32. package/dist/monitor/daemon/wrapper-manager.js +374 -0
  33. package/dist/monitor/hooks/emit-event.js +652 -0
  34. package/dist/monitor/persistence/file-store.d.ts +88 -0
  35. package/dist/monitor/persistence/file-store.js +335 -0
  36. package/dist/monitor/persistence/index.d.ts +7 -0
  37. package/dist/monitor/persistence/index.js +10 -0
  38. package/dist/monitor/server/adapters/redis.d.ts +38 -0
  39. package/dist/monitor/server/adapters/redis.js +213 -0
  40. package/dist/monitor/server/adapters/unix-socket.d.ts +33 -0
  41. package/dist/monitor/server/adapters/unix-socket.js +182 -0
  42. package/dist/monitor/server/broker.d.ts +135 -0
  43. package/dist/monitor/server/broker.js +475 -0
  44. package/dist/monitor/server/cli.d.ts +8 -0
  45. package/dist/monitor/server/cli.js +98 -0
  46. package/dist/monitor/server/fastify.d.ts +16 -0
  47. package/dist/monitor/server/fastify.js +184 -0
  48. package/dist/monitor/server/index.d.ts +36 -0
  49. package/dist/monitor/server/index.js +153 -0
  50. package/dist/monitor/server/websocket.d.ts +80 -0
  51. package/dist/monitor/server/websocket.js +453 -0
  52. package/dist/monitor/ui/assets/index-4IssW9On.js +59 -0
  53. package/dist/monitor/ui/assets/index-vo9hLe5R.css +32 -0
  54. package/dist/monitor/ui/favicon.png +0 -0
  55. package/dist/monitor/ui/index.html +14 -0
  56. package/dist/monitor/ui/logo.png +0 -0
  57. package/dist/monitor/ui/logo.svg +1 -0
  58. package/dist/runtime/driver.d.ts +16 -0
  59. package/dist/runtime/tools.d.ts +10 -0
  60. package/dist/templates/README.md +33 -7
  61. package/dist/templates/agents/aegis.md +4 -0
  62. package/dist/templates/agents/archon.md +13 -22
  63. package/dist/templates/agents/atlas.md +4 -0
  64. package/dist/templates/agents/canvas.md +4 -0
  65. package/dist/templates/agents/chronicle.md +4 -0
  66. package/dist/templates/agents/chronos.md +4 -0
  67. package/dist/templates/agents/cipher.md +4 -0
  68. package/dist/templates/agents/crucible.md +4 -0
  69. package/dist/templates/agents/echo.md +4 -0
  70. package/dist/templates/agents/forge.md +4 -0
  71. package/dist/templates/agents/ledger.md +4 -0
  72. package/dist/templates/agents/meridian.md +4 -0
  73. package/dist/templates/agents/nexus.md +4 -0
  74. package/dist/templates/agents/pythia.md +217 -0
  75. package/dist/templates/agents/scribe.md +4 -0
  76. package/dist/templates/agents/sentinel.md +4 -0
  77. package/dist/templates/agents/{oracle.md → thoth.md} +11 -7
  78. package/dist/templates/agents/unity.md +4 -0
  79. package/dist/templates/agents/vox.md +4 -0
  80. package/dist/templates/agents/weaver.md +4 -0
  81. package/dist/templates/framework-agents/documentation-expert.md +3 -3
  82. package/dist/templates/framework-agents/tools-expert.md +8 -8
  83. package/dist/templates/skills/consult.md +138 -0
  84. package/dist/templates/skills/orchestrate.md +173 -0
  85. package/dist/templates/skills/pythia.md +37 -0
  86. package/dist/templates/standards/agent-roles.md +68 -21
  87. package/dist/templates/standards/coding-standards.md +9 -26
  88. package/dist/templates/templates/context.md +17 -2
  89. package/dist/templates/templates/contextuate.md +21 -28
  90. package/dist/templates/templates/standards/go.md +167 -0
  91. package/dist/templates/templates/standards/java.md +167 -0
  92. package/dist/templates/templates/standards/javascript.md +292 -0
  93. package/dist/templates/templates/standards/php.md +181 -0
  94. package/dist/templates/templates/standards/python.md +175 -0
  95. package/dist/templates/tools/agent-creator.md +252 -0
  96. package/dist/templates/tools/agent-creator.tool.md +2 -2
  97. package/dist/templates/tools/quickref.md +216 -0
  98. package/dist/templates/tools/spawn.md +31 -0
  99. package/dist/templates/tools/standards-detector.md +301 -0
  100. package/dist/templates/version.json +1 -1
  101. package/dist/types/monitor.d.ts +660 -0
  102. package/dist/types/monitor.js +75 -0
  103. package/dist/utils/git.d.ts +9 -0
  104. package/dist/utils/tokens.d.ts +10 -0
  105. package/package.json +18 -5
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright (c) 2014 The xterm.js authors. All rights reserved.
3
+ * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
4
+ * https://github.com/chjj/term.js
5
+ * @license MIT
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in
15
+ * all copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
+ * THE SOFTWARE.
24
+ *
25
+ * Originally forked from (with the author's permission):
26
+ * Fabrice Bellard's javascript vt100 for jslinux:
27
+ * http://bellard.org/jslinux/
28
+ * Copyright (c) 2011 Fabrice Bellard
29
+ * The original design remains. The terminal itself
30
+ * has been extended to include xterm CSI codes, among
31
+ * other features.
32
+ */.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::-moz-selection{color:transparent}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:-moz-fit-content;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}[data-v-05cc1497] .xterm{height:100%;padding:4px}[data-v-05cc1497] .xterm-viewport{overflow-y:auto!important}[data-v-05cc1497] .xterm-screen{height:100%}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,Monaco,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-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}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.-right-1{right:-.25rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-16{left:4rem}.left-3{left:.75rem}.left-full{left:100%}.right-0{right:0}.top-0{top:0}.top-1\/2{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-1\/2{height:50%}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-\[calc\(100vh-120px\)\]{height:calc(100vh - 120px)}.h-full{height:100%}.h-px{height:1px}.max-h-32{max-height:8rem}.max-h-48{max-height:12rem}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-24{width:6rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-72{width:18rem}.w-80{width:20rem}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-48{min-width:12rem}.min-w-52{min-width:13rem}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease-in-out}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-cyan-500{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-lime-500{--tw-border-opacity: 1;border-color:rgb(132 204 22 / var(--tw-border-opacity, 1))}.border-monitor-accent-cyan{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-slate-600{--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.border-slate-700\/50{border-color:#33415580}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-yellow-500{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity, 1))}.border-l-monitor-accent-cyan{--tw-border-opacity: 1;border-left-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.border-l-monitor-accent-cyan\/70{border-left-color:#06b6d4b3}.border-l-monitor-accent-purple{--tw-border-opacity: 1;border-left-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-l-monitor-accent-purple\/50{border-left-color:#a855f780}.border-l-slate-400{--tw-border-opacity: 1;border-left-color:rgb(148 163 184 / var(--tw-border-opacity, 1))}.border-l-slate-600{--tw-border-opacity: 1;border-left-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/20{background-color:#3b82f633}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-cyan-500\/20{background-color:#06b6d433}.bg-cyan-900\/20{background-color:#164e6333}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-gray-500\/20{background-color:#6b728033}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/20{background-color:#22c55e33}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-green-900\/20{background-color:#14532d33}.bg-lime-500\/20{background-color:#84cc1633}.bg-monitor-accent-cyan{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity, 1))}.bg-monitor-accent-cyan\/20{background-color:#06b6d433}.bg-monitor-accent-purple\/20{background-color:#a855f733}.bg-monitor-bg-primary{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-monitor-bg-primary\/80{background-color:#0f172acc}.bg-monitor-bg-secondary{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.bg-monitor-bg-tertiary{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-monitor-bg-tertiary\/50{background-color:#33415580}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-orange-500\/20{background-color:#f9731633}.bg-pink-500{--tw-bg-opacity: 1;background-color:rgb(236 72 153 / var(--tw-bg-opacity, 1))}.bg-purple-400{--tw-bg-opacity: 1;background-color:rgb(192 132 252 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-purple-500\/20{background-color:#a855f733}.bg-purple-900{--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.bg-purple-900\/20{background-color:#581c8733}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-slate-600{--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.bg-slate-800\/50{background-color:#1e293b80}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/20{background-color:#fff3}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-500\/20{background-color:#eab30833}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-3{padding-bottom:.75rem}.pl-10{padding-left:2.5rem}.pl-4{padding-left:1rem}.pl-7{padding-left:1.75rem}.pr-4{padding-right:1rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:JetBrains Mono,Fira Code,Monaco,Consolas,monospace}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.tracking-wide{letter-spacing:.025em}.text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-lime-400{--tw-text-opacity: 1;color:rgb(163 230 53 / var(--tw-text-opacity, 1))}.text-monitor-accent-cyan{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity, 1))}.text-monitor-accent-purple{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-monitor-text-muted{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-monitor-text-primary{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity, 1))}.text-monitor-text-secondary{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-pink-400{--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity, 1))}.text-purple-200{--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.placeholder-monitor-text-muted::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(100 116 139 / var(--tw-placeholder-opacity, 1))}.placeholder-monitor-text-muted::placeholder{--tw-placeholder-opacity: 1;color:rgb(100 116 139 / var(--tw-placeholder-opacity, 1))}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-cyan-500\/5{--tw-shadow-color: rgb(6 182 212 / .05);--tw-shadow: var(--tw-shadow-colored)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-monitor-accent-cyan{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1))}.ring-monitor-accent-cyan\/30{--tw-ring-color: rgb(6 182 212 / .3)}.ring-monitor-accent-purple{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.ring-monitor-accent-purple\/30{--tw-ring-color: rgb(168 85 247 / .3)}.ring-slate-400\/30{--tw-ring-color: rgb(148 163 184 / .3)}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#1e293b}::-webkit-scrollbar-thumb{background:#475569;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#64748b}.event-session_start{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.event-session_end{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.event-tool_call{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.event-tool_result{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.event-message{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.event-notification{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.event-thinking{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.event-error{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.event-agent_spawn{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.event-agent_complete{--tw-text-opacity: 1;color:rgb(163 230 53 / var(--tw-text-opacity, 1))}.event-subagent_start{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.event-subagent_stop{--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.status-connected{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.status-connecting{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.status-disconnected{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.session-active{--tw-border-opacity: 1;border-left-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.session-completed{--tw-border-opacity: 1;border-left-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.session-error{--tw-border-opacity: 1;border-left-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.animate-pulse-dot{animation:pulse-dot 1.5s ease-in-out infinite}.json-key{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.json-string{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.json-number{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.json-boolean{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.json-null{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.code-block{border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1));padding:.75rem;font-family:JetBrains Mono,Fira Code,Monaco,Consolas,monospace;font-size:.875rem;line-height:1.25rem}.word-wrap-break{word-wrap:break-word;overflow-wrap:break-word}.tool-badge{display:inline-flex;align-items:center;border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500}.tool-badge-read{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.tool-badge-write{--tw-bg-opacity: 1;background-color:rgb(124 45 18 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(254 215 170 / var(--tw-text-opacity, 1))}.tool-badge-bash{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.tool-badge-edit{--tw-bg-opacity: 1;background-color:rgb(113 63 18 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.tool-badge-other{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.last\:border-r-0:last-child{border-right-width:0px}.hover\:h-4:hover{height:1rem}.hover\:w-4:hover{width:1rem}.hover\:border-slate-600:hover{--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.hover\:bg-cyan-400:hover{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity, 1))}.hover\:bg-green-500:hover{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.hover\:bg-monitor-accent-cyan\/30:hover{background-color:#06b6d44d}.hover\:bg-red-500\/30:hover{background-color:#ef44444d}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-500:hover{--tw-bg-opacity: 1;background-color:rgb(100 116 139 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-600:hover{--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-600\/50:hover{background-color:#47556980}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700\/50:hover{background-color:#33415580}.hover\:bg-slate-700\/70:hover{background-color:#334155b3}.hover\:bg-slate-800\/50:hover{background-color:#1e293b80}.hover\:text-cyan-400:hover{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.hover\:text-monitor-text-primary:hover{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity, 1))}.hover\:opacity-80:hover{opacity:.8}.focus\:border-monitor-accent-cyan:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-monitor-accent-cyan:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.group:hover .group-hover\:block{display:block}
Binary file
@@ -0,0 +1,14 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en" class="dark">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/png" href="/favicon.png" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>Contextuate Monitor</title>
8
+ <script type="module" crossorigin src="/assets/index-4IssW9On.js"></script>
9
+ <link rel="stylesheet" crossorigin href="/assets/index-vo9hLe5R.css">
10
+ </head>
11
+ <body class="bg-gray-900 text-gray-100">
12
+ <div id="app"></div>
13
+ </body>
14
+ </html>
Binary file
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><rect width="32" height="32" fill="#06b6d4"/><text x="16" y="22" font-family="Arial" font-size="20" fill="white" text-anchor="middle" font-weight="bold">C</text></svg>
@@ -0,0 +1,16 @@
1
+ export interface DriverConfig {
2
+ provider: string;
3
+ model: string;
4
+ capabilities?: string[];
5
+ }
6
+ export declare class LLMDriver {
7
+ private config;
8
+ private goal;
9
+ private cwd;
10
+ private toolLoader;
11
+ private activeTools;
12
+ private contextFiles;
13
+ constructor(config: DriverConfig, goal: string, cwd: string, contextFiles?: string[]);
14
+ run(): Promise<void>;
15
+ private runMockLoop;
16
+ }
@@ -0,0 +1,10 @@
1
+ export interface ToolDefinition {
2
+ name: string;
3
+ content: string;
4
+ path: string;
5
+ }
6
+ export declare class ToolLoader {
7
+ private toolsDir;
8
+ constructor(projectRoot: string);
9
+ loadTools(capabilities: string[]): Promise<ToolDefinition[]>;
10
+ }
@@ -31,7 +31,7 @@ Analyzes your codebase to detect and document coding standards.
31
31
  3. Analyzes patterns (indentation, naming, braces)
32
32
  4. Creates standards files in `docs/ai/standards/`
33
33
 
34
- **Guide:** [tools/standards-detector.tool.md](tools/standards-detector.tool.md)
34
+ **Guide:** [tools/standards-detector.md](tools/standards-detector.md)
35
35
 
36
36
  ---
37
37
 
@@ -55,7 +55,7 @@ Creates condensed, AI-friendly references from large documentation files.
55
55
  - Methods are frequently looked up
56
56
  - AI needs method awareness without full context
57
57
 
58
- **Guide:** [tools/quickref.tool.md](tools/quickref.tool.md)
58
+ **Guide:** [tools/quickref.md](tools/quickref.md)
59
59
 
60
60
  ---
61
61
 
@@ -74,7 +74,30 @@ Creates new AI agent definitions following Contextuate patterns.
74
74
  3. Generates agent file from template
75
75
  4. Outputs to `docs/ai/agents/{domain}-expert.md`
76
76
 
77
- **Guide:** [tools/agent-creator.tool.md](tools/agent-creator.tool.md)
77
+ **Guide:** [tools/agent-creator.md](tools/agent-creator.md)
78
+
79
+ ---
80
+
81
+ ## Skills (Slash Commands)
82
+
83
+ Skills are special commands that activate specific AI behaviors. Install them with `contextuate install skills`.
84
+
85
+ ### /orchestrate
86
+
87
+ Activates ARCHON orchestrator mode for coordinated multi-agent task execution.
88
+
89
+ **How to use:** In a Claude Code session, run:
90
+ > `/orchestrate Add a new API endpoint with database query, validation, and tests`
91
+
92
+ **What it does:**
93
+ 1. Analyzes your task to identify required domains
94
+ 2. Delegates to specialist agents instead of implementing directly
95
+ 3. Coordinates handoffs between agents
96
+ 4. Synthesizes results into a cohesive solution
97
+
98
+ **Available specialist agents:** aegis, atlas, canvas, chronicle, chronos, cipher, crucible, echo, forge, ledger, meridian, nexus, thoth, scribe, sentinel, unity, vox, weaver
99
+
100
+ **File:** `docs/ai/skills/orchestrate.md`
78
101
 
79
102
  ---
80
103
 
@@ -89,6 +112,7 @@ docs/ai/
89
112
  │ ├── tools/ # AI tool guides
90
113
  │ └── bin/ # Install/update scripts
91
114
  ├── agents/ # Your custom agents (user-editable)
115
+ ├── skills/ # Slash commands (e.g., /orchestrate)
92
116
  ├── standards/ # Your project standards (user-editable)
93
117
  ├── quickrefs/ # Generated quick references
94
118
  ├── tasks/ # Task tracking (gitignored)
@@ -133,20 +157,22 @@ Updates framework files while preserving your customizations.
133
157
 
134
158
  ---
135
159
 
136
- ## Agents vs Tools
160
+ ## Agents vs Tools vs Skills
137
161
 
138
162
  | Type | Purpose | Location |
139
163
  |------|---------|----------|
140
164
  | **Agent** | Persona with expertise, decision-making | `agents/*.md` |
141
- | **Tool** | Step-by-step process guide | `tools/*.tool.md` |
165
+ | **Tool** | Step-by-step process guide | `tools/*.md` |
166
+ | **Skill** | Slash command that activates behaviors | `skills/*.md` |
142
167
 
143
168
  **Agents** define *who* the AI is acting as (e.g., "documentation expert").
144
169
  **Tools** define *how* to accomplish a specific task (e.g., "follow these steps to generate a quickref").
170
+ **Skills** are slash commands that trigger specific modes or behaviors (e.g., `/orchestrate` activates multi-agent coordination).
145
171
 
146
172
  ---
147
173
 
148
174
  ## Support
149
175
 
150
176
  - Documentation: https://contextuate.md
151
- - Repository: https://github.com/esotech/contextuate
152
- - Issues: https://github.com/esotech/contextuate/issues
177
+ - Repository: https://github.com/contextuate/contextuate
178
+ - Issues: https://github.com/contextuate/contextuate/issues
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "aegis"
3
3
  description: "Code Review & Quality Expert"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Aegis (Code Review & Quality)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "archon"
3
3
  description: "Master orchestrator that analyzes complex tasks and delegates to specialist agents. Use for multi-step tasks requiring coordination."
4
+ model: opus
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "opus"
6
10
  ---
7
11
 
8
12
  # ARCHON - Orchestrator Agent
@@ -21,22 +25,9 @@ You are ARCHON, the orchestrator agent. Your role is to analyze incoming request
21
25
 
22
26
  ## Available Specialist Agents
23
27
 
24
- | Agent | Domain | When to Delegate |
25
- |-------|--------|------------------|
26
- | **LEDGER** | Task Management | Multi-step tasks, session continuity, progress tracking |
27
- | **ORACLE** | Database/Queries | Database queries, schema, data operations |
28
- | **SCRIBE** | Documentation | API docs, technical writing, documentation |
29
- | **WEAVER** | Controllers/Views | Page actions, view rendering, permissions |
30
- | **FORGE** | Infrastructure | Scaffolding, deployment, DevOps, tooling |
31
- | **NEXUS** | Backend/Services | Service classes, external APIs, business logic |
32
- | **SENTINEL** | Security | Validation, permissions, sanitization |
33
- | **CIPHER** | Data Transformation | Data utilities, formatting, transformations |
34
- | **MERIDIAN** | Schema/Migrations | Database schema changes, migrations |
35
- | **ECHO** | Frontend | JavaScript, UI interactions, client-side |
36
- | **CHRONICLE** | Documentation | Comments, markdown, changelogs |
37
- | **CRUCIBLE** | Testing | Test writing, execution, coverage |
38
- | **AEGIS** | Quality/Review | Code review, best practices |
39
- | **ATLAS** | Navigation | Codebase exploration, file search |
28
+ > **Agent Roster:** [agent-roles.md](../.contextuate/standards/agent-roles.md)
29
+
30
+ Read the agent roster above before delegating. It contains the complete list of specialist agents with their domains, recommended models, and when to use each one.
40
31
 
41
32
  ## Orchestration Process
42
33
 
@@ -100,7 +91,7 @@ Is this a multi-step task?
100
91
  └── NO: Direct delegation
101
92
 
102
93
  Does the task involve database changes?
103
- ├── YES: ORACLE for queries, MERIDIAN for schema
94
+ ├── YES: THOTH for queries, MERIDIAN for schema
104
95
  └── NO: Skip database agents
105
96
 
106
97
  Does the task involve API work?
@@ -127,12 +118,12 @@ ARCHON Analysis:
127
118
  - Dependencies: Query design before API
128
119
 
129
120
  Delegation Plan:
130
- 1. ORACLE: Design database query with appropriate filtering
121
+ 1. THOTH: Design database query with appropriate filtering
131
122
  2. NEXUS: Create API endpoint using the query pattern
132
123
  3. (Optional) AEGIS: Review for security best practices
133
124
 
134
125
  Execution:
135
- ORACLE provides query structure
126
+ THOTH provides query structure
136
127
  → NEXUS builds endpoint using query
137
128
  → ARCHON synthesizes and delivers
138
129
  ```
@@ -197,8 +188,8 @@ RIGHT: "Engaging LEDGER to track this multi-step task..."
197
188
 
198
189
  ### DON'T: Delegate without context
199
190
  ```
200
- WRONG: "ORACLE, write a query"
201
- RIGHT: "ORACLE, write a query for the users table filtering by status and date_created,
191
+ WRONG: "THOTH, write a query"
192
+ RIGHT: "THOTH, write a query for the users table filtering by status and date_created,
202
193
  following the pattern in {project}/models/user.model.js:getActiveUsers()"
203
194
  ```
204
195
 
@@ -213,7 +204,7 @@ RIGHT: [Combine agent outputs into cohesive solution]
213
204
  When orchestrating, communicate:
214
205
 
215
206
  1. **What you're analyzing:** "This task involves API and database work..."
216
- 2. **Who you're delegating to:** "Delegating to ORACLE for query design..."
207
+ 2. **Who you're delegating to:** "Delegating to THOTH for query design..."
217
208
  3. **What you're waiting for:** "Awaiting NEXUS's endpoint implementation..."
218
209
  4. **What you're synthesizing:** "Combining the query and endpoint into final solution..."
219
210
 
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "atlas"
3
3
  description: "Codebase Navigation Expert"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Atlas (Codebase Navigation)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "canvas"
3
3
  description: "Senior Frontend Engineer"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Canvas (Frontend & Experience)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "chronicle"
3
3
  description: "Documentation Expert"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "documentation-expert"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Chronicle (Documentation)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "chronos"
3
3
  description: "Database Administrator & Data Engineer"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Chronos (Data & State)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "cipher"
3
3
  description: "Data Transformation Expert"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Cipher (Data Transformation)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "crucible"
3
3
  description: "Testing Expert"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "tools-expert"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Crucible (Testing)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "echo"
3
3
  description: "Frontend & JavaScript Expert"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Echo (Frontend/JavaScript)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "forge"
3
3
  description: "Scaffolding expert for creating new files, boilerplate generation, infrastructure, and file structure. Use for creating new components, DevOps, and deployment."
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # FORGE - Scaffolding & Infrastructure Agent
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "ledger"
3
3
  description: "Task management expert for planning, progress tracking, and session continuity. Use for complex multi-step tasks requiring organization."
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # LEDGER - Task Management Agent
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "meridian"
3
3
  description: "Schema & Migrations Expert"
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # Meridian (Schema/Migrations)
@@ -1,8 +1,12 @@
1
1
  ---
2
2
  name: "nexus"
3
3
  description: "Backend services and integrations expert for APIs, business logic, and third-party integrations. Use for creating services or API endpoints."
4
+ model: sonnet
4
5
  version: "1.0.0"
5
6
  inherits: "base"
7
+ provider:
8
+ type: "anthropic"
9
+ model: "sonnet"
6
10
  ---
7
11
 
8
12
  # NEXUS - Backend Services & Integrations Agent