botmancers 0.9.3 → 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 (161) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +5 -5
  3. package/app/.next/BUILD_ID +1 -1
  4. package/app/.next/app-path-routes-manifest.json +1 -0
  5. package/app/.next/build-manifest.json +3 -3
  6. package/app/.next/prerender-manifest.json +3 -3
  7. package/app/.next/required-server-files.json +2 -2
  8. package/app/.next/routes-manifest.json +6 -0
  9. package/app/.next/server/app/_global-error.html +1 -1
  10. package/app/.next/server/app/_global-error.rsc +1 -1
  11. package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  12. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
  15. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  16. package/app/.next/server/app/_not-found.html +1 -1
  17. package/app/.next/server/app/_not-found.rsc +2 -2
  18. package/app/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  19. package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  20. package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  21. package/app/.next/server/app/agents/[id]/activity/page.js.nft.json +1 -1
  22. package/app/.next/server/app/agents/[id]/activity/page_client-reference-manifest.js +1 -1
  23. package/app/.next/server/app/agents/[id]/config/page.js.nft.json +1 -1
  24. package/app/.next/server/app/agents/[id]/config/page_client-reference-manifest.js +1 -1
  25. package/app/.next/server/app/agents/[id]/conversations/[conversationId]/page.js.nft.json +1 -1
  26. package/app/.next/server/app/agents/[id]/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  27. package/app/.next/server/app/agents/[id]/conversations/page.js.nft.json +1 -1
  28. package/app/.next/server/app/agents/[id]/conversations/page_client-reference-manifest.js +1 -1
  29. package/app/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  30. package/app/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  31. package/app/.next/server/app/agents/[id]/sessions/page.js.nft.json +1 -1
  32. package/app/.next/server/app/agents/[id]/sessions/page_client-reference-manifest.js +1 -1
  33. package/app/.next/server/app/agents/[id]/slack/page.js.nft.json +1 -1
  34. package/app/.next/server/app/agents/[id]/slack/page_client-reference-manifest.js +1 -1
  35. package/app/.next/server/app/api/bots/[id]/activity/route.js.nft.json +1 -1
  36. package/app/.next/server/app/api/bots/[id]/config/route.js.nft.json +1 -1
  37. package/app/.next/server/app/api/bots/[id]/conversations/[conversationId]/route.js.nft.json +1 -1
  38. package/app/.next/server/app/api/bots/[id]/conversations/route.js.nft.json +1 -1
  39. package/app/.next/server/app/api/bots/[id]/overview/route.js.nft.json +1 -1
  40. package/app/.next/server/app/api/bots/[id]/sessions/[ref]/pins/route.js.nft.json +1 -1
  41. package/app/.next/server/app/api/bots/[id]/sessions/[ref]/route.js.nft.json +1 -1
  42. package/app/.next/server/app/api/bots/[id]/sessions/[ref]/shares/route.js.nft.json +1 -1
  43. package/app/.next/server/app/api/bots/[id]/sessions/route.js.nft.json +1 -1
  44. package/app/.next/server/app/api/bots/[id]/sessions/sync/route.js.nft.json +1 -1
  45. package/app/.next/server/app/api/bots/[id]/share-policy/route.js.nft.json +1 -1
  46. package/app/.next/server/app/api/bots/[id]/skill/route.js.nft.json +1 -1
  47. package/app/.next/server/app/api/bots/availability/route.js.nft.json +1 -1
  48. package/app/.next/server/app/api/bots/delete-preview/route.js.nft.json +1 -1
  49. package/app/.next/server/app/api/bots/import/route.js.nft.json +1 -1
  50. package/app/.next/server/app/api/bots/manage/route.js.nft.json +1 -1
  51. package/app/.next/server/app/api/bots/name-migrations/route.js.nft.json +1 -1
  52. package/app/.next/server/app/api/bots/route.js.nft.json +1 -1
  53. package/app/.next/server/app/api/conversations/[id]/approve/route.js.nft.json +1 -1
  54. package/app/.next/server/app/api/conversations/[id]/deny/route.js.nft.json +1 -1
  55. package/app/.next/server/app/api/conversations/[id]/draft/route.js.nft.json +1 -1
  56. package/app/.next/server/app/api/conversations/[id]/messages/[messageId]/stop/route.js.nft.json +1 -1
  57. package/app/.next/server/app/api/conversations/[id]/messages/route.js.nft.json +1 -1
  58. package/app/.next/server/app/api/conversations/[id]/route.js.nft.json +1 -1
  59. package/app/.next/server/app/api/conversations/[id]/stop/route.js.nft.json +1 -1
  60. package/app/.next/server/app/api/conversations/route.js.nft.json +1 -1
  61. package/app/.next/server/app/api/exchanges/[id]/cancel/route.js.nft.json +1 -1
  62. package/app/.next/server/app/api/exchanges/[id]/route.js.nft.json +1 -1
  63. package/app/.next/server/app/api/exchanges/route.js.nft.json +1 -1
  64. package/app/.next/server/app/api/files/[name]/route.js.nft.json +1 -1
  65. package/app/.next/server/app/api/groups/route.js.nft.json +1 -1
  66. package/app/.next/server/app/api/health/route.js.nft.json +1 -1
  67. package/app/.next/server/app/api/mcp/route.js.nft.json +1 -1
  68. package/app/.next/server/app/api/messages/[id]/between/route.js.nft.json +1 -1
  69. package/app/.next/server/app/api/runtime-capacity/route/app-paths-manifest.json +3 -0
  70. package/app/.next/server/app/api/runtime-capacity/route/build-manifest.json +12 -0
  71. package/app/.next/server/app/api/runtime-capacity/route/server-reference-manifest.json +4 -0
  72. package/app/.next/server/app/api/runtime-capacity/route.js +10 -0
  73. package/app/.next/server/app/api/runtime-capacity/route.js.nft.json +1 -0
  74. package/app/.next/server/app/api/runtime-capacity/route_client-reference-manifest.js +3 -0
  75. package/app/.next/server/app/api/runtime-connections/route.js.nft.json +1 -1
  76. package/app/.next/server/app/api/service-grants/route.js.nft.json +1 -1
  77. package/app/.next/server/app/api/shares/[shareRef]/revoke/route.js.nft.json +1 -1
  78. package/app/.next/server/app/api/shares/route.js.nft.json +1 -1
  79. package/app/.next/server/app/api/v0/agents/[agentId]/conversations/[conversationId]/route.js.nft.json +1 -1
  80. package/app/.next/server/app/api/v0/agents/[agentId]/conversations/route.js.nft.json +1 -1
  81. package/app/.next/server/app/api/v0/agents/[agentId]/messages/route.js.nft.json +1 -1
  82. package/app/.next/server/app/api/v0/agents/[agentId]/pins/route.js.nft.json +1 -1
  83. package/app/.next/server/app/api/v0/agents/[agentId]/route.js.nft.json +1 -1
  84. package/app/.next/server/app/api/v0/agents/[agentId]/sessions/[ref]/route.js.nft.json +1 -1
  85. package/app/.next/server/app/api/v0/agents/[agentId]/sessions/route.js.nft.json +1 -1
  86. package/app/.next/server/app/api/v0/agents/route.js.nft.json +1 -1
  87. package/app/.next/server/app/api/v0/capabilities/route.js.nft.json +1 -1
  88. package/app/.next/server/app/api/v0/conversations/[id]/route.js.nft.json +1 -1
  89. package/app/.next/server/app/api/v0/exchanges/[id]/cancel/route.js.nft.json +1 -1
  90. package/app/.next/server/app/api/v0/exchanges/[id]/route.js.nft.json +1 -1
  91. package/app/.next/server/app/api/v0/exchanges/route.js.nft.json +1 -1
  92. package/app/.next/server/app/api/v0/mcp/route.js.nft.json +1 -1
  93. package/app/.next/server/app/api/v0/pins/[pinRef]/detach/route.js.nft.json +1 -1
  94. package/app/.next/server/app/api/v0/pins/[pinRef]/messages/route.js.nft.json +1 -1
  95. package/app/.next/server/app/api/v0/pins/[pinRef]/route.js.nft.json +1 -1
  96. package/app/.next/server/app/api/v0/requests/[id]/route.js.nft.json +1 -1
  97. package/app/.next/server/app/api/v0/sessions/[ref]/messages/route.js.nft.json +1 -1
  98. package/app/.next/server/app/api/v0/sessions/[ref]/pins/route.js.nft.json +1 -1
  99. package/app/.next/server/app/api/v0/sessions/[ref]/shares/route.js.nft.json +1 -1
  100. package/app/.next/server/app/api/v0/shares/[shareRef]/revoke/route.js.nft.json +1 -1
  101. package/app/.next/server/app/api/v0/shares/[shareRef]/route.js.nft.json +1 -1
  102. package/app/.next/server/app/api/v0/shares/current/route.js.nft.json +1 -1
  103. package/app/.next/server/app/api/v0/shares/route.js.nft.json +1 -1
  104. package/app/.next/server/app/api/wake-grants/[id]/revoke/route.js.nft.json +1 -1
  105. package/app/.next/server/app/api/wakes/[id]/decision/route.js.nft.json +1 -1
  106. package/app/.next/server/app/api/wakes/[id]/retry/route.js.nft.json +1 -1
  107. package/app/.next/server/app/bots/[id]/config/page.js.nft.json +1 -1
  108. package/app/.next/server/app/bots/[id]/config/page_client-reference-manifest.js +1 -1
  109. package/app/.next/server/app/exchanges/page.js.nft.json +1 -1
  110. package/app/.next/server/app/exchanges/page_client-reference-manifest.js +1 -1
  111. package/app/.next/server/app/exchanges.html +1 -1
  112. package/app/.next/server/app/exchanges.rsc +2 -2
  113. package/app/.next/server/app/exchanges.segments/_full.segment.rsc +2 -2
  114. package/app/.next/server/app/exchanges.segments/_tree.segment.rsc +2 -2
  115. package/app/.next/server/app/exchanges.segments/exchanges/__PAGE__.segment.rsc +2 -2
  116. package/app/.next/server/app/index.html +1 -1
  117. package/app/.next/server/app/index.rsc +2 -2
  118. package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  119. package/app/.next/server/app/index.segments/_full.segment.rsc +2 -2
  120. package/app/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  121. package/app/.next/server/app/page.js.nft.json +1 -1
  122. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  123. package/app/.next/server/app/settings/page.js.nft.json +1 -1
  124. package/app/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  125. package/app/.next/server/app/settings.html +1 -1
  126. package/app/.next/server/app/settings.rsc +2 -2
  127. package/app/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  128. package/app/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  129. package/app/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
  130. package/app/.next/server/app/threads/[id]/route.js.nft.json +1 -1
  131. package/app/.next/server/app-paths-manifest.json +1 -0
  132. package/app/.next/server/chunks/[externals]__06_ygwr._.js +3 -0
  133. package/app/.next/server/chunks/{[externals]__1eaoma8._.js → [externals]__0z3qnkl._.js} +2 -2
  134. package/app/.next/server/chunks/{[root-of-the-server]__00ntari._.js → [root-of-the-server]__1nf6z4s._.js} +10 -10
  135. package/app/.next/server/chunks/[root-of-the-server]__1qbadul._.js +5 -0
  136. package/app/.next/server/chunks/_0061c2q._.js +1 -1
  137. package/app/.next/server/chunks/_next-internal_server_app_api_runtime-capacity_route_actions_1dzvg7f.js +3 -0
  138. package/app/.next/server/chunks/ssr/_0mxifu3._.js +1 -1
  139. package/app/.next/server/chunks/ssr/app_agents_[id]_0sr4fdg._.js +1 -1
  140. package/app/.next/server/middleware-build-manifest.js +3 -3
  141. package/app/.next/server/middleware.js +2 -2
  142. package/app/.next/server/pages/404.html +1 -1
  143. package/app/.next/server/pages/500.html +1 -1
  144. package/app/.next/server/server-reference-manifest.js +1 -1
  145. package/app/.next/server/server-reference-manifest.json +1 -1
  146. package/app/.next/static/chunks/0h567k13e53r-.js +1 -0
  147. package/app/.next/static/chunks/{1ob-de9xo9m2e.css → 17qi6hcgg0nlz.css} +1 -1
  148. package/app/.next/static/chunks/2myfan3i8z-jy.js +1 -0
  149. package/app/BUILD_INFO.json +2 -2
  150. package/app/package.json +1 -1
  151. package/app/public/brand/harness/claude.svg +3 -0
  152. package/app/public/brand/harness/codex.png +0 -0
  153. package/app/public/brand/harness/cursor.svg +3 -0
  154. package/app/public/brand/harness/muse.svg +33 -0
  155. package/app/server.js +1 -1
  156. package/package.json +1 -1
  157. package/app/.next/static/chunks/1zryovio86f1z.js +0 -1
  158. package/app/.next/static/chunks/3m-2-98qud-hf.js +0 -1
  159. /package/app/.next/static/{0BJMiZPkEfFOd56nhl62e → 92gsyY5d-nMkxJ7iQxKkY}/_buildManifest.js +0 -0
  160. /package/app/.next/static/{0BJMiZPkEfFOd56nhl62e → 92gsyY5d-nMkxJ7iQxKkY}/_clientMiddlewareManifest.js +0 -0
  161. /package/app/.next/static/{0BJMiZPkEfFOd56nhl62e → 92gsyY5d-nMkxJ7iQxKkY}/_ssgManifest.js +0 -0
@@ -0,0 +1,5 @@
1
+ module.exports=[74533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},95428,e=>{"use strict";var t=e.i(89171),r=e.i(62294),n=e.i(2157),i=e.i(60526),a=e.i(50227);let l=["claude","codex","cursor","muse"];function u(e){return Number.isFinite(e)?Math.max(0,Math.min(100,100-e)):0}let o=new Set(["five_hour","five-hour","5h","session","session_limit"]),s=new Set(["seven_day","seven-day","7d","weekly","weekly_all","weekly_all_models"]);function c(e){return"number"==typeof e&&Number.isFinite(e)?e:null}function d(e){for(let t of e){let e=c(t);if(null!==e)return e}return null}var f=e.i(74533);let p=["initialize","initialized","account/rateLimits/read"],h={name:"botmancers",title:"botmancers",version:"0.9.3"},m=/unauthenticated|unauthorized|not (signed|logged)[ -]in|not authenticated|authentication (required|failed|expired)|please (sign|log) in|signed out|logged out|\b401\b|\b403\b|forbidden/i;function v(e){for(let t of e){let e="number"==typeof t&&Number.isFinite(t)?t:null;if(null!==e)return e}return null}function y(e){if(!p.includes(e))throw Error(`codex-capacity: refusing non-read method ${e}`)}function w(e,t,r){return y(t),`${JSON.stringify({jsonrpc:"2.0",id:e,method:t,params:r})}
2
+ `}function g(e,t,r){if(!e||"object"!=typeof e)return null;let n=v([e.usedPercent,e.used_percent]),i=v([e.usedFraction,e.used_fraction]);return null===n&&null===i?null:{windowKey:"five_hour"===t?"codex_rate_limit_primary":"codex_rate_limit_secondary",providerBucket:"five_hour"===t?"primary":"secondary",displayLabel:"five_hour"===t?"5H":"1W",remainingPercent:null!==n?u(n):u(100*i),resetAt:function e(t){if(null==t)return null;if("number"==typeof t){if(!Number.isFinite(t)||t<=0)return null;let e=new Date(t>1e12?t:1e3*t);return Number.isFinite(e.getTime())?e.toISOString():null}if("string"==typeof t){let r=t.trim();if(!r)return null;if(/^-?\d+(\.\d+)?$/.test(r))return e(Number(r));let n=Date.parse(r);return Number.isFinite(n)?new Date(n).toISOString():null}return null}(e.resetsAt??e.resets_at??e.resetAt??e.reset_at),observedAt:r,source:"supported_protocol",unavailableReason:null,criticalRole:t}}function b(e){return!!e&&"object"==typeof e&&(m.test(String(e.message??""))||401===e.code||403===e.code)}async function _(e=Date.now(),t=process.env){return!function(e=process.env){return"experimental"===e.BOTMANCERS_CURSOR_INDIVIDUAL_CAPACITY}(t)?{windows:null,reason:"unsupported"}:{windows:null,reason:"missing"}}let R=null;function A(e,t,r){return t&&t.length>0?{runtime:e,windows:t,unavailableReason:null}:{runtime:e,windows:[],unavailableReason:r??"missing"}}async function S(e,t){if("claude"===e){let r=function(e=Date.now()){let t,r;try{let e;t=n.default.readFileSync((e=process.env.BOTMANCERS_CLAUDE_CACHE_FILE?.trim())||a.default.join(process.env.HOME??i.default.homedir(),".claude.json"),"utf8")}catch{return null}try{r=JSON.parse(t)}catch{return null}return function(e,t=Date.now()){if(!e||"object"!=typeof e||Array.isArray(e))return null;let r=c(e.fetchedAtMs);if(null===r||r<=0||r>t)return null;let n=new Date(r).toISOString(),i=e.utilization;if(!i||"object"!=typeof i||Array.isArray(i))return null;let a=new Map,l=(e,t)=>{if(a.has(e))return;let i=function(e,t,r,n){let i=null,a=null;if("number"==typeof t){let e=c(t);if(null===e||e<0||e>1)return null;i={usedPercent:null,usedFraction:e}}else{if(!t||"object"!=typeof t||!(i=function(e){let t=d([e.usedPercent,e.used_percent,e.utilizationPercent,e.utilization_percent,e.percent]);if(null!==t)return t<0||t>100?null:{usedPercent:t,usedFraction:null};let r=d([e.usedFraction,e.used_fraction]);if(null!==r)return r<0||r>1?null:{usedPercent:null,usedFraction:r};let n=d([e.utilization,e.used]);return null===n||n<0||n>100?null:n<=1?{usedPercent:null,usedFraction:n}:{usedPercent:n,usedFraction:null}}(t)))return null;a=t.resets_at??t.resetsAt??t.reset_at??t.resetAt??t.resetsAtMs??null}let l=function e(t){if(null==t)return null;if("number"==typeof t){if(!Number.isFinite(t)||t<=0)return null;let e=new Date(t>1e12?t:1e3*t);return Number.isFinite(e.getTime())?e.toISOString():null}if("string"==typeof t){let r=t.trim();if(!r)return null;if(/^-?\d+(\.\d+)?$/.test(r))return e(Number(r));let n=Date.parse(r);return Number.isFinite(n)?new Date(n).toISOString():null}return null}(a);if(null!==l){let e=Date.parse(l);if(!Number.isFinite(e)||e<=n)return null}return{windowKey:"five_hour"===e?"claude_unified_five_hour":"claude_unified_seven_day",providerBucket:"five_hour"===e?"five_hour":"seven_day",displayLabel:"five_hour"===e?"5H":"1W",remainingPercent:null!==i.usedPercent?u(i.usedPercent):u(100*i.usedFraction),resetAt:l,observedAt:r,source:"observed_event",unavailableReason:null,criticalRole:e}}(e,t,n,r);i&&a.set(e,i)};if(Array.isArray(i.limits))for(let e of i.limits){if(!e||"object"!=typeof e||Array.isArray(e))continue;let t=function(e){for(let t of e)if("string"==typeof t&&t.length>0)return t;return null}([e.name,e.window,e.bucket,e.key,e.id,e.kind,e.group]);if(!t)continue;let r=function(e){let t=e.trim().toLowerCase();return o.has(t)?"five_hour":s.has(t)?"weekly":null}(t);r&&l(r,e)}return a.has("five_hour")||void 0===i.five_hour||l("five_hour",i.five_hour),a.has("weekly")||void 0===i.seven_day||l("weekly",i.seven_day),a.size>0?[...a.values()]:null}(function(e){if(!e||"object"!=typeof e||Array.isArray(e))return null;let t=e.cachedUsageUtilization;return t&&"object"==typeof t&&!Array.isArray(t)?t:e}(r),e)}(t);return A(e,r,r?null:"missing")}if("codex"===e){let t=await function(e={}){let t=e.command||process.env.BOTMANCERS_CODEX_BIN||"codex",r=e.timeoutMs??function(){let e=process.env.BOTMANCERS_CODEX_CAPACITY_TIMEOUT_MS;if(void 0!==e&&""!==e){let t=Number(e);if(Number.isFinite(t)&&t>0)return t}return 15e3}(),n=e.spawnImpl??f.spawn;return new Promise(e=>{let i,a=!1,l="",u=null,o=null,s=t=>{if(!a){a=!0,clearTimeout(f);try{i?.kill()}catch{}e(t)}},c=e=>s({windows:null,failure:e}),d=e=>{let t=function(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{return null}}(e);if(t&&("string"!=typeof t.method||void 0!==t.id)){if(1===t.id&&u){let e=u;u=null,e(t)}else if(2===t.id&&o){let e=o;o=null,e(t)}}},f=setTimeout(()=>{try{i?.kill()}catch{}let e=setTimeout(()=>{try{i&&null===i.exitCode&&i.kill("SIGKILL")}catch{}},2e3);e.unref?.(),c("timeout")},r);f.unref?.();try{i=n(t,["app-server"],{stdio:["pipe","pipe","pipe"],env:process.env})}catch{c("unavailable");return}let p="";i.stderr?.on("data",e=>{p=`${p}${e.toString()}`.slice(-2e3)}),i.stdout?.on("data",e=>{let t;if((l+=e.toString()).length>0xa00000)return void c("malformed");for(;(t=l.indexOf("\n"))>=0;){let e=l.slice(0,t);if(l=l.slice(t+1),d(e),a)return}}),i.on("error",()=>c("unavailable")),i.stdin?.on("error",()=>c("unavailable")),i.on("close",e=>{if(!a){if(0!==e&&null!==e&&m.test(p))return void c("unauthenticated");c("unavailable")}});let v=e=>{try{return i?.stdin?.write(e),!0}catch{return!1}};(async()=>{var e;if(!v(w(1,"initialize",{clientInfo:{...h}})))return c("unavailable");let t=await new Promise(e=>{u=e});if(a)return;if(!t||t.error)return c(t?.error&&b(t.error)?"unauthenticated":"unavailable");if(v((e={},y("initialized"),`${JSON.stringify({jsonrpc:"2.0",method:"initialized",params:e})}
3
+ `)),!v(w(2,"account/rateLimits/read",{})))return c("unavailable");let r=await new Promise(e=>{o=e});if(a)return;if(!r)return c("unavailable");if(r.error)return b(r.error)?c("unauthenticated"):-32601===r.error.code?c("unsupported"):c("malformed");let n=r.result;!n||"object"!=typeof n||"rateLimits"in n||void 0===n.result||(n=n.result);let i=function(e,t=new Date().toISOString()){if(!e||"object"!=typeof e)return null;let r=e.rateLimits;if(!r||"object"!=typeof r)return null;let n=[],i=g(r.primary,"five_hour",t),a=g(r.secondary,"weekly",t);return i&&n.push(i),a&&n.push(a),n.length>0?n:null}(n);s({windows:i,failure:i?null:"malformed"})})()})}();return t.windows?A(e,t.windows,null):A(e,null,"unsupported"===t.failure?"unsupported":"malformed"===t.failure?"unparsable":"missing")}if("cursor"===e){let r=await _(t);return A(e,r.windows,r.reason)}return A(e,null,"unsupported")}async function C(e){let t=e?.nowMs??Date.now();if(!e?.bypassCache&&R&&t-R.at<6e4)return R.value;let n=function(){let e=new Set;for(let t of r.bots.getAll()){let r=String(t.agent??"");l.includes(r)&&e.add(r)}return l.filter(t=>e.has(t))}(),i={runtimes:await Promise.all(n.map(e=>S(e,t))),observedAt:new Date(t).toISOString()};return R={at:t,value:i},i}async function E(){try{let e=await C();return t.NextResponse.json(e)}catch(e){return console.error("runtime-capacity failed:",e),t.NextResponse.json({error:"Failed to read runtime capacity"},{status:500})}}e.s(["GET",0,E],95428)},46207,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),i=e.i(59756),a=e.i(61916),l=e.i(74677),u=e.i(69741),o=e.i(16795),s=e.i(87718),c=e.i(95169),d=e.i(47587),f=e.i(66012),p=e.i(70101),h=e.i(26937),m=e.i(10372),v=e.i(93695),y=e.i(9580);e.i(52474);var w=e.i(220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/runtime-capacity/route",pathname:"/api/runtime-capacity",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/runtime-capacity/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(95428),...{}}),{workAsyncStorage:b,workUnitAsyncStorage:_,serverHooks:R}=g;async function A(e,t,n){n.requestMeta&&(0,i.setRequestMeta)(e,n.requestMeta),g.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let b="/api/runtime-capacity/route";b=b.replace(/\/index$/,"")||"/";let _=await g.prepare(e,t,{srcPage:b,multiZoneDraftMode:!1});if(!_)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:R,deploymentId:A,params:S,nextConfig:C,parsedUrl:E,isDraftMode:x,prerenderManifest:N,routerServerContext:O,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:I,clientReferenceManifest:D,serverActionsManifest:F}=_,M=(0,u.normalizeAppPath)(b),k=!!N.routes[I]&&(g.isDev||(0,y.isRouteCacheOwner)(I,g.cacheOwner,N.routes[I])),j=!!(N.dynamicRoutes[M]||k),q=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,E,!1):t.end("This page could not be found"),null);if(j&&!x){let e=N.dynamicRoutes[M];if(e&&!1===e.fallback&&!k){if(C.adapterPath)return await q();throw new v.NoFallbackError}}let H=null;!j||g.isDev||x||(H="/index"===(H=I)?"/":H);let U=!0===g.isDev||!j,L=j&&!U;F&&D&&(0,l.setManifestsSingleton)({page:b,clientReferenceManifest:D,serverActionsManifest:F});let $=e.method||"GET",z=(0,a.getTracer)(),B=z.getActiveScopeSpan(),K=!!(null==O?void 0:O.isWrappedByNextServer),G=!!(0,i.getRequestMeta)(e,"minimalMode"),X=(0,i.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,C,N,G);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let J={params:S,previewProps:N.preview,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:x,supportsDynamicResponse:U,incrementalCache:X,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,i)=>g.onRequestError(e,t,n,i,O)},sharedContext:{buildId:R,deploymentId:A}},V=new o.NodeNextRequest(e),W=new o.NodeNextResponse(t),Y=s.NextRequestAdapter.fromNodeNextRequest(V,(0,s.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:r})=>{try{if(!G&&T&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await g.handle(Y,J);e.fetchMetrics=J.renderOpts.fetchMetrics;let a=J.renderOpts.pendingWaitUntil;a&&n.waitUntil&&(n.waitUntil(a),a=void 0);let l=J.renderOpts.collectedTags;if(!j)return await (0,f.sendResponse)(V,W,i,a),null;{let e=await i.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==J.renderOpts.collectedRevalidate&&!(J.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&J.renderOpts.collectedRevalidate,n=void 0===J.renderOpts.collectedExpire||J.renderOpts.collectedExpire>=m.INFINITE_CACHE?!1!==r&&r>0?C.expireTime:void 0:J.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:b,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:T})},!1,O),t}},Q=async(i,l)=>{try{var u,o;let i=await g.handleResponse({req:e,nextConfig:C,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:N,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:Z,waitUntil:n.waitUntil,isMinimalMode:G});if(!j)return;if((null==i||null==(u=i.value)?void 0:u.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(o=i.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});G||t.setHeader("x-nextjs-cache",T?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let a=(0,p.fromNodeOutgoingHttpHeaders)(i.value.headers);G&&j||a.delete(m.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||a.get("Cache-Control")||a.set("Cache-Control",(0,h.getCacheControlHeader)(i.cacheControl)),await (0,f.sendResponse)(V,W,new Response(i.value.body,{headers:a,status:i.value.status||200}));return}catch(t){if(t instanceof v.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:T})},!1,O),j)throw t;await (0,f.sendResponse)(V,W,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:a.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let r=z.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||M,u=`${$} ${n}`;i.setAttributes({"next.route":n,"http.route":n,"next.span_name":u}),i.updateName(u),l&&l!==i&&(l.setAttribute("http.route",n),l.updateName(u))})()}};if(K&&B)await Q(B,void 0);else{let t=z.getActiveScopeSpan();await z.withPropagatedContext(e.headers,()=>z.trace(c.BaseServerSpan.handleRequest,{spanName:`${$} ${b}`,kind:a.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},e=>Q(e,t)),void 0,!K)}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:_})},"routeModule",0,g,"serverHooks",0,R,"workAsyncStorage",0,b,"workUnitAsyncStorage",0,_])},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))}];
4
+
5
+ //# sourceMappingURL=%5Broot-of-the-server%5D__1qbadul._.js.map
@@ -45,6 +45,6 @@ module.exports=[57007,e=>{"use strict";var t=e.i(62294),a=e.i(52036);e.i(54799),
45
45
  );
46
46
  CREATE UNIQUE INDEX IF NOT EXISTS idx_slack_questions_turn ON slack_questions(share_ref, turn_ref) WHERE turn_ref IS NOT NULL;
47
47
  CREATE INDEX IF NOT EXISTS idx_slack_questions_state ON slack_questions(state, created_at);
48
- `),e.i(90440),e.i(82554);let r=Symbol.for("botmancers.slack-runtime"),n=globalThis;async function s(){let e="ok";try{t.default.prepare("SELECT 1").get()}catch{e="error"}return Response.json({status:"ok"===e?"ok":"degraded",service:"botmancers-core",version:"0.9.3",commit:"82719b01ec49ab59cc6cb3ca836f8fc45413746c",engine:e,home:(0,a.botmancersHome)(),slack:{...(!n[r]&&(n[r]={status:{state:"stopped",reason:null,since:Date.now(),connections:0},relay:null,clients:null,stop:null,starting:null}),n[r]).status}},{status:"ok"===e?200:503,headers:{"cache-control":"no-store"}})}e.s(["GET",0,s,"dynamic",0,"force-dynamic"],57007)},61370,e=>{"use strict";var t=e.i(47909),a=e.i(74017),r=e.i(96250),n=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),T=e.i(70101),h=e.i(26937),E=e.i(10372),_=e.i(93695),N=e.i(9580);e.i(52474);var R=e.i(220);let v=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/health/route",pathname:"/api/health",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/health/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(57007),...{}}),{workAsyncStorage:m,workUnitAsyncStorage:f,serverHooks:g}=v;async function L(e,t,r){r.requestMeta&&(0,n.setRequestMeta)(e,r.requestMeta),v.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let m="/api/health/route";m=m.replace(/\/index$/,"")||"/";let f=await v.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:g,deploymentId:L,params:C,nextConfig:w,parsedUrl:O,isDraftMode:I,prerenderManifest:y,routerServerContext:U,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,resolvedPathname:x,clientReferenceManifest:b,serverActionsManifest:X}=f,k=(0,o.normalizeAppPath)(m),P=!!y.routes[x]&&(v.isDev||(0,N.isRouteCacheOwner)(x,v.cacheOwner,y.routes[x])),q=!!(y.dynamicRoutes[k]||P),H=async()=>((null==U?void 0:U.render404)?await U.render404(e,t,O,!1):t.end("This page could not be found"),null);if(q&&!I){let e=y.dynamicRoutes[k];if(e&&!1===e.fallback&&!P){if(w.adapterPath)return await H();throw new _.NoFallbackError}}let M=null;!q||v.isDev||I||(M="/index"===(M=x)?"/":M);let D=!0===v.isDev||!q,K=q&&!D;X&&b&&(0,i.setManifestsSingleton)({page:m,clientReferenceManifest:b,serverActionsManifest:X});let F=e.method||"GET",G=(0,s.getTracer)(),j=G.getActiveScopeSpan(),B=!!(null==U?void 0:U.isWrappedByNextServer),$=!!(0,n.getRequestMeta)(e,"minimalMode"),Y=(0,n.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,w,y,$);null==Y||Y.resetRequestCache(),globalThis.__incrementalCache=Y;let Q={params:C,previewProps:y.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts,useCacheTimeout:w.experimental.useCacheTimeout},cacheComponents:!!w.cacheComponents,validationLevel:w.experimental.instantInsights.validationLevel,isDraftMode:I,supportsDynamicResponse:D,incrementalCache:Y,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:w.cacheLife,staticPageGenerationTimeout:w.staticPageGenerationTimeout,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>v.onRequestError(e,t,r,n,U)},sharedContext:{buildId:g,deploymentId:L}},V=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),z=d.NextRequestAdapter.fromNodeNextRequest(V,(0,d.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:a})=>{try{if(!$&&A&&S&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await v.handle(z,Q);e.fetchMetrics=Q.renderOpts.fetchMetrics;let s=Q.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let i=Q.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(V,W,n,s),null;{let e=await n.blob(),t=(0,T.toNodeOutgoingHttpHeaders)(n.headers);i&&(t[E.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,r=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=E.INFINITE_CACHE?!1!==a&&a>0?w.expireTime:void 0:Q.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:A})},!1,U),t}},J=async(n,i)=>{try{var o,l;let n=await v.handleResponse({req:e,nextConfig:w,cacheKey:M,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,responseGenerator:Z,waitUntil:r.waitUntil,isMinimalMode:$});if(!q)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});$||t.setHeader("x-nextjs-cache",A?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,T.fromNodeOutgoingHttpHeaders)(n.value.headers);$&&q||s.delete(E.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,h.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(V,W,new Response(n.value.body,{headers:s,status:n.value.status||200}));return}catch(t){if(t instanceof _.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:A})},!1,U),q)throw t;await (0,p.sendResponse)(V,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:s.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let a=G.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==u.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route")||k,o=`${F} ${r}`;n.setAttributes({"next.route":r,"http.route":r,"next.span_name":o}),n.updateName(o),i&&i!==n&&(i.setAttribute("http.route",r),i.updateName(o))})()}};if(B&&j)await J(j,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(u.BaseServerSpan.handleRequest,{spanName:`${F} ${m}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},e=>J(e,t)),void 0,!B)}}e.s(["handler",0,L,"patchFetch",0,function(){return(0,r.patchFetch)({workAsyncStorage:m,workUnitAsyncStorage:f})},"routeModule",0,v,"serverHooks",0,g,"workAsyncStorage",0,m,"workUnitAsyncStorage",0,f])}];
48
+ `),e.i(90440),e.i(82554);let r=Symbol.for("botmancers.slack-runtime"),n=globalThis;async function s(){let e="ok";try{t.default.prepare("SELECT 1").get()}catch{e="error"}return Response.json({status:"ok"===e?"ok":"degraded",service:"botmancers-core",version:"0.10.0",commit:"36ed1c27097bc336930ad83565f9b95304ce3d7c",engine:e,home:(0,a.botmancersHome)(),slack:{...(!n[r]&&(n[r]={status:{state:"stopped",reason:null,since:Date.now(),connections:0},relay:null,clients:null,stop:null,starting:null}),n[r]).status}},{status:"ok"===e?200:503,headers:{"cache-control":"no-store"}})}e.s(["GET",0,s,"dynamic",0,"force-dynamic"],57007)},61370,e=>{"use strict";var t=e.i(47909),a=e.i(74017),r=e.i(96250),n=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),T=e.i(70101),h=e.i(26937),E=e.i(10372),_=e.i(93695),N=e.i(9580);e.i(52474);var R=e.i(220);let v=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/health/route",pathname:"/api/health",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/health/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(57007),...{}}),{workAsyncStorage:m,workUnitAsyncStorage:f,serverHooks:g}=v;async function L(e,t,r){r.requestMeta&&(0,n.setRequestMeta)(e,r.requestMeta),v.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let m="/api/health/route";m=m.replace(/\/index$/,"")||"/";let f=await v.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:g,deploymentId:L,params:C,nextConfig:w,parsedUrl:O,isDraftMode:I,prerenderManifest:y,routerServerContext:U,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,resolvedPathname:x,clientReferenceManifest:b,serverActionsManifest:X}=f,k=(0,o.normalizeAppPath)(m),P=!!y.routes[x]&&(v.isDev||(0,N.isRouteCacheOwner)(x,v.cacheOwner,y.routes[x])),q=!!(y.dynamicRoutes[k]||P),H=async()=>((null==U?void 0:U.render404)?await U.render404(e,t,O,!1):t.end("This page could not be found"),null);if(q&&!I){let e=y.dynamicRoutes[k];if(e&&!1===e.fallback&&!P){if(w.adapterPath)return await H();throw new _.NoFallbackError}}let M=null;!q||v.isDev||I||(M="/index"===(M=x)?"/":M);let D=!0===v.isDev||!q,K=q&&!D;X&&b&&(0,i.setManifestsSingleton)({page:m,clientReferenceManifest:b,serverActionsManifest:X});let F=e.method||"GET",G=(0,s.getTracer)(),j=G.getActiveScopeSpan(),B=!!(null==U?void 0:U.isWrappedByNextServer),$=!!(0,n.getRequestMeta)(e,"minimalMode"),Y=(0,n.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,w,y,$);null==Y||Y.resetRequestCache(),globalThis.__incrementalCache=Y;let Q={params:C,previewProps:y.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts,useCacheTimeout:w.experimental.useCacheTimeout},cacheComponents:!!w.cacheComponents,validationLevel:w.experimental.instantInsights.validationLevel,isDraftMode:I,supportsDynamicResponse:D,incrementalCache:Y,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:w.cacheLife,staticPageGenerationTimeout:w.staticPageGenerationTimeout,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>v.onRequestError(e,t,r,n,U)},sharedContext:{buildId:g,deploymentId:L}},V=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),z=d.NextRequestAdapter.fromNodeNextRequest(V,(0,d.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:a})=>{try{if(!$&&A&&S&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await v.handle(z,Q);e.fetchMetrics=Q.renderOpts.fetchMetrics;let s=Q.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let i=Q.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(V,W,n,s),null;{let e=await n.blob(),t=(0,T.toNodeOutgoingHttpHeaders)(n.headers);i&&(t[E.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,r=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=E.INFINITE_CACHE?!1!==a&&a>0?w.expireTime:void 0:Q.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:A})},!1,U),t}},J=async(n,i)=>{try{var o,l;let n=await v.handleResponse({req:e,nextConfig:w,cacheKey:M,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,responseGenerator:Z,waitUntil:r.waitUntil,isMinimalMode:$});if(!q)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});$||t.setHeader("x-nextjs-cache",A?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,T.fromNodeOutgoingHttpHeaders)(n.value.headers);$&&q||s.delete(E.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,h.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(V,W,new Response(n.value.body,{headers:s,status:n.value.status||200}));return}catch(t){if(t instanceof _.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:A})},!1,U),q)throw t;await (0,p.sendResponse)(V,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:s.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let a=G.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==u.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route")||k,o=`${F} ${r}`;n.setAttributes({"next.route":r,"http.route":r,"next.span_name":o}),n.updateName(o),i&&i!==n&&(i.setAttribute("http.route",r),i.updateName(o))})()}};if(B&&j)await J(j,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(u.BaseServerSpan.handleRequest,{spanName:`${F} ${m}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},e=>J(e,t)),void 0,!B)}}e.s(["handler",0,L,"patchFetch",0,function(){return(0,r.patchFetch)({workAsyncStorage:m,workUnitAsyncStorage:f})},"routeModule",0,v,"serverHooks",0,g,"workAsyncStorage",0,m,"workUnitAsyncStorage",0,f])}];
49
49
 
50
50
  //# sourceMappingURL=_0061c2q._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[85226,(e,o,d)=>{}];
2
+
3
+ //# sourceMappingURL=_next-internal_server_app_api_runtime-capacity_route_actions_1dzvg7f.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[15722,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(50944),f=a.i(36391),g=a.i(10014),h=a.i(22151),i=a.i(35832);let j=(0,c.createContext)(null),k=[{label:"Overview",segment:""},{label:"Sessions",segment:"sessions"},{label:"Conversations",segment:"conversations"},{label:"Slack",segment:"slack"},{label:"Activity",segment:"activity"},{label:"Config",segment:"config"}];a.s(["default",0,function({children:a}){let l=String((0,e.useParams)().id??""),m=(0,e.usePathname)(),n=(0,e.useRouter)(),o=(0,e.useSearchParams)(),[p,q]=(0,c.useState)([]),[r,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(!0),[v,w]=(0,c.useState)(!1),[x,y]=(0,c.useState)(!1),[z,A]=(0,c.useState)(()=>{let a=Number(o.get("deleted"))||0;return a>0?(0,i.deletedStatusLine)(a):""}),[B,C]=(0,c.useState)({serverNow:0,fetchedAt:0}),[D,E]=(0,c.useState)(()=>Date.now()),F=(0,c.useCallback)(async a=>{try{let[b,c]=await Promise.all([fetch("/api/bots",{cache:"no-store"}),fetch(`/api/bots/${encodeURIComponent(l)}/overview`,{cache:"no-store"})]),d=b.ok?await b.json():[];if(a())return;q(Array.isArray(d)?d:[]);let e=Date.parse(b.headers.get("date")||"");if(C({serverNow:Number.isNaN(e)?Date.now():e,fetchedAt:Date.now()}),404===c.status){y(!0),s(null),w(!1);return}if(!c.ok)throw Error("overview request failed");let f=await c.json();if(a())return;s(f),y(!1),w(!1)}catch{a()||w(!0)}finally{a()||u(!1)}},[l]);(0,c.useEffect)(()=>{let a=!1,b=()=>a,c=window.setTimeout(()=>{F(b)},0),d=window.setInterval(()=>{F(b)},2e3),e=window.setInterval(()=>E(Date.now()),1e3);return()=>{a=!0,window.clearTimeout(c),window.clearInterval(d),window.clearInterval(e)}},[F]);let G=r?.agent,H=r?.runtime;return(0,b.jsx)(j.Provider,{value:{id:l,agents:p,overview:r,loading:t,error:v,notFound:x},children:(0,b.jsxs)("div",{className:"field agent-field",children:[(0,b.jsx)(g.default,{agents:p,activeAgentId:l,beatClock:B,now:D,status:z,onAgentsChange:q,onNew:()=>n.push("/?new=1"),onManage:()=>n.push("/?manage=1"),onDeleted:a=>{A((0,i.deletedStatusLine)(a.length)),a.some(a=>a.id===l)&&n.replace(`/?deleted=${a.length}`)}}),(0,b.jsxs)("section",{className:"pane agent-pane",children:[(0,b.jsxs)("header",{className:"agent-shell-header",children:[(0,b.jsxs)("div",{className:"agent-shell-identity",children:[G?(0,b.jsx)(f.default,{bot:G,size:48,title:`${G.name} avatar`}):null,(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-shell-kicker",children:"Agent"}),(0,b.jsx)("h1",{children:G?.name??(t?"Loading…":"Unknown Agent")}),G?(0,b.jsx)("p",{children:G.role}):null]})]}),H?(0,b.jsxs)("div",{className:"agent-shell-runtime","aria-label":"Runtime and availability",children:[(0,b.jsx)("span",{className:H.available?"availability is-available":"availability is-blocked",children:H.available?"Available":"Needs setup"}),(0,b.jsxs)("span",{children:[(0,h.agentLabel)(H.agent)," · ",H.connection||"No connection"]})]}):null]}),(0,b.jsx)("nav",{className:"agent-tabs","aria-label":"Agent",children:k.map(a=>{let c=`/agents/${encodeURIComponent(l)}${a.segment?`/${a.segment}`:""}`,e=m===c;return(0,b.jsx)(d.default,{href:c,"aria-current":e?"page":void 0,children:a.label},a.label)})}),(0,b.jsx)("main",{className:"agent-content",children:a})]})]})})},"useAgentOverview",0,function(){let a=(0,c.useContext)(j);if(!a)throw Error("useAgentOverview must be used inside AgentShell");return a}])},20851,22151,a=>{"use strict";let b=["hermes","cursor","claude","codex","muse"],c={hermes:"Hermes",cursor:"Cursor",claude:"Claude",codex:"Codex",muse:"Muse Code"},d="hermes";function e(a){return b.includes(String(a))?c[a]:String(a??"")}b.join("|"),a.s(["AGENTS",0,b,"AGENT_LABELS",0,c,"DEFAULT_AGENT",0,d,"agentLabel",0,e],22151);let f=b.map(a=>({value:a,label:c[a]}));function g(a){return e((a.agent??"").trim()||d)}function h(a){let b=a.runtime_connection;return b&&b.label.trim()?b.label.trim():(a.runtime_connection_id??"").trim()?(a.runtime_connection_id??"").trim():null}function i(a){return`~/.botmancers/${a}`}let j="~/.botmancers/{agentID}",k=`Default: ${j} — {agentID} is this agent's ID, assigned at creation.`;function l(a){return String(a).padStart(2,"0")}let m=[{prefix:"[Agent failed]",kind:"failed",label:"Agent failed"},{prefix:"[Deck handoff]",kind:"handoff",label:"Agent launch"},{prefix:"[Deck run]",kind:"run",label:"Agent run"},{prefix:"[Deck review]",kind:"review",label:"Agent review"},{prefix:"[Deck resume]",kind:"resume",label:"Agent resume"},{prefix:"[Deck result]",kind:"result",label:"Agent result"},{prefix:"[Deck failed]",kind:"failed",label:"Agent failed"},{prefix:"[Deck needs selection]",kind:"reselection",label:"Agent needs setup"},{prefix:"[Deck needs reselection]",kind:"reselection",label:"Agent needs setup"}];a.s(["AGENT_OPTIONS",0,f,"NEW_AGENT_WORKSPACE_HINT",0,k,"WORKSPACE_TEMPLATE",0,j,"agentEventDisplay",0,function(a){let b=String(a??"").trimStart(),c=m.find(a=>b.startsWith(a.prefix));return c?{label:c.label,detail:b.slice(c.prefix.length).trim()}:null},"botAgentLabel",0,g,"botConnectionLabel",0,h,"configWorkspaceHint",0,function(a){return`Default: ${i(a)} — leave blank to use it.`},"defaultWorkdirFor",0,i,"formatClock",0,function(a){let b=new Date(a);return`${l(b.getHours())}:${l(b.getMinutes())}:${l(b.getSeconds())}`},"rosterRuntimeLine",0,function(a){let b=`Agent: ${g(a)} \xb7 `+(h(a)??"No connection");return!1===a.launchable?b+" — see Config":b}],20851)},33354,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},46058,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},69789,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={actionAsyncStorage:function(){return f.actionAsyncStorage},workAsyncStorage:function(){return g.workAsyncStorage},workUnitAsyncStorage:function(){return h.workUnitAsyncStorage}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20635),g=a.r(56704),h=a.r(32319);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},14827,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={createLinkPrefetchPartialError:function(){return g},createUnrenderedSegmentError:function(){return f}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a,b){let c=`Route "${a}": Could not validate that a segment in your UI has instant navigation.`;if(b.length>0){let a=1===b.length?"Dropped segment":"Dropped segments";c+=`
1
+ module.exports=[15722,78627,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(50944),f=a.i(36391);let g={cursor:"/brand/harness/cursor.svg",claude:"/brand/harness/claude.svg",codex:"/brand/harness/codex.png",muse:"/brand/harness/muse.svg"};function h({src:a,className:c,size:d=16}){return(0,b.jsx)("span",{className:c?`harness-icon ${c}`:"harness-icon",style:{width:d,height:d},"aria-hidden":"true",children:(0,b.jsx)("img",{src:a,alt:"",width:d,height:d,draggable:!1})})}function i({agent:a,className:c,size:d=16}){let e=g[String(a??"")];return e?(0,b.jsx)(h,{src:e,className:c,size:d}):null}a.s(["HarnessIcon",0,i],78627);var j=a.i(22151);let k={unsupported:"not reported by provider",missing:"no data yet",expired:"expired",unparsable:"provider data unparsable",stale:"stale"},l=new Set(["claude","codex","muse"]);function m(a,b){let c=a.remainingPercent??0,d=Math.round(c),e=a.resetAt?`, resets ${new Date(a.resetAt).toLocaleString()}`:"";return{key:a.windowKey,label:b,kind:"known",remaining:d,rawRemaining:c,title:`${b}: ${d}% remaining${e}`}}function n(a,b,c){return{key:a,label:b,kind:"unknown",reason:c,title:`${b}: N/A (${k[c]})`}}function o(a,b,c,d){let e=a.find(a=>a.criticalRole===b)??null;return e&&null===e.unavailableReason&&null!==e.remainingPercent?m(e,c):e?.unavailableReason?n(e.windowKey,c,e.unavailableReason):n(`missing-${c}`,c,d??"missing")}function p(a){if("cursor"===a.runtime){let b=a.windows.find(a=>"billing_cycle"===a.windowKey)??null;return b&&null===b.unavailableReason&&null!==b.remainingPercent?[m(b,"1M")]:b?.unavailableReason?[n(b.windowKey,"1M",b.unavailableReason)]:[n("missing-1M","1M",a.unavailableReason??"missing")]}return l.has(a.runtime)?[o(a.windows,"five_hour","5H",a.unavailableReason),o(a.windows,"weekly","1W",a.unavailableReason)]:[]}function q({row:a}){var c;if("unknown"===a.kind)return(0,b.jsxs)("span",{className:"topbar-capacity-window is-unknown","data-window":a.label,"data-window-known":"false",title:a.title,children:[(0,b.jsx)("span",{className:"topbar-capacity-window-label",children:a.label}),(0,b.jsx)("span",{children:"N/A"})]});let d=(c=a.rawRemaining)<10?"critical":c<30?"warning":"normal";return(0,b.jsxs)("span",{className:`topbar-capacity-window is-${d}`,"data-window":a.label,"data-window-known":"true","data-severity":d,title:a.title,children:[(0,b.jsx)("span",{className:"topbar-capacity-window-label",children:a.label}),(0,b.jsxs)("span",{children:[a.remaining,"%"]})]})}function r({entry:a}){let c=p(a),d=c.some(a=>"known"===a.kind),e=c.some(a=>"known"===a.kind&&0===a.rawRemaining),f=(0,j.agentLabel)(a.runtime)||a.runtime;return(0,b.jsxs)("span",{className:e?"topbar-capacity-runtime is-exhausted":"topbar-capacity-runtime","data-testid":`topbar-capacity-${a.runtime}`,"data-known":d?"true":"false","data-exhausted":e?"true":"false",role:"group","aria-label":`${f} capacity`,title:c.map(a=>a.title).join("; ")||`${f}: N/A`,children:[(0,b.jsx)(i,{agent:a.runtime,size:16}),0===c.length?(0,b.jsx)("span",{className:"topbar-capacity-window is-unknown",children:"N/A"}):(0,b.jsx)("span",{className:"topbar-capacity-windows",children:c.map(a=>(0,b.jsx)(q,{row:a},a.key))})]})}function s({state:a}){if("loading"===a.status)return(0,b.jsxs)("div",{className:"topbar-capacity","data-testid":"topbar-capacity","data-status":"loading",title:"Runtime capacity is loading",children:[(0,b.jsx)("span",{className:"topbar-capacity-eyebrow",children:"Capacity"}),(0,b.jsx)("span",{"aria-live":"polite",children:"loading…"})]});if("unavailable"===a.status)return(0,b.jsxs)("div",{className:"topbar-capacity","data-testid":"topbar-capacity","data-status":"unavailable",title:"Runtime capacity is unavailable",children:[(0,b.jsx)("span",{className:"topbar-capacity-eyebrow",children:"Capacity"}),(0,b.jsx)("span",{children:"unavailable"})]});let c=a.data.runtimes,d=0===c.length||c.every(a=>!p(a).some(a=>"known"===a.kind));return(0,b.jsxs)("div",{className:"topbar-capacity","data-testid":"topbar-capacity","data-status":d?"unknown":"ready",title:0===c.length?"No coding harness capacity reported":void 0,children:[(0,b.jsx)("span",{className:"topbar-capacity-eyebrow",children:"Capacity"}),0===c.length?(0,b.jsx)("span",{className:"topbar-capacity-empty",children:"N/A"}):c.map(a=>(0,b.jsx)(r,{entry:a},a.runtime))]})}function t({refreshMs:a=6e4}){let[d,e]=(0,c.useState)({status:"loading"});return(0,c.useEffect)(()=>{let b=!1,c=()=>{fetch("/api/runtime-capacity",{cache:"no-store"}).then(async a=>{if(!a.ok)throw Error("capacity request failed");return a.json()}).then(a=>{b||e({status:"ready",data:a})}).catch(()=>{b||e({status:"unavailable"})})};c();let d=window.setInterval(c,a);return()=>{b=!0,window.clearInterval(d)}},[a]),(0,b.jsx)(s,{state:d})}var u=a.i(10014),v=a.i(35832);let w=(0,c.createContext)(null),x=[{label:"Overview",segment:""},{label:"Sessions",segment:"sessions"},{label:"Conversations",segment:"conversations"},{label:"Slack",segment:"slack"},{label:"Activity",segment:"activity"},{label:"Config",segment:"config"}];a.s(["default",0,function({children:a}){let g=String((0,e.useParams)().id??""),h=(0,e.usePathname)(),k=(0,e.useRouter)(),l=(0,e.useSearchParams)(),[m,n]=(0,c.useState)([]),[o,p]=(0,c.useState)(null),[q,r]=(0,c.useState)(!0),[s,y]=(0,c.useState)(!1),[z,A]=(0,c.useState)(!1),[B,C]=(0,c.useState)(()=>{let a=Number(l.get("deleted"))||0;return a>0?(0,v.deletedStatusLine)(a):""}),[D,E]=(0,c.useState)({serverNow:0,fetchedAt:0}),[F,G]=(0,c.useState)(()=>Date.now()),H=(0,c.useCallback)(async a=>{try{let[b,c]=await Promise.all([fetch("/api/bots",{cache:"no-store"}),fetch(`/api/bots/${encodeURIComponent(g)}/overview`,{cache:"no-store"})]),d=b.ok?await b.json():[];if(a())return;n(Array.isArray(d)?d:[]);let e=Date.parse(b.headers.get("date")||"");if(E({serverNow:Number.isNaN(e)?Date.now():e,fetchedAt:Date.now()}),404===c.status){A(!0),p(null),y(!1);return}if(!c.ok)throw Error("overview request failed");let f=await c.json();if(a())return;p(f),A(!1),y(!1)}catch{a()||y(!0)}finally{a()||r(!1)}},[g]);(0,c.useEffect)(()=>{let a=!1,b=()=>a,c=window.setTimeout(()=>{H(b)},0),d=window.setInterval(()=>{H(b)},2e3),e=window.setInterval(()=>G(Date.now()),1e3);return()=>{a=!0,window.clearTimeout(c),window.clearInterval(d),window.clearInterval(e)}},[H]);let I=o?.agent,J=o?.runtime;return(0,b.jsx)(w.Provider,{value:{id:g,agents:m,overview:o,loading:q,error:s,notFound:z},children:(0,b.jsxs)("div",{className:"field agent-field",children:[(0,b.jsx)(u.default,{agents:m,activeAgentId:g,beatClock:D,now:F,status:B,onAgentsChange:n,onNew:()=>k.push("/?new=1"),onManage:()=>k.push("/?manage=1"),onDeleted:a=>{C((0,v.deletedStatusLine)(a.length)),a.some(a=>a.id===g)&&k.replace(`/?deleted=${a.length}`)}}),(0,b.jsxs)("section",{className:"pane agent-pane",children:[(0,b.jsx)(t,{}),(0,b.jsxs)("header",{className:"agent-shell-header",children:[(0,b.jsxs)("div",{className:"agent-shell-identity",children:[I?(0,b.jsx)(f.default,{bot:I,size:48,title:`${I.name} avatar`}):null,(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-shell-kicker",children:"Agent"}),(0,b.jsx)("h1",{children:I?.name??(q?"Loading…":"Unknown Agent")}),I?(0,b.jsx)("p",{children:I.role}):null]})]}),J?(0,b.jsxs)("div",{className:"agent-shell-runtime","aria-label":"Runtime and availability",children:[(0,b.jsx)("span",{className:J.available?"availability is-available":"availability is-blocked",children:J.available?"Available":"Needs setup"}),(0,b.jsxs)("span",{className:"agent-shell-runtime-line",children:[(0,b.jsx)(i,{agent:J.agent,size:14}),(0,b.jsxs)("span",{children:[(0,j.agentLabel)(J.agent)," · ",J.connection||"No connection"]})]})]}):null]}),(0,b.jsx)("nav",{className:"agent-tabs","aria-label":"Agent",children:x.map(a=>{let c=`/agents/${encodeURIComponent(g)}${a.segment?`/${a.segment}`:""}`,e=h===c;return(0,b.jsx)(d.default,{href:c,"aria-current":e?"page":void 0,children:a.label},a.label)})}),(0,b.jsx)("main",{className:"agent-content",children:a})]})]})})},"useAgentOverview",0,function(){let a=(0,c.useContext)(w);if(!a)throw Error("useAgentOverview must be used inside AgentShell");return a}],15722)},20851,22151,a=>{"use strict";let b=["hermes","cursor","claude","codex","muse"],c={hermes:"Hermes",cursor:"Cursor",claude:"Claude",codex:"Codex",muse:"Muse Code"},d="hermes";function e(a){return b.includes(String(a))?c[a]:String(a??"")}b.join("|"),a.s(["AGENTS",0,b,"AGENT_LABELS",0,c,"DEFAULT_AGENT",0,d,"agentLabel",0,e],22151);let f=b.map(a=>({value:a,label:c[a]}));function g(a){return e((a.agent??"").trim()||d)}function h(a){let b=a.runtime_connection;return b&&b.label.trim()?b.label.trim():(a.runtime_connection_id??"").trim()?(a.runtime_connection_id??"").trim():null}function i(a){return`~/.botmancers/${a}`}let j="~/.botmancers/{agentID}",k=`Default: ${j} — {agentID} is this agent's ID, assigned at creation.`;function l(a){return String(a).padStart(2,"0")}let m=[{prefix:"[Agent failed]",kind:"failed",label:"Agent failed"},{prefix:"[Deck handoff]",kind:"handoff",label:"Agent launch"},{prefix:"[Deck run]",kind:"run",label:"Agent run"},{prefix:"[Deck review]",kind:"review",label:"Agent review"},{prefix:"[Deck resume]",kind:"resume",label:"Agent resume"},{prefix:"[Deck result]",kind:"result",label:"Agent result"},{prefix:"[Deck failed]",kind:"failed",label:"Agent failed"},{prefix:"[Deck needs selection]",kind:"reselection",label:"Agent needs setup"},{prefix:"[Deck needs reselection]",kind:"reselection",label:"Agent needs setup"}];a.s(["AGENT_OPTIONS",0,f,"NEW_AGENT_WORKSPACE_HINT",0,k,"WORKSPACE_TEMPLATE",0,j,"agentEventDisplay",0,function(a){let b=String(a??"").trimStart(),c=m.find(a=>b.startsWith(a.prefix));return c?{label:c.label,detail:b.slice(c.prefix.length).trim()}:null},"botAgentLabel",0,g,"botConnectionLabel",0,h,"configWorkspaceHint",0,function(a){return`Default: ${i(a)} — leave blank to use it.`},"defaultWorkdirFor",0,i,"formatClock",0,function(a){let b=new Date(a);return`${l(b.getHours())}:${l(b.getMinutes())}:${l(b.getSeconds())}`},"rosterRuntimeLine",0,function(a){let b=`Agent: ${g(a)} \xb7 `+(h(a)??"No connection");return!1===a.launchable?b+" — see Config":b}],20851)},33354,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},46058,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},69789,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={actionAsyncStorage:function(){return f.actionAsyncStorage},workAsyncStorage:function(){return g.workAsyncStorage},workUnitAsyncStorage:function(){return h.workUnitAsyncStorage}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20635),g=a.r(56704),h=a.r(32319);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},14827,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={createLinkPrefetchPartialError:function(){return g},createUnrenderedSegmentError:function(){return f}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a,b){let c=`Route "${a}": Could not validate that a segment in your UI has instant navigation.`;if(b.length>0){let a=1===b.length?"Dropped segment":"Dropped segments";c+=`
2
2
 
3
3
  This segment was dropped from rendering. Issues that would prevent instant navigation will go undetected.
4
4
 
@@ -1,3 +1,3 @@
1
- module.exports=[10932,a=>{"use strict";var b=a.i(87924),c=a.i(38246),d=a.i(72131),e=a.i(15722);let f=[{value:"all",label:"All"},{value:"sessions",label:"Sessions"},{value:"conversations",label:"Conversations & exchanges"},{value:"slack",label:"Slack"},{value:"errors",label:"Errors"}],g={filter:"all",requestKey:"",activity:{state:"loading"},nextCursor:null,loadingMore:!1};function h(a,b){return"select_filter"===b.type?{...a,filter:b.filter,requestKey:"",activity:{state:"loading"},nextCursor:null,loadingMore:!1}:"request_started"===b.type?{...a,requestKey:b.key,activity:{state:"loading"},nextCursor:null,loadingMore:!1}:"request_succeeded"===b.type?b.key===a.requestKey?{...a,activity:{state:"ready",items:b.items},nextCursor:b.nextCursor}:a:"request_failed"===b.type?b.key===a.requestKey?{...a,activity:{state:"error"},nextCursor:null}:a:"load_started"===b.type?b.key===a.requestKey?{...a,loadingMore:!0}:a:"load_succeeded"===b.type&&b.key===a.requestKey&&"ready"===a.activity.state?{...a,activity:{state:"ready",items:[...a.activity.items,...b.items]},nextCursor:b.nextCursor,loadingMore:!1}:"load_failed"===b.type&&b.key===a.requestKey?{...a,activity:{state:"error"},nextCursor:null,loadingMore:!1}:a}function i(a,b,c=null){let d=new URLSearchParams({filter:b,limit:String(20)});return c&&d.set("cursor",c),`/api/bots/${encodeURIComponent(a)}/activity?${d.toString()}`}function j({items:a,compact:d=!1}){return(0,b.jsx)("ol",{className:d?"agent-activity-list is-compact":"agent-activity-list","aria-label":"Agent activity, newest first",children:a.map(a=>(0,b.jsxs)("li",{className:`agent-activity-item is-${a.severity}`,"data-activity-kind":a.kind,children:[(0,b.jsx)("span",{className:"agent-activity-marker","aria-hidden":"true"}),(0,b.jsxs)("div",{className:"agent-activity-card",children:[(0,b.jsxs)("div",{className:"agent-activity-summary",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"agent-activity-category",children:"conversations"===a.category?"Conversations & exchanges":a.category}),(0,b.jsx)("strong",{children:a.summary}),(0,b.jsx)("time",{dateTime:new Date(a.occurred_at).toISOString(),children:new Date(a.occurred_at).toLocaleString()})]}),a.attention?(0,b.jsx)("span",{className:"agent-activity-attention",children:"Needs attention"}):null]}),(0,b.jsx)("div",{className:"agent-activity-actions",children:(0,b.jsx)(c.default,{href:a.target.href,children:a.target.label})}),!d&&Object.keys(a.details).length?(0,b.jsxs)("details",{className:"agent-activity-details",children:[(0,b.jsx)("summary",{children:"Raw details"}),(0,b.jsx)("dl",{children:Object.entries(a.details).map(([a,c])=>(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:a.replaceAll("_"," ")}),(0,b.jsx)("dd",{children:(0,b.jsx)("code",{children:String(c)})})]},a))}),(0,b.jsx)("p",{children:"Safe structured fields only. Provider transcripts and identifiers are excluded."})]}):null]})]},a.id))})}function k({activity:a,filter:c,nextCursor:d,loadingMore:e,onLoadMore:g}){return(0,b.jsxs)(b.Fragment,{children:["loading"===a.state?(0,b.jsx)("p",{className:"agent-activity-state",role:"status",children:"Loading activity…"}):null,"error"===a.state?(0,b.jsxs)("div",{className:"agent-activity-state is-error",role:"alert",children:[(0,b.jsx)("strong",{children:"Activity unavailable"}),(0,b.jsx)("p",{children:"No partial or stale timeline is shown. Refresh to try again."})]}):null,"ready"!==a.state||a.items.length?null:(0,b.jsx)("p",{className:"agent-activity-state",children:"all"===c?"No operational activity has been recorded for this Agent yet.":`No ${f.find(a=>a.value===c)?.label.toLowerCase()} activity matches this filter.`}),"ready"===a.state&&a.items.length?(0,b.jsx)(j,{items:a.items}):null,"ready"===a.state&&d?(0,b.jsx)("button",{type:"button",className:"agent-activity-more",onClick:g,disabled:e,children:e?"Loading…":"Load older activity"}):null]})}a.s(["ActivityList",0,j,"ActivityResults",0,k,"activityPageReducer",0,h,"agentActivityUrl",0,i,"default",0,function(){let{id:a,overview:j,loading:l,error:m,notFound:n}=(0,e.useAgentOverview)(),[o,p]=(0,d.useReducer)(h,g),{filter:q,activity:r,nextCursor:s,loadingMore:t}=o,u=(0,d.useRef)(0),v=(0,d.useCallback)((b=null)=>i(a,q,b),[q,a]);(0,d.useEffect)(()=>{let b=!1,c=++u.current,d=`${a}:${q}:${c}`;return p({type:"request_started",key:d}),fetch(v(),{cache:"no-store"}).then(async a=>{let e=await a.json().catch(()=>null);if(!a.ok||!Array.isArray(e?.activity))throw Error("activity");b||c!==u.current||p({type:"request_succeeded",key:d,items:e.activity,nextCursor:"string"==typeof e.next_cursor?e.next_cursor:null})}).catch(()=>{b||c!==u.current||p({type:"request_failed",key:d})}),()=>{b=!0}},[q,a,v]);let w=async()=>{if(!s||"ready"!==r.state||t)return;let a=o.requestKey;p({type:"load_started",key:a});try{let b=await fetch(v(s),{cache:"no-store"}),c=await b.json().catch(()=>null);if(!b.ok||!Array.isArray(c?.activity))throw Error("activity");p({type:"load_succeeded",key:a,items:c.activity,nextCursor:"string"==typeof c.next_cursor?c.next_cursor:null})}catch{p({type:"load_failed",key:a})}};return l?(0,b.jsx)("div",{className:"agent-state",role:"status",children:"Loading Agent activity…"}):n?(0,b.jsxs)("div",{className:"agent-state",children:[(0,b.jsx)("h2",{children:"Agent not found"}),(0,b.jsx)(c.default,{href:"/",children:"Choose an Agent"})]}):m||!j?(0,b.jsxs)("div",{className:"agent-state",role:"alert",children:[(0,b.jsx)("h2",{children:"Activity unavailable"}),(0,b.jsx)("p",{children:"Botmancers could not load this Agent."})]}):(0,b.jsxs)("div",{className:"agent-activity","data-agent-activity-page":!0,children:[(0,b.jsxs)("header",{className:"agent-activity-intro",children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Activity"}),(0,b.jsxs)("h2",{children:["What changed for ",j.agent.name]}),(0,b.jsx)("p",{children:"Operational history from Botmancers records. Open the owning page for actions and complete detail."})]}),(0,b.jsx)("div",{className:"agent-activity-filters",role:"group","aria-label":"Filter Agent activity",children:f.map(a=>(0,b.jsx)("button",{type:"button","aria-pressed":q===a.value,onClick:()=>p({type:"select_filter",filter:a.value}),children:a.label},a.value))}),(0,b.jsx)(k,{activity:r,filter:q,nextCursor:s,loadingMore:t,onLoadMore:()=>{w()}})]})},"initialActivityPageState",0,g],10932)},88204,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(15722),f=a.i(22151),g=a.i(10932);let h="botmancers setup --client cursor";function i(){let[a,d]=(0,c.useState)(!1);return(0,b.jsx)("button",{type:"button",className:"agent-primary-action",onClick:async()=>{try{await navigator.clipboard.writeText(h),d(!0),window.setTimeout(()=>d(!1),1600)}catch{d(!1)}},children:a?"Copied":"Copy setup command"})}function j({rows:a,empty:c}){return a.length?(0,b.jsx)("ul",{className:"agent-work-list",children:a.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("span",{children:[(0,b.jsx)("strong",{children:a.title}),(0,b.jsxs)("small",{children:["active"===a.status?"Active now":"Recent"," · ",new Date(a.last_activity_at).toLocaleString()]})]})},a.ref))}):(0,b.jsx)("p",{className:"agent-empty",children:c})}a.s(["default",0,function(){let{id:a,overview:c,loading:k,error:l,notFound:m}=(0,e.useAgentOverview)();if(k)return(0,b.jsx)("div",{className:"agent-state",role:"status",children:"Loading Agent overview…"});if(m)return(0,b.jsxs)("div",{className:"agent-state",children:[(0,b.jsx)("h2",{children:"Agent not found"}),(0,b.jsx)("p",{children:"This Agent does not exist or was removed."}),(0,b.jsx)(d.default,{href:"/",children:"Choose an Agent"})]});if(l||!c)return(0,b.jsxs)("div",{className:"agent-state",role:"alert",children:[(0,b.jsx)("h2",{children:"Overview unavailable"}),(0,b.jsx)("p",{children:"Botmancers could not load this Agent. Refresh to try again."})]});let n=`/agents/${encodeURIComponent(a)}/config`,o=c.conversation?`/agents/${encodeURIComponent(a)}/conversations/${encodeURIComponent(c.conversation.id)}`:`/agents/${encodeURIComponent(a)}/conversations`,p=c.messaging.home_session_ref?"Home session configured":c.messaging.new_sessions_allowed&&c.messaging.default_workspace_set?"Can start a configured session":c.current_work.length>0?"Uses an eligible existing session":"No ready session is known";return(0,b.jsxs)("div",{className:"agent-overview","data-agent-overview":!0,children:[(0,b.jsxs)("div",{className:"agent-overview-grid",children:[(0,b.jsxs)("section",{className:"agent-panel agent-instructions",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Standing instructions"}),(0,b.jsx)("h2",{children:"How this Agent works"})]}),(0,b.jsx)(d.default,{href:n,children:"Config"})]}),(0,b.jsxs)("dl",{children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Rules"}),(0,b.jsx)("dd",{children:c.instructions.rules})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Skill"}),(0,b.jsx)("dd",{children:c.instructions.skill})]})]})]}),(0,b.jsxs)("section",{className:"agent-panel",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Runtime"}),(0,b.jsx)("h2",{children:c.runtime.available?"Ready to work":"Setup required"})]}),(0,b.jsx)(d.default,{href:n,children:"Config"})]}),(0,b.jsx)("p",{children:c.runtime.available?`${(0,f.agentLabel)(c.runtime.agent)} is connected through ${c.runtime.connection||"the configured runtime"}.`:"This Agent cannot launch with its current registration. Open Config to resolve the connection or session scope."}),(0,b.jsxs)("dl",{className:"agent-runtime-facts",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Heartbeat"}),(0,b.jsx)("dd",{children:c.runtime.last_seen?new Date(c.runtime.last_seen).toLocaleString():"Not reported"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Messaging"}),(0,b.jsx)("dd",{children:p})]})]}),(0,b.jsx)("p",{className:"agent-muted",children:"Messages use the Agent’s configured home session or launch policy. Callers do not choose its runtime, model, or provider session."})]})]}),(0,b.jsxs)("section",{className:"agent-use","aria-labelledby":"open-this-agent",children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Open this Agent"}),(0,b.jsx)("h2",{id:"open-this-agent",children:"Make it reachable"}),(0,b.jsxs)("div",{className:"agent-use-grid",children:[(0,b.jsxs)("article",{children:[(0,b.jsx)("span",{className:"agent-use-number",children:"01"}),(0,b.jsx)("h3",{children:"Use from a coding agent"}),(0,b.jsxs)("p",{children:["Let another coding agent discover ",c.agent.name," and ask its sessions — so work learned here can travel between agents."]}),(0,b.jsx)("p",{className:"agent-muted",children:"One command connects the client to the bridge and installs the collaboration skill:"}),(0,b.jsx)("pre",{className:"agent-setup-command",children:(0,b.jsx)("code",{children:h})}),(0,b.jsx)(i,{}),(0,b.jsxs)("p",{className:"agent-muted",children:["Swap ",(0,b.jsx)("code",{children:"cursor"})," for ",(0,b.jsx)("code",{children:"codex"})," or ",(0,b.jsx)("code",{children:"claude"}),"."]})]}),(0,b.jsxs)("article",{children:[(0,b.jsx)("span",{className:"agent-use-number",children:"02"}),(0,b.jsx)("h3",{children:"Share a session to Slack"}),(0,b.jsx)("p",{children:"Open one of this Agent’s sessions to people in Slack — a time-limited, read-only share so others can ask what the session already knows."}),(0,b.jsx)(d.default,{href:`/agents/${encodeURIComponent(a)}/slack`,children:"Share through Slack"})]}),(0,b.jsxs)("article",{children:[(0,b.jsx)("span",{className:"agent-use-number",children:"03"}),(0,b.jsx)("h3",{children:"Message in Botmancers"}),(0,b.jsxs)("p",{children:["Talk directly with ",c.agent.name," in a focused conversation when you are the one asking."]}),(0,b.jsx)(d.default,{href:o,children:"Open conversation"})]})]})]}),(0,b.jsxs)("div",{className:"agent-overview-grid agent-work-grid",children:[(0,b.jsxs)("section",{className:"agent-panel",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Current work"}),(0,b.jsx)("h2",{children:"Active sessions"})]}),(0,b.jsx)(d.default,{href:`/agents/${encodeURIComponent(a)}/sessions`,children:"All sessions"})]}),(0,b.jsx)(j,{rows:c.current_work,empty:"No active work right now."})]}),(0,b.jsxs)("section",{className:"agent-panel",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Recent activity"}),(0,b.jsx)("h2",{children:"Latest work"})]}),(0,b.jsx)(d.default,{href:`/agents/${encodeURIComponent(a)}/activity`,children:"View activity"})]}),c.recent_activity.length?(0,b.jsx)(g.ActivityList,{items:c.recent_activity,compact:!0}):(0,b.jsx)("p",{className:"agent-empty",children:"No operational activity yet."})]})]})]})}])}];
1
+ module.exports=[10932,a=>{"use strict";var b=a.i(87924),c=a.i(38246),d=a.i(72131),e=a.i(15722);let f=[{value:"all",label:"All"},{value:"sessions",label:"Sessions"},{value:"conversations",label:"Conversations & exchanges"},{value:"slack",label:"Slack"},{value:"errors",label:"Errors"}],g={filter:"all",requestKey:"",activity:{state:"loading"},nextCursor:null,loadingMore:!1};function h(a,b){return"select_filter"===b.type?{...a,filter:b.filter,requestKey:"",activity:{state:"loading"},nextCursor:null,loadingMore:!1}:"request_started"===b.type?{...a,requestKey:b.key,activity:{state:"loading"},nextCursor:null,loadingMore:!1}:"request_succeeded"===b.type?b.key===a.requestKey?{...a,activity:{state:"ready",items:b.items},nextCursor:b.nextCursor}:a:"request_failed"===b.type?b.key===a.requestKey?{...a,activity:{state:"error"},nextCursor:null}:a:"load_started"===b.type?b.key===a.requestKey?{...a,loadingMore:!0}:a:"load_succeeded"===b.type&&b.key===a.requestKey&&"ready"===a.activity.state?{...a,activity:{state:"ready",items:[...a.activity.items,...b.items]},nextCursor:b.nextCursor,loadingMore:!1}:"load_failed"===b.type&&b.key===a.requestKey?{...a,activity:{state:"error"},nextCursor:null,loadingMore:!1}:a}function i(a,b,c=null){let d=new URLSearchParams({filter:b,limit:String(20)});return c&&d.set("cursor",c),`/api/bots/${encodeURIComponent(a)}/activity?${d.toString()}`}function j({items:a,compact:d=!1}){return(0,b.jsx)("ol",{className:d?"agent-activity-list is-compact":"agent-activity-list","aria-label":"Agent activity, newest first",children:a.map(a=>(0,b.jsxs)("li",{className:`agent-activity-item is-${a.severity}`,"data-activity-kind":a.kind,children:[(0,b.jsx)("span",{className:"agent-activity-marker","aria-hidden":"true"}),(0,b.jsxs)("div",{className:"agent-activity-card",children:[(0,b.jsxs)("div",{className:"agent-activity-summary",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"agent-activity-category",children:"conversations"===a.category?"Conversations & exchanges":a.category}),(0,b.jsx)("strong",{children:a.summary}),(0,b.jsx)("time",{dateTime:new Date(a.occurred_at).toISOString(),children:new Date(a.occurred_at).toLocaleString()})]}),a.attention?(0,b.jsx)("span",{className:"agent-activity-attention",children:"Needs attention"}):null]}),(0,b.jsx)("div",{className:"agent-activity-actions",children:(0,b.jsx)(c.default,{href:a.target.href,children:a.target.label})}),!d&&Object.keys(a.details).length?(0,b.jsxs)("details",{className:"agent-activity-details",children:[(0,b.jsx)("summary",{children:"Raw details"}),(0,b.jsx)("dl",{children:Object.entries(a.details).map(([a,c])=>(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:a.replaceAll("_"," ")}),(0,b.jsx)("dd",{children:(0,b.jsx)("code",{children:String(c)})})]},a))}),(0,b.jsx)("p",{children:"Safe structured fields only. Provider transcripts and identifiers are excluded."})]}):null]})]},a.id))})}function k({activity:a,filter:c,nextCursor:d,loadingMore:e,onLoadMore:g}){return(0,b.jsxs)(b.Fragment,{children:["loading"===a.state?(0,b.jsx)("p",{className:"agent-activity-state",role:"status",children:"Loading activity…"}):null,"error"===a.state?(0,b.jsxs)("div",{className:"agent-activity-state is-error",role:"alert",children:[(0,b.jsx)("strong",{children:"Activity unavailable"}),(0,b.jsx)("p",{children:"No partial or stale timeline is shown. Refresh to try again."})]}):null,"ready"!==a.state||a.items.length?null:(0,b.jsx)("p",{className:"agent-activity-state",children:"all"===c?"No operational activity has been recorded for this Agent yet.":`No ${f.find(a=>a.value===c)?.label.toLowerCase()} activity matches this filter.`}),"ready"===a.state&&a.items.length?(0,b.jsx)(j,{items:a.items}):null,"ready"===a.state&&d?(0,b.jsx)("button",{type:"button",className:"agent-activity-more",onClick:g,disabled:e,children:e?"Loading…":"Load older activity"}):null]})}a.s(["ActivityList",0,j,"ActivityResults",0,k,"activityPageReducer",0,h,"agentActivityUrl",0,i,"default",0,function(){let{id:a,overview:j,loading:l,error:m,notFound:n}=(0,e.useAgentOverview)(),[o,p]=(0,d.useReducer)(h,g),{filter:q,activity:r,nextCursor:s,loadingMore:t}=o,u=(0,d.useRef)(0),v=(0,d.useCallback)((b=null)=>i(a,q,b),[q,a]);(0,d.useEffect)(()=>{let b=!1,c=++u.current,d=`${a}:${q}:${c}`;return p({type:"request_started",key:d}),fetch(v(),{cache:"no-store"}).then(async a=>{let e=await a.json().catch(()=>null);if(!a.ok||!Array.isArray(e?.activity))throw Error("activity");b||c!==u.current||p({type:"request_succeeded",key:d,items:e.activity,nextCursor:"string"==typeof e.next_cursor?e.next_cursor:null})}).catch(()=>{b||c!==u.current||p({type:"request_failed",key:d})}),()=>{b=!0}},[q,a,v]);let w=async()=>{if(!s||"ready"!==r.state||t)return;let a=o.requestKey;p({type:"load_started",key:a});try{let b=await fetch(v(s),{cache:"no-store"}),c=await b.json().catch(()=>null);if(!b.ok||!Array.isArray(c?.activity))throw Error("activity");p({type:"load_succeeded",key:a,items:c.activity,nextCursor:"string"==typeof c.next_cursor?c.next_cursor:null})}catch{p({type:"load_failed",key:a})}};return l?(0,b.jsx)("div",{className:"agent-state",role:"status",children:"Loading Agent activity…"}):n?(0,b.jsxs)("div",{className:"agent-state",children:[(0,b.jsx)("h2",{children:"Agent not found"}),(0,b.jsx)(c.default,{href:"/",children:"Choose an Agent"})]}):m||!j?(0,b.jsxs)("div",{className:"agent-state",role:"alert",children:[(0,b.jsx)("h2",{children:"Activity unavailable"}),(0,b.jsx)("p",{children:"Botmancers could not load this Agent."})]}):(0,b.jsxs)("div",{className:"agent-activity","data-agent-activity-page":!0,children:[(0,b.jsxs)("header",{className:"agent-activity-intro",children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Activity"}),(0,b.jsxs)("h2",{children:["What changed for ",j.agent.name]}),(0,b.jsx)("p",{children:"Operational history from Botmancers records. Open the owning page for actions and complete detail."})]}),(0,b.jsx)("div",{className:"agent-activity-filters",role:"group","aria-label":"Filter Agent activity",children:f.map(a=>(0,b.jsx)("button",{type:"button","aria-pressed":q===a.value,onClick:()=>p({type:"select_filter",filter:a.value}),children:a.label},a.value))}),(0,b.jsx)(k,{activity:r,filter:q,nextCursor:s,loadingMore:t,onLoadMore:()=>{w()}})]})},"initialActivityPageState",0,g],10932)},88204,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(15722),f=a.i(22151),g=a.i(78627),h=a.i(10932);let i=[{id:"cursor",label:"Cursor"},{id:"codex",label:"Codex"},{id:"claude",label:"Claude Code"}];function j(a){return`botmancers setup --client ${a}`}function k(){let[a,d]=(0,c.useState)("cursor"),[e,f]=(0,c.useState)(null),h=j(a);async function k(a){d(a);try{await navigator.clipboard.writeText(j(a)),f(a),window.setTimeout(()=>f(b=>b===a?null:b),1600)}catch{f(null)}}return(0,b.jsxs)("div",{className:"agent-setup-clients",children:[(0,b.jsx)("div",{className:"agent-setup-client-row",role:"group","aria-label":"Copy setup command for a coding client",children:i.map(c=>{let d=a===c.id,f=e===c.id;return(0,b.jsxs)("button",{type:"button",className:`agent-setup-client${d?" is-active":""}${f?" is-copied":""}`,"aria-pressed":d,"aria-label":f?`Copied setup command for ${c.label}`:`Copy setup command for ${c.label}`,onClick:()=>void k(c.id),children:[(0,b.jsx)(g.HarnessIcon,{agent:c.id,size:14,className:"agent-setup-client-mark"}),(0,b.jsx)("span",{children:f?"Copied":c.label})]},c.id)})}),(0,b.jsx)("pre",{className:"agent-setup-command",children:(0,b.jsx)("code",{children:h})})]})}function l({rows:a,empty:c}){return a.length?(0,b.jsx)("ul",{className:"agent-work-list",children:a.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("span",{children:[(0,b.jsx)("strong",{children:a.title}),(0,b.jsxs)("small",{children:["active"===a.status?"Active now":"Recent"," · ",new Date(a.last_activity_at).toLocaleString()]})]})},a.ref))}):(0,b.jsx)("p",{className:"agent-empty",children:c})}a.s(["default",0,function(){let{id:a,overview:c,loading:g,error:i,notFound:j}=(0,e.useAgentOverview)();if(g)return(0,b.jsx)("div",{className:"agent-state",role:"status",children:"Loading Agent overview…"});if(j)return(0,b.jsxs)("div",{className:"agent-state",children:[(0,b.jsx)("h2",{children:"Agent not found"}),(0,b.jsx)("p",{children:"This Agent does not exist or was removed."}),(0,b.jsx)(d.default,{href:"/",children:"Choose an Agent"})]});if(i||!c)return(0,b.jsxs)("div",{className:"agent-state",role:"alert",children:[(0,b.jsx)("h2",{children:"Overview unavailable"}),(0,b.jsx)("p",{children:"Botmancers could not load this Agent. Refresh to try again."})]});let m=`/agents/${encodeURIComponent(a)}/config`,n=c.conversation?`/agents/${encodeURIComponent(a)}/conversations/${encodeURIComponent(c.conversation.id)}`:`/agents/${encodeURIComponent(a)}/conversations`,o=c.messaging.home_session_ref?"Home session configured":c.messaging.new_sessions_allowed&&c.messaging.default_workspace_set?"Can start a configured session":c.current_work.length>0?"Uses an eligible existing session":"No ready session is known";return(0,b.jsxs)("div",{className:"agent-overview","data-agent-overview":!0,children:[(0,b.jsxs)("div",{className:"agent-overview-grid",children:[(0,b.jsxs)("section",{className:"agent-panel agent-instructions",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Standing instructions"}),(0,b.jsx)("h2",{children:"How this Agent works"})]}),(0,b.jsx)(d.default,{href:m,children:"Config"})]}),(0,b.jsxs)("dl",{children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Rules"}),(0,b.jsx)("dd",{children:c.instructions.rules})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Skill"}),(0,b.jsx)("dd",{children:c.instructions.skill})]})]})]}),(0,b.jsxs)("section",{className:"agent-panel",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Runtime"}),(0,b.jsx)("h2",{children:c.runtime.available?"Ready to work":"Setup required"})]}),(0,b.jsx)(d.default,{href:m,children:"Config"})]}),(0,b.jsx)("p",{children:c.runtime.available?`${(0,f.agentLabel)(c.runtime.agent)} is connected through ${c.runtime.connection||"the configured runtime"}.`:"This Agent cannot launch with its current registration. Open Config to resolve the connection or session scope."}),(0,b.jsxs)("dl",{className:"agent-runtime-facts",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Heartbeat"}),(0,b.jsx)("dd",{children:c.runtime.last_seen?new Date(c.runtime.last_seen).toLocaleString():"Not reported"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{children:"Messaging"}),(0,b.jsx)("dd",{children:o})]})]}),(0,b.jsx)("p",{className:"agent-muted",children:"Messages use the Agent’s configured home session or launch policy. Callers do not choose its runtime, model, or provider session."})]})]}),(0,b.jsxs)("section",{className:"agent-use","aria-labelledby":"open-this-agent",children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Open this Agent"}),(0,b.jsx)("h2",{id:"open-this-agent",children:"Make it reachable"}),(0,b.jsxs)("div",{className:"agent-use-grid",children:[(0,b.jsxs)("article",{children:[(0,b.jsx)("span",{className:"agent-use-number",children:"01"}),(0,b.jsx)("h3",{children:"Use from a coding agent"}),(0,b.jsxs)("p",{children:["Let another coding agent discover ",c.agent.name," and ask its sessions — so work learned here can travel between agents."]}),(0,b.jsx)("p",{className:"agent-muted",children:"One command connects the client to the bridge and installs the collaboration skill. Click your client to copy it:"}),(0,b.jsx)(k,{})]}),(0,b.jsxs)("article",{children:[(0,b.jsx)("span",{className:"agent-use-number",children:"02"}),(0,b.jsx)("h3",{children:"Share a session to Slack"}),(0,b.jsx)("p",{children:"Open one of this Agent’s sessions to people in Slack — a time-limited, read-only share so others can ask what the session already knows."}),(0,b.jsx)(d.default,{href:`/agents/${encodeURIComponent(a)}/slack`,children:"Share through Slack"})]}),(0,b.jsxs)("article",{children:[(0,b.jsx)("span",{className:"agent-use-number",children:"03"}),(0,b.jsx)("h3",{children:"Message in Botmancers"}),(0,b.jsxs)("p",{children:["Talk directly with ",c.agent.name," in a focused conversation when you are the one asking."]}),(0,b.jsx)(d.default,{href:n,children:"Open conversation"})]})]})]}),(0,b.jsxs)("div",{className:"agent-overview-grid agent-work-grid",children:[(0,b.jsxs)("section",{className:"agent-panel",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Current work"}),(0,b.jsx)("h2",{children:"Active sessions"})]}),(0,b.jsx)(d.default,{href:`/agents/${encodeURIComponent(a)}/sessions`,children:"All sessions"})]}),(0,b.jsx)(l,{rows:c.current_work,empty:"No active work right now."})]}),(0,b.jsxs)("section",{className:"agent-panel",children:[(0,b.jsxs)("div",{className:"agent-panel-head",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"agent-eyebrow",children:"Recent activity"}),(0,b.jsx)("h2",{children:"Latest work"})]}),(0,b.jsx)(d.default,{href:`/agents/${encodeURIComponent(a)}/activity`,children:"View activity"})]}),c.recent_activity.length?(0,b.jsx)(h.ActivityList,{items:c.recent_activity,compact:!0}):(0,b.jsx)("p",{className:"agent-empty",children:"No operational activity yet."})]})]})]})}])}];
2
2
 
3
3
  //# sourceMappingURL=app_agents_%5Bid%5D_0sr4fdg._.js.map
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
7
7
  "static/chunks/0cz1d0mv5g_q7.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/0BJMiZPkEfFOd56nhl62e/_buildManifest.js",
11
- "static/0BJMiZPkEfFOd56nhl62e/_ssgManifest.js",
12
- "static/0BJMiZPkEfFOd56nhl62e/_clientMiddlewareManifest.js"
10
+ "static/92gsyY5d-nMkxJ7iQxKkY/_buildManifest.js",
11
+ "static/92gsyY5d-nMkxJ7iQxKkY/_ssgManifest.js",
12
+ "static/92gsyY5d-nMkxJ7iQxKkY/_clientMiddlewareManifest.js"
13
13
  ],
14
14
  "rootMainFiles": [
15
15
  "static/chunks/3s6nzrbk-8mnv.js",
@@ -1,5 +1,5 @@
1
1
  var R=require("./chunks/[turbopack]_runtime.js")("server/middleware.js")
2
- R.c("server/chunks/[externals]__1eaoma8._.js")
3
- R.c("server/chunks/[root-of-the-server]__00ntari._.js")
2
+ R.c("server/chunks/[externals]__0z3qnkl._.js")
3
+ R.c("server/chunks/[root-of-the-server]__1nf6z4s._.js")
4
4
  R.m(62395)
5
5
  module.exports=R.m(62395).exports
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en" class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/1ob-de9xo9m2e.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/3s6nzrbk-8mnv.js"/><script src="/_next/static/chunks/2mmpezlrfmbu5.js" async=""></script><script src="/_next/static/chunks/3g4px251sg85e.js" async=""></script><script src="/_next/static/chunks/3un1mb5bx4x8k.js" async=""></script><script src="/_next/static/chunks/turbopack-2yajevry3z_n6.js" async=""></script><script src="/_next/static/chunks/3fntmmi971322.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>Botmancers</title><meta name="description" content="Cloud-hosted AI teammate app"/><link rel="icon" href="/brand/botmancers-logo-filled-64.png" sizes="64x64" type="image/png"/><link rel="icon" href="/brand/botmancers-logo-filled-256.png" sizes="256x256" type="image/png"/><link rel="apple-touch-icon" href="/brand/botmancers-logo-filled-256.png" sizes="256x256" type="image/png"/><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body class="min-h-full flex flex-col"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/3s6nzrbk-8mnv.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/1ob-de9xo9m2e.css\",\"style\"]\n7:X\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1ob-de9xo9m2e.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/3fntmmi971322.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable h-full antialiased\",\"children\":[\"$\",\"body\",null,{\"className\":\"min-h-full flex flex-col\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1ob-de9xo9m2e.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"0BJMiZPkEfFOd56nhl62e\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[27201,[\"/_next/static/chunks/3fntmmi971322.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Botmancers\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Cloud-hosted AI teammate app\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/brand/botmancers-logo-filled-64.png\",\"sizes\":\"64x64\",\"type\":\"image/png\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/brand/botmancers-logo-filled-256.png\",\"sizes\":\"256x256\",\"type\":\"image/png\"}],[\"$\",\"link\",\"4\",{\"rel\":\"apple-touch-icon\",\"href\":\"/brand/botmancers-logo-filled-256.png\",\"sizes\":\"256x256\",\"type\":\"image/png\"}],[\"$\",\"$Ld\",\"5\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/17qi6hcgg0nlz.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/3s6nzrbk-8mnv.js"/><script src="/_next/static/chunks/2mmpezlrfmbu5.js" async=""></script><script src="/_next/static/chunks/3g4px251sg85e.js" async=""></script><script src="/_next/static/chunks/3un1mb5bx4x8k.js" async=""></script><script src="/_next/static/chunks/turbopack-2yajevry3z_n6.js" async=""></script><script src="/_next/static/chunks/3fntmmi971322.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>Botmancers</title><meta name="description" content="Cloud-hosted AI teammate app"/><link rel="icon" href="/brand/botmancers-logo-filled-64.png" sizes="64x64" type="image/png"/><link rel="icon" href="/brand/botmancers-logo-filled-256.png" sizes="256x256" type="image/png"/><link rel="apple-touch-icon" href="/brand/botmancers-logo-filled-256.png" sizes="256x256" type="image/png"/><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body class="min-h-full flex flex-col"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/3s6nzrbk-8mnv.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/17qi6hcgg0nlz.css\",\"style\"]\n7:X\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/17qi6hcgg0nlz.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/3fntmmi971322.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable h-full antialiased\",\"children\":[\"$\",\"body\",null,{\"className\":\"min-h-full flex flex-col\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/17qi6hcgg0nlz.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"92gsyY5d-nMkxJ7iQxKkY\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[27201,[\"/_next/static/chunks/3fntmmi971322.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Botmancers\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Cloud-hosted AI teammate app\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/brand/botmancers-logo-filled-64.png\",\"sizes\":\"64x64\",\"type\":\"image/png\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/brand/botmancers-logo-filled-256.png\",\"sizes\":\"256x256\",\"type\":\"image/png\"}],[\"$\",\"link\",\"4\",{\"rel\":\"apple-touch-icon\",\"href\":\"/brand/botmancers-logo-filled-256.png\",\"sizes\":\"256x256\",\"type\":\"image/png\"}],[\"$\",\"$Ld\",\"5\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/3s6nzrbk-8mnv.js"/><script src="/_next/static/chunks/2mmpezlrfmbu5.js" async=""></script><script src="/_next/static/chunks/3g4px251sg85e.js" async=""></script><script src="/_next/static/chunks/3un1mb5bx4x8k.js" async=""></script><script src="/_next/static/chunks/turbopack-2yajevry3z_n6.js" async=""></script><script src="/_next/static/chunks/3fntmmi971322.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/3s6nzrbk-8mnv.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\",1]\n7:X\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"0BJMiZPkEfFOd56nhl62e\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/3s6nzrbk-8mnv.js"/><script src="/_next/static/chunks/2mmpezlrfmbu5.js" async=""></script><script src="/_next/static/chunks/3g4px251sg85e.js" async=""></script><script src="/_next/static/chunks/3un1mb5bx4x8k.js" async=""></script><script src="/_next/static/chunks/turbopack-2yajevry3z_n6.js" async=""></script><script src="/_next/static/chunks/3fntmmi971322.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/3s6nzrbk-8mnv.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\",1]\n7:X\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"92gsyY5d-nMkxJ7iQxKkY\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
@@ -1 +1 @@
1
- self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"L296DnXdFrpRcob+VHSSa7TNjO8+g1cz1FZmIS1pKnI=\"\n}"
1
+ self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"v5RhLUD/gJXoDJgSOHrzzy2MMMbBmC3rLZIhVqeXhWQ=\"\n}"
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "node": {},
3
3
  "edge": {},
4
- "encryptionKey": "L296DnXdFrpRcob+VHSSa7TNjO8+g1cz1FZmIS1pKnI="
4
+ "encryptionKey": "v5RhLUD/gJXoDJgSOHrzzy2MMMbBmC3rLZIhVqeXhWQ="
5
5
  }
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,70925,8880,e=>{"use strict";var a=e.i(43476),n=e.i(71645),t=e.i(22016),s=e.i(18566),i=e.i(87303);let l={cursor:"/brand/harness/cursor.svg",claude:"/brand/harness/claude.svg",codex:"/brand/harness/codex.png",muse:"/brand/harness/muse.svg"};function r({src:e,className:n,size:t=16}){return(0,a.jsx)("span",{className:n?`harness-icon ${n}`:"harness-icon",style:{width:t,height:t},"aria-hidden":"true",children:(0,a.jsx)("img",{src:e,alt:"",width:t,height:t,draggable:!1})})}function c({agent:e,className:n,size:t=16}){let s=l[String(e??"")];return s?(0,a.jsx)(r,{src:s,className:n,size:t}):null}e.s(["HarnessIcon",0,c],8880);var o=e.i(3136);let d={unsupported:"not reported by provider",missing:"no data yet",expired:"expired",unparsable:"provider data unparsable",stale:"stale"},u=new Set(["claude","codex","muse"]);function p(e,a){let n=e.remainingPercent??0,t=Math.round(n),s=e.resetAt?`, resets ${new Date(e.resetAt).toLocaleString()}`:"";return{key:e.windowKey,label:a,kind:"known",remaining:t,rawRemaining:n,title:`${a}: ${t}% remaining${s}`}}function w(e,a,n){return{key:e,label:a,kind:"unknown",reason:n,title:`${a}: N/A (${d[n]})`}}function m(e,a,n,t){let s=e.find(e=>e.criticalRole===a)??null;return s&&null===s.unavailableReason&&null!==s.remainingPercent?p(s,n):s?.unavailableReason?w(s.windowKey,n,s.unavailableReason):w(`missing-${n}`,n,t??"missing")}function h(e){if("cursor"===e.runtime){let a=e.windows.find(e=>"billing_cycle"===e.windowKey)??null;return a&&null===a.unavailableReason&&null!==a.remainingPercent?[p(a,"1M")]:a?.unavailableReason?[w(a.windowKey,"1M",a.unavailableReason)]:[w("missing-1M","1M",e.unavailableReason??"missing")]}return u.has(e.runtime)?[m(e.windows,"five_hour","5H",e.unavailableReason),m(e.windows,"weekly","1W",e.unavailableReason)]:[]}function g({row:e}){var n;if("unknown"===e.kind)return(0,a.jsxs)("span",{className:"topbar-capacity-window is-unknown","data-window":e.label,"data-window-known":"false",title:e.title,children:[(0,a.jsx)("span",{className:"topbar-capacity-window-label",children:e.label}),(0,a.jsx)("span",{children:"N/A"})]});let t=(n=e.rawRemaining)<10?"critical":n<30?"warning":"normal";return(0,a.jsxs)("span",{className:`topbar-capacity-window is-${t}`,"data-window":e.label,"data-window-known":"true","data-severity":t,title:e.title,children:[(0,a.jsx)("span",{className:"topbar-capacity-window-label",children:e.label}),(0,a.jsxs)("span",{children:[e.remaining,"%"]})]})}function b({entry:e}){let n=h(e),t=n.some(e=>"known"===e.kind),s=n.some(e=>"known"===e.kind&&0===e.rawRemaining),i=(0,o.agentLabel)(e.runtime)||e.runtime;return(0,a.jsxs)("span",{className:s?"topbar-capacity-runtime is-exhausted":"topbar-capacity-runtime","data-testid":`topbar-capacity-${e.runtime}`,"data-known":t?"true":"false","data-exhausted":s?"true":"false",role:"group","aria-label":`${i} capacity`,title:n.map(e=>e.title).join("; ")||`${i}: N/A`,children:[(0,a.jsx)(c,{agent:e.runtime,size:16}),0===n.length?(0,a.jsx)("span",{className:"topbar-capacity-window is-unknown",children:"N/A"}):(0,a.jsx)("span",{className:"topbar-capacity-windows",children:n.map(e=>(0,a.jsx)(g,{row:e},e.key))})]})}function v({state:e}){if("loading"===e.status)return(0,a.jsxs)("div",{className:"topbar-capacity","data-testid":"topbar-capacity","data-status":"loading",title:"Runtime capacity is loading",children:[(0,a.jsx)("span",{className:"topbar-capacity-eyebrow",children:"Capacity"}),(0,a.jsx)("span",{"aria-live":"polite",children:"loading…"})]});if("unavailable"===e.status)return(0,a.jsxs)("div",{className:"topbar-capacity","data-testid":"topbar-capacity","data-status":"unavailable",title:"Runtime capacity is unavailable",children:[(0,a.jsx)("span",{className:"topbar-capacity-eyebrow",children:"Capacity"}),(0,a.jsx)("span",{children:"unavailable"})]});let n=e.data.runtimes,t=0===n.length||n.every(e=>!h(e).some(e=>"known"===e.kind));return(0,a.jsxs)("div",{className:"topbar-capacity","data-testid":"topbar-capacity","data-status":t?"unknown":"ready",title:0===n.length?"No coding harness capacity reported":void 0,children:[(0,a.jsx)("span",{className:"topbar-capacity-eyebrow",children:"Capacity"}),0===n.length?(0,a.jsx)("span",{className:"topbar-capacity-empty",children:"N/A"}):n.map(e=>(0,a.jsx)(b,{entry:e},e.runtime))]})}function y({refreshMs:e=6e4}){let[t,s]=(0,n.useState)({status:"loading"});return(0,n.useEffect)(()=>{let a=!1,n=()=>{fetch("/api/runtime-capacity",{cache:"no-store"}).then(async e=>{if(!e.ok)throw Error("capacity request failed");return e.json()}).then(e=>{a||s({status:"ready",data:e})}).catch(()=>{a||s({status:"unavailable"})})};n();let t=window.setInterval(n,e);return()=>{a=!0,window.clearInterval(t)}},[e]),(0,a.jsx)(v,{state:t})}var x=e.i(89873),f=e.i(10718);let j=(0,n.createContext)(null),N=[{label:"Overview",segment:""},{label:"Sessions",segment:"sessions"},{label:"Conversations",segment:"conversations"},{label:"Slack",segment:"slack"},{label:"Activity",segment:"activity"},{label:"Config",segment:"config"}];e.s(["default",0,function({children:e}){let l=String((0,s.useParams)().id??""),r=(0,s.usePathname)(),d=(0,s.useRouter)(),u=(0,s.useSearchParams)(),[p,w]=(0,n.useState)([]),[m,h]=(0,n.useState)(null),[g,b]=(0,n.useState)(!0),[v,k]=(0,n.useState)(!1),[A,R]=(0,n.useState)(!1),[S,$]=(0,n.useState)(()=>{let e=Number(u.get("deleted"))||0;return e>0?(0,f.deletedStatusLine)(e):""}),[C,I]=(0,n.useState)({serverNow:0,fetchedAt:0}),[P,D]=(0,n.useState)(()=>Date.now()),K=(0,n.useCallback)(async e=>{try{let[a,n]=await Promise.all([fetch("/api/bots",{cache:"no-store"}),fetch(`/api/bots/${encodeURIComponent(l)}/overview`,{cache:"no-store"})]),t=a.ok?await a.json():[];if(e())return;w(Array.isArray(t)?t:[]);let s=Date.parse(a.headers.get("date")||"");if(I({serverNow:Number.isNaN(s)?Date.now():s,fetchedAt:Date.now()}),404===n.status){R(!0),h(null),k(!1);return}if(!n.ok)throw Error("overview request failed");let i=await n.json();if(e())return;h(i),R(!1),k(!1)}catch{e()||k(!0)}finally{e()||b(!1)}},[l]);(0,n.useEffect)(()=>{let e=!1,a=()=>e,n=window.setTimeout(()=>{K(a)},0),t=window.setInterval(()=>{K(a)},2e3),s=window.setInterval(()=>D(Date.now()),1e3);return()=>{e=!0,window.clearTimeout(n),window.clearInterval(t),window.clearInterval(s)}},[K]);let L=m?.agent,M=m?.runtime;return(0,a.jsx)(j.Provider,{value:{id:l,agents:p,overview:m,loading:g,error:v,notFound:A},children:(0,a.jsxs)("div",{className:"field agent-field",children:[(0,a.jsx)(x.default,{agents:p,activeAgentId:l,beatClock:C,now:P,status:S,onAgentsChange:w,onNew:()=>d.push("/?new=1"),onManage:()=>d.push("/?manage=1"),onDeleted:e=>{$((0,f.deletedStatusLine)(e.length)),e.some(e=>e.id===l)&&d.replace(`/?deleted=${e.length}`)}}),(0,a.jsxs)("section",{className:"pane agent-pane",children:[(0,a.jsx)(y,{}),(0,a.jsxs)("header",{className:"agent-shell-header",children:[(0,a.jsxs)("div",{className:"agent-shell-identity",children:[L?(0,a.jsx)(i.default,{bot:L,size:48,title:`${L.name} avatar`}):null,(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"agent-shell-kicker",children:"Agent"}),(0,a.jsx)("h1",{children:L?.name??(g?"Loading…":"Unknown Agent")}),L?(0,a.jsx)("p",{children:L.role}):null]})]}),M?(0,a.jsxs)("div",{className:"agent-shell-runtime","aria-label":"Runtime and availability",children:[(0,a.jsx)("span",{className:M.available?"availability is-available":"availability is-blocked",children:M.available?"Available":"Needs setup"}),(0,a.jsxs)("span",{className:"agent-shell-runtime-line",children:[(0,a.jsx)(c,{agent:M.agent,size:14}),(0,a.jsxs)("span",{children:[(0,o.agentLabel)(M.agent)," · ",M.connection||"No connection"]})]})]}):null]}),(0,a.jsx)("nav",{className:"agent-tabs","aria-label":"Agent",children:N.map(e=>{let n=`/agents/${encodeURIComponent(l)}${e.segment?`/${e.segment}`:""}`,s=r===n;return(0,a.jsx)(t.default,{href:n,"aria-current":s?"page":void 0,children:e.label},e.label)})}),(0,a.jsx)("main",{className:"agent-content",children:e})]})]})})},"useAgentOverview",0,function(){let e=(0,n.useContext)(j);if(!e)throw Error("useAgentOverview must be used inside AgentShell");return e}],70925)}]);