hive-am 1.3.0 → 1.4.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 (120) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/README.md +19 -0
  3. package/package.json +1 -1
  4. package/server/dist/objects/index.js +4 -6
  5. package/server/dist/objects/runner.js +20 -0
  6. package/server/dist/objects/supervisor.js +2 -2
  7. package/web/.next/BUILD_ID +1 -1
  8. package/web/.next/app-build-manifest.json +75 -66
  9. package/web/.next/app-path-routes-manifest.json +7 -6
  10. package/web/.next/build-manifest.json +2 -2
  11. package/web/.next/prerender-manifest.json +68 -44
  12. package/web/.next/routes-manifest.json +6 -0
  13. package/web/.next/server/app/_not-found/page.js +1 -1
  14. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  15. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  16. package/web/.next/server/app/_not-found.html +1 -1
  17. package/web/.next/server/app/_not-found.rsc +3 -3
  18. package/web/.next/server/app/agents/[id]/page.js +4 -4
  19. package/web/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  20. package/web/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  21. package/web/.next/server/app/agents/page.js +1 -1
  22. package/web/.next/server/app/agents/page.js.nft.json +1 -1
  23. package/web/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  24. package/web/.next/server/app/agents.html +1 -1
  25. package/web/.next/server/app/agents.rsc +4 -4
  26. package/web/.next/server/app/chat/page.js +2 -0
  27. package/web/.next/server/app/chat/page.js.nft.json +1 -0
  28. package/web/.next/server/app/chat/page_client-reference-manifest.js +1 -0
  29. package/web/.next/server/app/chat.html +1 -0
  30. package/web/.next/server/app/chat.meta +15 -0
  31. package/web/.next/server/app/chat.rsc +25 -0
  32. package/web/.next/server/app/connections/page.js +1 -1
  33. package/web/.next/server/app/connections/page.js.nft.json +1 -1
  34. package/web/.next/server/app/connections/page_client-reference-manifest.js +1 -1
  35. package/web/.next/server/app/connections.html +1 -1
  36. package/web/.next/server/app/connections.rsc +4 -4
  37. package/web/.next/server/app/index.html +1 -1
  38. package/web/.next/server/app/index.rsc +4 -4
  39. package/web/.next/server/app/page.js +1 -1
  40. package/web/.next/server/app/page.js.nft.json +1 -1
  41. package/web/.next/server/app/page_client-reference-manifest.js +1 -1
  42. package/web/.next/server/app/relations/page.js +1 -1
  43. package/web/.next/server/app/relations/page.js.nft.json +1 -1
  44. package/web/.next/server/app/relations/page_client-reference-manifest.js +1 -1
  45. package/web/.next/server/app/relations.html +1 -1
  46. package/web/.next/server/app/relations.rsc +4 -4
  47. package/web/.next/server/app/resources/[id]/page.js +2 -2
  48. package/web/.next/server/app/resources/[id]/page.js.nft.json +1 -1
  49. package/web/.next/server/app/resources/[id]/page_client-reference-manifest.js +1 -1
  50. package/web/.next/server/app/resources/page.js +2 -2
  51. package/web/.next/server/app/resources/page.js.nft.json +1 -1
  52. package/web/.next/server/app/resources/page_client-reference-manifest.js +1 -1
  53. package/web/.next/server/app/resources.html +1 -1
  54. package/web/.next/server/app/resources.rsc +4 -4
  55. package/web/.next/server/app/schedules/page.js +1 -1
  56. package/web/.next/server/app/schedules/page.js.nft.json +1 -1
  57. package/web/.next/server/app/schedules/page_client-reference-manifest.js +1 -1
  58. package/web/.next/server/app/schedules.html +1 -1
  59. package/web/.next/server/app/schedules.rsc +4 -4
  60. package/web/.next/server/app/sessions/page.js +2 -2
  61. package/web/.next/server/app/sessions/page.js.nft.json +1 -1
  62. package/web/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  63. package/web/.next/server/app/sessions.html +1 -1
  64. package/web/.next/server/app/sessions.rsc +4 -4
  65. package/web/.next/server/app/skills/page.js +1 -1
  66. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  67. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  68. package/web/.next/server/app/skills.html +1 -1
  69. package/web/.next/server/app/skills.rsc +4 -4
  70. package/web/.next/server/app/types/page.js +1 -1
  71. package/web/.next/server/app/types/page.js.nft.json +1 -1
  72. package/web/.next/server/app/types/page_client-reference-manifest.js +1 -1
  73. package/web/.next/server/app/types.html +1 -1
  74. package/web/.next/server/app/types.rsc +4 -4
  75. package/web/.next/server/app-paths-manifest.json +7 -6
  76. package/web/.next/server/chunks/148.js +1 -0
  77. package/web/.next/server/chunks/213.js +6 -0
  78. package/web/.next/server/chunks/274.js +1 -1
  79. package/web/.next/server/chunks/368.js +1 -0
  80. package/web/.next/server/chunks/403.js +1 -0
  81. package/web/.next/server/chunks/{790.js → 435.js} +2 -2
  82. package/web/.next/server/chunks/505.js +1 -6
  83. package/web/.next/server/chunks/612.js +1 -1
  84. package/web/.next/server/pages/404.html +1 -1
  85. package/web/.next/server/pages/500.html +1 -1
  86. package/web/.next/server/server-reference-manifest.json +1 -1
  87. package/web/.next/static/YT6HM6qmegMJaBMX5QvuP/_buildManifest.js +1 -0
  88. package/web/.next/static/chunks/281-113274e705940a55.js +1 -0
  89. package/web/.next/static/chunks/391-18768499e741112e.js +1 -0
  90. package/web/.next/static/chunks/587-8e4d2be01ba7d48f.js +1 -0
  91. package/web/.next/static/chunks/606-c9a19918b02a98d0.js +1 -0
  92. package/web/.next/static/chunks/656-f537149fe28f79aa.js +1 -0
  93. package/web/.next/static/chunks/{705-780e48e55b0346bd.js → 705-f81face97b1bb1af.js} +1 -1
  94. package/web/.next/static/chunks/app/agents/[id]/page-6ed6edb3e74b0ebe.js +1 -0
  95. package/web/.next/static/chunks/app/chat/page-5261b12b7d50f5d1.js +1 -0
  96. package/web/.next/static/chunks/app/layout-fad968a635f9a4b3.js +1 -0
  97. package/web/.next/static/chunks/app/page-99e0351e6ccaa384.js +1 -0
  98. package/web/.next/static/chunks/app/resources/[id]/{page-bf05836f97248ca7.js → page-fc494e85b01e8cb7.js} +1 -1
  99. package/web/.next/static/chunks/app/resources/{page-800f774e5cacf4c9.js → page-61cccd8fdcc2f6c8.js} +1 -1
  100. package/web/.next/static/css/582723fcea1f9887.css +1 -0
  101. package/web/.next/trace +30 -29
  102. package/web/.next/types/app/chat/page.ts +84 -0
  103. package/web/.next/types/routes.d.ts +2 -1
  104. package/web/.next/types/validator.ts +9 -0
  105. package/web/.next/server/chunks/306.js +0 -1
  106. package/web/.next/server/chunks/451.js +0 -1
  107. package/web/.next/server/chunks/638.js +0 -1
  108. package/web/.next/server/chunks/802.js +0 -1
  109. package/web/.next/static/aSYzbHk1M5YeS_d3SQKTZ/_buildManifest.js +0 -1
  110. package/web/.next/static/chunks/281-d8a0dcfaa6d064e4.js +0 -1
  111. package/web/.next/static/chunks/291-23f314877fa39054.js +0 -1
  112. package/web/.next/static/chunks/304-681348099f874a30.js +0 -1
  113. package/web/.next/static/chunks/491-28f093772bd460ac.js +0 -1
  114. package/web/.next/static/chunks/581-3ad5c4343dad3f50.js +0 -1
  115. package/web/.next/static/chunks/844-519177e6198ca84f.js +0 -1
  116. package/web/.next/static/chunks/app/agents/[id]/page-c005161cec5527d8.js +0 -1
  117. package/web/.next/static/chunks/app/layout-49b46c9b5aa512a8.js +0 -1
  118. package/web/.next/static/chunks/app/page-da042d146caeeab6.js +0 -1
  119. package/web/.next/static/css/d42799b7e6a0e8a2.css +0 -1
  120. /package/web/.next/static/{aSYzbHk1M5YeS_d3SQKTZ → YT6HM6qmegMJaBMX5QvuP}/_ssgManifest.js +0 -0
package/CHANGELOG.md CHANGED
@@ -6,6 +6,24 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [1.4.0] - 2026-10-15
10
+
11
+ ### Added
12
+
13
+ - **Chat** item in the side rail, above Colony. It opens the last conversation you had open (or the first agent if that one no longer exists). With no agents yet, it shows an empty state with a button to create the first one.
14
+ - **Resources strip** above each chat, folded by default. Closed, it is one line that counts the resources running, stopped or failing (failures in red). Open, it shows a card per resource with start or stop, restart and a link to its own screen. It shows the agent's resources and those of its colony, with a switch to see all of them; the choice and whether it is open are remembered.
15
+ - The README now has screenshots of the colony, chat, resources, clusters, changes explorer and HTTP requests.
16
+
17
+ ### Changed
18
+
19
+ - Servers: **Keeping it healthy** is split into **If it goes down** (restart policy and maximum restarts) and **Health check** (kind, target and restart when unhealthy). The check timing (every, wait, failures in a row) and the stop and log settings are folded, and the defaults are visible.
20
+ - Servers: a restart waits for the port to be free before starting again, so a stop command that does not really stop the service is reported instead of leaving a failed start behind.
21
+ - Servers: the first health check comes one interval after a start instead of right away.
22
+
23
+ ### Fixed
24
+
25
+ - Entering a chat no longer flashes the default layout first: saved choices (the agent list collapsed, the resources strip open) apply before the first paint, the side panel only animates when you toggle it, and the conversation fades in when its history arrives.
26
+
9
27
  ## [1.3.0] - 2026-10-14
10
28
 
11
29
  ### Added
@@ -168,7 +186,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
168
186
  - Complete documentation in English and Spanish.
169
187
  - npm package with the `hive-am` command.
170
188
 
171
- [Unreleased]: https://github.com/hughcbscrt/hive-am/compare/v1.3.0...HEAD
189
+ [Unreleased]: https://github.com/hughcbscrt/hive-am/compare/v1.4.0...HEAD
190
+ [1.4.0]: https://github.com/hughcbscrt/hive-am/compare/v1.3.0...v1.4.0
172
191
  [1.3.0]: https://github.com/hughcbscrt/hive-am/compare/v1.2.2...v1.3.0
173
192
  [1.2.2]: https://github.com/hughcbscrt/hive-am/compare/v1.2.1...v1.2.2
174
193
  [1.2.1]: https://github.com/hughcbscrt/hive-am/compare/v1.2.0...v1.2.1
package/README.md CHANGED
@@ -44,6 +44,25 @@ have installed; it does not replace them and it never copies your conversations
44
44
  - **Terminals.** A bottom panel (Ctrl+`) with real shells and object logs, reachable only from this machine.
45
45
  - **Local and private.** The server binds to `127.0.0.1`. Data lives in `~/.hive-am/`.
46
46
 
47
+ ## Screenshots
48
+
49
+ <table>
50
+ <tr>
51
+ <td width="50%"><img src="docs/manual/en/img/colonia-mapa.jpg" alt="The colony map: colonies, agents and resources as hexagons" /><br /><sub><b>The colony.</b> Agents and resources as hexagons, grouped by colony.</sub></td>
52
+ <td width="50%"><img src="docs/manual/en/img/chat-conversacion.jpg" alt="A conversation with an orchestrator" /><br /><sub><b>Chat.</b> The real session of the CLI, with tokens, cost and tool calls.</sub></td>
53
+ </tr>
54
+ <tr>
55
+ <td width="50%"><img src="docs/manual/en/img/recurso-servidor-logs.jpg" alt="A server resource with its live logs" /><br /><sub><b>Resources.</b> Servers, containers and databases with live logs.</sub></td>
56
+ <td width="50%"><img src="docs/manual/en/img/recurso-cluster.jpg" alt="A cluster that starts several resources together" /><br /><sub><b>Clusters.</b> Start and stop a group of resources in order.</sub></td>
57
+ </tr>
58
+ <tr>
59
+ <td width="50%"><img src="docs/manual/en/img/cambios-diff.jpg" alt="The changes explorer showing a diff" /><br /><sub><b>Changes.</b> Git tree, diff, history and commit per agent.</sub></td>
60
+ <td width="50%"><img src="docs/manual/en/img/http-respuesta.jpg" alt="An HTTP request and its response" /><br /><sub><b>HTTP requests.</b> Run <code>.http</code> files and read the response.</sub></td>
61
+ </tr>
62
+ </table>
63
+
64
+ More in the [user manual](docs/manual/en/README.md).
65
+
47
66
  ## Providers
48
67
 
49
68
  | Provider | Run a turn | Transcript source |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hive-am",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "A colony of coding agents: orchestrators and subagents over Claude Code, OpenCode and Kiro, with real session resume, a browser UI and Telegram.",
5
5
  "keywords": [
6
6
  "ai-agents",
@@ -10,7 +10,7 @@ import { dbColumns, dbQuery, dbSchema, dbState, dbTest, forgetDatabase } from '.
10
10
  import { addSaved, clearQueries, forgetQueries, listQueries, listSaved, recordQuery, removeSaved, updateSaved } from './db-history.js';
11
11
  import { exportCollection, parseHttpFile, createHttpFile, exportHttp, describeHttp, dropSession, inspectHttp, readHttpFile, runHttp, scanHttp, writeHttpFile, sessionClear, sessionOf, sessionSet, sessionView } from './http.js';
12
12
  import { ObjectError, parseDatabase } from './model.js';
13
- import { forgetServer, serverLogs, serverState, startServer, stopServer } from './runner.js';
13
+ import { forgetServer, serverLogs, restartServer, serverState, startServer, stopServer } from './runner.js';
14
14
  import { forgetSupervision, resetSupervision, supervise } from './supervisor.js';
15
15
  import { maskConfig, objectsStore } from './store.js';
16
16
  export { ObjectError } from './model.js';
@@ -59,7 +59,7 @@ function clusterState(o) {
59
59
  async function serverStateSupervised(o) {
60
60
  const cfg = o.config;
61
61
  const base = await serverState(o.id, cfg);
62
- return supervise(o, cfg, base, { start: () => startServer(o.id, cfg), restart: async () => { await stopServer(o.id, cfg); await startServer(o.id, cfg); } });
62
+ return supervise(o, cfg, base, { start: () => startServer(o.id, cfg), restart: () => restartServer(o.id, cfg) });
63
63
  }
64
64
  export async function stateOf(o) {
65
65
  const s = o.kind === 'server' ? await serverStateSupervised(o)
@@ -113,10 +113,8 @@ async function act(o, action) {
113
113
  await startServer(o.id, c);
114
114
  else if (action === 'stop')
115
115
  await stopServer(o.id, c);
116
- else {
117
- await stopServer(o.id, c);
118
- await startServer(o.id, c);
119
- }
116
+ else
117
+ await restartServer(o.id, c);
120
118
  }
121
119
  else {
122
120
  const c = o.config;
@@ -139,6 +139,26 @@ export async function stopServer(id, cfg) {
139
139
  await sleep(100);
140
140
  }
141
141
  }
142
+ /**
143
+ * Stop, then start again. With a port, the old listener must be gone before the new one starts: otherwise the check on the port would
144
+ * report "running" for the old process (a stop command that does not really stop the service) while the new one failed to bind.
145
+ */
146
+ export async function restartServer(id, cfg) {
147
+ await stopServer(id, cfg);
148
+ if (cfg.port) {
149
+ const grace = cfg.stopTimeoutSec ? cfg.stopTimeoutSec * 1000 : STOP_GRACE_MS;
150
+ let waited = 0;
151
+ while (await listening(cfg.port) && waited < grace) {
152
+ await sleep(300);
153
+ waited += 300;
154
+ }
155
+ if (await listening(cfg.port)) {
156
+ note(id, `port ${cfg.port} is still in use after stopping: not starting it again. Check that the stop command really stops the service`);
157
+ throw new ObjectError(`Port ${cfg.port} is still in use after stopping, so it was not started again. Check that the stop command really stops the service.`);
158
+ }
159
+ }
160
+ await startServer(id, cfg);
161
+ }
142
162
  /** Lines the object printed. `after` is a byte offset from an earlier call; without it the last `tail` lines come back. */
143
163
  export function serverLogs(id, o) {
144
164
  const { log } = files(id);
@@ -54,8 +54,8 @@ export async function supervise(o, cfg, state, act) {
54
54
  if (S.startedAt !== saved?.startedAt) {
55
55
  S.startedAt = saved?.startedAt ?? 0;
56
56
  S.fails = 0;
57
- S.lastCheck = 0;
58
- }
57
+ S.lastCheck = now;
58
+ } // a new start: the first check comes one interval later, not right away
59
59
  if (now - S.lastCheck >= (cfg.health.intervalSec ?? 15) * 1000) {
60
60
  S.lastCheck = now;
61
61
  const r = await check(cfg, cfg.health);
@@ -1 +1 @@
1
- aSYzbHk1M5YeS_d3SQKTZ
1
+ YT6HM6qmegMJaBMX5QvuP
@@ -13,10 +13,10 @@
13
13
  "static/chunks/89-b194fcffe5120c44.js",
14
14
  "static/chunks/main-app-6086068e5fb5eacd.js",
15
15
  "static/css/945795da867f5250.css",
16
- "static/css/d42799b7e6a0e8a2.css",
16
+ "static/css/582723fcea1f9887.css",
17
17
  "static/chunks/586-f7017d585a84738d.js",
18
- "static/chunks/281-d8a0dcfaa6d064e4.js",
19
- "static/chunks/app/layout-49b46c9b5aa512a8.js"
18
+ "static/chunks/281-113274e705940a55.js",
19
+ "static/chunks/app/layout-fad968a635f9a4b3.js"
20
20
  ],
21
21
  "/connections/page": [
22
22
  "static/chunks/webpack-ef515e41a83a16ac.js",
@@ -24,40 +24,33 @@
24
24
  "static/chunks/89-b194fcffe5120c44.js",
25
25
  "static/chunks/main-app-6086068e5fb5eacd.js",
26
26
  "static/chunks/586-f7017d585a84738d.js",
27
- "static/chunks/281-d8a0dcfaa6d064e4.js",
27
+ "static/chunks/281-113274e705940a55.js",
28
28
  "static/chunks/app/connections/page-eb11cfb1ffeab3ca.js"
29
29
  ],
30
- "/agents/page": [
30
+ "/chat/page": [
31
31
  "static/chunks/webpack-ef515e41a83a16ac.js",
32
32
  "static/chunks/0937d497-114a2a3de515565e.js",
33
33
  "static/chunks/89-b194fcffe5120c44.js",
34
34
  "static/chunks/main-app-6086068e5fb5eacd.js",
35
35
  "static/chunks/586-f7017d585a84738d.js",
36
36
  "static/chunks/706-fa2be0f10ffebe6a.js",
37
- "static/chunks/281-d8a0dcfaa6d064e4.js",
37
+ "static/chunks/281-113274e705940a55.js",
38
38
  "static/chunks/517-373a80c8ba432bdc.js",
39
- "static/chunks/app/agents/page-9bb8cba69776c719.js"
39
+ "static/chunks/app/chat/page-5261b12b7d50f5d1.js"
40
40
  ],
41
- "/resources/page": [
41
+ "/relations/page": [
42
42
  "static/chunks/webpack-ef515e41a83a16ac.js",
43
43
  "static/chunks/0937d497-114a2a3de515565e.js",
44
44
  "static/chunks/89-b194fcffe5120c44.js",
45
45
  "static/chunks/main-app-6086068e5fb5eacd.js",
46
+ "static/css/c4a545148b5320ec.css",
47
+ "static/chunks/2b9ff8ee-969e65cc354b2150.js",
46
48
  "static/chunks/586-f7017d585a84738d.js",
47
- "static/chunks/706-fa2be0f10ffebe6a.js",
48
- "static/chunks/837-33c7480524f48577.js",
49
- "static/chunks/304-681348099f874a30.js",
50
- "static/chunks/581-3ad5c4343dad3f50.js",
51
- "static/chunks/281-d8a0dcfaa6d064e4.js",
52
- "static/chunks/517-373a80c8ba432bdc.js",
53
- "static/chunks/350-0fe82e622e7a670f.js",
54
- "static/chunks/291-23f314877fa39054.js",
55
- "static/chunks/844-519177e6198ca84f.js",
56
- "static/chunks/30-9adcbe92b15a6815.js",
57
- "static/chunks/491-28f093772bd460ac.js",
58
- "static/chunks/app/resources/page-800f774e5cacf4c9.js"
49
+ "static/chunks/562-7c2e33d838e869bf.js",
50
+ "static/chunks/281-113274e705940a55.js",
51
+ "static/chunks/app/relations/page-a44fd515a3b0525e.js"
59
52
  ],
60
- "/resources/[id]/page": [
53
+ "/agents/[id]/page": [
61
54
  "static/chunks/webpack-ef515e41a83a16ac.js",
62
55
  "static/chunks/0937d497-114a2a3de515565e.js",
63
56
  "static/chunks/89-b194fcffe5120c44.js",
@@ -65,104 +58,120 @@
65
58
  "static/chunks/586-f7017d585a84738d.js",
66
59
  "static/chunks/706-fa2be0f10ffebe6a.js",
67
60
  "static/chunks/837-33c7480524f48577.js",
68
- "static/chunks/304-681348099f874a30.js",
69
- "static/chunks/581-3ad5c4343dad3f50.js",
70
- "static/chunks/281-d8a0dcfaa6d064e4.js",
61
+ "static/chunks/391-18768499e741112e.js",
62
+ "static/chunks/316-26da9cc233ba7557.js",
63
+ "static/chunks/281-113274e705940a55.js",
71
64
  "static/chunks/517-373a80c8ba432bdc.js",
72
65
  "static/chunks/350-0fe82e622e7a670f.js",
73
- "static/chunks/291-23f314877fa39054.js",
74
- "static/chunks/844-519177e6198ca84f.js",
66
+ "static/chunks/606-c9a19918b02a98d0.js",
75
67
  "static/chunks/30-9adcbe92b15a6815.js",
76
- "static/chunks/491-28f093772bd460ac.js",
77
- "static/chunks/app/resources/[id]/page-bf05836f97248ca7.js"
68
+ "static/chunks/705-f81face97b1bb1af.js",
69
+ "static/chunks/app/agents/[id]/page-6ed6edb3e74b0ebe.js"
78
70
  ],
79
- "/schedules/page": [
71
+ "/agents/page": [
80
72
  "static/chunks/webpack-ef515e41a83a16ac.js",
81
73
  "static/chunks/0937d497-114a2a3de515565e.js",
82
74
  "static/chunks/89-b194fcffe5120c44.js",
83
75
  "static/chunks/main-app-6086068e5fb5eacd.js",
84
76
  "static/chunks/586-f7017d585a84738d.js",
85
- "static/chunks/281-d8a0dcfaa6d064e4.js",
86
- "static/chunks/app/schedules/page-96976fff4ee23538.js"
77
+ "static/chunks/706-fa2be0f10ffebe6a.js",
78
+ "static/chunks/281-113274e705940a55.js",
79
+ "static/chunks/517-373a80c8ba432bdc.js",
80
+ "static/chunks/app/agents/page-9bb8cba69776c719.js"
87
81
  ],
88
- "/skills/page": [
82
+ "/resources/[id]/page": [
89
83
  "static/chunks/webpack-ef515e41a83a16ac.js",
90
84
  "static/chunks/0937d497-114a2a3de515565e.js",
91
85
  "static/chunks/89-b194fcffe5120c44.js",
92
86
  "static/chunks/main-app-6086068e5fb5eacd.js",
93
87
  "static/chunks/586-f7017d585a84738d.js",
94
88
  "static/chunks/706-fa2be0f10ffebe6a.js",
95
- "static/chunks/281-d8a0dcfaa6d064e4.js",
96
- "static/chunks/app/skills/page-bc1acd0663f36129.js"
89
+ "static/chunks/837-33c7480524f48577.js",
90
+ "static/chunks/391-18768499e741112e.js",
91
+ "static/chunks/281-113274e705940a55.js",
92
+ "static/chunks/517-373a80c8ba432bdc.js",
93
+ "static/chunks/350-0fe82e622e7a670f.js",
94
+ "static/chunks/606-c9a19918b02a98d0.js",
95
+ "static/chunks/587-8e4d2be01ba7d48f.js",
96
+ "static/chunks/30-9adcbe92b15a6815.js",
97
+ "static/chunks/656-f537149fe28f79aa.js",
98
+ "static/chunks/app/resources/[id]/page-fc494e85b01e8cb7.js"
97
99
  ],
98
- "/sessions/page": [
100
+ "/resources/page": [
99
101
  "static/chunks/webpack-ef515e41a83a16ac.js",
100
102
  "static/chunks/0937d497-114a2a3de515565e.js",
101
103
  "static/chunks/89-b194fcffe5120c44.js",
102
104
  "static/chunks/main-app-6086068e5fb5eacd.js",
103
105
  "static/chunks/586-f7017d585a84738d.js",
104
106
  "static/chunks/706-fa2be0f10ffebe6a.js",
105
- "static/chunks/654-92a63b3c4b412666.js",
106
- "static/chunks/281-d8a0dcfaa6d064e4.js",
107
+ "static/chunks/837-33c7480524f48577.js",
108
+ "static/chunks/391-18768499e741112e.js",
109
+ "static/chunks/281-113274e705940a55.js",
110
+ "static/chunks/517-373a80c8ba432bdc.js",
107
111
  "static/chunks/350-0fe82e622e7a670f.js",
108
- "static/chunks/705-780e48e55b0346bd.js",
109
- "static/chunks/app/sessions/page-a7534ebd90e982d6.js"
112
+ "static/chunks/606-c9a19918b02a98d0.js",
113
+ "static/chunks/587-8e4d2be01ba7d48f.js",
114
+ "static/chunks/30-9adcbe92b15a6815.js",
115
+ "static/chunks/656-f537149fe28f79aa.js",
116
+ "static/chunks/app/resources/page-61cccd8fdcc2f6c8.js"
110
117
  ],
111
- "/types/page": [
118
+ "/page": [
112
119
  "static/chunks/webpack-ef515e41a83a16ac.js",
113
120
  "static/chunks/0937d497-114a2a3de515565e.js",
114
121
  "static/chunks/89-b194fcffe5120c44.js",
115
122
  "static/chunks/main-app-6086068e5fb5eacd.js",
116
123
  "static/chunks/586-f7017d585a84738d.js",
117
124
  "static/chunks/706-fa2be0f10ffebe6a.js",
118
- "static/chunks/281-d8a0dcfaa6d064e4.js",
125
+ "static/chunks/391-18768499e741112e.js",
126
+ "static/chunks/281-113274e705940a55.js",
119
127
  "static/chunks/517-373a80c8ba432bdc.js",
120
- "static/chunks/app/types/page-ebd37e220f77c1f3.js"
128
+ "static/chunks/350-0fe82e622e7a670f.js",
129
+ "static/chunks/606-c9a19918b02a98d0.js",
130
+ "static/chunks/587-8e4d2be01ba7d48f.js",
131
+ "static/chunks/app/page-99e0351e6ccaa384.js"
121
132
  ],
122
- "/agents/[id]/page": [
133
+ "/schedules/page": [
134
+ "static/chunks/webpack-ef515e41a83a16ac.js",
135
+ "static/chunks/0937d497-114a2a3de515565e.js",
136
+ "static/chunks/89-b194fcffe5120c44.js",
137
+ "static/chunks/main-app-6086068e5fb5eacd.js",
138
+ "static/chunks/586-f7017d585a84738d.js",
139
+ "static/chunks/281-113274e705940a55.js",
140
+ "static/chunks/app/schedules/page-96976fff4ee23538.js"
141
+ ],
142
+ "/sessions/page": [
123
143
  "static/chunks/webpack-ef515e41a83a16ac.js",
124
144
  "static/chunks/0937d497-114a2a3de515565e.js",
125
145
  "static/chunks/89-b194fcffe5120c44.js",
126
146
  "static/chunks/main-app-6086068e5fb5eacd.js",
127
147
  "static/chunks/586-f7017d585a84738d.js",
128
148
  "static/chunks/706-fa2be0f10ffebe6a.js",
129
- "static/chunks/837-33c7480524f48577.js",
130
- "static/chunks/304-681348099f874a30.js",
131
- "static/chunks/316-26da9cc233ba7557.js",
132
- "static/chunks/281-d8a0dcfaa6d064e4.js",
133
- "static/chunks/517-373a80c8ba432bdc.js",
149
+ "static/chunks/654-92a63b3c4b412666.js",
150
+ "static/chunks/281-113274e705940a55.js",
134
151
  "static/chunks/350-0fe82e622e7a670f.js",
135
- "static/chunks/291-23f314877fa39054.js",
136
- "static/chunks/30-9adcbe92b15a6815.js",
137
- "static/chunks/705-780e48e55b0346bd.js",
138
- "static/chunks/app/agents/[id]/page-c005161cec5527d8.js"
152
+ "static/chunks/705-f81face97b1bb1af.js",
153
+ "static/chunks/app/sessions/page-a7534ebd90e982d6.js"
139
154
  ],
140
- "/relations/page": [
155
+ "/types/page": [
141
156
  "static/chunks/webpack-ef515e41a83a16ac.js",
142
157
  "static/chunks/0937d497-114a2a3de515565e.js",
143
158
  "static/chunks/89-b194fcffe5120c44.js",
144
159
  "static/chunks/main-app-6086068e5fb5eacd.js",
145
- "static/css/c4a545148b5320ec.css",
146
- "static/chunks/2b9ff8ee-969e65cc354b2150.js",
147
160
  "static/chunks/586-f7017d585a84738d.js",
148
- "static/chunks/562-7c2e33d838e869bf.js",
149
- "static/chunks/281-d8a0dcfaa6d064e4.js",
150
- "static/chunks/app/relations/page-a44fd515a3b0525e.js"
161
+ "static/chunks/706-fa2be0f10ffebe6a.js",
162
+ "static/chunks/281-113274e705940a55.js",
163
+ "static/chunks/517-373a80c8ba432bdc.js",
164
+ "static/chunks/app/types/page-ebd37e220f77c1f3.js"
151
165
  ],
152
- "/page": [
166
+ "/skills/page": [
153
167
  "static/chunks/webpack-ef515e41a83a16ac.js",
154
168
  "static/chunks/0937d497-114a2a3de515565e.js",
155
169
  "static/chunks/89-b194fcffe5120c44.js",
156
170
  "static/chunks/main-app-6086068e5fb5eacd.js",
157
171
  "static/chunks/586-f7017d585a84738d.js",
158
172
  "static/chunks/706-fa2be0f10ffebe6a.js",
159
- "static/chunks/304-681348099f874a30.js",
160
- "static/chunks/281-d8a0dcfaa6d064e4.js",
161
- "static/chunks/517-373a80c8ba432bdc.js",
162
- "static/chunks/350-0fe82e622e7a670f.js",
163
- "static/chunks/291-23f314877fa39054.js",
164
- "static/chunks/844-519177e6198ca84f.js",
165
- "static/chunks/app/page-da042d146caeeab6.js"
173
+ "static/chunks/281-113274e705940a55.js",
174
+ "static/chunks/app/skills/page-bc1acd0663f36129.js"
166
175
  ]
167
176
  }
168
177
  }
@@ -1,17 +1,18 @@
1
1
  {
2
2
  "/_not-found/page": "/_not-found",
3
3
  "/apple-icon.png/route": "/apple-icon.png",
4
- "/icon.png/route": "/icon.png",
5
4
  "/favicon.ico/route": "/favicon.ico",
5
+ "/icon.png/route": "/icon.png",
6
6
  "/connections/page": "/connections",
7
+ "/chat/page": "/chat",
8
+ "/relations/page": "/relations",
9
+ "/agents/[id]/page": "/agents/[id]",
7
10
  "/agents/page": "/agents",
8
- "/resources/page": "/resources",
9
11
  "/resources/[id]/page": "/resources/[id]",
12
+ "/resources/page": "/resources",
13
+ "/page": "/",
10
14
  "/schedules/page": "/schedules",
11
- "/skills/page": "/skills",
12
15
  "/sessions/page": "/sessions",
13
16
  "/types/page": "/types",
14
- "/agents/[id]/page": "/agents/[id]",
15
- "/relations/page": "/relations",
16
- "/page": "/"
17
+ "/skills/page": "/skills"
17
18
  }
@@ -5,8 +5,8 @@
5
5
  "devFiles": [],
6
6
  "ampDevFiles": [],
7
7
  "lowPriorityFiles": [
8
- "static/aSYzbHk1M5YeS_d3SQKTZ/_buildManifest.js",
9
- "static/aSYzbHk1M5YeS_d3SQKTZ/_ssgManifest.js"
8
+ "static/YT6HM6qmegMJaBMX5QvuP/_buildManifest.js",
9
+ "static/YT6HM6qmegMJaBMX5QvuP/_ssgManifest.js"
10
10
  ],
11
11
  "rootMainFiles": [
12
12
  "static/chunks/webpack-ef515e41a83a16ac.js",