@parall/daemon 1.60.0 → 1.61.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.
@@ -63536,6 +63536,21 @@ function attachmentEndpoints(apiBase) {
63536
63536
  };
63537
63537
  }
63538
63538
 
63539
+ // ts/sdk/dist/edge-endpoints.js
63540
+ var API_BASE = "/api/v1";
63541
+ var edgeEndpoints = {
63542
+ ORG_EDGE: (orgId) => `${API_BASE}/orgs/${orgId}/edge`,
63543
+ ORG_EDGE_CONNECT: (orgId) => `${API_BASE}/orgs/${orgId}/edge/connect`,
63544
+ ORG_EDGE_DEVICES: (orgId) => `${API_BASE}/orgs/${orgId}/edge/devices`,
63545
+ ORG_EDGE_DEVICE: (orgId, edgeId) => `${API_BASE}/orgs/${orgId}/edge/${edgeId}`,
63546
+ ORG_EDGE_DEVICE_UNREGISTER: (orgId, edgeId) => `${API_BASE}/orgs/${orgId}/edge/${edgeId}/unregister`,
63547
+ ORG_EDGE_ONBOARDING: (orgId) => `${API_BASE}/orgs/${orgId}/edge/onboarding`,
63548
+ ORG_EDGE_PROFILES: (orgId, edgeId) => `${API_BASE}/orgs/${orgId}/edge/${edgeId}/profiles`,
63549
+ ORG_EDGE_PROFILE_OPERATIONS: (orgId, edgeId) => `${API_BASE}/orgs/${orgId}/edge/${edgeId}/profile-operations`,
63550
+ ORG_EDGE_PROFILE_OPERATION: (orgId, edgeId, operationId) => `${API_BASE}/orgs/${orgId}/edge/${edgeId}/profile-operations/${operationId}`,
63551
+ ORG_EDGE_PROFILE_OPERATION_CONFIRM: (orgId, edgeId, operationId) => `${API_BASE}/orgs/${orgId}/edge/${edgeId}/profile-operations/${operationId}/confirm`
63552
+ };
63553
+
63539
63554
  // ts/sdk/dist/wechat-endpoints.js
63540
63555
  function wechatEndpoints(apiBase) {
63541
63556
  const agentBase = (orgId) => `${apiBase}/orgs/${orgId}/agents/me/wechat`;
@@ -63549,45 +63564,45 @@ function wechatEndpoints(apiBase) {
63549
63564
  }
63550
63565
 
63551
63566
  // ts/sdk/dist/constants.js
63552
- var API_BASE = "/api/v1";
63567
+ var API_BASE2 = "/api/v1";
63553
63568
  var WIKI_BASE = "/wiki/v1";
63554
63569
  var CLIP_BASE = "/clip/v1";
63555
63570
  var ENDPOINTS = {
63556
63571
  // Auth
63557
- AUTH_REGISTER: `${API_BASE}/auth/register`,
63558
- AUTH_LOGIN: `${API_BASE}/auth/login`,
63559
- AUTH_REFRESH: `${API_BASE}/auth/refresh`,
63560
- AUTH_LOGOUT: `${API_BASE}/auth/logout`,
63561
- AUTH_CHANGE_PASSWORD: `${API_BASE}/auth/change-password`,
63562
- AUTH_CHECK_EMAIL: `${API_BASE}/auth/check-email`,
63563
- AUTH_VERIFY_EMAIL: `${API_BASE}/auth/verify-email`,
63564
- AUTH_RESEND_CODE: `${API_BASE}/auth/resend-code`,
63565
- AUTH_FORGOT_PASSWORD: `${API_BASE}/auth/forgot-password`,
63566
- AUTH_RESET_PASSWORD: `${API_BASE}/auth/reset-password`,
63567
- AUTH_OAUTH_EXCHANGE: `${API_BASE}/auth/oauth/exchange`,
63572
+ AUTH_REGISTER: `${API_BASE2}/auth/register`,
63573
+ AUTH_LOGIN: `${API_BASE2}/auth/login`,
63574
+ AUTH_REFRESH: `${API_BASE2}/auth/refresh`,
63575
+ AUTH_LOGOUT: `${API_BASE2}/auth/logout`,
63576
+ AUTH_CHANGE_PASSWORD: `${API_BASE2}/auth/change-password`,
63577
+ AUTH_CHECK_EMAIL: `${API_BASE2}/auth/check-email`,
63578
+ AUTH_VERIFY_EMAIL: `${API_BASE2}/auth/verify-email`,
63579
+ AUTH_RESEND_CODE: `${API_BASE2}/auth/resend-code`,
63580
+ AUTH_FORGOT_PASSWORD: `${API_BASE2}/auth/forgot-password`,
63581
+ AUTH_RESET_PASSWORD: `${API_BASE2}/auth/reset-password`,
63582
+ AUTH_OAUTH_EXCHANGE: `${API_BASE2}/auth/oauth/exchange`,
63568
63583
  // Users
63569
- USERS_ME: `${API_BASE}/users/me`,
63570
- USER_AVATAR: `${API_BASE}/users/me/avatar`,
63571
- PERSONAL_API_KEYS: `${API_BASE}/users/me/api-keys`,
63572
- PERSONAL_API_KEY: (keyId) => `${API_BASE}/users/me/api-keys/${keyId}`,
63573
- USER: (id) => `${API_BASE}/users/${id}`,
63584
+ USERS_ME: `${API_BASE2}/users/me`,
63585
+ USER_AVATAR: `${API_BASE2}/users/me/avatar`,
63586
+ PERSONAL_API_KEYS: `${API_BASE2}/users/me/api-keys`,
63587
+ PERSONAL_API_KEY: (keyId) => `${API_BASE2}/users/me/api-keys/${keyId}`,
63588
+ USER: (id) => `${API_BASE2}/users/${id}`,
63574
63589
  // WebSocket ticket
63575
- WS_TICKET: `${API_BASE}/ws/ticket`,
63590
+ WS_TICKET: `${API_BASE2}/ws/ticket`,
63576
63591
  // Organizations (global)
63577
- ORGS: `${API_BASE}/orgs`,
63592
+ ORGS: `${API_BASE2}/orgs`,
63578
63593
  // Org-scoped
63579
- ORG: (orgId) => `${API_BASE}/orgs/${orgId}`,
63580
- ORG_MEMBERS: (orgId) => `${API_BASE}/orgs/${orgId}/members`,
63581
- ORG_MEMBERS_FORMER: (orgId) => `${API_BASE}/orgs/${orgId}/members/former`,
63582
- TEAMS: (orgId) => `${API_BASE}/orgs/${orgId}/teams`,
63583
- TEAM: (orgId, teamId) => `${API_BASE}/orgs/${orgId}/teams/${teamId}`,
63584
- TEAM_MEMBERS: (orgId, teamId) => `${API_BASE}/orgs/${orgId}/teams/${teamId}/members`,
63585
- TEAM_MEMBER: (orgId, teamId, userId) => `${API_BASE}/orgs/${orgId}/teams/${teamId}/members/${userId}`,
63586
- ORG_MEMBERS_ONLINE: (orgId) => `${API_BASE}/orgs/${orgId}/members/online`,
63587
- LLM_PROVIDERS: (orgId) => `${API_BASE}/orgs/${orgId}/llm-providers`,
63588
- LLM_PROVIDER: (orgId, providerId) => `${API_BASE}/orgs/${orgId}/llm-providers/${providerId}`,
63589
- ORG_LLM_MODELS: (orgId) => `${API_BASE}/orgs/${orgId}/llm-models`,
63590
- ORG_LLM_MODEL: (orgId, modelRowId) => `${API_BASE}/orgs/${orgId}/llm-models/${modelRowId}`,
63594
+ ORG: (orgId) => `${API_BASE2}/orgs/${orgId}`,
63595
+ ORG_MEMBERS: (orgId) => `${API_BASE2}/orgs/${orgId}/members`,
63596
+ ORG_MEMBERS_FORMER: (orgId) => `${API_BASE2}/orgs/${orgId}/members/former`,
63597
+ TEAMS: (orgId) => `${API_BASE2}/orgs/${orgId}/teams`,
63598
+ TEAM: (orgId, teamId) => `${API_BASE2}/orgs/${orgId}/teams/${teamId}`,
63599
+ TEAM_MEMBERS: (orgId, teamId) => `${API_BASE2}/orgs/${orgId}/teams/${teamId}/members`,
63600
+ TEAM_MEMBER: (orgId, teamId, userId) => `${API_BASE2}/orgs/${orgId}/teams/${teamId}/members/${userId}`,
63601
+ ORG_MEMBERS_ONLINE: (orgId) => `${API_BASE2}/orgs/${orgId}/members/online`,
63602
+ LLM_PROVIDERS: (orgId) => `${API_BASE2}/orgs/${orgId}/llm-providers`,
63603
+ LLM_PROVIDER: (orgId, providerId) => `${API_BASE2}/orgs/${orgId}/llm-providers/${providerId}`,
63604
+ ORG_LLM_MODELS: (orgId) => `${API_BASE2}/orgs/${orgId}/llm-models`,
63605
+ ORG_LLM_MODEL: (orgId, modelRowId) => `${API_BASE2}/orgs/${orgId}/llm-models/${modelRowId}`,
63591
63606
  /**
63592
63607
  * Platform catalog merged with this org's own model rows. Pass `runtime` to
63593
63608
  * filter org-added models to the ones that runtime can actually reach —
@@ -63600,226 +63615,226 @@ var ENDPOINTS = {
63600
63615
  if (includeModel)
63601
63616
  params.set("include_model", includeModel);
63602
63617
  const qs = params.toString();
63603
- return `${API_BASE}/orgs/${orgId}/models${qs ? `?${qs}` : ""}`;
63618
+ return `${API_BASE2}/orgs/${orgId}/models${qs ? `?${qs}` : ""}`;
63604
63619
  },
63605
- ORG_MEMBER: (orgId, userId) => `${API_BASE}/orgs/${orgId}/members/${userId}`,
63606
- ORG_MEMBER_CHATS: (orgId, memberId) => `${API_BASE}/orgs/${orgId}/members/${memberId}/chats`,
63607
- ORG_MEMBER_TASKS: (orgId, memberId) => `${API_BASE}/orgs/${orgId}/members/${memberId}/tasks`,
63620
+ ORG_MEMBER: (orgId, userId) => `${API_BASE2}/orgs/${orgId}/members/${userId}`,
63621
+ ORG_MEMBER_CHATS: (orgId, memberId) => `${API_BASE2}/orgs/${orgId}/members/${memberId}/chats`,
63622
+ ORG_MEMBER_TASKS: (orgId, memberId) => `${API_BASE2}/orgs/${orgId}/members/${memberId}/tasks`,
63608
63623
  // Org-scoped public profile (title / description). GET readable by every
63609
63624
  // active member; PATCH is CAS-guarded (expected_version).
63610
- ORG_MEMBER_PROFILE: (orgId, userId) => `${API_BASE}/orgs/${orgId}/members/${userId}/profile`,
63625
+ ORG_MEMBER_PROFILE: (orgId, userId) => `${API_BASE2}/orgs/${orgId}/members/${userId}/profile`,
63611
63626
  // Private agent Instructions — visibility gated server-side
63612
63627
  // (agent self + Human org admin/owner + the agent's manager). Never cached.
63613
- AGENT_INSTRUCTIONS: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/instructions`,
63628
+ AGENT_INSTRUCTIONS: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/instructions`,
63614
63629
  // Agent manager (agent-global relation, org-scoped authorization).
63615
63630
  // PATCH covers assign / transfer / renounce (manager_user_id null).
63616
- AGENT_MANAGER: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/manager`,
63617
- REF_SEARCH: (orgId) => `${API_BASE}/orgs/${orgId}/refs/search`,
63631
+ AGENT_MANAGER: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/manager`,
63632
+ REF_SEARCH: (orgId) => `${API_BASE2}/orgs/${orgId}/refs/search`,
63618
63633
  // Direct messages (org-scoped, atomic find-or-create + send)
63619
- DM: (orgId) => `${API_BASE}/orgs/${orgId}/dm`,
63634
+ DM: (orgId) => `${API_BASE2}/orgs/${orgId}/dm`,
63620
63635
  // Onboarding
63621
- SEED_ONBOARDING_DM: (orgId) => `${API_BASE}/orgs/${orgId}/seed-onboarding-dm`,
63622
- DISMISS_ONBOARDING: (orgId) => `${API_BASE}/orgs/${orgId}/dismiss-onboarding`,
63636
+ SEED_ONBOARDING_DM: (orgId) => `${API_BASE2}/orgs/${orgId}/seed-onboarding-dm`,
63637
+ DISMISS_ONBOARDING: (orgId) => `${API_BASE2}/orgs/${orgId}/dismiss-onboarding`,
63623
63638
  // Chats (org-scoped)
63624
- CHATS: (orgId) => `${API_BASE}/orgs/${orgId}/chats`,
63625
- CHATS_DISCOVERABLE: (orgId) => `${API_BASE}/orgs/${orgId}/chats/discoverable`,
63626
- CHAT: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}`,
63627
- CHAT_JOIN: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/join`,
63628
- CHAT_ARCHIVE: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/archive`,
63629
- CHAT_RESTORE: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/restore`,
63630
- CHAT_MEMBERS: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/members`,
63631
- CHAT_MEMBER: (orgId, chatId, userId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/members/${userId}`,
63632
- CHAT_TRANSFER_OWNERSHIP: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/transfer-ownership`,
63633
- CHAT_MESSAGES: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/messages`,
63639
+ CHATS: (orgId) => `${API_BASE2}/orgs/${orgId}/chats`,
63640
+ CHATS_DISCOVERABLE: (orgId) => `${API_BASE2}/orgs/${orgId}/chats/discoverable`,
63641
+ CHAT: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}`,
63642
+ CHAT_JOIN: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/join`,
63643
+ CHAT_ARCHIVE: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/archive`,
63644
+ CHAT_RESTORE: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/restore`,
63645
+ CHAT_MEMBERS: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/members`,
63646
+ CHAT_MEMBER: (orgId, chatId, userId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/members/${userId}`,
63647
+ CHAT_TRANSFER_OWNERSHIP: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/transfer-ownership`,
63648
+ CHAT_MESSAGES: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/messages`,
63634
63649
  // Messages (global, by message ID)
63635
- MESSAGE: (id) => `${API_BASE}/messages/${id}`,
63636
- MESSAGE_REPLIES: (id) => `${API_BASE}/messages/${id}/replies`,
63637
- MESSAGE_WATCH: (id) => `${API_BASE}/messages/${id}/watch`,
63638
- MESSAGE_WATCHERS: (id) => `${API_BASE}/messages/${id}/watchers`,
63639
- MESSAGE_WATCHING: (id) => `${API_BASE}/messages/${id}/watching`,
63650
+ MESSAGE: (id) => `${API_BASE2}/messages/${id}`,
63651
+ MESSAGE_REPLIES: (id) => `${API_BASE2}/messages/${id}/replies`,
63652
+ MESSAGE_WATCH: (id) => `${API_BASE2}/messages/${id}/watch`,
63653
+ MESSAGE_WATCHERS: (id) => `${API_BASE2}/messages/${id}/watchers`,
63654
+ MESSAGE_WATCHING: (id) => `${API_BASE2}/messages/${id}/watching`,
63640
63655
  /** Caller's attention levels across chats / threads / tasks. */
63641
- WATCHES: (orgId) => `${API_BASE}/orgs/${orgId}/watches`,
63642
- MESSAGE_REACTIONS: (id) => `${API_BASE}/messages/${id}/reactions`,
63643
- MESSAGE_REACTION: (id, emoji) => `${API_BASE}/messages/${id}/reactions/${encodeURIComponent(emoji)}`,
63656
+ WATCHES: (orgId) => `${API_BASE2}/orgs/${orgId}/watches`,
63657
+ MESSAGE_REACTIONS: (id) => `${API_BASE2}/messages/${id}/reactions`,
63658
+ MESSAGE_REACTION: (id, emoji) => `${API_BASE2}/messages/${id}/reactions/${encodeURIComponent(emoji)}`,
63644
63659
  // Upload (org-scoped)
63645
- ...attachmentEndpoints(API_BASE),
63660
+ ...attachmentEndpoints(API_BASE2),
63646
63661
  // Approval requests (org-scoped)
63647
- APPROVAL_REQUESTS: (orgId) => `${API_BASE}/orgs/${orgId}/approval-requests`,
63662
+ APPROVAL_REQUESTS: (orgId) => `${API_BASE2}/orgs/${orgId}/approval-requests`,
63648
63663
  // Approvals (global)
63649
- APPROVAL: (id) => `${API_BASE}/approvals/${id}`,
63650
- APPROVAL_DECIDE: (id) => `${API_BASE}/approvals/${id}/decide`,
63651
- APPROVAL_CANCEL: (id) => `${API_BASE}/approvals/${id}/cancel`,
63652
- APPROVALS_PENDING: `${API_BASE}/approvals/pending`,
63653
- APPROVALS_ACTIONS: `${API_BASE}/approvals/actions`,
63664
+ APPROVAL: (id) => `${API_BASE2}/approvals/${id}`,
63665
+ APPROVAL_DECIDE: (id) => `${API_BASE2}/approvals/${id}/decide`,
63666
+ APPROVAL_CANCEL: (id) => `${API_BASE2}/approvals/${id}/cancel`,
63667
+ APPROVALS_PENDING: `${API_BASE2}/approvals/pending`,
63668
+ APPROVALS_ACTIONS: `${API_BASE2}/approvals/actions`,
63654
63669
  // Agents (org-scoped)
63655
- AGENTS: (orgId) => `${API_BASE}/orgs/${orgId}/agents`,
63656
- AGENT: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}`,
63657
- AGENT_API_KEYS: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/api-keys`,
63658
- AGENT_API_KEY: (orgId, agentId, key) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/api-keys/${key}`,
63659
- AGENT_API_KEY_REGENERATE: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/api-keys/regenerate`,
63660
- AGENT_AVATAR: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/avatar`,
63661
- AGENT_ACTIVITY: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/activity`,
63662
- AGENT_MONITOR: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/monitor`,
63663
- AGENT_ME: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me`,
63664
- AGENT_REPLY_POLICY_CAPABILITY: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/reply-policy-capability`,
63665
- AGENT_NEW_SESSION: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/new-session`,
63666
- AGENT_DEEP_RESET: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/deep-reset`,
63667
- AGENT_SESSIONS: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/sessions`,
63668
- AGENT_SESSION: (orgId, agentId, sessionId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/sessions/${sessionId}`,
63669
- AGENT_SESSION_STEPS: (orgId, agentId, sessionId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/sessions/${sessionId}/steps`,
63670
- AGENT_SESSION_STEP: (orgId, agentId, sessionId, stepId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/sessions/${sessionId}/steps/${stepId}`,
63671
- AGENT_STEP_BY_ID: (orgId, stepId) => `${API_BASE}/orgs/${orgId}/agent-steps/${stepId}`,
63672
- AGENT_TASKS: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/tasks`,
63673
- AGENT_RUNTIME_AUTH: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/runtime-auth`,
63674
- AGENT_RUNTIME_AUTH_SESSIONS: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/runtime-auth-sessions`,
63675
- AGENT_RUNTIME_AUTH_SESSION_COMPLETE: (orgId, agentId, sessionId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/runtime-auth-sessions/${sessionId}/complete`,
63676
- AGENT_RUNTIME: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/runtime`,
63677
- AGENT_RUNTIME_UPGRADE: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/runtime/upgrade`,
63678
- AGENT_RUNTIME_AVAILABLE_TAGS: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/runtime/available-tags`,
63679
- AGENT_RUNTIME_RELEASE: (orgId, agentId, tag2) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/runtime/releases/${encodeURIComponent(tag2)}`,
63680
- AGENT_PROVIDER_CONFIG: (orgId, agentId) => `${API_BASE}/orgs/${orgId}/agents/${agentId}/provider-config`,
63670
+ AGENTS: (orgId) => `${API_BASE2}/orgs/${orgId}/agents`,
63671
+ AGENT: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}`,
63672
+ AGENT_API_KEYS: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/api-keys`,
63673
+ AGENT_API_KEY: (orgId, agentId, key) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/api-keys/${key}`,
63674
+ AGENT_API_KEY_REGENERATE: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/api-keys/regenerate`,
63675
+ AGENT_AVATAR: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/avatar`,
63676
+ AGENT_ACTIVITY: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/activity`,
63677
+ AGENT_MONITOR: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/monitor`,
63678
+ AGENT_ME: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me`,
63679
+ AGENT_REPLY_POLICY_CAPABILITY: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/reply-policy-capability`,
63680
+ AGENT_NEW_SESSION: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/new-session`,
63681
+ AGENT_DEEP_RESET: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/deep-reset`,
63682
+ AGENT_SESSIONS: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/sessions`,
63683
+ AGENT_SESSION: (orgId, agentId, sessionId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/sessions/${sessionId}`,
63684
+ AGENT_SESSION_STEPS: (orgId, agentId, sessionId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/sessions/${sessionId}/steps`,
63685
+ AGENT_SESSION_STEP: (orgId, agentId, sessionId, stepId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/sessions/${sessionId}/steps/${stepId}`,
63686
+ AGENT_STEP_BY_ID: (orgId, stepId) => `${API_BASE2}/orgs/${orgId}/agent-steps/${stepId}`,
63687
+ AGENT_TASKS: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/tasks`,
63688
+ AGENT_RUNTIME_AUTH: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/runtime-auth`,
63689
+ AGENT_RUNTIME_AUTH_SESSIONS: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/runtime-auth-sessions`,
63690
+ AGENT_RUNTIME_AUTH_SESSION_COMPLETE: (orgId, agentId, sessionId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/runtime-auth-sessions/${sessionId}/complete`,
63691
+ AGENT_RUNTIME: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/runtime`,
63692
+ AGENT_RUNTIME_UPGRADE: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/runtime/upgrade`,
63693
+ AGENT_RUNTIME_AVAILABLE_TAGS: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/runtime/available-tags`,
63694
+ AGENT_RUNTIME_RELEASE: (orgId, agentId, tag2) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/runtime/releases/${encodeURIComponent(tag2)}`,
63695
+ AGENT_PROVIDER_CONFIG: (orgId, agentId) => `${API_BASE2}/orgs/${orgId}/agents/${agentId}/provider-config`,
63681
63696
  // Machines (org-scoped)
63682
- MACHINES: (orgId) => `${API_BASE}/orgs/${orgId}/machines`,
63683
- MACHINE: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}`,
63684
- MACHINE_START: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/start`,
63685
- MACHINE_STOP: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/stop`,
63686
- MACHINE_STATUS: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/status`,
63687
- MACHINE_LOGS: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/logs`,
63688
- MACHINE_SPEC: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/spec`,
63689
- MACHINE_RESTART: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/restart`,
63690
- MACHINE_RESTART_ALL: (orgId) => `${API_BASE}/orgs/${orgId}/machines/restart-all`,
63697
+ MACHINES: (orgId) => `${API_BASE2}/orgs/${orgId}/machines`,
63698
+ MACHINE: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}`,
63699
+ MACHINE_START: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/start`,
63700
+ MACHINE_STOP: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/stop`,
63701
+ MACHINE_STATUS: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/status`,
63702
+ MACHINE_LOGS: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/logs`,
63703
+ MACHINE_SPEC: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/spec`,
63704
+ MACHINE_RESTART: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/restart`,
63705
+ MACHINE_RESTART_ALL: (orgId) => `${API_BASE2}/orgs/${orgId}/machines/restart-all`,
63691
63706
  // Daemon-mode Machine management (org-scoped, user auth).
63692
63707
  // POST creates a new daemon-mode Machine (daemon_mode=true always).
63693
63708
  // Attach/Detach bind an agent to/from a daemon Machine.
63694
- MACHINE_ATTACH_AGENT: (orgId, machineId, agentId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/agents/${agentId}`,
63695
- MACHINE_DETACH_AGENT: (orgId, machineId, agentId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/agents/${agentId}`,
63696
- MACHINE_WORKSPACE_STATES: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/workspace-states`,
63697
- MACHINE_AGENT_DAEMON_CONFIG: (orgId, machineId, agentId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/agents/${agentId}/daemon-config`,
63698
- MACHINE_AGENT_WORKSPACE_SETUP: (orgId, machineId, agentId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/agents/${agentId}/workspace/setup`,
63699
- MACHINE_LLM_SOURCE: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/llm-source`,
63700
- MACHINE_PROVIDER_ENABLED: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/provider-enabled`,
63701
- MACHINE_MANAGED_BY: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/managed-by`,
63702
- MACHINE_CAPABILITIES: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/capabilities`,
63703
- MACHINE_RUNTIME_AUTH: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/runtime-auth`,
63704
- MACHINE_KEYS: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/keys`,
63705
- MACHINE_KEY: (orgId, machineId, keyId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/keys/${keyId}`,
63706
- MACHINE_RUNTIME_AUTH_SESSIONS: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/runtime-auth-sessions`,
63707
- MACHINE_RUNTIME_AUTH_SESSION_COMPLETE: (orgId, machineId, sessionId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/runtime-auth-sessions/${sessionId}/complete`,
63708
- MACHINE_REQUEST_UPDATE: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/request-update`,
63709
- MACHINE_BROWSE: (orgId, machineId) => `${API_BASE}/orgs/${orgId}/machines/${machineId}/browse`,
63709
+ MACHINE_ATTACH_AGENT: (orgId, machineId, agentId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/agents/${agentId}`,
63710
+ MACHINE_DETACH_AGENT: (orgId, machineId, agentId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/agents/${agentId}`,
63711
+ MACHINE_WORKSPACE_STATES: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/workspace-states`,
63712
+ MACHINE_AGENT_DAEMON_CONFIG: (orgId, machineId, agentId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/agents/${agentId}/daemon-config`,
63713
+ MACHINE_AGENT_WORKSPACE_SETUP: (orgId, machineId, agentId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/agents/${agentId}/workspace/setup`,
63714
+ MACHINE_LLM_SOURCE: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/llm-source`,
63715
+ MACHINE_PROVIDER_ENABLED: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/provider-enabled`,
63716
+ MACHINE_MANAGED_BY: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/managed-by`,
63717
+ MACHINE_CAPABILITIES: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/capabilities`,
63718
+ MACHINE_RUNTIME_AUTH: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/runtime-auth`,
63719
+ MACHINE_KEYS: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/keys`,
63720
+ MACHINE_KEY: (orgId, machineId, keyId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/keys/${keyId}`,
63721
+ MACHINE_RUNTIME_AUTH_SESSIONS: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/runtime-auth-sessions`,
63722
+ MACHINE_RUNTIME_AUTH_SESSION_COMPLETE: (orgId, machineId, sessionId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/runtime-auth-sessions/${sessionId}/complete`,
63723
+ MACHINE_REQUEST_UPDATE: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/request-update`,
63724
+ MACHINE_BROWSE: (orgId, machineId) => `${API_BASE2}/orgs/${orgId}/machines/${machineId}/browse`,
63710
63725
  // Machine self-control-plane (mck_-scoped). The bearer token implicitly
63711
63726
  // identifies the Machine, so there is no `:mid` URL parameter — these are
63712
63727
  // "self" routes called by the daemon for its own host.
63713
- MACHINES_ME: `${API_BASE}/machines/me`,
63714
- MACHINES_ME_AGENTS: `${API_BASE}/machines/me/agents`,
63715
- MACHINES_ME_HEALTH: `${API_BASE}/machines/me/health`,
63716
- MACHINES_ME_CLIPS: `${API_BASE}/machines/me/clips`,
63717
- MACHINES_ME_BROWSER_PROFILES: `${API_BASE}/machines/me/browser-profiles`,
63718
- MACHINES_ME_BROWSER_PROFILE_STATUS: (profileId) => `${API_BASE}/machines/me/browser-profiles/${profileId}/status`,
63719
- MACHINES_ME_AGENT_LAUNCH_CREDENTIAL: (agentId) => `${API_BASE}/machines/me/agents/${agentId}/launch-credential`,
63720
- MACHINES_ME_AGENT_WORKSPACE_STATE: (agentId) => `${API_BASE}/machines/me/agents/${agentId}/workspace-state`,
63721
- MACHINES_ME_WS_TICKET: `${API_BASE}/machines/me/ws/ticket`,
63722
- MACHINES_ME_BROWSE_RESPONSE: (requestId) => `${API_BASE}/machines/me/browse-response/${requestId}`,
63728
+ MACHINES_ME: `${API_BASE2}/machines/me`,
63729
+ MACHINES_ME_AGENTS: `${API_BASE2}/machines/me/agents`,
63730
+ MACHINES_ME_HEALTH: `${API_BASE2}/machines/me/health`,
63731
+ MACHINES_ME_CLIPS: `${API_BASE2}/machines/me/clips`,
63732
+ MACHINES_ME_BROWSER_PROFILES: `${API_BASE2}/machines/me/browser-profiles`,
63733
+ MACHINES_ME_BROWSER_PROFILE_STATUS: (profileId) => `${API_BASE2}/machines/me/browser-profiles/${profileId}/status`,
63734
+ MACHINES_ME_AGENT_LAUNCH_CREDENTIAL: (agentId) => `${API_BASE2}/machines/me/agents/${agentId}/launch-credential`,
63735
+ MACHINES_ME_AGENT_WORKSPACE_STATE: (agentId) => `${API_BASE2}/machines/me/agents/${agentId}/workspace-state`,
63736
+ MACHINES_ME_WS_TICKET: `${API_BASE2}/machines/me/ws/ticket`,
63737
+ MACHINES_ME_BROWSE_RESPONSE: (requestId) => `${API_BASE2}/machines/me/browse-response/${requestId}`,
63723
63738
  // Hosted browser live-viewer control plane (api-server, NOT clip-service):
63724
63739
  // the web client drives WebRTC signaling + tab nav through VIEWER_COMMAND;
63725
63740
  // api-server brokers each command to the host daemon via the machine:{id}
63726
63741
  // request/reply bridge (mirrors filesystem browse), and the daemon replies on
63727
63742
  // VIEWER_RESPONSE. See docs/engineering-design/hosted-browser-provider-design.md.
63728
- MACHINES_ME_BROWSER_PROFILE_VIEWER_RESPONSE: (requestId) => `${API_BASE}/machines/me/browser-profiles/viewer-response/${requestId}`,
63743
+ MACHINES_ME_BROWSER_PROFILE_VIEWER_RESPONSE: (requestId) => `${API_BASE2}/machines/me/browser-profiles/viewer-response/${requestId}`,
63729
63744
  // Tasks (org-scoped)
63730
- TASKS: (orgId) => `${API_BASE}/orgs/${orgId}/tasks`,
63731
- TASK_SUBTASK_SUMMARY: (orgId) => `${API_BASE}/orgs/${orgId}/tasks/subtask-summary`,
63732
- TASK: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}`,
63733
- TASK_MOVE: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/move`,
63734
- TASK_ARCHIVE: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/archive`,
63735
- TASK_RESTORE: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/restore`,
63736
- TASK_WATCH: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/watch`,
63737
- TASK_WATCHERS: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/watchers`,
63738
- TASK_SUBSCRIBER: (orgId, taskId, userId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/subscribers/${userId}`,
63739
- TASK_SUBTASKS: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/subtasks`,
63740
- TASK_RELATIONS: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/relations`,
63741
- TASK_RELATION: (orgId, taskId, relId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/relations/${relId}`,
63742
- TASK_RELATIONS_BY_TARGET: (orgId) => `${API_BASE}/orgs/${orgId}/task-relations`,
63743
- TASK_COMMENTS: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/comments`,
63744
- TASK_COMMENT: (orgId, taskId, commentId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/comments/${commentId}`,
63745
- TASK_ACTIVITIES: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/activities`,
63746
- TASK_LABELS: (orgId, taskId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/labels`,
63747
- TASK_LABEL: (orgId, taskId, labelId) => `${API_BASE}/orgs/${orgId}/tasks/${taskId}/labels/${labelId}`,
63745
+ TASKS: (orgId) => `${API_BASE2}/orgs/${orgId}/tasks`,
63746
+ TASK_SUBTASK_SUMMARY: (orgId) => `${API_BASE2}/orgs/${orgId}/tasks/subtask-summary`,
63747
+ TASK: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}`,
63748
+ TASK_MOVE: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/move`,
63749
+ TASK_ARCHIVE: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/archive`,
63750
+ TASK_RESTORE: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/restore`,
63751
+ TASK_WATCH: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/watch`,
63752
+ TASK_WATCHERS: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/watchers`,
63753
+ TASK_SUBSCRIBER: (orgId, taskId, userId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/subscribers/${userId}`,
63754
+ TASK_SUBTASKS: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/subtasks`,
63755
+ TASK_RELATIONS: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/relations`,
63756
+ TASK_RELATION: (orgId, taskId, relId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/relations/${relId}`,
63757
+ TASK_RELATIONS_BY_TARGET: (orgId) => `${API_BASE2}/orgs/${orgId}/task-relations`,
63758
+ TASK_COMMENTS: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/comments`,
63759
+ TASK_COMMENT: (orgId, taskId, commentId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/comments/${commentId}`,
63760
+ TASK_ACTIVITIES: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/activities`,
63761
+ TASK_LABELS: (orgId, taskId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/labels`,
63762
+ TASK_LABEL: (orgId, taskId, labelId) => `${API_BASE2}/orgs/${orgId}/tasks/${taskId}/labels/${labelId}`,
63748
63763
  // Labels (org-scoped vocabulary; writes are admin-gated)
63749
- LABELS: (orgId) => `${API_BASE}/orgs/${orgId}/labels`,
63750
- LABEL: (orgId, labelId) => `${API_BASE}/orgs/${orgId}/labels/${labelId}`,
63764
+ LABELS: (orgId) => `${API_BASE2}/orgs/${orgId}/labels`,
63765
+ LABEL: (orgId, labelId) => `${API_BASE2}/orgs/${orgId}/labels/${labelId}`,
63751
63766
  // Projects (org-scoped)
63752
- PROJECTS: (orgId) => `${API_BASE}/orgs/${orgId}/projects`,
63753
- PROJECT_TASK_SUMMARY: (orgId) => `${API_BASE}/orgs/${orgId}/projects/task-summary`,
63754
- PROJECT: (orgId, projectId) => `${API_BASE}/orgs/${orgId}/projects/${projectId}`,
63755
- PROJECT_MEMBERS: (orgId, projectId) => `${API_BASE}/orgs/${orgId}/projects/${projectId}/members`,
63756
- PROJECT_READERS: (orgId, projectId) => `${API_BASE}/orgs/${orgId}/projects/${projectId}/readers`,
63757
- PROJECT_LIBRARY: (orgId) => `${API_BASE}/orgs/${orgId}/projects/library`,
63758
- PROJECT_JOIN: (orgId, projectId) => `${API_BASE}/orgs/${orgId}/projects/${projectId}/join`,
63759
- PROJECT_JOIN_REQUESTS: (orgId, projectId) => `${API_BASE}/orgs/${orgId}/projects/${projectId}/join-requests`,
63767
+ PROJECTS: (orgId) => `${API_BASE2}/orgs/${orgId}/projects`,
63768
+ PROJECT_TASK_SUMMARY: (orgId) => `${API_BASE2}/orgs/${orgId}/projects/task-summary`,
63769
+ PROJECT: (orgId, projectId) => `${API_BASE2}/orgs/${orgId}/projects/${projectId}`,
63770
+ PROJECT_MEMBERS: (orgId, projectId) => `${API_BASE2}/orgs/${orgId}/projects/${projectId}/members`,
63771
+ PROJECT_READERS: (orgId, projectId) => `${API_BASE2}/orgs/${orgId}/projects/${projectId}/readers`,
63772
+ PROJECT_LIBRARY: (orgId) => `${API_BASE2}/orgs/${orgId}/projects/library`,
63773
+ PROJECT_JOIN: (orgId, projectId) => `${API_BASE2}/orgs/${orgId}/projects/${projectId}/join`,
63774
+ PROJECT_JOIN_REQUESTS: (orgId, projectId) => `${API_BASE2}/orgs/${orgId}/projects/${projectId}/join-requests`,
63760
63775
  // subject is a bare user ID or a bare team ID; both are path-segment safe.
63761
- PROJECT_MEMBER: (orgId, projectId, subject) => `${API_BASE}/orgs/${orgId}/projects/${projectId}/members/${subject}`,
63776
+ PROJECT_MEMBER: (orgId, projectId, subject) => `${API_BASE2}/orgs/${orgId}/projects/${projectId}/members/${subject}`,
63762
63777
  // Schedules (org-scoped, platform time trigger primitive)
63763
- SCHEDULES: (orgId) => `${API_BASE}/orgs/${orgId}/schedules`,
63764
- SCHEDULE: (orgId, id) => `${API_BASE}/orgs/${orgId}/schedules/${id}`,
63765
- SCHEDULE_PAUSE: (orgId, id) => `${API_BASE}/orgs/${orgId}/schedules/${id}/pause`,
63766
- SCHEDULE_RESUME: (orgId, id) => `${API_BASE}/orgs/${orgId}/schedules/${id}/resume`,
63767
- SCHEDULE_CANCEL: (orgId, id) => `${API_BASE}/orgs/${orgId}/schedules/${id}/cancel`,
63768
- SCHEDULE_RUNS: (orgId, id) => `${API_BASE}/orgs/${orgId}/schedules/${id}/runs`,
63769
- SCHEDULE_RUN: (orgId, runId) => `${API_BASE}/orgs/${orgId}/schedule_runs/${runId}`,
63778
+ SCHEDULES: (orgId) => `${API_BASE2}/orgs/${orgId}/schedules`,
63779
+ SCHEDULE: (orgId, id) => `${API_BASE2}/orgs/${orgId}/schedules/${id}`,
63780
+ SCHEDULE_PAUSE: (orgId, id) => `${API_BASE2}/orgs/${orgId}/schedules/${id}/pause`,
63781
+ SCHEDULE_RESUME: (orgId, id) => `${API_BASE2}/orgs/${orgId}/schedules/${id}/resume`,
63782
+ SCHEDULE_CANCEL: (orgId, id) => `${API_BASE2}/orgs/${orgId}/schedules/${id}/cancel`,
63783
+ SCHEDULE_RUNS: (orgId, id) => `${API_BASE2}/orgs/${orgId}/schedules/${id}/runs`,
63784
+ SCHEDULE_RUN: (orgId, runId) => `${API_BASE2}/orgs/${orgId}/schedule_runs/${runId}`,
63770
63785
  // External triggers (org-scoped incoming integration primitive)
63771
- EXTERNAL_CONNECTIONS: (orgId) => `${API_BASE}/orgs/${orgId}/external-connections`,
63772
- EXTERNAL_CONNECTION: (orgId, connectionId) => `${API_BASE}/orgs/${orgId}/external-connections/${connectionId}`,
63773
- EXTERNAL_CONNECTION_INGRESS_TOKEN_REGENERATE: (orgId, connectionId) => `${API_BASE}/orgs/${orgId}/external-connections/${connectionId}/ingress-token/regenerate`,
63774
- EXTERNAL_TRIGGER_SCHEMA: (orgId, connectionId) => `${API_BASE}/orgs/${orgId}/external-connections/${connectionId}/trigger-schema`,
63775
- EXTERNAL_INGRESS_EVENTS: (orgId) => `${API_BASE}/orgs/${orgId}/external-ingress-events`,
63776
- EXTERNAL_INGRESS_EVENT: (orgId, eventId) => `${API_BASE}/orgs/${orgId}/external-ingress-events/${eventId}`,
63777
- EXTERNAL_TRIGGERS: (orgId) => `${API_BASE}/orgs/${orgId}/external-triggers`,
63778
- EXTERNAL_TRIGGER: (orgId, triggerId) => `${API_BASE}/orgs/${orgId}/external-triggers/${triggerId}`,
63779
- EXTERNAL_TRIGGER_RUNS: (orgId) => `${API_BASE}/orgs/${orgId}/external-trigger-runs`,
63780
- EXTERNAL_TRIGGER_RUN: (orgId, runId) => `${API_BASE}/orgs/${orgId}/external-trigger-runs/${runId}`,
63786
+ EXTERNAL_CONNECTIONS: (orgId) => `${API_BASE2}/orgs/${orgId}/external-connections`,
63787
+ EXTERNAL_CONNECTION: (orgId, connectionId) => `${API_BASE2}/orgs/${orgId}/external-connections/${connectionId}`,
63788
+ EXTERNAL_CONNECTION_INGRESS_TOKEN_REGENERATE: (orgId, connectionId) => `${API_BASE2}/orgs/${orgId}/external-connections/${connectionId}/ingress-token/regenerate`,
63789
+ EXTERNAL_TRIGGER_SCHEMA: (orgId, connectionId) => `${API_BASE2}/orgs/${orgId}/external-connections/${connectionId}/trigger-schema`,
63790
+ EXTERNAL_INGRESS_EVENTS: (orgId) => `${API_BASE2}/orgs/${orgId}/external-ingress-events`,
63791
+ EXTERNAL_INGRESS_EVENT: (orgId, eventId) => `${API_BASE2}/orgs/${orgId}/external-ingress-events/${eventId}`,
63792
+ EXTERNAL_TRIGGERS: (orgId) => `${API_BASE2}/orgs/${orgId}/external-triggers`,
63793
+ EXTERNAL_TRIGGER: (orgId, triggerId) => `${API_BASE2}/orgs/${orgId}/external-triggers/${triggerId}`,
63794
+ EXTERNAL_TRIGGER_RUNS: (orgId) => `${API_BASE2}/orgs/${orgId}/external-trigger-runs`,
63795
+ EXTERNAL_TRIGGER_RUN: (orgId, runId) => `${API_BASE2}/orgs/${orgId}/external-trigger-runs/${runId}`,
63781
63796
  // External IM channel (org-scoped, platform-mediated Feishu/Slack)
63782
- CHANNEL_CONNECTIONS: (orgId) => `${API_BASE}/orgs/${orgId}/channel-connections`,
63783
- CHANNEL_CONNECTION: (orgId, connectionId) => `${API_BASE}/orgs/${orgId}/channel-connections/${connectionId}`,
63784
- CHANNEL_CONNECTION_CREDENTIALS: (orgId, connectionId) => `${API_BASE}/orgs/${orgId}/channel-connections/${connectionId}/credentials`,
63785
- CHANNEL_CONNECTION_INGRESS_TOKEN_REGENERATE: (orgId, connectionId) => `${API_BASE}/orgs/${orgId}/channel-connections/${connectionId}/ingress-token/regenerate`,
63786
- CHANNEL_CONNECTION_CONVERSATIONS: (orgId, connectionId) => `${API_BASE}/orgs/${orgId}/channel-connections/${connectionId}/conversations`,
63787
- CHANNEL_CONVERSATION: (orgId, conversationId) => `${API_BASE}/orgs/${orgId}/channel-conversations/${conversationId}`,
63788
- CHANNEL_CONVERSATION_MESSAGES: (orgId, conversationId) => `${API_BASE}/orgs/${orgId}/channel-conversations/${conversationId}/messages`,
63789
- CHANNEL_CONVERSATION_SESSION: (orgId, conversationId) => `${API_BASE}/orgs/${orgId}/channel-conversations/${conversationId}/session`,
63790
- CHANNEL_CONVERSATION_ATTENTION: (orgId, conversationId) => `${API_BASE}/orgs/${orgId}/channel-conversations/${conversationId}/attention`,
63791
- CHANNEL_MESSAGE: (orgId, messageId) => `${API_BASE}/orgs/${orgId}/channel-messages/${messageId}`,
63792
- CHANNEL_PROVISIONING: (orgId) => `${API_BASE}/orgs/${orgId}/channel-provisioning`,
63793
- CHANNEL_SLACK_MANIFEST_LINK: (orgId) => `${API_BASE}/orgs/${orgId}/channel-provisioning/slack/manifest-link`,
63794
- CHANNEL_PROVISIONING_SESSION: (orgId, sessionId) => `${API_BASE}/orgs/${orgId}/channel-provisioning/${sessionId}`,
63795
- CHANNEL_PROVISIONING_CANCEL: (orgId, sessionId) => `${API_BASE}/orgs/${orgId}/channel-provisioning/${sessionId}/cancel`,
63797
+ CHANNEL_CONNECTIONS: (orgId) => `${API_BASE2}/orgs/${orgId}/channel-connections`,
63798
+ CHANNEL_CONNECTION: (orgId, connectionId) => `${API_BASE2}/orgs/${orgId}/channel-connections/${connectionId}`,
63799
+ CHANNEL_CONNECTION_CREDENTIALS: (orgId, connectionId) => `${API_BASE2}/orgs/${orgId}/channel-connections/${connectionId}/credentials`,
63800
+ CHANNEL_CONNECTION_INGRESS_TOKEN_REGENERATE: (orgId, connectionId) => `${API_BASE2}/orgs/${orgId}/channel-connections/${connectionId}/ingress-token/regenerate`,
63801
+ CHANNEL_CONNECTION_CONVERSATIONS: (orgId, connectionId) => `${API_BASE2}/orgs/${orgId}/channel-connections/${connectionId}/conversations`,
63802
+ CHANNEL_CONVERSATION: (orgId, conversationId) => `${API_BASE2}/orgs/${orgId}/channel-conversations/${conversationId}`,
63803
+ CHANNEL_CONVERSATION_MESSAGES: (orgId, conversationId) => `${API_BASE2}/orgs/${orgId}/channel-conversations/${conversationId}/messages`,
63804
+ CHANNEL_CONVERSATION_SESSION: (orgId, conversationId) => `${API_BASE2}/orgs/${orgId}/channel-conversations/${conversationId}/session`,
63805
+ CHANNEL_CONVERSATION_ATTENTION: (orgId, conversationId) => `${API_BASE2}/orgs/${orgId}/channel-conversations/${conversationId}/attention`,
63806
+ CHANNEL_MESSAGE: (orgId, messageId) => `${API_BASE2}/orgs/${orgId}/channel-messages/${messageId}`,
63807
+ CHANNEL_PROVISIONING: (orgId) => `${API_BASE2}/orgs/${orgId}/channel-provisioning`,
63808
+ CHANNEL_SLACK_MANIFEST_LINK: (orgId) => `${API_BASE2}/orgs/${orgId}/channel-provisioning/slack/manifest-link`,
63809
+ CHANNEL_PROVISIONING_SESSION: (orgId, sessionId) => `${API_BASE2}/orgs/${orgId}/channel-provisioning/${sessionId}`,
63810
+ CHANNEL_PROVISIONING_CANCEL: (orgId, sessionId) => `${API_BASE2}/orgs/${orgId}/channel-provisioning/${sessionId}/cancel`,
63796
63811
  // Tier-B platform verb (agent-only): send one message as the bound bot.
63797
- CHANNEL_SEND: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/channel-send`,
63812
+ CHANNEL_SEND: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/channel-send`,
63798
63813
  // Tier-B read verbs (agent-only): workspace visibility as the bot sees it.
63799
- SLACK_CHANNELS: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/slack/channels`,
63800
- SLACK_USERS: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/slack/users`,
63801
- SLACK_HISTORY: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/slack/history`,
63802
- SLACK_MEMBERS: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/slack/members`,
63803
- SLACK_STATUS: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/slack/status`,
63804
- SLACK_FILE: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/slack/file`,
63805
- SLACK_FILES: (orgId) => `${API_BASE}/orgs/${orgId}/agents/me/slack/files`,
63814
+ SLACK_CHANNELS: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/slack/channels`,
63815
+ SLACK_USERS: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/slack/users`,
63816
+ SLACK_HISTORY: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/slack/history`,
63817
+ SLACK_MEMBERS: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/slack/members`,
63818
+ SLACK_STATUS: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/slack/status`,
63819
+ SLACK_FILE: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/slack/file`,
63820
+ SLACK_FILES: (orgId) => `${API_BASE2}/orgs/${orgId}/agents/me/slack/files`,
63806
63821
  // WeChat tier-B read verbs (agent-only; internal research preview).
63807
- ...wechatEndpoints(API_BASE),
63822
+ ...wechatEndpoints(API_BASE2),
63808
63823
  // Invitations (org-scoped, admin)
63809
- ORG_INVITATIONS: (orgId) => `${API_BASE}/orgs/${orgId}/invitations`,
63810
- ORG_INVITATION: (orgId, invId) => `${API_BASE}/orgs/${orgId}/invitations/${invId}`,
63811
- ORG_INVITATION_RESEND: (orgId, invId) => `${API_BASE}/orgs/${orgId}/invitations/${invId}/resend`,
63824
+ ORG_INVITATIONS: (orgId) => `${API_BASE2}/orgs/${orgId}/invitations`,
63825
+ ORG_INVITATION: (orgId, invId) => `${API_BASE2}/orgs/${orgId}/invitations/${invId}`,
63826
+ ORG_INVITATION_RESEND: (orgId, invId) => `${API_BASE2}/orgs/${orgId}/invitations/${invId}/resend`,
63812
63827
  // Invitations (invitee)
63813
- MY_INVITATIONS: `${API_BASE}/invitations/pending`,
63814
- INVITATION_ACCEPT: (id) => `${API_BASE}/invitations/${id}/accept`,
63815
- INVITATION_DECLINE: (id) => `${API_BASE}/invitations/${id}/decline`,
63816
- INVITATION_BY_TOKEN: (token) => `${API_BASE}/invitations/by-token/${token}`,
63828
+ MY_INVITATIONS: `${API_BASE2}/invitations/pending`,
63829
+ INVITATION_ACCEPT: (id) => `${API_BASE2}/invitations/${id}/accept`,
63830
+ INVITATION_DECLINE: (id) => `${API_BASE2}/invitations/${id}/decline`,
63831
+ INVITATION_BY_TOKEN: (token) => `${API_BASE2}/invitations/by-token/${token}`,
63817
63832
  // Org-level shareable invite link
63818
- ORG_INVITE_LINK: (orgId) => `${API_BASE}/orgs/${orgId}/invite-link`,
63819
- ORG_INVITE_LINK_REGENERATE: (orgId) => `${API_BASE}/orgs/${orgId}/invite-link/regenerate`,
63820
- ORG_INVITE_LINK_JOIN_REQUESTS: (orgId) => `${API_BASE}/orgs/${orgId}/invite-link/join-requests`,
63821
- ORG_INVITE_LINK_JOIN_REQUEST_DECIDE: (orgId, jrId) => `${API_BASE}/orgs/${orgId}/invite-link/join-requests/${jrId}/decide`,
63822
- INVITE_LINK_JOIN: `${API_BASE}/invite-link/join`,
63833
+ ORG_INVITE_LINK: (orgId) => `${API_BASE2}/orgs/${orgId}/invite-link`,
63834
+ ORG_INVITE_LINK_REGENERATE: (orgId) => `${API_BASE2}/orgs/${orgId}/invite-link/regenerate`,
63835
+ ORG_INVITE_LINK_JOIN_REQUESTS: (orgId) => `${API_BASE2}/orgs/${orgId}/invite-link/join-requests`,
63836
+ ORG_INVITE_LINK_JOIN_REQUEST_DECIDE: (orgId, jrId) => `${API_BASE2}/orgs/${orgId}/invite-link/join-requests/${jrId}/decide`,
63837
+ INVITE_LINK_JOIN: `${API_BASE2}/invite-link/join`,
63823
63838
  // Wikis (org-scoped, served by wiki-service)
63824
63839
  WIKIS: (orgId) => `${WIKI_BASE}/orgs/${orgId}/wikis`,
63825
63840
  // Recycle bin — soft-deleted wikis (owner only). Must precede WIKI in the
@@ -63874,86 +63889,86 @@ var ENDPOINTS = {
63874
63889
  WIKI_OPERATIONS: (orgId, wikiId) => `${WIKI_BASE}/orgs/${orgId}/wikis/${wikiId}/operations`,
63875
63890
  WIKI_OPERATION_REVERT: (orgId, wikiId, opId) => `${WIKI_BASE}/orgs/${orgId}/wikis/${wikiId}/operations/${opId}/revert`,
63876
63891
  // Unified Comments (org-scoped, api-server)
63877
- COMMENTS: (orgId) => `${API_BASE}/orgs/${orgId}/comments`,
63878
- COMMENT: (orgId, commentId) => `${API_BASE}/orgs/${orgId}/comments/${commentId}`,
63879
- COMMENT_RESOLVE: (orgId, commentId) => `${API_BASE}/orgs/${orgId}/comments/${commentId}:resolve`,
63880
- COMMENT_REOPEN: (orgId, commentId) => `${API_BASE}/orgs/${orgId}/comments/${commentId}:reopen`,
63892
+ COMMENTS: (orgId) => `${API_BASE2}/orgs/${orgId}/comments`,
63893
+ COMMENT: (orgId, commentId) => `${API_BASE2}/orgs/${orgId}/comments/${commentId}`,
63894
+ COMMENT_RESOLVE: (orgId, commentId) => `${API_BASE2}/orgs/${orgId}/comments/${commentId}:resolve`,
63895
+ COMMENT_REOPEN: (orgId, commentId) => `${API_BASE2}/orgs/${orgId}/comments/${commentId}:reopen`,
63881
63896
  // Inbox (org-scoped)
63882
- INBOX: (orgId) => `${API_BASE}/orgs/${orgId}/inbox`,
63883
- INBOX_UNREAD_COUNT: (orgId) => `${API_BASE}/orgs/${orgId}/inbox/unread-count`,
63884
- INBOX_ITEM_READ: (orgId, id) => `${API_BASE}/orgs/${orgId}/inbox/${id}/read`,
63885
- INBOX_ITEM_UNREAD: (orgId, id) => `${API_BASE}/orgs/${orgId}/inbox/${id}/unread`,
63886
- INBOX_ITEM_ARCHIVE: (orgId, id) => `${API_BASE}/orgs/${orgId}/inbox/${id}/archive`,
63897
+ INBOX: (orgId) => `${API_BASE2}/orgs/${orgId}/inbox`,
63898
+ INBOX_UNREAD_COUNT: (orgId) => `${API_BASE2}/orgs/${orgId}/inbox/unread-count`,
63899
+ INBOX_ITEM_READ: (orgId, id) => `${API_BASE2}/orgs/${orgId}/inbox/${id}/read`,
63900
+ INBOX_ITEM_UNREAD: (orgId, id) => `${API_BASE2}/orgs/${orgId}/inbox/${id}/unread`,
63901
+ INBOX_ITEM_ARCHIVE: (orgId, id) => `${API_BASE2}/orgs/${orgId}/inbox/${id}/archive`,
63887
63902
  // Snooze/Unsnooze deferred until un-snooze cron worker is implemented
63888
- INBOX_MARK_ALL_READ: (orgId) => `${API_BASE}/orgs/${orgId}/inbox/mark-all-read`,
63889
- INBOX_ARCHIVE_ALL: (orgId) => `${API_BASE}/orgs/${orgId}/inbox/archive-all`,
63890
- INBOX_ITEM: (orgId, id) => `${API_BASE}/orgs/${orgId}/inbox/${id}`,
63891
- INBOX_ACK: (orgId) => `${API_BASE}/orgs/${orgId}/inbox/ack`,
63903
+ INBOX_MARK_ALL_READ: (orgId) => `${API_BASE2}/orgs/${orgId}/inbox/mark-all-read`,
63904
+ INBOX_ARCHIVE_ALL: (orgId) => `${API_BASE2}/orgs/${orgId}/inbox/archive-all`,
63905
+ INBOX_ITEM: (orgId, id) => `${API_BASE2}/orgs/${orgId}/inbox/${id}`,
63906
+ INBOX_ACK: (orgId) => `${API_BASE2}/orgs/${orgId}/inbox/ack`,
63892
63907
  // Dispatch (agent event delivery)
63893
- DISPATCH: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch`,
63894
- DISPATCH_PENDING_COUNT: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/pending-count`,
63895
- DISPATCH_RECEIVED: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/received`,
63896
- DISPATCH_ACK: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/ack`,
63897
- DISPATCH_ACK_BY_ID: (orgId, id) => `${API_BASE}/orgs/${orgId}/dispatch/${id}/ack`,
63898
- DISPATCH_EXPIRE: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/expire`,
63899
- DISPATCH_BY_MESSAGES: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/by-messages`,
63900
- DISPATCH_CLAIM: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/claim`,
63901
- DISPATCH_STEER: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/steer`,
63902
- DISPATCH_INPUT_STATE: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/input-state`,
63903
- DISPATCH_COMPLETE: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/complete`,
63904
- DISPATCH_COMPLETE_SOURCES: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/complete-sources`,
63905
- DISPATCH_RELEASE: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/release`,
63906
- DISPATCH_HEARTBEAT: (orgId) => `${API_BASE}/orgs/${orgId}/dispatch/heartbeat`,
63908
+ DISPATCH: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch`,
63909
+ DISPATCH_PENDING_COUNT: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/pending-count`,
63910
+ DISPATCH_RECEIVED: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/received`,
63911
+ DISPATCH_ACK: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/ack`,
63912
+ DISPATCH_ACK_BY_ID: (orgId, id) => `${API_BASE2}/orgs/${orgId}/dispatch/${id}/ack`,
63913
+ DISPATCH_EXPIRE: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/expire`,
63914
+ DISPATCH_BY_MESSAGES: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/by-messages`,
63915
+ DISPATCH_CLAIM: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/claim`,
63916
+ DISPATCH_STEER: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/steer`,
63917
+ DISPATCH_INPUT_STATE: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/input-state`,
63918
+ DISPATCH_COMPLETE: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/complete`,
63919
+ DISPATCH_COMPLETE_SOURCES: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/complete-sources`,
63920
+ DISPATCH_RELEASE: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/release`,
63921
+ DISPATCH_HEARTBEAT: (orgId) => `${API_BASE2}/orgs/${orgId}/dispatch/heartbeat`,
63907
63922
  // Unread
63908
- UNREAD: `${API_BASE}/me/unread`,
63909
- ORG_UNREAD: (orgId) => `${API_BASE}/orgs/${orgId}/unread`,
63910
- CHAT_READ: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/read`,
63911
- CHAT_READ_ALL: (orgId, chatId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/read-all`,
63912
- THREAD_UNREAD: (orgId, chatId, threadRootId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/threads/${threadRootId}/unread`,
63913
- THREAD_READ: (orgId, chatId, threadRootId) => `${API_BASE}/orgs/${orgId}/chats/${chatId}/threads/${threadRootId}/read`,
63923
+ UNREAD: `${API_BASE2}/me/unread`,
63924
+ ORG_UNREAD: (orgId) => `${API_BASE2}/orgs/${orgId}/unread`,
63925
+ CHAT_READ: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/read`,
63926
+ CHAT_READ_ALL: (orgId, chatId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/read-all`,
63927
+ THREAD_UNREAD: (orgId, chatId, threadRootId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/threads/${threadRootId}/unread`,
63928
+ THREAD_READ: (orgId, chatId, threadRootId) => `${API_BASE2}/orgs/${orgId}/chats/${chatId}/threads/${threadRootId}/read`,
63914
63929
  // References (org-scoped)
63915
- REFS_RESOLVE: (orgId) => `${API_BASE}/orgs/${orgId}/refs/resolve`,
63916
- REFS_BACKLINKS: (orgId) => `${API_BASE}/orgs/${orgId}/refs/backlinks`,
63917
- REFS_OUTBOUND: (orgId) => `${API_BASE}/orgs/${orgId}/refs/outbound`,
63918
- REFS_GRAPH: (orgId) => `${API_BASE}/orgs/${orgId}/refs/graph`,
63919
- REFS_CHECK: (orgId) => `${API_BASE}/orgs/${orgId}/refs/check`,
63930
+ REFS_RESOLVE: (orgId) => `${API_BASE2}/orgs/${orgId}/refs/resolve`,
63931
+ REFS_BACKLINKS: (orgId) => `${API_BASE2}/orgs/${orgId}/refs/backlinks`,
63932
+ REFS_OUTBOUND: (orgId) => `${API_BASE2}/orgs/${orgId}/refs/outbound`,
63933
+ REFS_GRAPH: (orgId) => `${API_BASE2}/orgs/${orgId}/refs/graph`,
63934
+ REFS_CHECK: (orgId) => `${API_BASE2}/orgs/${orgId}/refs/check`,
63920
63935
  // Platform config (agent-scoped, not org-scoped)
63921
- PLATFORM_CONFIG: `${API_BASE}/agents/platform-config`,
63936
+ PLATFORM_CONFIG: `${API_BASE2}/agents/platform-config`,
63922
63937
  // Push notifications
63923
- PUSH_SUBSCRIBE: `${API_BASE}/push/subscribe`,
63924
- PUSH_UNSUBSCRIBE: `${API_BASE}/push/unsubscribe`,
63925
- PUSH_VAPID_KEY: `${API_BASE}/push/vapid-key`,
63938
+ PUSH_SUBSCRIBE: `${API_BASE2}/push/subscribe`,
63939
+ PUSH_UNSUBSCRIBE: `${API_BASE2}/push/unsubscribe`,
63940
+ PUSH_VAPID_KEY: `${API_BASE2}/push/vapid-key`,
63926
63941
  // Notification preferences
63927
- NOTIFICATION_PREFERENCES: `${API_BASE}/notification-preferences`,
63942
+ NOTIFICATION_PREFERENCES: `${API_BASE2}/notification-preferences`,
63928
63943
  // Unified search (messages + tasks + wiki, org-scoped)
63929
- SEARCH: (orgId) => `${API_BASE}/orgs/${orgId}/search`,
63944
+ SEARCH: (orgId) => `${API_BASE2}/orgs/${orgId}/search`,
63930
63945
  // Feature flags (server-evaluated). Org-scoped by default; omit the org for
63931
63946
  // the pre-org form, which resolves "cap:" capabilities only (PostHog flags
63932
63947
  // are org-scoped and absent there) for callers that have no org yet.
63933
- FEATURE_FLAGS: (orgId) => orgId ? `${API_BASE}/orgs/${orgId}/feature-flags` : `${API_BASE}/feature-flags`,
63948
+ FEATURE_FLAGS: (orgId) => orgId ? `${API_BASE2}/orgs/${orgId}/feature-flags` : `${API_BASE2}/feature-flags`,
63934
63949
  // Team templates (org-scoped, owner/admin only)
63935
- TEMPLATES: (orgId) => `${API_BASE}/orgs/${orgId}/templates`,
63936
- TEMPLATE: (orgId, templateId) => `${API_BASE}/orgs/${orgId}/templates/${templateId}`,
63937
- TEMPLATE_DEPLOYMENTS: (orgId) => `${API_BASE}/orgs/${orgId}/template-deployments`,
63938
- TEMPLATE_DEPLOYMENT: (orgId, deploymentId) => `${API_BASE}/orgs/${orgId}/template-deployments/${deploymentId}`,
63939
- CLIP_DEPENDENCIES_CHECK: (orgId) => `${API_BASE}/orgs/${orgId}/clip-dependencies/check`,
63950
+ TEMPLATES: (orgId) => `${API_BASE2}/orgs/${orgId}/templates`,
63951
+ TEMPLATE: (orgId, templateId) => `${API_BASE2}/orgs/${orgId}/templates/${templateId}`,
63952
+ TEMPLATE_DEPLOYMENTS: (orgId) => `${API_BASE2}/orgs/${orgId}/template-deployments`,
63953
+ TEMPLATE_DEPLOYMENT: (orgId, deploymentId) => `${API_BASE2}/orgs/${orgId}/template-deployments/${deploymentId}`,
63954
+ CLIP_DEPENDENCIES_CHECK: (orgId) => `${API_BASE2}/orgs/${orgId}/clip-dependencies/check`,
63940
63955
  // Onboarding wizard progress (org-scoped, self)
63941
- ONBOARDING_PROGRESS: (orgId) => `${API_BASE}/orgs/${orgId}/onboarding`,
63956
+ ONBOARDING_PROGRESS: (orgId) => `${API_BASE2}/orgs/${orgId}/onboarding`,
63942
63957
  // Billing & Credits (org-scoped)
63943
- BILLING: (orgId) => `${API_BASE}/orgs/${orgId}/billing`,
63944
- BILLING_TRANSACTIONS: (orgId) => `${API_BASE}/orgs/${orgId}/billing/transactions`,
63945
- BILLING_CHECKOUT: (orgId) => `${API_BASE}/orgs/${orgId}/billing/checkout`,
63946
- BILLING_AUTO_RELOAD: (orgId) => `${API_BASE}/orgs/${orgId}/billing/auto-reload`,
63947
- BILLING_SETUP_INTENT: (orgId) => `${API_BASE}/orgs/${orgId}/billing/setup-intent`,
63948
- COMPUTE_PRICING: () => `${API_BASE}/billing/compute-pricing`,
63958
+ BILLING: (orgId) => `${API_BASE2}/orgs/${orgId}/billing`,
63959
+ BILLING_TRANSACTIONS: (orgId) => `${API_BASE2}/orgs/${orgId}/billing/transactions`,
63960
+ BILLING_CHECKOUT: (orgId) => `${API_BASE2}/orgs/${orgId}/billing/checkout`,
63961
+ BILLING_AUTO_RELOAD: (orgId) => `${API_BASE2}/orgs/${orgId}/billing/auto-reload`,
63962
+ BILLING_SETUP_INTENT: (orgId) => `${API_BASE2}/orgs/${orgId}/billing/setup-intent`,
63963
+ COMPUTE_PRICING: () => `${API_BASE2}/billing/compute-pricing`,
63949
63964
  // Runtime capability table (public, no auth) — SSOT for the create/settings
63950
63965
  // interlock: per-runtime compute modes, native model family, cross-family
63951
63966
  // availability, and recommended model.
63952
- RUNTIMES: () => `${API_BASE}/runtimes`,
63967
+ RUNTIMES: () => `${API_BASE2}/runtimes`,
63953
63968
  // Model catalog (public, no auth) — served from the server's DB-backed
63954
63969
  // snapshot. Optional include_model keeps an agent's pinned hidden legacy
63955
63970
  // model representable in settings pickers.
63956
- MODELS: (includeModel) => includeModel ? `${API_BASE}/models?include_model=${encodeURIComponent(includeModel)}` : `${API_BASE}/models`,
63971
+ MODELS: (includeModel) => includeModel ? `${API_BASE2}/models?include_model=${encodeURIComponent(includeModel)}` : `${API_BASE2}/models`,
63957
63972
  // ADMIN_GRANTS intentionally NOT exported here — it sits under the
63958
63973
  // unauthenticated `/internal/admin/*` surface and must not bleed into the
63959
63974
  // public SDK. Admin dashboard hits the URL directly from its own client.
@@ -63976,17 +63991,9 @@ var ENDPOINTS = {
63976
63991
  BROWSER_PROFILE_CONSENT: (orgId, profileId, clipId) => `${CLIP_BASE}/orgs/${orgId}/browser-profiles/${profileId}/consents/${clipId}`,
63977
63992
  // Live viewer command — on api-server (API_BASE), not clip-service: it rides
63978
63993
  // the machine control-plane request/reply bridge that lives in api-server.
63979
- BROWSER_PROFILE_VIEWER_COMMAND: (orgId, profileId) => `${API_BASE}/orgs/${orgId}/browser-profiles/${profileId}/viewer/command`,
63994
+ BROWSER_PROFILE_VIEWER_COMMAND: (orgId, profileId) => `${API_BASE2}/orgs/${orgId}/browser-profiles/${profileId}/viewer/command`,
63980
63995
  // Edge device endpoints
63981
- ORG_EDGE: (orgId) => `/api/v1/orgs/${orgId}/edge`,
63982
- ORG_EDGE_DEVICES: (orgId) => `/api/v1/orgs/${orgId}/edge/devices`,
63983
- ORG_EDGE_DEVICE: (orgId, edgeId) => `/api/v1/orgs/${orgId}/edge/${edgeId}`,
63984
- ORG_EDGE_DEVICE_UNREGISTER: (orgId, edgeId) => `/api/v1/orgs/${orgId}/edge/${edgeId}/unregister`,
63985
- ORG_EDGE_ONBOARDING: (orgId) => `/api/v1/orgs/${orgId}/edge/onboarding`,
63986
- ORG_EDGE_PROFILES: (orgId, edgeId) => `/api/v1/orgs/${orgId}/edge/${edgeId}/profiles`,
63987
- ORG_EDGE_PROFILE_OPERATIONS: (orgId, edgeId) => `/api/v1/orgs/${orgId}/edge/${edgeId}/profile-operations`,
63988
- ORG_EDGE_PROFILE_OPERATION: (orgId, edgeId, operationId) => `/api/v1/orgs/${orgId}/edge/${edgeId}/profile-operations/${operationId}`,
63989
- ORG_EDGE_PROFILE_OPERATION_CONFIRM: (orgId, edgeId, operationId) => `/api/v1/orgs/${orgId}/edge/${edgeId}/profile-operations/${operationId}/confirm`,
63996
+ ...edgeEndpoints,
63990
63997
  ORG_BROWSER_ALIASES: (orgId) => `/api/v1/orgs/${orgId}/browser-aliases`,
63991
63998
  ORG_BROWSER_ALIAS: (orgId, aliasId) => `/api/v1/orgs/${orgId}/browser-aliases/${aliasId}`,
63992
63999
  ORG_BROWSER_ALIAS_READINESS_CHECKS: (orgId, aliasId) => `/api/v1/orgs/${orgId}/browser-aliases/${aliasId}/readiness-checks`,
@@ -64596,7 +64603,7 @@ var ParallClient = class _ParallClient extends ChannelConversationClient {
64596
64603
  if (this.swimlaneName) {
64597
64604
  headers["X-Prll-Swimlane"] = this.swimlaneName;
64598
64605
  }
64599
- if (path7.startsWith(API_BASE)) {
64606
+ if (path7.startsWith(API_BASE2)) {
64600
64607
  const overrides = this.getFeatureFlagOverrides?.();
64601
64608
  if (overrides)
64602
64609
  headers["X-Prll-FF-Override"] = overrides;
@@ -65106,13 +65113,15 @@ var ParallClient = class _ParallClient extends ChannelConversationClient {
65106
65113
  return this.request("POST", ENDPOINTS.DM(orgId), req);
65107
65114
  }
65108
65115
  /** Create the onboarding agent's DM and seed the intro message.
65109
- * Call after confirming the agent is online so the chat only appears
65110
- * once the agent can actually respond. */
65116
+ * @deprecated The OnboardingPopup line that used this is gone; the
65117
+ * endpoint stays one Desktop release cycle for old bundles and is then
65118
+ * removed (docs/engineering-design/onboarding-wizard.md §7). */
65111
65119
  async seedOnboardingDM(orgId) {
65112
65120
  return this.request("POST", ENDPOINTS.SEED_ONBOARDING_DM(orgId));
65113
65121
  }
65114
- /** Record that the user has dismissed the onboarding popup for this org.
65115
- * Once dismissed, the popup never auto-shows again. */
65122
+ /** Mark this member's onboarding for the org as dismissed. The wizard
65123
+ * entry gate treats it as "done", so a fresh org can be released from the
65124
+ * /onboarding redirect without walking the wizard (test setup). */
65116
65125
  async dismissOnboarding(orgId) {
65117
65126
  await this.request("POST", ENDPOINTS.DISMISS_ONBOARDING(orgId));
65118
65127
  }
@@ -65761,8 +65770,11 @@ var ParallClient = class _ParallClient extends ChannelConversationClient {
65761
65770
  return this.request("POST", ENDPOINTS.DISPATCH_COMPLETE_SOURCES(orgId), req);
65762
65771
  }
65763
65772
  /** Release a lane on graceful shutdown — members return to pending immediately. */
65764
- async releaseDispatchLane(orgId, lane) {
65765
- return this.request("POST", ENDPOINTS.DISPATCH_RELEASE(orgId), { lane });
65773
+ async releaseDispatchLane(orgId, lane, reason) {
65774
+ return this.request("POST", ENDPOINTS.DISPATCH_RELEASE(orgId), {
65775
+ lane,
65776
+ ...reason ? { reason } : {}
65777
+ });
65766
65778
  }
65767
65779
  /** Renew a live lane's lease (long-turn keepalive). 409 STALE_LANE when dethroned. */
65768
65780
  async heartbeatDispatchLane(orgId, req) {
@@ -66498,8 +66510,8 @@ var ParallClient = class _ParallClient extends ChannelConversationClient {
66498
66510
  * server-side via the `setup_intent.succeeded` webhook. Mirrors
66499
66511
  * `POST /billing/setup-intent`.
66500
66512
  */
66501
- async createSetupIntent(orgId) {
66502
- return this.request("POST", ENDPOINTS.BILLING_SETUP_INTENT(orgId));
66513
+ async createSetupIntent(orgId, req) {
66514
+ return this.request("POST", ENDPOINTS.BILLING_SETUP_INTENT(orgId), req);
66503
66515
  }
66504
66516
  async getAutoReloadSettings(orgId) {
66505
66517
  return this.request("GET", ENDPOINTS.BILLING_AUTO_RELOAD(orgId));
@@ -66724,37 +66736,25 @@ var ParallClient = class _ParallClient extends ChannelConversationClient {
66724
66736
  async listEdgeDevices(orgId) {
66725
66737
  return this.request("GET", ENDPOINTS.ORG_EDGE_DEVICES(orgId));
66726
66738
  }
66727
- /**
66728
- * Register an Edge device. `placement` defaults to `byoc`.
66729
- *
66730
- * `placement: 'hosted'` creates a Cloud Profile: an ORG-SHARED browser that other
66731
- * members and agents can run clips through once you bind a clip to it. Only a human
66732
- * can create one (an agent gets `403 HOSTED_HUMAN_ONLY`), and only sign into it with
66733
- * an account you are authorized and willing to share with the whole organization.
66734
- * Creating one starts no pod and costs nothing.
66735
- */
66736
- async registerEdgeDevice(orgId, input) {
66737
- return this.request("POST", ENDPOINTS.ORG_EDGE(orgId), input);
66739
+ /** Register an Edge. `placement` defaults to BYOC; hosted creates an idle,
66740
+ * org-shared Cloud Profile and is restricted to human users. */
66741
+ async registerEdgeDevice(orgId, input, options) {
66742
+ const headers = options?.idempotencyKey ? { "Idempotency-Key": options.idempotencyKey } : void 0;
66743
+ return this.request("POST", ENDPOINTS.ORG_EDGE(orgId), input, void 0, false, { headers });
66738
66744
  }
66739
- /**
66740
- * Delete a hosted Cloud Profile. Hosted only — use {@link unregisterEdgeDevice}
66741
- * for an offline BYOC registration (`400 EDGE_PLACEMENT_UNSUPPORTED` here).
66742
- *
66743
- * Idempotent and ASYNC: returns `202` with `hosted_state: 'deleting'` on the first
66744
- * call and on every repeat. The device stops being usable immediately (no exec, no
66745
- * new bindings), but it remains listed as `deleting` until the platform has drained
66746
- * its pod and purged its stored browser state which can take several minutes.
66747
- */
66745
+ /** Mint the short-lived, single-use ticket for one exact owned BYOC Edge. */
66746
+ async connectEdgeDevice(orgId, edgeId) {
66747
+ return this.request("POST", ENDPOINTS.ORG_EDGE_CONNECT(orgId), void 0, {
66748
+ edge_id: edgeId
66749
+ });
66750
+ }
66751
+ /** Idempotently begin deleting a hosted Cloud Profile; every repeat returns
66752
+ * `202 deleting` until the pod and stored browser state are finalized. */
66748
66753
  async deleteEdgeDevice(orgId, edgeId) {
66749
66754
  return this.request("DELETE", ENDPOINTS.ORG_EDGE_DEVICE(orgId, edgeId));
66750
66755
  }
66751
- /**
66752
- * Remove the interactive human caller's own offline BYOC registration.
66753
- *
66754
- * Synchronous and idempotent: a committed removal and a repeat after removal
66755
- * both resolve with no response body. A live connection returns `EDGE_ONLINE`;
66756
- * callers must not clear local device identity until this method resolves.
66757
- */
66756
+ /** Idempotently remove the human caller's own offline BYOC registration.
66757
+ * A live connection returns `EDGE_ONLINE`. */
66758
66758
  async unregisterEdgeDevice(orgId, edgeId) {
66759
66759
  await this.request("DELETE", ENDPOINTS.ORG_EDGE_DEVICE_UNREGISTER(orgId, edgeId));
66760
66760
  }
@@ -67032,16 +67032,44 @@ var ParallClient = class _ParallClient extends ChannelConversationClient {
67032
67032
  async listClipMCPConnections(orgId, clipId) {
67033
67033
  return this.request("GET", ENDPOINTS.ORG_CLIP_MCP_CONFIGS(orgId, clipId));
67034
67034
  }
67035
+ /** Create one MCP credential slot and its connection. */
67036
+ async createClipMCPConnection(orgId, clipId, req) {
67037
+ return this.request("POST", ENDPOINTS.ORG_CLIP_MCP_CONFIGS(orgId, clipId), req, void 0, false, {
67038
+ timeoutMs: 4e4
67039
+ });
67040
+ }
67035
67041
  /** Start a new Official OAuth MCP connection with the platform-owned app.
67036
67042
  * Omitting oauth_client is load-bearing: the server resolves the exact
67037
67043
  * reviewed-version binding and never falls back to DCR/CIMD cross-org. */
67038
- async createClipMCPOAuthConnection(orgId, clipId, serverUrl, alias) {
67044
+ async createClipMCPOAuthConnection(orgId, clipId, serverUrl, alias, oauthClient) {
67039
67045
  return this.request("POST", ENDPOINTS.ORG_CLIP_MCP_CONFIGS(orgId, clipId), {
67040
67046
  server_url: serverUrl,
67041
67047
  auth_type: "oauth",
67042
- ...alias ? { alias } : {}
67048
+ ...alias ? { alias } : {},
67049
+ ...oauthClient ? { oauth_client: oauthClient } : {}
67043
67050
  });
67044
67051
  }
67052
+ /** Re-authorize an existing MCP credential slot. */
67053
+ async initiateClipMCPOAuthById(orgId, clipId, configId, serverUrl, expectedVersion, oauthClient) {
67054
+ const req = {
67055
+ server_url: serverUrl,
67056
+ auth_type: "oauth",
67057
+ ...oauthClient ? { oauth_client: oauthClient } : {}
67058
+ };
67059
+ return this.request("PUT", ENDPOINTS.ORG_CLIP_MCP_CONFIG_BY_ID(orgId, clipId, configId), req, void 0, false, { headers: { "If-Match": `"${expectedVersion}"` }, timeoutMs: 4e4 });
67060
+ }
67061
+ /** Delete one MCP config and its paired connection. */
67062
+ async deleteClipMCPConfigById(orgId, clipId, configId, expectedVersion) {
67063
+ return this.request("DELETE", ENDPOINTS.ORG_CLIP_MCP_CONFIG_BY_ID(orgId, clipId, configId), void 0, void 0, false, { headers: { "If-Match": `"${expectedVersion}"` } });
67064
+ }
67065
+ /** Best-effort provider revocation plus local OAuth disconnect. */
67066
+ async disconnectClipMCPOAuthById(orgId, clipId, configId, expectedVersion) {
67067
+ return this.request("POST", ENDPOINTS.ORG_CLIP_MCP_OAUTH_DISCONNECT_BY_ID(orgId, clipId, configId), void 0, void 0, false, { headers: { "If-Match": `"${expectedVersion}"` } });
67068
+ }
67069
+ /** Rename an MCP connection or promote it to default. */
67070
+ async updateClipMCPConnection(orgId, connectionId, req) {
67071
+ return this.request("PATCH", ENDPOINTS.CLIP_CONNECTION(orgId, connectionId), req);
67072
+ }
67045
67073
  /**
67046
67074
  * Re-run tools/list and replace the cached snapshot (org-admin only).
67047
67075
  * Deliberately does NOT advance the CAS version, so an in-flight edit in
@@ -67135,7 +67163,7 @@ var TYPED_BACKOFF_CAP_MS = 5 * 6e4;
67135
67163
 
67136
67164
  // ts/agent-core/dist/telemetry.js
67137
67165
  import { AsyncLocalStorage } from "node:async_hooks";
67138
- var sessionKeyStorage = new AsyncLocalStorage();
67166
+ var dispatchContextStorage = new AsyncLocalStorage();
67139
67167
 
67140
67168
  // ts/agent-core/dist/http-keepalive.js
67141
67169
  var import_undici = __toESM(require_undici(), 1);