@agent-team-foundation/first-tree-hub 0.12.4 → 0.12.5
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.
- package/dist/cli/index.mjs +13 -11
- package/dist/{client-D1TDiik_-NV_lkhfI.mjs → client-DL5vHhvQ-CnYGq2x-.mjs} +23 -4
- package/dist/{client-0RrgrMjR-CylTJGEb.mjs → client-DSM_opoz-BH5eegXb.mjs} +2 -2
- package/dist/{dist-CMhywpXB.mjs → dist-BwPlBZWi.mjs} +26 -2
- package/dist/drizzle/0036_github_entity_chat_mappings.sql +47 -0
- package/dist/drizzle/meta/_journal.json +7 -0
- package/dist/{feishu-tkZS0vvL.mjs → feishu-CKGzIamp.mjs} +1 -1
- package/dist/index.mjs +4 -4
- package/dist/{invitation-C299fxkP-CZRV665C.mjs → invitation-C299fxkP-Dts66QTU.mjs} +1 -1
- package/dist/{saas-connect-S71rG182.mjs → saas-connect-DYjvx5yr.mjs} +507 -236
- package/dist/web/assets/index-BXDLOc-s.js +406 -0
- package/dist/web/assets/{index-RNegidl2.js → index-Dyo6TAWC.js} +1 -1
- package/dist/web/index.html +1 -1
- package/package.json +1 -1
- package/dist/web/assets/index-BG9RRx2e.js +0 -401
package/dist/cli/index.mjs
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import "../observability-BAScT_5S-BcW9HgkG.mjs";
|
|
3
|
-
import { $ as formatStaleReason, A as checkDocker, B as isServiceSupported, C as createApiNameResolver, D as checkBackgroundService, E as checkAgentConfigs, F as checkWebSocket, H as restartClientService, I as printResults, J as stopPostgres, L as reconcileAgentConfigs, M as checkServerConfig, N as checkServerHealth, O as checkClientConfig, P as checkServerReachable, Q as findStaleAliases, R as getClientServiceStatus, S as runHomeMigration, T as runMigrations, U as startClientService, W as stopClientService, X as handleClientOrgMismatch, Y as ClientRuntime, _ as formatCheckReport, a as declineUpdate, at as
|
|
3
|
+
import { $ as formatStaleReason, A as checkDocker, B as isServiceSupported, C as createApiNameResolver, D as checkBackgroundService, E as checkAgentConfigs, F as checkWebSocket, H as restartClientService, I as printResults, J as stopPostgres, L as reconcileAgentConfigs, M as checkServerConfig, N as checkServerHealth, O as checkClientConfig, P as checkServerReachable, Q as findStaleAliases, R as getClientServiceStatus, S as runHomeMigration, T as runMigrations, U as startClientService, W as stopClientService, X as handleClientOrgMismatch, Y as ClientRuntime, _ as formatCheckReport, a as declineUpdate, at as fail, b as onboardCreate, c as detectInstallMode, ct as ClientUserMismatchError, d as startServer, dt as SessionRegistry, et as removeLocalAgent, f as reconcileLocalRuntimeProviders, ft as cleanWorkspaces, g as promptMissingFields, h as promptAddAgent, ht as configureClientLoggerForService, i as createExecuteUpdate, it as resolveSenderName, j as checkNodeVersion, k as checkDatabase, l as fetchLatestVersion, lt as FirstTreeHubSDK, m as isInteractive, mt as applyClientLoggerConfig, o as promptUpdate, ot as success, p as uploadClientCapabilities, pt as probeCapabilities, r as registerSaaSConnectCommand, rt as resolveReplyToFromEnv, s as PACKAGE_NAME, st as ClientOrgMismatchError, tt as createOwner, u as installGlobalLatest, ut as SdkError, v as loadOnboardState, w as migrateLocalAgentDirs, x as saveOnboardState, y as onboardCheck, z as installClientService } from "../saas-connect-DYjvx5yr.mjs";
|
|
4
4
|
import "../logger-core-BTmvdflj-DjW8FM4T.mjs";
|
|
5
5
|
import { C as resetConfigMeta, E as setConfigValue, S as resetConfig, T as serverConfigSchema, _ as getConfigValue, a as ensureFreshAdminToken, c as resolveServerUrl, d as DEFAULT_CONFIG_DIR, f as DEFAULT_DATA_DIR, h as clientConfigSchema, i as ensureFreshAccessToken, l as saveAgentConfig, m as agentConfigSchema, o as loadCredentials, p as DEFAULT_HOME_DIR, u as saveCredentials, v as initConfig, w as resolveConfigReadonly, x as readConfigFile, y as loadAgents } from "../bootstrap-C_K2CKXC.mjs";
|
|
6
6
|
import { a as print, n as CLI_USER_AGENT, o as setJsonMode, r as COMMAND_VERSION, t as cliFetch } from "../cli-fetch--tiwKm5S.mjs";
|
|
7
|
-
import "../dist-
|
|
8
|
-
import { n as bindFeishuUser, t as bindFeishuBot } from "../feishu-
|
|
7
|
+
import "../dist-BwPlBZWi.mjs";
|
|
8
|
+
import { n as bindFeishuUser, t as bindFeishuBot } from "../feishu-CKGzIamp.mjs";
|
|
9
9
|
import "../errors-CF5evtJt-B0NTIVPt.mjs";
|
|
10
10
|
import "../src-DNBS5Yjj.mjs";
|
|
11
|
-
import "../client-
|
|
11
|
+
import "../client-DL5vHhvQ-CnYGq2x-.mjs";
|
|
12
12
|
import "../invitation-Bg0TRiyx-BsZH4GCS.mjs";
|
|
13
13
|
import { join } from "node:path";
|
|
14
14
|
import { existsSync, mkdirSync, readFileSync, readdirSync } from "node:fs";
|
|
@@ -215,14 +215,16 @@ function resolveLocalAgent(agentName) {
|
|
|
215
215
|
schema: agentConfigSchema,
|
|
216
216
|
agentsDir
|
|
217
217
|
});
|
|
218
|
-
|
|
218
|
+
const resolution = resolveSenderName({
|
|
219
|
+
override: agentName,
|
|
220
|
+
envAgentId: process.env.FIRST_TREE_HUB_AGENT_ID,
|
|
221
|
+
agents
|
|
222
|
+
});
|
|
219
223
|
let resolvedName;
|
|
220
|
-
if (
|
|
221
|
-
else if (
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
resolvedName = only;
|
|
225
|
-
} else fail("AMBIGUOUS_AGENT", `Multiple agents configured — specify --agent <name>. Available: ${[...agents.keys()].join(", ")}`, 2);
|
|
224
|
+
if (resolution.kind === "ok") resolvedName = resolution.name;
|
|
225
|
+
else if (resolution.kind === "none") fail("MISSING_AGENT", "No agent configured. Run `first-tree-hub agent add` first.", 2);
|
|
226
|
+
else if (resolution.kind === "envMismatch") fail("ENV_AGENT_NOT_LOCAL", `FIRST_TREE_HUB_AGENT_ID="${resolution.envAgentId}" is not configured on this machine. Available local agents: ${resolution.available.join(", ")}. Pick one explicitly: \`first-tree-hub agent send --agent <senderName> <recipientName> "..."\`.`, 2);
|
|
227
|
+
else fail("AMBIGUOUS_AGENT", `Multiple agents are configured on this machine (${resolution.available.join(", ")}) and FIRST_TREE_HUB_AGENT_ID is not set, so the CLI can't tell which one is the sender. Specify it explicitly: \`first-tree-hub agent send --agent <senderName> <recipientName> "..."\` (--agent picks the SENDER; the recipient is the next positional argument).`, 2);
|
|
226
228
|
const cfg = agents.get(resolvedName);
|
|
227
229
|
if (!cfg) fail("UNKNOWN_AGENT", `Agent "${resolvedName}" not found in ${agentsDir}`, 2);
|
|
228
230
|
let serverUrl;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { O as withSpan, f as messageAttrs, s as createLogger } from "./observability-BAScT_5S-BcW9HgkG.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { X as questionAnswerMessageContentSchema, Z as questionMessageContentSchema, _ as clientCapabilitiesSchema, a as AGENT_VISIBILITY, i as AGENT_STATUSES, j as extractMentions, nt as scanMentionTokens } from "./dist-BwPlBZWi.mjs";
|
|
3
3
|
import { a as ConflictError, i as ClientUserMismatchError, l as organizations, n as BadRequestError, o as ForbiddenError, s as NotFoundError, u as users } from "./errors-CF5evtJt-B0NTIVPt.mjs";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
5
5
|
import { and, desc, eq, inArray, isNotNull, lt, ne, or, sql } from "drizzle-orm";
|
|
6
6
|
import { bigserial, boolean, index, integer, jsonb, pgTable, primaryKey, text, timestamp, unique } from "drizzle-orm/pg-core";
|
|
7
|
-
//#region ../server/dist/client-
|
|
7
|
+
//#region ../server/dist/client-DL5vHhvQ.mjs
|
|
8
8
|
/**
|
|
9
9
|
* Client connections. A client is a single SDK process (AgentRuntime) that may
|
|
10
10
|
* host multiple agents. From the unified-user-token milestone on, a client is
|
|
@@ -518,6 +518,15 @@ async function assertParticipant(db, chatId, agentId) {
|
|
|
518
518
|
const [row] = await db.select({ chatId: chatParticipants.chatId }).from(chatParticipants).where(and(eq(chatParticipants.chatId, chatId), eq(chatParticipants.agentId, agentId))).limit(1);
|
|
519
519
|
if (!row) throw new ForbiddenError("Not a participant of this chat");
|
|
520
520
|
}
|
|
521
|
+
/**
|
|
522
|
+
* Non-throwing membership check. Used by routing logic that needs to fall
|
|
523
|
+
* back to a different chat when the candidate target isn't a member of the
|
|
524
|
+
* caller's current chat (see `sendToAgent`'s current-chat routing branch).
|
|
525
|
+
*/
|
|
526
|
+
async function isParticipant(db, chatId, agentId) {
|
|
527
|
+
const [row] = await db.select({ chatId: chatParticipants.chatId }).from(chatParticipants).where(and(eq(chatParticipants.chatId, chatId), eq(chatParticipants.agentId, agentId))).limit(1);
|
|
528
|
+
return Boolean(row);
|
|
529
|
+
}
|
|
521
530
|
/** Ensure an agent is a participant of a chat. Silently adds them if not already. */
|
|
522
531
|
async function ensureParticipant(db, chatId, agentId) {
|
|
523
532
|
const [existing] = await db.select({ agentId: chatParticipants.agentId }).from(chatParticipants).where(and(eq(chatParticipants.chatId, chatId), eq(chatParticipants.agentId, agentId))).limit(1);
|
|
@@ -1684,7 +1693,6 @@ async function sendToAgent(db, senderUuid, targetName, data) {
|
|
|
1684
1693
|
if (!sender) throw new NotFoundError(`Agent "${senderUuid}" not found`);
|
|
1685
1694
|
const [target] = await db.select({ uuid: agents.uuid }).from(agents).where(and(eq(agents.organizationId, sender.organizationId), eq(agents.name, targetName), ne(agents.status, "deleted"))).limit(1);
|
|
1686
1695
|
if (!target) throw new NotFoundError(`Agent "${targetName}" not found${/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(targetName) ? " — `agent send` expects an agent NAME, not a uuid. Run `first-tree-hub agent list` to see available names." : ""}`);
|
|
1687
|
-
const chat = await findOrCreateDirectChat(db, senderUuid, target.uuid);
|
|
1688
1696
|
const incomingMeta = data.metadata ?? {};
|
|
1689
1697
|
const existingMentionsRaw = incomingMeta.mentions;
|
|
1690
1698
|
const existingMentions = Array.isArray(existingMentionsRaw) ? existingMentionsRaw.filter((m) => typeof m === "string") : [];
|
|
@@ -1693,7 +1701,18 @@ async function sendToAgent(db, senderUuid, targetName, data) {
|
|
|
1693
1701
|
...incomingMeta,
|
|
1694
1702
|
mentions: mergedMentions
|
|
1695
1703
|
};
|
|
1696
|
-
|
|
1704
|
+
if (data.replyToChat) {
|
|
1705
|
+
const [targetIsMember, senderIsMember] = await Promise.all([isParticipant(db, data.replyToChat, target.uuid), isParticipant(db, data.replyToChat, senderUuid)]);
|
|
1706
|
+
if (targetIsMember && senderIsMember) return sendMessage(db, data.replyToChat, senderUuid, {
|
|
1707
|
+
format: data.format,
|
|
1708
|
+
content: data.content,
|
|
1709
|
+
metadata,
|
|
1710
|
+
replyToInbox: void 0,
|
|
1711
|
+
replyToChat: void 0,
|
|
1712
|
+
source: data.source
|
|
1713
|
+
}, { normalizeMentionsInContent: true });
|
|
1714
|
+
}
|
|
1715
|
+
return sendMessage(db, (await findOrCreateDirectChat(db, senderUuid, target.uuid)).id, senderUuid, {
|
|
1697
1716
|
format: data.format,
|
|
1698
1717
|
content: data.content,
|
|
1699
1718
|
metadata,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./observability-BAScT_5S-BcW9HgkG.mjs";
|
|
2
2
|
import "./logger-core-BTmvdflj-DjW8FM4T.mjs";
|
|
3
|
-
import "./dist-
|
|
3
|
+
import "./dist-BwPlBZWi.mjs";
|
|
4
4
|
import "./errors-CF5evtJt-B0NTIVPt.mjs";
|
|
5
5
|
import "./src-DNBS5Yjj.mjs";
|
|
6
|
-
import { q as listMyPinnedAgents } from "./client-
|
|
6
|
+
import { q as listMyPinnedAgents } from "./client-DL5vHhvQ-CnYGq2x-.mjs";
|
|
7
7
|
export { listMyPinnedAgents };
|
|
@@ -565,6 +565,30 @@ z.object({
|
|
|
565
565
|
expiresIn: z.number(),
|
|
566
566
|
command: z.string()
|
|
567
567
|
});
|
|
568
|
+
const githubEntityTypeSchema = z.enum([
|
|
569
|
+
"issue",
|
|
570
|
+
"pull_request",
|
|
571
|
+
"discussion",
|
|
572
|
+
"commit"
|
|
573
|
+
]);
|
|
574
|
+
const githubChatMetadataSchema = z.object({
|
|
575
|
+
source: z.literal("github"),
|
|
576
|
+
entityType: githubEntityTypeSchema,
|
|
577
|
+
entityKey: z.string().min(1),
|
|
578
|
+
entityUrl: z.string().url().optional()
|
|
579
|
+
});
|
|
580
|
+
const feishuChatMetadataSchema = z.object({
|
|
581
|
+
source: z.literal("feishu"),
|
|
582
|
+
externalChannelId: z.string().min(1)
|
|
583
|
+
});
|
|
584
|
+
const chatMetadataSchema = z.discriminatedUnion("source", [githubChatMetadataSchema, feishuChatMetadataSchema]);
|
|
585
|
+
/**
|
|
586
|
+
* `createChat` callers may not set metadata at all (admin-created group chats,
|
|
587
|
+
* me-chats, …), so the input schema accepts either an empty object or one of
|
|
588
|
+
* the typed variants. The empty `{}` arm is `.strict()` so a caller cannot
|
|
589
|
+
* sneak through `{ source: "github" }` without the required fields.
|
|
590
|
+
*/
|
|
591
|
+
const optionalChatMetadataSchema = z.union([z.object({}).strict(), chatMetadataSchema]);
|
|
568
592
|
const chatTypeSchema = z.enum([
|
|
569
593
|
"direct",
|
|
570
594
|
"group",
|
|
@@ -574,7 +598,7 @@ const createChatSchema = z.object({
|
|
|
574
598
|
type: chatTypeSchema,
|
|
575
599
|
topic: z.string().max(500).optional(),
|
|
576
600
|
participantIds: z.array(z.string()).min(1),
|
|
577
|
-
metadata:
|
|
601
|
+
metadata: optionalChatMetadataSchema.optional()
|
|
578
602
|
});
|
|
579
603
|
const chatParticipantSchema = z.object({
|
|
580
604
|
agentId: z.string(),
|
|
@@ -1582,4 +1606,4 @@ z.object({
|
|
|
1582
1606
|
capabilities: serverCapabilitiesSchema.optional()
|
|
1583
1607
|
}).passthrough();
|
|
1584
1608
|
//#endregion
|
|
1585
|
-
export {
|
|
1609
|
+
export { refreshTokenSchema as $, dryRunAgentRuntimeConfigSchema as A, isRedactedEnvValue as B, createAgentSchema as C, createOrgFromMeSchema as D, createMemberSchema as E, imageInlineContentSchema as F, messageSourceSchema as G, joinByInvitationSchema as H, inboxAckFrameSchema as I, paginationQuerySchema as J, notificationQuerySchema as K, inboxDeliverFrameSchema as L, githubCallbackQuerySchema as M, githubDevCallbackQuerySchema as N, defaultRuntimeConfigPayload as O, githubStartQuerySchema as P, rebindAgentSchema as Q, inboxPollQuerySchema as R, createAdapterMappingSchema as S, createMeChatSchema as T, listMeChatsQuerySchema as U, isReservedAgentName as V, loginSchema as W, questionAnswerMessageContentSchema as X, patchOnboardingSchema as Y, questionMessageContentSchema as Z, clientCapabilitiesSchema as _, updateClientCapabilitiesSchema as _t, AGENT_VISIBILITY as a, sendToAgentSchema as at, contextTreeSnapshotSchema as b, wsAuthFrameSchema as bt, ORG_SETTINGS_NAMESPACES as c, sessionEventSchema as ct, addParticipantSchema as d, stripCode as dt, runtimeStateMessageSchema as et, agentBindRequestSchema as f, submitQuestionAnswerSchema as ft, chatMetadataSchema as g, updateChatSchema as gt, agentTypeSchema as h, updateAgentSchema as ht, AGENT_STATUSES as i, sendMessageSchema as it, extractMentions as j, delegateFeishuUserSchema as k, WS_AUTH_FRAME_TIMEOUT_MS as l, sessionReconcileRequestSchema as lt, agentRuntimeConfigPayloadSchema as m, updateAgentRuntimeConfigSchema as mt, AGENT_NAME_REGEX as n, scanMentionTokens as nt, DEFAULT_RUNTIME_PROVIDER as o, sessionCompletionMessageSchema as ot, agentPinnedMessageSchema as p, updateAdapterConfigSchema as pt, onboardingEventSchema as q, AGENT_SELECTOR_HEADER as r, selfServiceFeishuBotSchema as rt, MENTION_REGEX as s, sessionEventMessageSchema as st, AGENT_BIND_REJECT_REASONS as t, safeRedirectPath as tt, addMeChatParticipantsSchema as u, sessionStateMessageSchema as ut, clientRegisterSchema as v, updateMemberSchema as vt, createChatSchema as w, createAdapterConfigSchema as x, connectTokenExchangeSchema as y, updateOrganizationSchema as yt, isOrgSettingNamespace as z };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
-- GitHub webhook → chat clustering (Phase 0).
|
|
2
|
+
-- Maps every (organization, human_agent, delegate_agent, entity) tuple to a
|
|
3
|
+
-- single chat. Replaces the legacy "one (human, delegate) chat absorbs every
|
|
4
|
+
-- GitHub event" behaviour — see docs webhook-routing-design.md §4 for the
|
|
5
|
+
-- background and §4.3 for the data-model decision.
|
|
6
|
+
--
|
|
7
|
+
-- The composite primary key is also the uniqueness constraint we rely on for
|
|
8
|
+
-- concurrent webhook safety: two near-simultaneous events for a brand-new
|
|
9
|
+
-- entity hit ON CONFLICT DO NOTHING and the second deliverer falls back to a
|
|
10
|
+
-- re-SELECT, so the pair never spawns duplicate chats.
|
|
11
|
+
--
|
|
12
|
+
-- ON DELETE CASCADE on agent / chat columns: a deleted agent or chat must
|
|
13
|
+
-- drop its mapping rows. We do NOT cascade from organizations because that
|
|
14
|
+
-- relationship is enforced via the agent FKs already.
|
|
15
|
+
--
|
|
16
|
+
-- This table is GitHub-specific. Future external sources (Linear, Slack
|
|
17
|
+
-- channel events, …) get their own table — their entity models differ
|
|
18
|
+
-- enough that a generic table would slide back into untyped jsonb.
|
|
19
|
+
--
|
|
20
|
+
-- Migration 0036 is hand-written to match the team's recent migration
|
|
21
|
+
-- workflow — drizzle-kit generate's snapshot metadata is incomplete pre-0019
|
|
22
|
+
-- and refuses to diff (same constraint that 0032's commit message called out).
|
|
23
|
+
|
|
24
|
+
CREATE TABLE IF NOT EXISTS "github_entity_chat_mappings" (
|
|
25
|
+
"organization_id" text NOT NULL,
|
|
26
|
+
"human_agent_id" text NOT NULL,
|
|
27
|
+
"delegate_agent_id" text NOT NULL,
|
|
28
|
+
"entity_type" text NOT NULL,
|
|
29
|
+
"entity_key" text NOT NULL,
|
|
30
|
+
"chat_id" text NOT NULL,
|
|
31
|
+
"bound_at" timestamp with time zone NOT NULL DEFAULT now(),
|
|
32
|
+
"bound_via" text NOT NULL,
|
|
33
|
+
CONSTRAINT "github_entity_chat_mappings_pkey"
|
|
34
|
+
PRIMARY KEY ("organization_id", "human_agent_id", "delegate_agent_id", "entity_type", "entity_key"),
|
|
35
|
+
CONSTRAINT "github_entity_chat_mappings_organization_id_organizations_id_fk"
|
|
36
|
+
FOREIGN KEY ("organization_id") REFERENCES "organizations"("id"),
|
|
37
|
+
CONSTRAINT "github_entity_chat_mappings_human_agent_id_agents_uuid_fk"
|
|
38
|
+
FOREIGN KEY ("human_agent_id") REFERENCES "agents"("uuid") ON DELETE CASCADE,
|
|
39
|
+
CONSTRAINT "github_entity_chat_mappings_delegate_agent_id_agents_uuid_fk"
|
|
40
|
+
FOREIGN KEY ("delegate_agent_id") REFERENCES "agents"("uuid") ON DELETE CASCADE,
|
|
41
|
+
CONSTRAINT "github_entity_chat_mappings_chat_id_chats_id_fk"
|
|
42
|
+
FOREIGN KEY ("chat_id") REFERENCES "chats"("id") ON DELETE CASCADE
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
--> statement-breakpoint
|
|
46
|
+
CREATE INDEX IF NOT EXISTS "idx_github_entity_chat_mappings_chat"
|
|
47
|
+
ON "github_entity_chat_mappings" ("chat_id");
|
|
@@ -253,6 +253,13 @@
|
|
|
253
253
|
"when": 1778457600000,
|
|
254
254
|
"tag": "0035_drop_hub_tasks",
|
|
255
255
|
"breakpoints": true
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"idx": 36,
|
|
259
|
+
"version": "7",
|
|
260
|
+
"when": 1778544000000,
|
|
261
|
+
"tag": "0036_github_entity_chat_mappings",
|
|
262
|
+
"breakpoints": true
|
|
256
263
|
}
|
|
257
264
|
]
|
|
258
265
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as __exportAll } from "./chunk-BSw8zbkd.mjs";
|
|
2
2
|
import { t as cliFetch } from "./cli-fetch--tiwKm5S.mjs";
|
|
3
|
-
import { r as AGENT_SELECTOR_HEADER } from "./dist-
|
|
3
|
+
import { r as AGENT_SELECTOR_HEADER } from "./dist-BwPlBZWi.mjs";
|
|
4
4
|
//#region src/core/feishu.ts
|
|
5
5
|
var feishu_exports = /* @__PURE__ */ __exportAll({
|
|
6
6
|
bindFeishuBot: () => bindFeishuBot,
|
package/dist/index.mjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "./observability-BAScT_5S-BcW9HgkG.mjs";
|
|
2
|
-
import { A as checkDocker, B as isServiceSupported, E as checkAgentConfigs, F as checkWebSocket, G as uninstallClientService, H as restartClientService, I as printResults, J as stopPostgres, K as ensurePostgres, M as checkServerConfig, N as checkServerHealth, O as checkClientConfig, P as checkServerReachable, R as getClientServiceStatus, S as runHomeMigration, T as runMigrations, U as startClientService, V as resolveCliInvocation, W as stopClientService, X as handleClientOrgMismatch, Y as ClientRuntime, Z as rotateClientIdWithBackup, _ as formatCheckReport, b as onboardCreate,
|
|
2
|
+
import { A as checkDocker, B as isServiceSupported, E as checkAgentConfigs, F as checkWebSocket, G as uninstallClientService, H as restartClientService, I as printResults, J as stopPostgres, K as ensurePostgres, M as checkServerConfig, N as checkServerHealth, O as checkClientConfig, P as checkServerReachable, R as getClientServiceStatus, S as runHomeMigration, T as runMigrations, U as startClientService, V as resolveCliInvocation, W as stopClientService, X as handleClientOrgMismatch, Y as ClientRuntime, Z as rotateClientIdWithBackup, _ as formatCheckReport, b as onboardCreate, d as startServer, g as promptMissingFields, h as promptAddAgent, j as checkNodeVersion, k as checkDatabase, lt as FirstTreeHubSDK, m as isInteractive, n as deriveHubUrlFromToken, nt as hasUser, q as isDockerAvailable, t as HubUrlDerivationError, tt as createOwner, ut as SdkError, y as onboardCheck, z as installClientService } from "./saas-connect-DYjvx5yr.mjs";
|
|
3
3
|
import "./logger-core-BTmvdflj-DjW8FM4T.mjs";
|
|
4
4
|
import { a as ensureFreshAdminToken, c as resolveServerUrl, i as ensureFreshAccessToken, n as AuthRefreshRateLimitedError, s as resolveAccessToken, t as AuthRefreshFailedError } from "./bootstrap-C_K2CKXC.mjs";
|
|
5
5
|
import { i as blank, s as status } from "./cli-fetch--tiwKm5S.mjs";
|
|
6
|
-
import "./dist-
|
|
7
|
-
import { n as bindFeishuUser, t as bindFeishuBot } from "./feishu-
|
|
6
|
+
import "./dist-BwPlBZWi.mjs";
|
|
7
|
+
import { n as bindFeishuUser, t as bindFeishuBot } from "./feishu-CKGzIamp.mjs";
|
|
8
8
|
import "./errors-CF5evtJt-B0NTIVPt.mjs";
|
|
9
9
|
import "./src-DNBS5Yjj.mjs";
|
|
10
|
-
import "./client-
|
|
10
|
+
import "./client-DL5vHhvQ-CnYGq2x-.mjs";
|
|
11
11
|
import "./invitation-Bg0TRiyx-BsZH4GCS.mjs";
|
|
12
12
|
export { AuthRefreshFailedError, AuthRefreshRateLimitedError, ClientRuntime, FirstTreeHubSDK, HubUrlDerivationError, SdkError, bindFeishuBot, bindFeishuUser, blank, checkAgentConfigs, checkClientConfig, checkDatabase, checkDocker, checkNodeVersion, checkServerConfig, checkServerHealth, checkServerReachable, checkWebSocket, createOwner, deriveHubUrlFromToken, ensureFreshAccessToken, ensureFreshAdminToken, ensurePostgres, formatCheckReport, getClientServiceStatus, handleClientOrgMismatch, hasUser, installClientService, isDockerAvailable, isInteractive, isServiceSupported, onboardCheck, onboardCreate, printResults, promptAddAgent, promptMissingFields, resolveAccessToken, resolveCliInvocation, resolveServerUrl, restartClientService, rotateClientIdWithBackup, runHomeMigration, runMigrations, startClientService, startServer, status, stopClientService, stopPostgres, uninstallClientService };
|