@dotobokuri/fleet-console 1.54.1 → 1.55.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 (71) hide show
  1. package/AGENTS.md +1 -1
  2. package/dist/access-protocol.d.ts +58 -0
  3. package/dist/access-protocol.mjs +165 -0
  4. package/dist/cli.mjs +1205 -704
  5. package/dist/client/assets/{_baseUniq-B2XggV1b.js → _baseUniq-Cp0TuK00.js} +1 -1
  6. package/dist/client/assets/{arc-CPqvR_Wl.js → arc-Cwtz1wxV.js} +1 -1
  7. package/dist/client/assets/{architectureDiagram-Q4EWVU46-BczXSpod.js → architectureDiagram-Q4EWVU46-f2trvyEV.js} +1 -1
  8. package/dist/client/assets/{blockDiagram-DXYQGD6D-BPtW_zZR.js → blockDiagram-DXYQGD6D-BhEa9Mh6.js} +1 -1
  9. package/dist/client/assets/{c4Diagram-AHTNJAMY-Cry2oyLL.js → c4Diagram-AHTNJAMY-CuqbJbZK.js} +1 -1
  10. package/dist/client/assets/channel-D9kPbZ6w.js +1 -0
  11. package/dist/client/assets/{chunk-4BX2VUAB-DKkKt4m0.js → chunk-4BX2VUAB-Vx63wo1i.js} +1 -1
  12. package/dist/client/assets/{chunk-4TB4RGXK-DKGkDbqm.js → chunk-4TB4RGXK-DHRtIlLJ.js} +1 -1
  13. package/dist/client/assets/{chunk-55IACEB6-DawsVr8O.js → chunk-55IACEB6-ChTm2kCK.js} +1 -1
  14. package/dist/client/assets/{chunk-EDXVE4YY-tS8vRy63.js → chunk-EDXVE4YY-C_BQtaY5.js} +1 -1
  15. package/dist/client/assets/{chunk-FMBD7UC4-B0jQQkjI.js → chunk-FMBD7UC4-BPV9Mw6e.js} +1 -1
  16. package/dist/client/assets/{chunk-OYMX7WX6-FZQSRkEo.js → chunk-OYMX7WX6-ya-VyPHj.js} +1 -1
  17. package/dist/client/assets/{chunk-QZHKN3VN-Bq1WBmr8.js → chunk-QZHKN3VN-CLiSGdJ6.js} +1 -1
  18. package/dist/client/assets/{chunk-YZCP3GAM-CNWIYKHc.js → chunk-YZCP3GAM-DasGOM9R.js} +1 -1
  19. package/dist/client/assets/classDiagram-6PBFFD2Q-B1zyip5T.js +1 -0
  20. package/dist/client/assets/classDiagram-v2-HSJHXN6E-B1zyip5T.js +1 -0
  21. package/dist/client/assets/clone-x5mGq45q.js +1 -0
  22. package/dist/client/assets/{cose-bilkent-S5V4N54A-CmOaWS4P.js → cose-bilkent-S5V4N54A-C11PcGWz.js} +1 -1
  23. package/dist/client/assets/{dagre-KV5264BT-D2gJaf1o.js → dagre-KV5264BT-BGiNFCUB.js} +1 -1
  24. package/dist/client/assets/{diagram-5BDNPKRD-DH-M3VUk.js → diagram-5BDNPKRD-CSxK9ZtI.js} +1 -1
  25. package/dist/client/assets/{diagram-G4DWMVQ6-169IB8uN.js → diagram-G4DWMVQ6-COZtgx_6.js} +1 -1
  26. package/dist/client/assets/{diagram-MMDJMWI5-D1OVxCyQ.js → diagram-MMDJMWI5-4-mD0i99.js} +1 -1
  27. package/dist/client/assets/{diagram-TYMM5635-CkiS1glz.js → diagram-TYMM5635-BNX8i0L7.js} +1 -1
  28. package/dist/client/assets/{erDiagram-SMLLAGMA-CZUp7ncJ.js → erDiagram-SMLLAGMA-1a9K7CGs.js} +1 -1
  29. package/dist/client/assets/{flowDiagram-DWJPFMVM-9SIhR3aC.js → flowDiagram-DWJPFMVM-B7BZTT0P.js} +1 -1
  30. package/dist/client/assets/{ganttDiagram-T4ZO3ILL-CA4smcv3.js → ganttDiagram-T4ZO3ILL-FeCgSTyp.js} +1 -1
  31. package/dist/client/assets/{gitGraphDiagram-UUTBAWPF-DF8CSmoM.js → gitGraphDiagram-UUTBAWPF-ItC4KjyQ.js} +1 -1
  32. package/dist/client/assets/{graph-Bc_ceTI8.js → graph-C0wWu6sL.js} +1 -1
  33. package/dist/client/assets/{index-NNL49IzO.css → index-B0961B8M.css} +1 -1
  34. package/dist/client/assets/index-DEW90Ngb.js +479 -0
  35. package/dist/client/assets/{infoDiagram-42DDH7IO-BC5KSucM.js → infoDiagram-42DDH7IO-5ub69t3k.js} +1 -1
  36. package/dist/client/assets/{ishikawaDiagram-UXIWVN3A-JJIJclQD.js → ishikawaDiagram-UXIWVN3A-BEvDRmdo.js} +1 -1
  37. package/dist/client/assets/{journeyDiagram-VCZTEJTY-ERzBaHVf.js → journeyDiagram-VCZTEJTY-DUxQ-ZUX.js} +1 -1
  38. package/dist/client/assets/{kanban-definition-6JOO6SKY-KvnzNd3g.js → kanban-definition-6JOO6SKY-BiPkJbpE.js} +1 -1
  39. package/dist/client/assets/{layout-DJbQbTix.js → layout-Bhtd-qjm.js} +1 -1
  40. package/dist/client/assets/{linear-BzBkH5Aq.js → linear-BT8b8xym.js} +1 -1
  41. package/dist/client/assets/{mermaid.core-CAqwSbV2.js → mermaid.core-BlTpil8e.js} +4 -4
  42. package/dist/client/assets/{min-giSfwdiX.js → min-DrnMPIwV.js} +1 -1
  43. package/dist/client/assets/{mindmap-definition-QFDTVHPH-BH0wnMRm.js → mindmap-definition-QFDTVHPH-uQH7Nv45.js} +1 -1
  44. package/dist/client/assets/{pieDiagram-DEJITSTG-WOHMlPDe.js → pieDiagram-DEJITSTG-MOetI488.js} +1 -1
  45. package/dist/client/assets/{quadrantDiagram-34T5L4WZ-DcIpvIOj.js → quadrantDiagram-34T5L4WZ-C-jeoH4D.js} +1 -1
  46. package/dist/client/assets/{requirementDiagram-MS252O5E-C99uWiwG.js → requirementDiagram-MS252O5E-C7cKIVp5.js} +1 -1
  47. package/dist/client/assets/{sankeyDiagram-XADWPNL6-czWBcwBu.js → sankeyDiagram-XADWPNL6-Dcv2A0AY.js} +1 -1
  48. package/dist/client/assets/{sequenceDiagram-FGHM5R23-CjtCPppG.js → sequenceDiagram-FGHM5R23-CXO-xPvA.js} +1 -1
  49. package/dist/client/assets/{stateDiagram-FHFEXIEX-D0UKF8ze.js → stateDiagram-FHFEXIEX-GKivP2tt.js} +1 -1
  50. package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-BfnEUJRo.js +1 -0
  51. package/dist/client/assets/{timeline-definition-GMOUNBTQ-3isWQZNU.js → timeline-definition-GMOUNBTQ-DLJSUfwG.js} +1 -1
  52. package/dist/client/assets/{vennDiagram-DHZGUBPP-C_LF2g8l.js → vennDiagram-DHZGUBPP-DFihaprP.js} +1 -1
  53. package/dist/client/assets/{wardley-RL74JXVD-Bw0Y4M6p.js → wardley-RL74JXVD-BBV41M5Z.js} +1 -1
  54. package/dist/client/assets/{wardleyDiagram-NUSXRM2D-B6e3mxQI.js → wardleyDiagram-NUSXRM2D-B5J5AiY-.js} +1 -1
  55. package/dist/client/assets/{xychartDiagram-5P7HB3ND-DjlZXnLg.js → xychartDiagram-5P7HB3ND-D1NFEt18.js} +1 -1
  56. package/dist/client/index.html +2 -2
  57. package/dist/fleet-plugins/file-explorer/routes.mjs +13 -9
  58. package/dist/fleet-plugins/ledger/routes.mjs +6 -2
  59. package/dist/fleet-plugins/quota/routes.mjs +22 -18
  60. package/dist/fleet-plugins/repository/routes.mjs +17 -13
  61. package/dist/fleet-plugins/scuttlebutt/routes.mjs +11 -2
  62. package/dist/fleet-plugins/skills/routes.mjs +14 -10
  63. package/dist/fleet-plugins/terminal/routes.mjs +317 -283
  64. package/dist/fleet.mjs +3914 -3456
  65. package/package.json +5 -1
  66. package/dist/client/assets/channel-D5C5uwWd.js +0 -1
  67. package/dist/client/assets/classDiagram-6PBFFD2Q-Cv4Bxw_r.js +0 -1
  68. package/dist/client/assets/classDiagram-v2-HSJHXN6E-Cv4Bxw_r.js +0 -1
  69. package/dist/client/assets/clone-C7dthYDe.js +0 -1
  70. package/dist/client/assets/index-kTAFpDLu.js +0 -479
  71. package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-BdRUP2Pp.js +0 -1
@@ -7,7 +7,11 @@ import path3 from 'node:path';
7
7
  function definePlugin(definition) {
8
8
  return definition;
9
9
  }
10
- function registerRouter(ctx, path9, handler) {
10
+ function registerRouter(ctx, path9, handler, catalog) {
11
+ if (catalog) {
12
+ ctx.registerRouter(normalizePath(path9), handler, catalog);
13
+ return;
14
+ }
11
15
  ctx.registerRouter(normalizePath(path9), handler);
12
16
  }
13
17
  function normalizePath(path9) {
@@ -1727,51 +1731,51 @@ var routes_default = definePlugin({
1727
1731
  registerRouter(ctx, "repos", async ({ req, res }) => {
1728
1732
  await handleRepositoryRepos(req, res, ctx);
1729
1733
  return true;
1730
- });
1734
+ }, { method: "POST", path: "", summary: "List repositories in a Theater.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1731
1735
  registerRouter(ctx, "worktrees", async ({ req, res }) => {
1732
1736
  await handleRepositoryWorktrees(req, res, ctx);
1733
1737
  return true;
1734
- });
1738
+ }, { method: "POST", path: "", summary: "List repository worktrees.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1735
1739
  registerRouter(ctx, "changed", async ({ req, res }) => {
1736
1740
  await handleRepositoryChanged(req, res, ctx);
1737
1741
  return true;
1738
- });
1742
+ }, { method: "POST", path: "", summary: "List changed repository files.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1739
1743
  registerRouter(ctx, "fetch", async ({ req, res }) => {
1740
1744
  await handleRepositoryFetch(req, res, ctx);
1741
1745
  return true;
1742
- });
1746
+ }, { method: "POST", path: "", summary: "Fetch repository data.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1743
1747
  registerRouter(ctx, "file", async ({ req, res }) => {
1744
1748
  await handleRepositoryFile(req, res, ctx);
1745
1749
  return true;
1746
- });
1750
+ }, { method: "POST", path: "", summary: "Read a repository file diff.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1747
1751
  registerRouter(ctx, "log", async ({ req, res }) => {
1748
1752
  await handleRepositoryLog(req, res, ctx);
1749
1753
  return true;
1750
- });
1754
+ }, { method: "POST", path: "", summary: "Read repository history.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1751
1755
  registerRouter(ctx, "palette-search", async ({ req, res }) => {
1752
1756
  await handleRepositorySearch(req, res, ctx);
1753
1757
  return true;
1754
- });
1758
+ }, { method: "POST", path: "", summary: "Search repository commits.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1755
1759
  registerRouter(ctx, "refs", async ({ req, res }) => {
1756
1760
  await handleRepositoryRefs(req, res, ctx);
1757
1761
  return true;
1758
- });
1762
+ }, { method: "POST", path: "", summary: "Read repository refs.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1759
1763
  registerRouter(ctx, "commit", async ({ req, res }) => {
1760
1764
  await handleRepositoryCommit(req, res, ctx);
1761
1765
  return true;
1762
- });
1766
+ }, { method: "POST", path: "", summary: "Read repository commit details.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1763
1767
  registerRouter(ctx, "commit-file", async ({ req, res }) => {
1764
1768
  await handleRepositoryCommitFile(req, res, ctx);
1765
1769
  return true;
1766
- });
1770
+ }, { method: "POST", path: "", summary: "Read a file diff at a repository commit.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1767
1771
  registerRouter(ctx, "compare", async ({ req, res }) => {
1768
1772
  await handleRepositoryCompare(req, res, ctx);
1769
1773
  return true;
1770
- });
1774
+ }, { method: "POST", path: "", summary: "Compare repository revisions.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1771
1775
  registerRouter(ctx, "compare-file", async ({ req, res }) => {
1772
1776
  await handleRepositoryCompareFile(req, res, ctx);
1773
1777
  return true;
1774
- });
1778
+ }, { method: "POST", path: "", summary: "Compare repository files.", category: "Repository Plugin", gate: "origin-write", transport: "http" });
1775
1779
  }
1776
1780
  });
1777
1781
 
@@ -21,7 +21,11 @@ var __export = (target, all) => {
21
21
  function definePlugin(definition) {
22
22
  return definition;
23
23
  }
24
- function registerRouter(ctx, path5, handler) {
24
+ function registerRouter(ctx, path5, handler, catalog) {
25
+ if (catalog) {
26
+ ctx.registerRouter(normalizePath(path5), handler, catalog);
27
+ return;
28
+ }
25
29
  ctx.registerRouter(normalizePath(path5), handler);
26
30
  }
27
31
  function normalizePath(path5) {
@@ -19962,7 +19966,12 @@ function registerChatRoutes(ctx, deps = {}) {
19962
19966
  if (match[2] === "message") return handleMessage(ctx, req, res, chatId, registry3);
19963
19967
  if (match[2] === "stream") return handleStream(ctx, req, res, chatId, registry3);
19964
19968
  return handleStop(ctx, req, res, chatId, registry3);
19965
- });
19969
+ }, [
19970
+ { method: "POST", path: "/start", summary: "Start a Scuttlebutt chat session.", category: "Scuttlebutt Plugin", gate: "origin-write", transport: "http" },
19971
+ { method: "POST", path: "/:chatId/message", summary: "Send a Scuttlebutt chat message.", category: "Scuttlebutt Plugin", gate: "origin-write", transport: "http" },
19972
+ { method: "GET", path: "/:chatId/stream", summary: "Stream a Scuttlebutt chat session.", category: "Scuttlebutt Plugin", gate: "origin-write", transport: "sse" },
19973
+ { method: "POST", path: "/:chatId/stop", summary: "Stop a Scuttlebutt chat session.", category: "Scuttlebutt Plugin", gate: "origin-write", transport: "http" }
19974
+ ]);
19966
19975
  ctx.host.lifecycle.registerCleanup(() => registry3.dispose());
19967
19976
  return registry3;
19968
19977
  }
@@ -10,7 +10,11 @@ import crypto from 'node:crypto';
10
10
  function definePlugin(definition) {
11
11
  return definition;
12
12
  }
13
- function registerRouter(ctx, path6, handler) {
13
+ function registerRouter(ctx, path6, handler, catalog) {
14
+ if (catalog) {
15
+ ctx.registerRouter(normalizePath(path6), handler, catalog);
16
+ return;
17
+ }
14
18
  ctx.registerRouter(normalizePath(path6), handler);
15
19
  }
16
20
  function normalizePath(path6) {
@@ -928,39 +932,39 @@ var routes_default = definePlugin({
928
932
  registerRouter(ctx, "list", async ({ req, res }) => {
929
933
  await handleList(req, res, ctx, executor);
930
934
  return true;
931
- });
935
+ }, { method: "GET", path: "", summary: "List installed skills.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
932
936
  registerRouter(ctx, "palette-search", async ({ req, res }) => {
933
937
  await handlePaletteSearch(req, res, ctx);
934
938
  return true;
935
- });
939
+ }, { method: "POST", path: "", summary: "Search installed skills.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
936
940
  registerRouter(ctx, "search", async ({ req, res }) => {
937
941
  await handleSearch(req, res, ctx);
938
942
  return true;
939
- });
943
+ }, { method: "GET", path: "", summary: "Search the skill registry.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
940
944
  registerRouter(ctx, "install", async ({ req, res }) => {
941
945
  await handleInstall(req, res, ctx, executor);
942
946
  return true;
943
- });
947
+ }, { method: "POST", path: "", summary: "Install a skill.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
944
948
  registerRouter(ctx, "update", async ({ req, res }) => {
945
949
  await handleUpdate(req, res, ctx, executor);
946
950
  return true;
947
- });
951
+ }, { method: "POST", path: "", summary: "Update installed skills.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
948
952
  registerRouter(ctx, "jobs", async ({ req, res }) => {
949
953
  await handleGetJob(req, res, ctx);
950
954
  return true;
951
- });
955
+ }, { method: "GET", path: "", summary: "Read a skill job.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
952
956
  registerRouter(ctx, "remove", async ({ req, res }) => {
953
957
  await handleRemove(req, res, ctx, executor);
954
958
  return true;
955
- });
959
+ }, { method: "POST", path: "", summary: "Remove an installed skill.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
956
960
  registerRouter(ctx, "preview", async ({ req, res }) => {
957
961
  await handlePreview(req, res, ctx, executor);
958
962
  return true;
959
- });
963
+ }, { method: "POST", path: "", summary: "Preview a skill.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
960
964
  registerRouter(ctx, "installed-file", async ({ req, res }) => {
961
965
  await handleInstalledFile(req, res, ctx, executor);
962
966
  return true;
963
- });
967
+ }, { method: "POST", path: "", summary: "Read an installed skill file.", category: "Skills Plugin", gate: "origin-write", transport: "http" });
964
968
  }
965
969
  });
966
970