@rynfar/meridian 1.37.8 → 1.38.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 (66) hide show
  1. package/README.md +21 -0
  2. package/dist/{cli-pr79d7nw.js → cli-4rqtm83g.js} +33 -2
  3. package/dist/{cli-z5r7ptsm.js → cli-bfgya0hb.js} +683 -100
  4. package/dist/cli-sry5aqdj.js +54 -0
  5. package/dist/cli.js +5 -4
  6. package/dist/pluginPage-85s6t6k8.js +405 -0
  7. package/dist/{profilePage-g5t5t6av.js → profilePage-77z05e0r.js} +4 -8
  8. package/dist/proxy/adapter.d.ts +17 -10
  9. package/dist/proxy/adapter.d.ts.map +1 -1
  10. package/dist/proxy/adapters/crush.d.ts +2 -0
  11. package/dist/proxy/adapters/crush.d.ts.map +1 -1
  12. package/dist/proxy/adapters/droid.d.ts +2 -0
  13. package/dist/proxy/adapters/droid.d.ts.map +1 -1
  14. package/dist/proxy/adapters/forgecode.d.ts +2 -0
  15. package/dist/proxy/adapters/forgecode.d.ts.map +1 -1
  16. package/dist/proxy/adapters/opencode.d.ts +2 -0
  17. package/dist/proxy/adapters/opencode.d.ts.map +1 -1
  18. package/dist/proxy/adapters/passthrough.d.ts +2 -0
  19. package/dist/proxy/adapters/passthrough.d.ts.map +1 -1
  20. package/dist/proxy/adapters/pi.d.ts +2 -0
  21. package/dist/proxy/adapters/pi.d.ts.map +1 -1
  22. package/dist/proxy/plugins/loader.d.ts +6 -0
  23. package/dist/proxy/plugins/loader.d.ts.map +1 -0
  24. package/dist/proxy/plugins/pluginPage.d.ts +7 -0
  25. package/dist/proxy/plugins/pluginPage.d.ts.map +1 -0
  26. package/dist/proxy/plugins/stats.d.ts +61 -0
  27. package/dist/proxy/plugins/stats.d.ts.map +1 -0
  28. package/dist/proxy/plugins/types.d.ts +21 -0
  29. package/dist/proxy/plugins/types.d.ts.map +1 -0
  30. package/dist/proxy/plugins/validation.d.ts +8 -0
  31. package/dist/proxy/plugins/validation.d.ts.map +1 -0
  32. package/dist/proxy/query.d.ts +8 -3
  33. package/dist/proxy/query.d.ts.map +1 -1
  34. package/dist/proxy/server.d.ts +2 -0
  35. package/dist/proxy/server.d.ts.map +1 -1
  36. package/dist/proxy/transform.d.ts +137 -0
  37. package/dist/proxy/transform.d.ts.map +1 -0
  38. package/dist/proxy/transforms/crush.d.ts +3 -0
  39. package/dist/proxy/transforms/crush.d.ts.map +1 -0
  40. package/dist/proxy/transforms/droid.d.ts +3 -0
  41. package/dist/proxy/transforms/droid.d.ts.map +1 -0
  42. package/dist/proxy/transforms/forgecode.d.ts +3 -0
  43. package/dist/proxy/transforms/forgecode.d.ts.map +1 -0
  44. package/dist/proxy/transforms/opencode.d.ts +3 -0
  45. package/dist/proxy/transforms/opencode.d.ts.map +1 -0
  46. package/dist/proxy/transforms/passthrough.d.ts +3 -0
  47. package/dist/proxy/transforms/passthrough.d.ts.map +1 -0
  48. package/dist/proxy/transforms/pi.d.ts +3 -0
  49. package/dist/proxy/transforms/pi.d.ts.map +1 -0
  50. package/dist/proxy/transforms/registry.d.ts +3 -0
  51. package/dist/proxy/transforms/registry.d.ts.map +1 -0
  52. package/dist/proxy/types.d.ts +6 -0
  53. package/dist/proxy/types.d.ts.map +1 -1
  54. package/dist/server.js +14 -5
  55. package/dist/stats-4c4ewmdh.js +17 -0
  56. package/dist/telemetry/dashboard.d.ts.map +1 -1
  57. package/dist/telemetry/landing.d.ts.map +1 -1
  58. package/dist/telemetry/profileBar.d.ts +13 -1
  59. package/dist/telemetry/profileBar.d.ts.map +1 -1
  60. package/dist/telemetry/profilePage.d.ts.map +1 -1
  61. package/dist/telemetry/settingsPage.d.ts +1 -1
  62. package/dist/telemetry/settingsPage.d.ts.map +1 -1
  63. package/dist/telemetry/sqlite.d.ts.map +1 -1
  64. package/dist/telemetry/types.d.ts +4 -0
  65. package/dist/telemetry/types.d.ts.map +1 -1
  66. package/package.json +1 -1
package/README.md CHANGED
@@ -652,6 +652,27 @@ Health response example:
652
652
 
653
653
  `plugin.opencode` is `"configured"` when `meridian setup` has been run, `"not-configured"` otherwise.
654
654
 
655
+ ## Plugins
656
+
657
+ Extend Meridian's behavior with composable plugins — no core modifications needed.
658
+
659
+ **Quick start:** Drop a `.ts` or `.js` file in `~/.config/meridian/plugins/` and restart.
660
+
661
+ ```ts
662
+ // ~/.config/meridian/plugins/my-plugin.ts
663
+ export default {
664
+ name: "my-plugin",
665
+ onRequest(ctx) {
666
+ // modify request context
667
+ return { ...ctx, systemContext: ctx.systemContext + "\nBe concise." }
668
+ },
669
+ }
670
+ ```
671
+
672
+ - **Manage plugins** at `http://localhost:3456/plugins`
673
+ - **Reload without restart:** `POST /plugins/reload`
674
+ - **Full guide:** See [PLUGINS.md](PLUGINS.md)
675
+
655
676
  ## CLI Commands
656
677
 
657
678
  | Command | Description |
@@ -3,7 +3,37 @@ import {
3
3
  } from "./cli-p9swy5t3.js";
4
4
 
5
5
  // src/telemetry/profileBar.ts
6
- var profileBarCss = `
6
+ var themeCss = `
7
+ :root {
8
+ /* Cool-gray neutral palette — matches the original dashboard/profiles/
9
+ settings look. Better for data-dense dashboards: high contrast,
10
+ surface/border separation, no color cast muddying the text. Purple
11
+ accents are retained as secondary brand color for hover states,
12
+ gradients, and a handful of telemetry badges. */
13
+ --bg: #0d1117;
14
+ --surface: #161b22;
15
+ --surface2: #1c2128;
16
+ --border: #30363d;
17
+ /* Text */
18
+ --text: #e6edf3;
19
+ --muted: #8b949e;
20
+ /* Brand — blue primary, purple secondary */
21
+ --accent: #58a6ff;
22
+ --accent2: #bc8cff;
23
+ --violet: #bc8cff;
24
+ --lavender: #d2a8ff;
25
+ /* Semantic */
26
+ --green: #3fb950;
27
+ --yellow: #d29922;
28
+ --red: #f85149;
29
+ /* Telemetry-specific aliases (waterfall + lineage badges) */
30
+ --blue: #58a6ff;
31
+ --purple: #bc8cff;
32
+ --queue: #d29922;
33
+ --ttfb: #58a6ff;
34
+ --upstream: #3fb950;
35
+ }
36
+ `, profileBarCss = `
7
37
  .meridian-profile-bar {
8
38
  position: sticky; top: 0; z-index: 100;
9
39
  display: none; align-items: center; gap: 12px;
@@ -57,6 +87,7 @@ var profileBarCss = `
57
87
  <a href="/settings" id="nav-settings">Settings</a>
58
88
  <a href="/profiles" id="nav-profiles">Profiles</a>
59
89
  <a href="/telemetry" id="nav-telemetry">Telemetry</a>
90
+ <a href="/plugins" id="nav-plugins">Plugins</a>
60
91
  </div>
61
92
  </div>
62
93
  `, profileBarJs = `
@@ -114,4 +145,4 @@ var profileBarCss = `
114
145
  `;
115
146
  var init_profileBar = () => {};
116
147
 
117
- export { profileBarCss, profileBarHtml, profileBarJs, init_profileBar };
148
+ export { themeCss, profileBarCss, profileBarHtml, profileBarJs, init_profileBar };