bazilion 0.9.0 → 0.10.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 (187) hide show
  1. package/dist/cli.js +9 -15
  2. package/dist/cli.js.map +1 -1
  3. package/dist/daemon.js +22 -75
  4. package/dist/daemon.js.map +1 -1
  5. package/dist/web/client/assets/AgentTabs-B3hq5a3e.js +1 -0
  6. package/dist/web/client/assets/ConfigPage-BCwfgyjD.js +1 -0
  7. package/dist/web/client/assets/FieldRow-avAFLgYW.js +1 -0
  8. package/dist/web/client/assets/Page-CwNuDhWz.js +1 -0
  9. package/dist/web/client/assets/ProductionTeamPolicyEditor-CiQ-VVDo.js +7 -0
  10. package/dist/web/client/assets/{ProfileCommunicationEditor-D1OZ8WE5.js → ProfileCommunicationEditor-D84F5yfr.js} +1 -1
  11. package/dist/web/client/assets/SectionTabs-DZzy01az.js +1 -0
  12. package/dist/web/client/assets/TeamTabs-Btoe_FAE.js +1 -0
  13. package/dist/web/client/assets/TemplatesTabs-CAYY03F5.js +1 -0
  14. package/dist/web/client/assets/_id-BeauECmk.js +1 -0
  15. package/dist/web/client/assets/_id-BqU2BodK.js +1 -0
  16. package/dist/web/client/assets/_id-CKtoio3t.js +1 -0
  17. package/dist/web/client/assets/_id-Q98Of6k9.js +1 -0
  18. package/dist/web/client/assets/activity-DXN_N85w.js +1 -0
  19. package/dist/web/client/assets/agents-C5Xsdge1.js +1 -0
  20. package/dist/web/client/assets/agents-Cgxo4H5G.js +1 -0
  21. package/dist/web/client/assets/approvals-BnG7fbw-.js +1 -0
  22. package/dist/web/client/assets/chevron-down-BhcBspw3.js +1 -0
  23. package/dist/web/client/assets/config-xw4NyrXF.js +3 -0
  24. package/dist/web/client/assets/context-D2V1Oi4z.js +1 -0
  25. package/dist/web/client/assets/inbox-DK6hWCMp.js +1 -0
  26. package/dist/web/client/assets/index-VdURSoM4.js +12 -0
  27. package/dist/web/client/assets/login-CvptUoMR.js +1 -0
  28. package/dist/web/client/assets/mcp-BDFM_sW-.js +1 -0
  29. package/dist/web/client/assets/members-BJvph_TR.js +1 -0
  30. package/dist/web/client/assets/memory-DRytqZCD.js +1 -0
  31. package/dist/web/client/assets/plus-C9ee3SIO.js +1 -0
  32. package/dist/web/client/assets/policy-CGP50OtQ.js +1 -0
  33. package/dist/web/client/assets/preload-helper-mNuBjNXU.js +1 -0
  34. package/dist/web/client/assets/react-3W8R1pOO.js +1 -0
  35. package/dist/web/client/assets/routes-DJnWYvC9.js +1 -0
  36. package/dist/web/client/assets/services-DHheiv7L.js +1 -0
  37. package/dist/web/client/assets/skills-DmsitluU.js +1 -0
  38. package/dist/web/client/assets/styles-B5eQAwLP.css +2 -0
  39. package/dist/web/client/assets/team-policy-D0jpnn2b.js +1 -0
  40. package/dist/web/client/assets/teams-BdC4gthq.js +1 -0
  41. package/dist/web/client/assets/teams-CbxSaorm.js +1 -0
  42. package/dist/web/client/assets/telegram-D61G_alO.js +1 -0
  43. package/dist/web/client/assets/tokens-CjRplDrJ.js +1 -0
  44. package/dist/web/client/assets/triggers-MLzTm_DM.js +1 -0
  45. package/dist/web/client/assets/welcome-wBfX9dAd.js +1 -0
  46. package/dist/web/client/assets/{wire-constants-BY9Q9Z7d.js → wire-constants-BxfyUMXB.js} +2 -2
  47. package/dist/web/server/assets/{AgentTabs-BOjTN7QF.js → AgentTabs-DoMDJBXH.js} +10 -7
  48. package/dist/web/server/assets/{ChatPane-Dh3qxzdb.js → ChatPane-eUY_dga3.js} +15 -8
  49. package/dist/web/server/assets/ConfigPage-BKlh5vOU.js +68 -0
  50. package/dist/web/server/assets/{FieldRow-DwyqycWI.js → FieldRow-B4eTegH9.js} +5 -5
  51. package/dist/web/server/assets/Page-LENulSXY.js +111 -0
  52. package/dist/web/server/assets/{ProductionTeamPolicyEditor-Bke5doyl.js → ProductionTeamPolicyEditor-Y4mzFFvR.js} +4 -4
  53. package/dist/web/server/assets/SectionTabs-BJTPr5nU.js +8 -0
  54. package/dist/web/server/assets/{Sidebar-CGmtCnYU.js → Sidebar-O_CH1-JD.js} +228 -117
  55. package/dist/web/server/assets/{TeamTabs-BPxDBfqy.js → TeamTabs-zZzbP1t_.js} +9 -8
  56. package/dist/web/server/assets/{TemplatesTabs-zf4YhStd.js → TemplatesTabs-CcRxZhJe.js} +5 -4
  57. package/dist/web/server/assets/{_id-fpFQ9_Ya.js → _id-BhOB8Umi.js} +1 -1
  58. package/dist/web/server/assets/{_id-CCHA0gdR.js → _id-C3HY4lWg.js} +7 -10
  59. package/dist/web/server/assets/{_id-B6g9wmPR.js → _id-ClN9hY2x.js} +22 -28
  60. package/dist/web/server/assets/{_id-B04VaQlh.js → _id-CwyGjJeP.js} +2 -2
  61. package/dist/web/server/assets/{_id-_nFwi9gD.js → _id-D27T85mU.js} +1 -1
  62. package/dist/web/server/assets/{_id-5lLzLwcv.js → _id-D3Ap7zZA.js} +142 -144
  63. package/dist/web/server/assets/{_id-ButXHnRH.js → _id-DinTp_7X.js} +2 -2
  64. package/dist/web/server/assets/{_id-DdC9wpNN.js → _id-Dj1yZ3zJ.js} +2 -2
  65. package/dist/web/server/assets/{_id-DkFgCIb-.js → _id-DkYodSkG.js} +2 -2
  66. package/dist/web/server/assets/{_id-CUWgTqMS.js → _id-IzadFZV9.js} +1 -1
  67. package/dist/web/server/assets/{_id-C4AOhstq.js → _id-LrvXU4Nr.js} +6 -5
  68. package/dist/web/server/assets/{_id-DJkzwHjM.js → _id-tB47Vsfp.js} +1 -1
  69. package/dist/web/server/assets/{_tanstack-start-manifest_v-Div-TukY.js → _tanstack-start-manifest_v-D09Xu_6u.js} +95 -50
  70. package/dist/web/server/assets/{activity-C2ZKg1Q9.js → activity-BCI4mfNS.js} +28 -30
  71. package/dist/web/server/assets/{activity-DedraoFj.js → activity-D9SMqBhy.js} +2 -2
  72. package/dist/web/server/assets/{activity-GPx8NCeB.js → activity-DohitgwW.js} +1 -1
  73. package/dist/web/server/assets/{agents-BR2qXlXF.js → agents-BPKOshR5.js} +1 -1
  74. package/dist/web/server/assets/{agents-LHowEI6S.js → agents-BY74v7fM.js} +1 -1
  75. package/dist/web/server/assets/{agents-B8kinIPW.js → agents-BvttypqB.js} +2 -2
  76. package/dist/web/server/assets/{agents-Bp1nsVs2.js → agents-C9xlWK0Z.js} +2 -2
  77. package/dist/web/server/assets/agents-CgZMHj80.js +265 -0
  78. package/dist/web/server/assets/{agents-CUQmWhTp.js → agents-DZuFEj0D.js} +59 -77
  79. package/dist/web/server/assets/{approvals-VPc0YpLN.js → approvals-BGU-XGIO.js} +1 -1
  80. package/dist/web/server/assets/{approvals-Dw2LJoSA.js → approvals-CWcFHlor.js} +2 -2
  81. package/dist/web/server/assets/{approvals-DHgARzd8.js → approvals-DCaVw1Mz.js} +116 -78
  82. package/dist/web/server/assets/{auth-l-Vf8wlu.js → auth-byfSx6Ja.js} +1 -1
  83. package/dist/web/server/assets/{config-CHaCv89D.js → config-BDCJdtj2.js} +1 -1
  84. package/dist/web/server/assets/{config-BvKctDOX.js → config-D2LAsud2.js} +28 -49
  85. package/dist/web/server/assets/{config-QvHaxGlP.js → config-TeIoyYYc.js} +2 -2
  86. package/dist/web/server/assets/{context-5lrf2ame.js → context-B-XDf6Ym.js} +1 -1
  87. package/dist/web/server/assets/{context-D3Egm-vY.js → context-BXGo5Vfi.js} +2 -2
  88. package/dist/web/server/assets/context-DrkrIWun.js +47 -0
  89. package/dist/web/server/assets/{createServerRpc-CeKECg65.js → createServerRpc-pU-IQV2Y.js} +1 -1
  90. package/dist/web/server/assets/{createSsrRpc-ZBGxhl8t.js → createSsrRpc-DFsIAfFd.js} +1 -1
  91. package/dist/web/server/assets/{empty-plugin-adapters-DKUlnwwl.js → empty-plugin-adapters-Cq4--YW-.js} +1 -1
  92. package/dist/web/server/assets/{inbox-CkiSvD14.js → inbox-B3-TRsNI.js} +1 -1
  93. package/dist/web/server/assets/{inbox-Bxb3W04M.js → inbox-BardsGyy.js} +2 -2
  94. package/dist/web/server/assets/inbox-CUIyf9MT.js +131 -0
  95. package/dist/web/server/assets/login-Bx5LEyGP.js +118 -0
  96. package/dist/web/server/assets/login-CmWvxfTK.js +136 -0
  97. package/dist/web/server/assets/{mcp-BsFKEoXt.js → mcp-2pwT9HU8.js} +1 -1
  98. package/dist/web/server/assets/{mcp-BU_kKENi.js → mcp-BJjLIdP0.js} +105 -112
  99. package/dist/web/server/assets/{mcp-CKqwG4mt.js → mcp-DIWTogHM.js} +2 -2
  100. package/dist/web/server/assets/members-CCv17cjQ.js +46 -0
  101. package/dist/web/server/assets/{members-DlGBKZNl.js → members-CW5aBe81.js} +1 -1
  102. package/dist/web/server/assets/{members-ksELRsyk.js → members-VdPwD6CE.js} +2 -2
  103. package/dist/web/server/assets/{memory-CO0jKGzJ.js → memory-Dngc13Nw.js} +1 -1
  104. package/dist/web/server/assets/memory-a8Kz57Kh.js +287 -0
  105. package/dist/web/server/assets/{memory-B5moRnnp.js → memory-pZ4pZT7p.js} +2 -2
  106. package/dist/web/server/assets/{policy-Dxs78_GO.js → policy-Bb-vEgqg.js} +1 -1
  107. package/dist/web/server/assets/{policy-Dr55y-Mh.js → policy-BcGELcc9.js} +16 -22
  108. package/dist/web/server/assets/{policy-DNcGZLOB.js → policy-C30AeFIb.js} +2 -2
  109. package/dist/web/server/assets/{router-_izWQUeG.js → router-DIdp8ZNt.js} +100 -111
  110. package/dist/web/server/assets/{routes-BrTOoeth.js → routes-CXz4hTAr.js} +2 -2
  111. package/dist/web/server/assets/{routes-BSSKp3Rv.js → routes-Jb0zjKav.js} +16 -13
  112. package/dist/web/server/assets/{routes-DOj6ljcm.js → routes-lIclH9Br.js} +2 -2
  113. package/dist/web/server/assets/services-B9yBWDX0.js +79 -0
  114. package/dist/web/server/assets/{services-Pv_V88VA.js → services-C4szdhPx.js} +2 -2
  115. package/dist/web/server/assets/{services-DhRiNeq0.js → services-wG8I06oS.js} +1 -1
  116. package/dist/web/server/assets/skills-BZdqiDig.js +358 -0
  117. package/dist/web/server/assets/{skills-l2cyQ3zS.js → skills-C-UgkuCW.js} +2 -2
  118. package/dist/web/server/assets/{skills-CFIWVg32.js → skills-a9VSWHWq.js} +1 -1
  119. package/dist/web/server/assets/{start-DlHq0RaQ.js → start-WH8WzTL_.js} +1 -1
  120. package/dist/web/server/assets/{team-policy-Csvc5EDd.js → team-policy-vPG01onj.js} +3 -3
  121. package/dist/web/server/assets/{teams-B9O-WDH5.js → teams-CpQ0YgWf.js} +38 -34
  122. package/dist/web/server/assets/{teams-35Oprf6e.js → teams-DEpQR2QA.js} +2 -2
  123. package/dist/web/server/assets/{teams-DFkN7ic7.js → teams-DqfrEoH6.js} +1 -1
  124. package/dist/web/server/assets/{teams-B5IF65p2.js → teams-MjqgsmC3.js} +1 -1
  125. package/dist/web/server/assets/{teams-DH1CvWmT.js → teams-OIkHuxy1.js} +2 -2
  126. package/dist/web/server/assets/teams-jBtvnk59.js +193 -0
  127. package/dist/web/server/assets/{telegram-C9sQFwWj.js → telegram-7ub--6xz.js} +39 -51
  128. package/dist/web/server/assets/{telegram-mTnJCOmn.js → telegram-Bazhmpr4.js} +2 -2
  129. package/dist/web/server/assets/{telegram-BdaUIjvs.js → telegram-DNgCWebD.js} +1 -1
  130. package/dist/web/server/assets/{tokens-DdpnfV_Y.js → tokens-BnwFbV7T.js} +2 -2
  131. package/dist/web/server/assets/{tokens-BCz3PSoT.js → tokens-DPDMSN5O.js} +1 -1
  132. package/dist/web/server/assets/tokens-yyTSfBSN.js +186 -0
  133. package/dist/web/server/assets/{triggers-BzJG1nN5.js → triggers-BMpHsGIr.js} +5 -4
  134. package/dist/web/server/assets/{triggers-BcH_6PW1.js → triggers-C_0y6QV9.js} +1 -1
  135. package/dist/web/server/assets/{triggers-BcTTwMfy.js → triggers-Ca57_qym.js} +2 -2
  136. package/dist/web/server/assets/{welcome-CDGE2Sdk.js → welcome-IYHGurWx.js} +21 -13
  137. package/dist/web/server/server.js +82 -73
  138. package/dist/worker.js +5 -18
  139. package/dist/worker.js.map +1 -1
  140. package/package.json +4 -3
  141. package/dist/web/client/assets/AgentTabs-DioGqUVR.js +0 -1
  142. package/dist/web/client/assets/ConfigTabs-pY-V0Rie.js +0 -1
  143. package/dist/web/client/assets/FieldRow-DmwAFfbF.js +0 -1
  144. package/dist/web/client/assets/ProductionTeamPolicyEditor-1a5jQqUB.js +0 -7
  145. package/dist/web/client/assets/TeamTabs-BViZ4sti.js +0 -1
  146. package/dist/web/client/assets/TemplatesTabs-DVcY9pMD.js +0 -1
  147. package/dist/web/client/assets/_id-8P7brhGy.js +0 -1
  148. package/dist/web/client/assets/_id-C3o3MHq8.js +0 -1
  149. package/dist/web/client/assets/_id-DGRrSF1e.js +0 -1
  150. package/dist/web/client/assets/_id-KnJe-aW9.js +0 -1
  151. package/dist/web/client/assets/activity-WWvJSo4t.js +0 -1
  152. package/dist/web/client/assets/agents-C32T1voV.js +0 -1
  153. package/dist/web/client/assets/agents-nH4m4gZ1.js +0 -1
  154. package/dist/web/client/assets/approvals-l8jIZjqz.js +0 -1
  155. package/dist/web/client/assets/config-C7wvi1nR.js +0 -3
  156. package/dist/web/client/assets/context-BEGWE3RC.js +0 -1
  157. package/dist/web/client/assets/inbox--4aBaAgG.js +0 -1
  158. package/dist/web/client/assets/index-BCXoh1c8.js +0 -12
  159. package/dist/web/client/assets/login-Bk2wwIHQ.js +0 -1
  160. package/dist/web/client/assets/mcp-vM7xgh9e.js +0 -1
  161. package/dist/web/client/assets/members-cPKfnrSL.js +0 -1
  162. package/dist/web/client/assets/memory-BOcsaemD.js +0 -1
  163. package/dist/web/client/assets/policy-BGLCJYvS.js +0 -1
  164. package/dist/web/client/assets/preload-helper-eOOCz1Fu.js +0 -1
  165. package/dist/web/client/assets/routes-DnrP3dwv.js +0 -1
  166. package/dist/web/client/assets/services-C2_O3ifw.js +0 -1
  167. package/dist/web/client/assets/skills-B__fLZjx.js +0 -1
  168. package/dist/web/client/assets/styles-Dn24-ZvP.css +0 -2
  169. package/dist/web/client/assets/team-policy-BdX340m4.js +0 -1
  170. package/dist/web/client/assets/teams-DZMB4_iw.js +0 -1
  171. package/dist/web/client/assets/teams-rpaYKNIb.js +0 -1
  172. package/dist/web/client/assets/telegram-B1O4Ko0V.js +0 -1
  173. package/dist/web/client/assets/tokens-D7FH9VgA.js +0 -1
  174. package/dist/web/client/assets/triggers-3PLy2_Fo.js +0 -1
  175. package/dist/web/client/assets/welcome-B-QQobzq.js +0 -1
  176. package/dist/web/server/assets/ConfigTabs-CyuxzesF.js +0 -41
  177. package/dist/web/server/assets/agents-DU9Hqs58.js +0 -249
  178. package/dist/web/server/assets/context-CEr4-xiA.js +0 -49
  179. package/dist/web/server/assets/inbox-DU27iHv_.js +0 -133
  180. package/dist/web/server/assets/login-CNznncgA.js +0 -58
  181. package/dist/web/server/assets/login-CQybKk7Y.js +0 -74
  182. package/dist/web/server/assets/members-40DxRdVj.js +0 -48
  183. package/dist/web/server/assets/memory-CiTl4cN9.js +0 -289
  184. package/dist/web/server/assets/services-CHe4ihJk.js +0 -94
  185. package/dist/web/server/assets/skills-D89ND2kR.js +0 -321
  186. package/dist/web/server/assets/teams-zcm9XaQU.js +0 -174
  187. package/dist/web/server/assets/tokens-CkKqrtk-.js +0 -193
package/dist/daemon.js CHANGED
@@ -19443,21 +19443,6 @@ function placementEdgesPreview(db, teamId, agentId, placement, profileId) {
19443
19443
  const peers = db.raw.query(
19444
19444
  "SELECT id FROM agents WHERE team_id = ? AND id <> ? ORDER BY id"
19445
19445
  ).all(teamId, agentId).map((row) => row.id);
19446
- if (placement === "open") {
19447
- for (const peerId of peers) {
19448
- add2("agent", agentId, "agent", peerId);
19449
- add2("agent", peerId, "agent", agentId);
19450
- }
19451
- for (const [sourceKind, sourceId, targetKind, targetId] of [
19452
- ["user", null, "agent", agentId],
19453
- ["agent", agentId, "user", null],
19454
- ["outside_team", null, "agent", agentId],
19455
- ["agent", agentId, "outside_team", null]
19456
- ]) {
19457
- add2(sourceKind, sourceId, targetKind, targetId);
19458
- }
19459
- return [...edges3.values()];
19460
- }
19461
19446
  const defaults = db.raw.query("SELECT * FROM profile_communication_defaults WHERE profile_id = ?").get(profileId);
19462
19447
  if (!defaults) return [];
19463
19448
  if (defaults.user_input) add2("user", null, "agent", agentId);
@@ -19797,14 +19782,6 @@ re-ask every session:
19797
19782
  ## Patterns
19798
19783
  - (pattern): when to use, what to avoid
19799
19784
  `;
19800
- var DEFAULT_HEARTBEAT = `# HEARTBEAT.md \u2014 Scheduled Wake-Ups
19801
-
19802
- Tasks the agent should check on every heartbeat. Leave empty (or commented)
19803
- to opt out \u2014 an empty file means "nothing to do right now".
19804
-
19805
- ## Tasks
19806
- - (task): cadence, exit criteria
19807
- `;
19808
19785
 
19809
19786
  // ../daemon/src/core/repos/teams.ts
19810
19787
  function toTeam(r, paths) {
@@ -20204,7 +20181,6 @@ function loadProfile(db, id) {
20204
20181
  const bootstrap2 = readOptional(join3(profile.dir, "BOOTSTRAP.md"));
20205
20182
  const agents = readOptional(join3(profile.dir, "AGENTS.md"));
20206
20183
  const tools = readOptional(join3(profile.dir, "TOOLS.md"));
20207
- const heartbeat = readOptional(join3(profile.dir, "HEARTBEAT.md"));
20208
20184
  const parsedIdentity = parseIdentityMarkdown(identityRaw);
20209
20185
  const anyIdentity = parsedIdentity.name || parsedIdentity.emoji || parsedIdentity.theme || parsedIdentity.creature || parsedIdentity.vibe || parsedIdentity.avatar;
20210
20186
  return {
@@ -20215,8 +20191,7 @@ function loadProfile(db, id) {
20215
20191
  identity: identityRaw,
20216
20192
  bootstrap: bootstrap2,
20217
20193
  agents,
20218
- tools,
20219
- heartbeat
20194
+ tools
20220
20195
  },
20221
20196
  identity: anyIdentity ? parsedIdentity : null,
20222
20197
  communicationDefaults: get5(db, id)
@@ -20381,7 +20356,6 @@ function createProfile(db, paths, input) {
20381
20356
  const bootstrap2 = input.templates?.bootstrap === null ? null : input.templates?.bootstrap ?? DEFAULT_BOOTSTRAP;
20382
20357
  const agents = input.templates?.agents === null ? null : input.templates?.agents ?? DEFAULT_AGENTS;
20383
20358
  const tools = input.templates?.tools === null ? null : input.templates?.tools ?? DEFAULT_TOOLS;
20384
- const heartbeat = typeof input.templates?.heartbeat === "string" ? input.templates.heartbeat : null;
20385
20359
  writeFileSync2(join4(dir, "SOUL.md"), soul);
20386
20360
  writeFileSync2(join4(dir, "IDENTITY.md"), identity);
20387
20361
  if (bootstrap2 !== null) {
@@ -20393,9 +20367,6 @@ function createProfile(db, paths, input) {
20393
20367
  if (tools !== null) {
20394
20368
  writeFileSync2(join4(dir, "TOOLS.md"), tools);
20395
20369
  }
20396
- if (heartbeat !== null) {
20397
- writeFileSync2(join4(dir, "HEARTBEAT.md"), heartbeat);
20398
- }
20399
20370
  const skillsMode = input.skillsMode ?? "selected";
20400
20371
  const profileJson = {
20401
20372
  name: input.name ?? input.id,
@@ -20458,7 +20429,14 @@ function seedDefaults(db, paths, input) {
20458
20429
  id: DEFAULT_PROFILE_ID,
20459
20430
  name: "Default",
20460
20431
  defaultModel: input.model,
20461
- skillsMode: "all"
20432
+ skillsMode: "all",
20433
+ communicationDefaults: {
20434
+ userInput: true,
20435
+ userOutput: true,
20436
+ outsideTeamInput: false,
20437
+ outsideTeamOutput: false,
20438
+ peerDefault: "allow_all"
20439
+ }
20462
20440
  });
20463
20441
  profileCreated = true;
20464
20442
  }
@@ -20509,9 +20487,6 @@ function spawnAgent(db, paths, input) {
20509
20487
  if (loaded.files.tools !== null) {
20510
20488
  writeFileSync4(join7(dir, "TOOLS.md"), loaded.files.tools);
20511
20489
  }
20512
- if (loaded.files.heartbeat !== null) {
20513
- writeFileSync4(join7(dir, "HEARTBEAT.md"), loaded.files.heartbeat);
20514
- }
20515
20490
  const reasoningLevel = input.reasoningLevel ?? "medium";
20516
20491
  const teamId = input.teamId ?? DEFAULT_TEAM_ID;
20517
20492
  const team = get3(db, teamId, paths);
@@ -20525,7 +20500,7 @@ function spawnAgent(db, paths, input) {
20525
20500
  const teamPolicy = get2(db, team.id);
20526
20501
  if (!teamPolicy) throw new Error(`team_policy_missing: ${team.id}`);
20527
20502
  const expectedRevision = input.teamExpectedRevision ?? teamPolicy.revision;
20528
- placement ??= "open";
20503
+ placement ??= "profile_defaults";
20529
20504
  if (teamPolicy.revision !== expectedRevision) {
20530
20505
  throw new Error(
20531
20506
  `team_revision_conflict: expected ${expectedRevision}, current ${teamPolicy.revision}`
@@ -21936,7 +21911,7 @@ var SERVICES = [
21936
21911
  displayName: "Browser Automation",
21937
21912
  category: "service",
21938
21913
  team: "Browser",
21939
- hint: "Playwright-driven browser tools (navigate, snapshot, click, screenshot). Run `pnpm exec playwright install chromium` once.",
21914
+ hint: "Playwright-driven browser tools (navigate, snapshot, click, screenshot). Chromium is installed with Bazilion.",
21940
21915
  fields: [
21941
21916
  {
21942
21917
  envVar: "BROWSER_ENABLED",
@@ -22964,7 +22939,7 @@ function resolveAdoptionPlan(db, teamId, input) {
22964
22939
  }
22965
22940
  const remainingIds = new Set([...memberIds].filter((id) => !mappedAgents.has(id)));
22966
22941
  if (input.remainingPlacements.some(
22967
- (item) => item.placement !== "isolated" && item.placement !== "open" && item.placement !== "profile_defaults"
22942
+ (item) => item.placement !== "isolated" && item.placement !== "profile_defaults"
22968
22943
  )) {
22969
22944
  throw new Error("adoption_mapping_invalid: unknown placement");
22970
22945
  }
@@ -23057,13 +23032,7 @@ function resolveAdoptionEdges(db, templateEdges, mapping, placements, members) {
23057
23032
  for (const [agentId, placement] of placements) {
23058
23033
  const agent = memberById.get(agentId);
23059
23034
  if (!agent) continue;
23060
- if (placement === "open") {
23061
- add2("user", null, "agent", agentId);
23062
- add2("agent", agentId, "user", null);
23063
- add2("outside_team", null, "agent", agentId);
23064
- add2("agent", agentId, "outside_team", null);
23065
- requestsPeers.add(agentId);
23066
- } else if (placement === "profile_defaults") {
23035
+ if (placement === "profile_defaults") {
23067
23036
  const defaults = db.raw.query("SELECT * FROM profile_communication_defaults WHERE profile_id = ?").get(agent.profileId);
23068
23037
  if (defaults?.user_input) add2("user", null, "agent", agentId);
23069
23038
  if (defaults?.user_output) add2("agent", agentId, "user", null);
@@ -23954,9 +23923,6 @@ function saveLoginCredentials(db, authToken, creds) {
23954
23923
  });
23955
23924
  }
23956
23925
 
23957
- // ../daemon/src/runtime/auto-reply/heartbeat.ts
23958
- var DEFAULT_HEARTBEAT_EVERY_SEC = 30 * 60;
23959
-
23960
23926
  // ../daemon/src/runtime/memory/files.ts
23961
23927
  import {
23962
23928
  existsSync as existsSync10,
@@ -25036,13 +25002,7 @@ function listAllProviders(config2) {
25036
25002
  // ../daemon/src/runtime/session/prompt.ts
25037
25003
  import { existsSync as existsSync12, readFileSync as readFileSync10 } from "fs";
25038
25004
  import { join as join14 } from "path";
25039
- var CONTEXT_FILE_ORDER = [
25040
- "AGENTS.md",
25041
- "SOUL.md",
25042
- "TOOLS.md",
25043
- "IDENTITY.md",
25044
- "HEARTBEAT.md"
25045
- ];
25005
+ var CONTEXT_FILE_ORDER = ["AGENTS.md", "SOUL.md", "TOOLS.md", "IDENTITY.md"];
25046
25006
  function buildSystemPrompt(agent) {
25047
25007
  const parts = [];
25048
25008
  const contextBlocks = [];
@@ -25086,7 +25046,7 @@ ${contextBlocks.join("\n\n")}`);
25086
25046
  [
25087
25047
  "# Agent Home",
25088
25048
  "",
25089
- "Your private home holds who you are \u2014 identity, soul, behaviour rules, wake-up routine. It is not shared with other agents and cannot be overwritten by them. The files above (IDENTITY.md, SOUL.md, AGENTS.md, TOOLS.md, HEARTBEAT.md) live in this home, plus BOOTSTRAP.md when you are still in your first-run ritual.",
25049
+ "Your private home holds who you are \u2014 identity, soul, and behaviour rules. It is not shared with other agents and cannot be overwritten by them. The files above (IDENTITY.md, SOUL.md, AGENTS.md, TOOLS.md) live in this home, plus BOOTSTRAP.md when you are still in your first-run ritual.",
25090
25050
  "",
25091
25051
  "- To change who you are (name, vibe, personality, how you behave): use `home_write`.",
25092
25052
  "- To inspect exact wording of your own files: use `home_read` or `home_list`.",
@@ -25349,16 +25309,9 @@ var HOME_FILES_READABLE = [
25349
25309
  "SOUL.md",
25350
25310
  "BOOTSTRAP.md",
25351
25311
  "AGENTS.md",
25352
- "TOOLS.md",
25353
- "HEARTBEAT.md"
25354
- ];
25355
- var HOME_FILES_WRITABLE = [
25356
- "IDENTITY.md",
25357
- "SOUL.md",
25358
- "AGENTS.md",
25359
- "TOOLS.md",
25360
- "HEARTBEAT.md"
25312
+ "TOOLS.md"
25361
25313
  ];
25314
+ var HOME_FILES_WRITABLE = ["IDENTITY.md", "SOUL.md", "AGENTS.md", "TOOLS.md"];
25362
25315
  function homeTools(agentDir) {
25363
25316
  return [
25364
25317
  {
@@ -30541,8 +30494,7 @@ var PROFILE_FILES = [
30541
30494
  "IDENTITY.md",
30542
30495
  "BOOTSTRAP.md",
30543
30496
  "AGENTS.md",
30544
- "TOOLS.md",
30545
- "HEARTBEAT.md"
30497
+ "TOOLS.md"
30546
30498
  ];
30547
30499
 
30548
30500
  // ../daemon/src/routes/agents.ts
@@ -32432,7 +32384,7 @@ agentsRouter.post("/placement-preview", async (c) => {
32432
32384
  const teamId = typeof body?.teamId === "string" ? body.teamId : "";
32433
32385
  const expectedRevision = body?.teamExpectedRevision;
32434
32386
  const placement = body?.placement;
32435
- if (!profileId || !teamId || typeof expectedRevision !== "number" || !Number.isInteger(expectedRevision) || placement !== "isolated" && placement !== "open" && placement !== "profile_defaults") {
32387
+ if (!profileId || !teamId || typeof expectedRevision !== "number" || !Number.isInteger(expectedRevision) || placement !== "isolated" && placement !== "profile_defaults") {
32436
32388
  return c.json(
32437
32389
  { error: "profileId, teamId, teamExpectedRevision, and placement are required" },
32438
32390
  400
@@ -32498,7 +32450,7 @@ agentsRouter.post("/", async (c) => {
32498
32450
  const model = typeof raw2.model === "string" && raw2.model ? raw2.model : typeof raw2.modelOverride === "string" && raw2.modelOverride ? raw2.modelOverride : void 0;
32499
32451
  const teamId = typeof raw2.teamId === "string" && raw2.teamId ? raw2.teamId : typeof raw2.team === "string" && raw2.team ? raw2.team : void 0;
32500
32452
  const teamExpectedRevision = typeof raw2.teamExpectedRevision === "number" && Number.isInteger(raw2.teamExpectedRevision) ? raw2.teamExpectedRevision : void 0;
32501
- const placement = raw2.placement === "isolated" || raw2.placement === "open" || raw2.placement === "profile_defaults" ? raw2.placement : void 0;
32453
+ const placement = raw2.placement === "isolated" || raw2.placement === "profile_defaults" ? raw2.placement : void 0;
32502
32454
  if (!teamId || !teamExpectedRevision || !placement) {
32503
32455
  return c.json(
32504
32456
  { error: "teamExpectedRevision and placement are required", code: "placement_required" },
@@ -32709,7 +32661,7 @@ agentsRouter.post("/:id/team/preview", async (c) => {
32709
32661
  const sourceExpectedRevision = body?.sourceExpectedRevision;
32710
32662
  const destinationExpectedRevision = body?.destinationExpectedRevision;
32711
32663
  const placement = body?.placement;
32712
- if (!destinationTeamId || typeof sourceExpectedRevision !== "number" || !Number.isInteger(sourceExpectedRevision) || typeof destinationExpectedRevision !== "number" || !Number.isInteger(destinationExpectedRevision) || placement !== "isolated" && placement !== "open" && placement !== "profile_defaults") {
32664
+ if (!destinationTeamId || typeof sourceExpectedRevision !== "number" || !Number.isInteger(sourceExpectedRevision) || typeof destinationExpectedRevision !== "number" || !Number.isInteger(destinationExpectedRevision) || placement !== "isolated" && placement !== "profile_defaults") {
32713
32665
  return c.json(
32714
32666
  {
32715
32667
  error: "teamId, sourceExpectedRevision, destinationExpectedRevision, and placement are required"
@@ -32797,7 +32749,7 @@ agentsRouter.patch("/:id/team", async (c) => {
32797
32749
  const sourceExpectedRevision = body.sourceExpectedRevision;
32798
32750
  const destinationExpectedRevision = body.destinationExpectedRevision;
32799
32751
  const placement = body.placement;
32800
- if (typeof sourceExpectedRevision !== "number" || !Number.isInteger(sourceExpectedRevision) || typeof destinationExpectedRevision !== "number" || !Number.isInteger(destinationExpectedRevision) || placement !== "isolated" && placement !== "open" && placement !== "profile_defaults") {
32752
+ if (typeof sourceExpectedRevision !== "number" || !Number.isInteger(sourceExpectedRevision) || typeof destinationExpectedRevision !== "number" || !Number.isInteger(destinationExpectedRevision) || placement !== "isolated" && placement !== "profile_defaults") {
32801
32753
  return c.json(
32802
32754
  {
32803
32755
  error: "sourceExpectedRevision, destinationExpectedRevision, and placement are required",
@@ -33403,7 +33355,6 @@ var CONTEXT_FILE_ORDER2 = [
33403
33355
  "SOUL.md",
33404
33356
  "TOOLS.md",
33405
33357
  "IDENTITY.md",
33406
- "HEARTBEAT.md",
33407
33358
  "BOOTSTRAP.md"
33408
33359
  ];
33409
33360
  function estimateTokens(chars) {
@@ -34318,7 +34269,6 @@ profilesRouter.get("/_/templates", (c) => {
34318
34269
  bootstrap: DEFAULT_BOOTSTRAP,
34319
34270
  agents: DEFAULT_AGENTS,
34320
34271
  tools: DEFAULT_TOOLS,
34321
- heartbeat: DEFAULT_HEARTBEAT,
34322
34272
  userMd: DEFAULT_USER_MD
34323
34273
  });
34324
34274
  });
@@ -34345,9 +34295,6 @@ profilesRouter.post("/", async (c) => {
34345
34295
  else if (typeof raw2.agents === "string" && raw2.agents.length > 0) templates.agents = raw2.agents;
34346
34296
  if (raw2.tools === null) templates.tools = null;
34347
34297
  else if (typeof raw2.tools === "string" && raw2.tools.length > 0) templates.tools = raw2.tools;
34348
- if (raw2.heartbeat === null) templates.heartbeat = null;
34349
- else if (typeof raw2.heartbeat === "string" && raw2.heartbeat.length > 0)
34350
- templates.heartbeat = raw2.heartbeat;
34351
34298
  const { db, paths } = getCtx();
34352
34299
  try {
34353
34300
  const profile = createProfile(db, paths, {