@kortix/sdk 0.10.16 → 0.12.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.
- package/README.md +114 -62
- package/dist/browser/cache/idb-sync-cache-key.d.ts +2 -0
- package/dist/browser/cache/idb-sync-cache-key.d.ts.map +1 -0
- package/dist/browser/cache/idb-sync-cache-key.js +7 -0
- package/dist/browser/cache/idb-sync-cache-key.js.map +1 -0
- package/dist/browser/cache/idb-sync-cache.d.ts +3 -3
- package/dist/browser/cache/idb-sync-cache.d.ts.map +1 -1
- package/dist/browser/cache/idb-sync-cache.js +49 -26
- package/dist/browser/cache/idb-sync-cache.js.map +1 -1
- package/dist/browser/session-sync/session-cache-ownership.d.ts +36 -0
- package/dist/browser/session-sync/session-cache-ownership.d.ts.map +1 -0
- package/dist/browser/session-sync/session-cache-ownership.js +66 -0
- package/dist/browser/session-sync/session-cache-ownership.js.map +1 -0
- package/dist/browser/session-sync/session-sync-registry.d.ts +9 -4
- package/dist/browser/session-sync/session-sync-registry.d.ts.map +1 -1
- package/dist/browser/session-sync/session-sync-registry.js +111 -29
- package/dist/browser/session-sync/session-sync-registry.js.map +1 -1
- package/dist/browser/session-sync/session-transcript-cache.d.ts +55 -0
- package/dist/browser/session-sync/session-transcript-cache.d.ts.map +1 -0
- package/dist/browser/session-sync/session-transcript-cache.js +69 -0
- package/dist/browser/session-sync/session-transcript-cache.js.map +1 -0
- package/dist/core/client/kortix.d.ts +198 -24
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +112 -20
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/http/api-client.d.ts.map +1 -1
- package/dist/core/http/api-client.js +48 -68
- package/dist/core/http/api-client.js.map +1 -1
- package/dist/core/rest/platform-client/host-boundary.d.ts +121 -0
- package/dist/core/rest/platform-client/host-boundary.d.ts.map +1 -0
- package/dist/core/rest/platform-client/host-boundary.js +243 -0
- package/dist/core/rest/platform-client/host-boundary.js.map +1 -0
- package/dist/core/rest/platform-client/index.d.ts +1 -0
- package/dist/core/rest/platform-client/index.d.ts.map +1 -1
- package/dist/core/rest/platform-client/index.js +1 -0
- package/dist/core/rest/platform-client/index.js.map +1 -1
- package/dist/core/rest/projects-client/access.d.ts +1 -2
- package/dist/core/rest/projects-client/access.d.ts.map +1 -1
- package/dist/core/rest/projects-client/access.js +9 -6
- package/dist/core/rest/projects-client/access.js.map +1 -1
- package/dist/core/rest/projects-client/account-lifecycle.d.ts +22 -0
- package/dist/core/rest/projects-client/account-lifecycle.d.ts.map +1 -0
- package/dist/core/rest/projects-client/account-lifecycle.js +26 -0
- package/dist/core/rest/projects-client/account-lifecycle.js.map +1 -0
- package/dist/core/rest/projects-client/admin-providers.d.ts +10 -0
- package/dist/core/rest/projects-client/admin-providers.d.ts.map +1 -0
- package/dist/core/rest/projects-client/admin-providers.js +34 -0
- package/dist/core/rest/projects-client/admin-providers.js.map +1 -0
- package/dist/core/rest/projects-client/agent-config.d.ts +17 -2
- package/dist/core/rest/projects-client/agent-config.d.ts.map +1 -1
- package/dist/core/rest/projects-client/agent-config.js +43 -2
- package/dist/core/rest/projects-client/agent-config.js.map +1 -1
- package/dist/core/rest/projects-client/agent-scope.d.ts +4 -0
- package/dist/core/rest/projects-client/agent-scope.d.ts.map +1 -1
- package/dist/core/rest/projects-client/agent-scope.js +34 -1
- package/dist/core/rest/projects-client/agent-scope.js.map +1 -1
- package/dist/core/rest/projects-client/audit.d.ts +34 -0
- package/dist/core/rest/projects-client/audit.d.ts.map +1 -1
- package/dist/core/rest/projects-client/audit.js +49 -4
- package/dist/core/rest/projects-client/audit.js.map +1 -1
- package/dist/core/rest/projects-client/billing.d.ts +101 -0
- package/dist/core/rest/projects-client/billing.d.ts.map +1 -1
- package/dist/core/rest/projects-client/billing.js +42 -0
- package/dist/core/rest/projects-client/billing.js.map +1 -1
- package/dist/core/rest/projects-client/channels.d.ts +8 -27
- package/dist/core/rest/projects-client/channels.d.ts.map +1 -1
- package/dist/core/rest/projects-client/channels.js +12 -23
- package/dist/core/rest/projects-client/channels.js.map +1 -1
- package/dist/core/rest/projects-client/connectors.d.ts +234 -24
- package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
- package/dist/core/rest/projects-client/connectors.js +114 -15
- package/dist/core/rest/projects-client/connectors.js.map +1 -1
- package/dist/core/rest/projects-client/gateway.d.ts +1 -0
- package/dist/core/rest/projects-client/gateway.d.ts.map +1 -1
- package/dist/core/rest/projects-client/gateway.js.map +1 -1
- package/dist/core/rest/projects-client/iam.d.ts +509 -0
- package/dist/core/rest/projects-client/iam.d.ts.map +1 -0
- package/dist/core/rest/projects-client/iam.js +301 -0
- package/dist/core/rest/projects-client/iam.js.map +1 -0
- package/dist/core/rest/projects-client/index.d.ts +7 -0
- package/dist/core/rest/projects-client/index.d.ts.map +1 -1
- package/dist/core/rest/projects-client/index.js +7 -0
- package/dist/core/rest/projects-client/index.js.map +1 -1
- package/dist/core/rest/projects-client/marketplace-catalog.d.ts +9 -2
- package/dist/core/rest/projects-client/marketplace-catalog.d.ts.map +1 -1
- package/dist/core/rest/projects-client/marketplace-catalog.js +7 -0
- package/dist/core/rest/projects-client/marketplace-catalog.js.map +1 -1
- package/dist/core/rest/projects-client/policies.d.ts +18 -0
- package/dist/core/rest/projects-client/policies.d.ts.map +1 -1
- package/dist/core/rest/projects-client/policies.js.map +1 -1
- package/dist/core/rest/projects-client/presentations.d.ts +12 -0
- package/dist/core/rest/projects-client/presentations.d.ts.map +1 -0
- package/dist/core/rest/projects-client/presentations.js +9 -0
- package/dist/core/rest/projects-client/presentations.js.map +1 -0
- package/dist/core/rest/projects-client/projects.d.ts +62 -10
- package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
- package/dist/core/rest/projects-client/projects.js +14 -7
- package/dist/core/rest/projects-client/projects.js.map +1 -1
- package/dist/core/rest/projects-client/public-voice-join.d.ts +59 -0
- package/dist/core/rest/projects-client/public-voice-join.d.ts.map +1 -0
- package/dist/core/rest/projects-client/public-voice-join.js +64 -0
- package/dist/core/rest/projects-client/public-voice-join.js.map +1 -0
- package/dist/core/rest/projects-client/referrals.d.ts +53 -0
- package/dist/core/rest/projects-client/referrals.d.ts.map +1 -0
- package/dist/core/rest/projects-client/referrals.js +27 -0
- package/dist/core/rest/projects-client/referrals.js.map +1 -0
- package/dist/core/rest/projects-client/sandbox.d.ts +50 -0
- package/dist/core/rest/projects-client/sandbox.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sandbox.js.map +1 -1
- package/dist/core/rest/projects-client/session-costs.d.ts +102 -0
- package/dist/core/rest/projects-client/session-costs.d.ts.map +1 -0
- package/dist/core/rest/projects-client/session-costs.js +25 -0
- package/dist/core/rest/projects-client/session-costs.js.map +1 -0
- package/dist/core/rest/projects-client/session-sandbox.d.ts.map +1 -1
- package/dist/core/rest/projects-client/session-sandbox.js +1 -0
- package/dist/core/rest/projects-client/session-sandbox.js.map +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +143 -18
- package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sessions.js +43 -1
- package/dist/core/rest/projects-client/sessions.js.map +1 -1
- package/dist/core/rest/projects-client/setup-links.d.ts +37 -0
- package/dist/core/rest/projects-client/setup-links.d.ts.map +1 -1
- package/dist/core/rest/projects-client/setup-links.js +11 -0
- package/dist/core/rest/projects-client/setup-links.js.map +1 -1
- package/dist/core/session/index.d.ts +2 -0
- package/dist/core/session/index.d.ts.map +1 -1
- package/dist/core/session/index.js +2 -0
- package/dist/core/session/index.js.map +1 -1
- package/dist/core/session/presentation.d.ts +12 -0
- package/dist/core/session/presentation.d.ts.map +1 -0
- package/dist/core/session/presentation.js +70 -0
- package/dist/core/session/presentation.js.map +1 -0
- package/dist/core/session/preview-auth.d.ts +32 -0
- package/dist/core/session/preview-auth.d.ts.map +1 -0
- package/dist/core/session/preview-auth.js +53 -0
- package/dist/core/session/preview-auth.js.map +1 -0
- package/dist/core/session/rewind.d.ts +18 -0
- package/dist/core/session/rewind.d.ts.map +1 -0
- package/dist/core/session/rewind.js +17 -0
- package/dist/core/session/rewind.js.map +1 -0
- package/dist/core/session/server-store/url-helpers.d.ts.map +1 -1
- package/dist/core/session/server-store/url-helpers.js +5 -3
- package/dist/core/session/server-store/url-helpers.js.map +1 -1
- package/dist/core/session/url.d.ts +43 -0
- package/dist/core/session/url.d.ts.map +1 -1
- package/dist/core/session/url.js +81 -0
- package/dist/core/session/url.js.map +1 -1
- package/dist/core/session-sync/session-sync-controller.d.ts +40 -1
- package/dist/core/session-sync/session-sync-controller.d.ts.map +1 -1
- package/dist/core/session-sync/session-sync-controller.js +161 -6
- package/dist/core/session-sync/session-sync-controller.js.map +1 -1
- package/dist/core/stream/fetch-sse.d.ts +23 -0
- package/dist/core/stream/fetch-sse.d.ts.map +1 -0
- package/dist/core/stream/fetch-sse.js +119 -0
- package/dist/core/stream/fetch-sse.js.map +1 -0
- package/dist/core/turns/state.d.ts.map +1 -1
- package/dist/core/turns/state.js +11 -4
- package/dist/core/turns/state.js.map +1 -1
- package/dist/core/turns/types.d.ts +6 -0
- package/dist/core/turns/types.d.ts.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/kortix.esm.min.js +19 -16
- package/dist/kortix.global.js +19 -16
- package/dist/node/server.d.ts +14 -0
- package/dist/node/server.d.ts.map +1 -1
- package/dist/node/server.js +42 -0
- package/dist/node/server.js.map +1 -1
- package/dist/react/agent-selection-scope.d.ts +8 -0
- package/dist/react/agent-selection-scope.d.ts.map +1 -0
- package/dist/react/agent-selection-scope.js +4 -0
- package/dist/react/agent-selection-scope.js.map +1 -0
- package/dist/react/index.d.ts +12 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +12 -0
- package/dist/react/index.js.map +1 -1
- package/dist/react/initial-session-pin.d.ts +8 -0
- package/dist/react/initial-session-pin.d.ts.map +1 -0
- package/dist/react/initial-session-pin.js +4 -0
- package/dist/react/initial-session-pin.js.map +1 -0
- package/dist/react/model-flatten.d.ts +8 -0
- package/dist/react/model-flatten.d.ts.map +1 -1
- package/dist/react/model-flatten.js +1 -0
- package/dist/react/model-flatten.js.map +1 -1
- package/dist/react/opencode.d.ts +25 -2
- package/dist/react/opencode.d.ts.map +1 -1
- package/dist/react/opencode.js +24 -1
- package/dist/react/opencode.js.map +1 -1
- package/dist/react/provider-selection.d.ts +1 -0
- package/dist/react/provider-selection.d.ts.map +1 -1
- package/dist/react/provider-selection.js +22 -0
- package/dist/react/provider-selection.js.map +1 -1
- package/dist/react/run-pty-command.d.ts +5 -0
- package/dist/react/run-pty-command.d.ts.map +1 -0
- package/dist/react/run-pty-command.js +42 -0
- package/dist/react/run-pty-command.js.map +1 -0
- package/dist/react/runtime-actions.d.ts +51 -0
- package/dist/react/runtime-actions.d.ts.map +1 -0
- package/dist/react/runtime-actions.js +105 -0
- package/dist/react/runtime-actions.js.map +1 -0
- package/dist/react/session-agent-name-guard.d.ts +16 -0
- package/dist/react/session-agent-name-guard.d.ts.map +1 -0
- package/dist/react/session-agent-name-guard.js +22 -0
- package/dist/react/session-agent-name-guard.js.map +1 -0
- package/dist/react/session-title-sync.d.ts +23 -0
- package/dist/react/session-title-sync.d.ts.map +1 -0
- package/dist/react/session-title-sync.js +85 -0
- package/dist/react/session-title-sync.js.map +1 -0
- package/dist/react/use-admin-accounts.d.ts +122 -0
- package/dist/react/use-admin-accounts.d.ts.map +1 -0
- package/dist/react/use-admin-accounts.js +146 -0
- package/dist/react/use-admin-accounts.js.map +1 -0
- package/dist/react/use-admin-analytics.d.ts +332 -0
- package/dist/react/use-admin-analytics.d.ts.map +1 -0
- package/dist/react/use-admin-analytics.js +518 -0
- package/dist/react/use-admin-analytics.js.map +1 -0
- package/dist/react/use-admin-billing.d.ts +27 -0
- package/dist/react/use-admin-billing.d.ts.map +1 -0
- package/dist/react/use-admin-billing.js +61 -0
- package/dist/react/use-admin-billing.js.map +1 -0
- package/dist/react/use-admin-feedback.d.ts +119 -0
- package/dist/react/use-admin-feedback.d.ts.map +1 -0
- package/dist/react/use-admin-feedback.js +148 -0
- package/dist/react/use-admin-feedback.js.map +1 -0
- package/dist/react/use-admin-sandboxes.d.ts +157 -0
- package/dist/react/use-admin-sandboxes.d.ts.map +1 -0
- package/dist/react/use-admin-sandboxes.js +145 -0
- package/dist/react/use-admin-sandboxes.js.map +1 -0
- package/dist/react/use-authenticated-preview-url.d.ts +24 -0
- package/dist/react/use-authenticated-preview-url.d.ts.map +1 -0
- package/dist/react/use-authenticated-preview-url.js +137 -0
- package/dist/react/use-authenticated-preview-url.js.map +1 -0
- package/dist/react/use-canonical-opencode-session.d.ts +4 -0
- package/dist/react/use-canonical-opencode-session.d.ts.map +1 -1
- package/dist/react/use-canonical-opencode-session.js +9 -4
- package/dist/react/use-canonical-opencode-session.js.map +1 -1
- package/dist/react/use-model-defaults.d.ts +22 -0
- package/dist/react/use-model-defaults.d.ts.map +1 -0
- package/dist/react/use-model-defaults.js +104 -0
- package/dist/react/use-model-defaults.js.map +1 -0
- package/dist/react/use-model-store.d.ts +6 -14
- package/dist/react/use-model-store.d.ts.map +1 -1
- package/dist/react/use-model-store.js +41 -52
- package/dist/react/use-model-store.js.map +1 -1
- package/dist/react/use-opencode-events/handle-event.d.ts.map +1 -1
- package/dist/react/use-opencode-events/handle-event.js +103 -41
- package/dist/react/use-opencode-events/handle-event.js.map +1 -1
- package/dist/react/use-opencode-events/index.d.ts +3 -1
- package/dist/react/use-opencode-events/index.d.ts.map +1 -1
- package/dist/react/use-opencode-events/index.js +6 -2
- package/dist/react/use-opencode-events/index.js.map +1 -1
- package/dist/react/use-opencode-local.d.ts.map +1 -1
- package/dist/react/use-opencode-local.js +10 -1
- package/dist/react/use-opencode-local.js.map +1 -1
- package/dist/react/use-opencode-sessions/agents.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/agents.js +5 -3
- package/dist/react/use-opencode-sessions/agents.js.map +1 -1
- package/dist/react/use-opencode-sessions/commands.d.ts +7 -2
- package/dist/react/use-opencode-sessions/commands.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/commands.js +13 -9
- package/dist/react/use-opencode-sessions/commands.js.map +1 -1
- package/dist/react/use-opencode-sessions/keys.d.ts +3 -1
- package/dist/react/use-opencode-sessions/keys.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/keys.js +2 -0
- package/dist/react/use-opencode-sessions/keys.js.map +1 -1
- package/dist/react/use-opencode-sessions/provider-load-plan.d.ts +6 -0
- package/dist/react/use-opencode-sessions/provider-load-plan.d.ts.map +1 -0
- package/dist/react/use-opencode-sessions/provider-load-plan.js +4 -0
- package/dist/react/use-opencode-sessions/provider-load-plan.js.map +1 -0
- package/dist/react/use-opencode-sessions/providers.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/providers.js +39 -27
- package/dist/react/use-opencode-sessions/providers.js.map +1 -1
- package/dist/react/use-opencode-sessions/sessions.d.ts +1 -1
- package/dist/react/use-opencode-sessions/sessions.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/sessions.js +18 -9
- package/dist/react/use-opencode-sessions/sessions.js.map +1 -1
- package/dist/react/use-opencode-sessions/shared.d.ts +3 -2
- package/dist/react/use-opencode-sessions/shared.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/shared.js +6 -3
- package/dist/react/use-opencode-sessions/shared.js.map +1 -1
- package/dist/react/use-opencode-sessions/sharing.js +2 -2
- package/dist/react/use-opencode-sessions/sharing.js.map +1 -1
- package/dist/react/use-ops-overview.d.ts +64 -0
- package/dist/react/use-ops-overview.d.ts.map +1 -0
- package/dist/react/use-ops-overview.js +16 -0
- package/dist/react/use-ops-overview.js.map +1 -0
- package/dist/react/use-session-model-selection.d.ts +15 -0
- package/dist/react/use-session-model-selection.d.ts.map +1 -0
- package/dist/react/use-session-model-selection.js +27 -0
- package/dist/react/use-session-model-selection.js.map +1 -0
- package/dist/react/use-session-sync.d.ts +13 -1
- package/dist/react/use-session-sync.d.ts.map +1 -1
- package/dist/react/use-session-sync.js +87 -17
- package/dist/react/use-session-sync.js.map +1 -1
- package/dist/react/use-session.d.ts +72 -1
- package/dist/react/use-session.d.ts.map +1 -1
- package/dist/react/use-session.js +222 -32
- package/dist/react/use-session.js.map +1 -1
- package/dist/react/use-system-status.d.ts +39 -0
- package/dist/react/use-system-status.d.ts.map +1 -0
- package/dist/react/use-system-status.js +68 -0
- package/dist/react/use-system-status.js.map +1 -0
- package/dist/react/use-teams-installations.d.ts +36 -0
- package/dist/react/use-teams-installations.d.ts.map +1 -0
- package/dist/react/use-teams-installations.js +94 -0
- package/dist/react/use-teams-installations.js.map +1 -0
- package/dist/react/use-tunnel.d.ts +120 -0
- package/dist/react/use-tunnel.d.ts.map +1 -0
- package/dist/react/use-tunnel.js +268 -0
- package/dist/react/use-tunnel.js.map +1 -0
- package/package.json +2 -2
|
@@ -95,7 +95,49 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
95
95
|
};
|
|
96
96
|
project: (projectId: string) => {
|
|
97
97
|
get: (opts?: Parameters<typeof P.getProject>[1]) => Promise<P.KortixProject>;
|
|
98
|
-
detail: () => Promise<
|
|
98
|
+
detail: () => Promise<{
|
|
99
|
+
config: {
|
|
100
|
+
default_agent: string | null;
|
|
101
|
+
is_kortix_repo: boolean;
|
|
102
|
+
signals: Record<string, boolean>;
|
|
103
|
+
manifest_raw: string | null;
|
|
104
|
+
open_code_raw: string | null;
|
|
105
|
+
open_code_default_agent: string | null;
|
|
106
|
+
agent_discovery: "opencode" | "declarative";
|
|
107
|
+
agents: Array<{
|
|
108
|
+
name: string;
|
|
109
|
+
path: string;
|
|
110
|
+
description: string | null;
|
|
111
|
+
mode: string | null;
|
|
112
|
+
source?: "opencode" | "kortix.toml";
|
|
113
|
+
enabled?: boolean;
|
|
114
|
+
sandbox?: string | null;
|
|
115
|
+
scope?: {
|
|
116
|
+
env: string[] | "all";
|
|
117
|
+
connectors: string[] | "all";
|
|
118
|
+
kortix_cli: string[] | "all";
|
|
119
|
+
};
|
|
120
|
+
}>;
|
|
121
|
+
skills: Array<{
|
|
122
|
+
name: string;
|
|
123
|
+
path: string;
|
|
124
|
+
description: string | null;
|
|
125
|
+
}>;
|
|
126
|
+
commands: Array<{
|
|
127
|
+
name: string;
|
|
128
|
+
path: string;
|
|
129
|
+
description: string | null;
|
|
130
|
+
}>;
|
|
131
|
+
env: {
|
|
132
|
+
required: string[];
|
|
133
|
+
optional: string[];
|
|
134
|
+
};
|
|
135
|
+
};
|
|
136
|
+
project: P.KortixProject;
|
|
137
|
+
git_connection?: P.ProjectGitConnection | null;
|
|
138
|
+
file_count: number;
|
|
139
|
+
files: P.ProjectFileEntry[];
|
|
140
|
+
}>;
|
|
99
141
|
update: (input: Parameters<typeof P.updateProject>[1]) => Promise<P.KortixProject>;
|
|
100
142
|
archive: () => Promise<{
|
|
101
143
|
ok: boolean;
|
|
@@ -229,37 +271,76 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
229
271
|
ok: boolean;
|
|
230
272
|
sync?: P.ConnectorSyncResult;
|
|
231
273
|
}>;
|
|
232
|
-
|
|
274
|
+
setAuthorizationStrategy: (slug: string, authorizationStrategy: P.ConnectorAuthorizationStrategy) => Promise<{
|
|
275
|
+
ok: boolean;
|
|
276
|
+
sync?: P.ConnectorSyncResult;
|
|
277
|
+
}>;
|
|
278
|
+
setCredential: (slug: string, credential: string | P.ConnectorAuthorizationCredentialInput) => Promise<{
|
|
233
279
|
ok: boolean;
|
|
234
280
|
}>;
|
|
235
281
|
setSensitive: (slug: string, sensitive: boolean) => Promise<{
|
|
236
282
|
ok: boolean;
|
|
237
283
|
sync?: P.ConnectorSyncResult;
|
|
238
284
|
}>;
|
|
285
|
+
authorizations: {
|
|
286
|
+
list: () => Promise<{
|
|
287
|
+
profiles: P.ConnectorAuthorization[];
|
|
288
|
+
}>;
|
|
289
|
+
listAll: () => Promise<{
|
|
290
|
+
profiles: P.ConnectorAuthorizationRosterEntry[];
|
|
291
|
+
}>;
|
|
292
|
+
reconcile: (input: P.ReconcileConnectorAuthorizationInput) => Promise<P.ConnectorAuthorization>;
|
|
293
|
+
reconcileMember: (input: P.ReconcileMemberConnectorAuthorizationInput) => Promise<P.ConnectorAuthorization>;
|
|
294
|
+
updateCredential: (profileId: string, input: P.ConnectorAuthorizationCredentialInput) => Promise<{
|
|
295
|
+
ok: true;
|
|
296
|
+
}>;
|
|
297
|
+
revoke: (authorizationId: string) => Promise<{
|
|
298
|
+
ok: true;
|
|
299
|
+
}>;
|
|
300
|
+
activate: (authorizationId: string) => Promise<{
|
|
301
|
+
ok: true;
|
|
302
|
+
}>;
|
|
303
|
+
setDefault: (authorizationId: string) => Promise<{
|
|
304
|
+
ok: true;
|
|
305
|
+
}>;
|
|
306
|
+
pipedreamConnect: (authorizationId: string, input?: P.ConnectorAuthorizationConnectInput | undefined) => Promise<{
|
|
307
|
+
token?: string;
|
|
308
|
+
app?: string;
|
|
309
|
+
connectUrl?: string;
|
|
310
|
+
}>;
|
|
311
|
+
pipedreamFinalize: (authorizationId: string) => Promise<{
|
|
312
|
+
connected: boolean;
|
|
313
|
+
accountId?: string;
|
|
314
|
+
}>;
|
|
315
|
+
};
|
|
316
|
+
/** @deprecated Use `authorizations`. */
|
|
239
317
|
profiles: {
|
|
240
318
|
list: () => Promise<{
|
|
241
|
-
profiles: P.
|
|
319
|
+
profiles: P.ConnectorAuthorization[];
|
|
320
|
+
}>;
|
|
321
|
+
listAll: () => Promise<{
|
|
322
|
+
profiles: P.ConnectorAuthorizationRosterEntry[];
|
|
242
323
|
}>;
|
|
243
|
-
reconcile: (input: P.
|
|
244
|
-
reconcileMember: (input: P.
|
|
245
|
-
updateCredential: (profileId: string, input: {
|
|
246
|
-
value: string;
|
|
247
|
-
kind?: "secret" | "connection";
|
|
248
|
-
}) => Promise<{
|
|
324
|
+
reconcile: (input: P.ReconcileConnectorAuthorizationInput) => Promise<P.ConnectorAuthorization>;
|
|
325
|
+
reconcileMember: (input: P.ReconcileMemberConnectorAuthorizationInput) => Promise<P.ConnectorAuthorization>;
|
|
326
|
+
updateCredential: (profileId: string, input: P.ConnectorAuthorizationCredentialInput) => Promise<{
|
|
249
327
|
ok: true;
|
|
250
328
|
}>;
|
|
251
|
-
revoke: (
|
|
329
|
+
revoke: (authorizationId: string) => Promise<{
|
|
252
330
|
ok: true;
|
|
253
331
|
}>;
|
|
254
|
-
activate: (
|
|
332
|
+
activate: (authorizationId: string) => Promise<{
|
|
255
333
|
ok: true;
|
|
256
334
|
}>;
|
|
257
|
-
|
|
335
|
+
setDefault: (authorizationId: string) => Promise<{
|
|
336
|
+
ok: true;
|
|
337
|
+
}>;
|
|
338
|
+
pipedreamConnect: (authorizationId: string, input?: P.ConnectorAuthorizationConnectInput | undefined) => Promise<{
|
|
258
339
|
token?: string;
|
|
259
340
|
app?: string;
|
|
260
341
|
connectUrl?: string;
|
|
261
342
|
}>;
|
|
262
|
-
pipedreamFinalize: (
|
|
343
|
+
pipedreamFinalize: (authorizationId: string) => Promise<{
|
|
263
344
|
connected: boolean;
|
|
264
345
|
accountId?: string;
|
|
265
346
|
}>;
|
|
@@ -267,6 +348,9 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
267
348
|
policies: {
|
|
268
349
|
get: (slug: string) => Promise<{
|
|
269
350
|
policies: P.ConnectorPolicyRule[];
|
|
351
|
+
effective?: P.ConnectorEffectivePolicy[];
|
|
352
|
+
project_policies?: P.ConnectorPolicyRule[];
|
|
353
|
+
default_mode?: "risk" | "allow_all";
|
|
270
354
|
}>;
|
|
271
355
|
set: (slug: string, policies: P.ConnectorPolicyRule[]) => Promise<{
|
|
272
356
|
ok: boolean;
|
|
@@ -372,6 +456,8 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
372
456
|
sessions: {
|
|
373
457
|
list: (options?: Parameters<typeof P.listProjectSessions>[1]) => Promise<P.ProjectSession[]>;
|
|
374
458
|
create: (input?: Parameters<typeof P.createProjectSession>[1]) => Promise<P.ProjectSession>;
|
|
459
|
+
ensureWarm: () => Promise<P.WarmProjectSessionResult>;
|
|
460
|
+
claimWarm: (input: Parameters<typeof P.claimWarmProjectSession>[1]) => Promise<P.ProjectSession>;
|
|
375
461
|
};
|
|
376
462
|
/** Review Center — the per-project human-in-the-loop inbox (change requests, tool approvals, agent outputs/decisions). */
|
|
377
463
|
review: {
|
|
@@ -394,9 +480,8 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
394
480
|
/** The manager inbox of executor-gated actions awaiting approve/deny (APPROVE / ASK / BLOCK). */
|
|
395
481
|
approvals: {
|
|
396
482
|
list: (options?: Parameters<typeof P.listPendingApprovals>[1]) => Promise<P.PendingApprovalsResponse>;
|
|
397
|
-
resolve: (executionId: string, decision: "approve" | "deny"
|
|
483
|
+
resolve: (executionId: string, decision: "approve" | "deny") => Promise<{
|
|
398
484
|
ok: boolean;
|
|
399
|
-
scope?: "once" | "session" | "session_all";
|
|
400
485
|
}>;
|
|
401
486
|
sessionsNeedingInput: (options?: Parameters<typeof P.listSessionsNeedingInput>[1]) => Promise<P.SessionsNeedingInputResponse>;
|
|
402
487
|
};
|
|
@@ -453,17 +538,10 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
453
538
|
disconnect: (connectorSlug?: string | null) => Promise<void>;
|
|
454
539
|
updatePolicy: (connectorSlug: string | null | undefined, senderPolicy: P.EmailSenderPolicy) => Promise<P.EmailInstallation>;
|
|
455
540
|
};
|
|
456
|
-
|
|
457
|
-
voices: () => Promise<P.MeetVoicesResponse | null>;
|
|
458
|
-
setVoice: (voice: string) => Promise<{
|
|
459
|
-
selected: string;
|
|
460
|
-
}>;
|
|
541
|
+
voice: {
|
|
461
542
|
setBotName: (name: string) => Promise<{
|
|
462
543
|
bot_name: string;
|
|
463
544
|
}>;
|
|
464
|
-
previewVoice: (voiceId: string) => Promise<string | null>;
|
|
465
|
-
/** Make the meeting bot speak text (text → ElevenLabs → Recall `output_audio`). */
|
|
466
|
-
speak: (botId: string, text: string, voice?: string) => Promise<P.SpeakInMeetingResult>;
|
|
467
545
|
};
|
|
468
546
|
};
|
|
469
547
|
/** Toggle an experimental feature (Customize → Settings → Experimental). Pass `enabled: null` to clear the override. */
|
|
@@ -513,16 +591,21 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
513
591
|
setAgentScope: (agentName: string, scope: {
|
|
514
592
|
env?: P.AgentGrantSet;
|
|
515
593
|
connectors?: P.AgentGrantSet;
|
|
594
|
+
connectors_required?: string[];
|
|
595
|
+
connectors_personal?: string[];
|
|
516
596
|
}) => Promise<{
|
|
517
597
|
ok: boolean;
|
|
518
598
|
agent: string;
|
|
519
599
|
env: P.AgentGrantSet;
|
|
520
600
|
connectors: P.AgentGrantSet;
|
|
601
|
+
connectors_required: string[];
|
|
521
602
|
}>;
|
|
522
603
|
session: (sessionId: string) => {
|
|
523
604
|
get: (opts?: {
|
|
524
605
|
showErrors?: boolean;
|
|
525
606
|
}) => Promise<P.ProjectSession>;
|
|
607
|
+
/** Unified finalized LLM and compute cost for this session. */
|
|
608
|
+
cost: () => Promise<P.SessionCostDetail>;
|
|
526
609
|
update: (input: Parameters<typeof P.updateProjectSession>[2]) => Promise<P.ProjectSession>;
|
|
527
610
|
delete: () => Promise<{
|
|
528
611
|
ok: boolean;
|
|
@@ -560,6 +643,8 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
560
643
|
}) => Promise<P.SessionAudit>;
|
|
561
644
|
/** Compact server-side transcript read (text + tool calls, no tool inputs/outputs) — callable with project-scoped session tokens. */
|
|
562
645
|
transcript: (options?: Parameters<typeof P.getSessionTranscript>[2]) => Promise<P.SessionTranscript>;
|
|
646
|
+
/** This session's live voice-call transcript (spoken turns + ask_kortix/run_command calls). */
|
|
647
|
+
voiceTranscript: (options?: Parameters<typeof P.getVoiceTranscript>[2]) => Promise<P.VoiceTranscript>;
|
|
563
648
|
/**
|
|
564
649
|
* Resolve THIS handle's own runtime (idempotent): provisions/resumes the
|
|
565
650
|
* sandbox (long-poll until ready) and caches the resolved OpenCode session
|
|
@@ -588,6 +673,20 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
588
673
|
proxyUrl: (url?: string) => string | undefined;
|
|
589
674
|
/** Pick the model `send` will use for subsequent prompts (until changed). */
|
|
590
675
|
setModel: (model: SessionModel | undefined) => void;
|
|
676
|
+
/**
|
|
677
|
+
* PERSIST a new model for this session server-side, re-pointing the
|
|
678
|
+
* running sandbox. Distinct from `setModel`, which only chooses what the
|
|
679
|
+
* NEXT local `send` asks for and never leaves this handle.
|
|
680
|
+
*
|
|
681
|
+
* Restarting the runtime is how the change takes effect, so an in-flight
|
|
682
|
+
* turn ends. `applied_live` reports whether a running session took it now
|
|
683
|
+
* or whether it applies at next start.
|
|
684
|
+
*/
|
|
685
|
+
changeModel: (model: string) => Promise<P.SessionModelChangeResult>;
|
|
686
|
+
/** Read the authoritative secret allowlist and connector authorizations. */
|
|
687
|
+
scope: () => Promise<P.SessionScope>;
|
|
688
|
+
/** Re-scope a running session — set semantics; see setProjectSessionScope. */
|
|
689
|
+
rescope: (scope: P.SessionScopeInput) => Promise<P.SessionScope>;
|
|
591
690
|
/** Pick the agent `send` will use for subsequent prompts (until changed). */
|
|
592
691
|
setAgent: (agent: string | undefined) => void;
|
|
593
692
|
/**
|
|
@@ -622,6 +721,31 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
622
721
|
request: Request;
|
|
623
722
|
response: Response;
|
|
624
723
|
}>;
|
|
724
|
+
/**
|
|
725
|
+
* Stage a reversible rollback at one user message on this same canonical
|
|
726
|
+
* OpenCode session. The next prompt commits the new path.
|
|
727
|
+
*/
|
|
728
|
+
rewind: (messageId: string) => Promise<({
|
|
729
|
+
data: import("@opencode-ai/sdk/v2/types").Session;
|
|
730
|
+
error: undefined;
|
|
731
|
+
} | {
|
|
732
|
+
data: undefined;
|
|
733
|
+
error: import("@opencode-ai/sdk/v2/types").EffectHttpApiErrorBadRequest | import("@opencode-ai/sdk/v2/types").InvalidRequestError | import("@opencode-ai/sdk/v2/types").NotFoundError | import("@opencode-ai/sdk/v2/types").SessionBusyError;
|
|
734
|
+
}) & {
|
|
735
|
+
request: Request;
|
|
736
|
+
response: Response;
|
|
737
|
+
}>;
|
|
738
|
+
/** Restore the path removed by `rewind()` before another prompt commits it. */
|
|
739
|
+
restoreRewind: () => Promise<({
|
|
740
|
+
data: import("@opencode-ai/sdk/v2/types").Session;
|
|
741
|
+
error: undefined;
|
|
742
|
+
} | {
|
|
743
|
+
data: undefined;
|
|
744
|
+
error: import("@opencode-ai/sdk/v2/types").EffectHttpApiErrorBadRequest | import("@opencode-ai/sdk/v2/types").InvalidRequestError | import("@opencode-ai/sdk/v2/types").NotFoundError | import("@opencode-ai/sdk/v2/types").SessionBusyError;
|
|
745
|
+
}) & {
|
|
746
|
+
request: Request;
|
|
747
|
+
response: Response;
|
|
748
|
+
}>;
|
|
625
749
|
/**
|
|
626
750
|
* Live SSE stream of THIS session's runtime events (message/part
|
|
627
751
|
* updates, session status, permissions/questions, lsp diagnostics, …).
|
|
@@ -684,6 +808,8 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
684
808
|
get: (opts?: {
|
|
685
809
|
showErrors?: boolean;
|
|
686
810
|
}) => Promise<P.ProjectSession>;
|
|
811
|
+
/** Unified finalized LLM and compute cost for this session. */
|
|
812
|
+
cost: () => Promise<P.SessionCostDetail>;
|
|
687
813
|
update: (input: Parameters<typeof P.updateProjectSession>[2]) => Promise<P.ProjectSession>;
|
|
688
814
|
delete: () => Promise<{
|
|
689
815
|
ok: boolean;
|
|
@@ -721,6 +847,8 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
721
847
|
}) => Promise<P.SessionAudit>;
|
|
722
848
|
/** Compact server-side transcript read (text + tool calls, no tool inputs/outputs) — callable with project-scoped session tokens. */
|
|
723
849
|
transcript: (options?: Parameters<typeof P.getSessionTranscript>[2]) => Promise<P.SessionTranscript>;
|
|
850
|
+
/** This session's live voice-call transcript (spoken turns + ask_kortix/run_command calls). */
|
|
851
|
+
voiceTranscript: (options?: Parameters<typeof P.getVoiceTranscript>[2]) => Promise<P.VoiceTranscript>;
|
|
724
852
|
/**
|
|
725
853
|
* Resolve THIS handle's own runtime (idempotent): provisions/resumes the
|
|
726
854
|
* sandbox (long-poll until ready) and caches the resolved OpenCode session
|
|
@@ -749,6 +877,20 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
749
877
|
proxyUrl: (url?: string) => string | undefined;
|
|
750
878
|
/** Pick the model `send` will use for subsequent prompts (until changed). */
|
|
751
879
|
setModel: (model: SessionModel | undefined) => void;
|
|
880
|
+
/**
|
|
881
|
+
* PERSIST a new model for this session server-side, re-pointing the
|
|
882
|
+
* running sandbox. Distinct from `setModel`, which only chooses what the
|
|
883
|
+
* NEXT local `send` asks for and never leaves this handle.
|
|
884
|
+
*
|
|
885
|
+
* Restarting the runtime is how the change takes effect, so an in-flight
|
|
886
|
+
* turn ends. `applied_live` reports whether a running session took it now
|
|
887
|
+
* or whether it applies at next start.
|
|
888
|
+
*/
|
|
889
|
+
changeModel: (model: string) => Promise<P.SessionModelChangeResult>;
|
|
890
|
+
/** Read the authoritative secret allowlist and connector authorizations. */
|
|
891
|
+
scope: () => Promise<P.SessionScope>;
|
|
892
|
+
/** Re-scope a running session — set semantics; see setProjectSessionScope. */
|
|
893
|
+
rescope: (scope: P.SessionScopeInput) => Promise<P.SessionScope>;
|
|
752
894
|
/** Pick the agent `send` will use for subsequent prompts (until changed). */
|
|
753
895
|
setAgent: (agent: string | undefined) => void;
|
|
754
896
|
/**
|
|
@@ -783,6 +925,31 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
783
925
|
request: Request;
|
|
784
926
|
response: Response;
|
|
785
927
|
}>;
|
|
928
|
+
/**
|
|
929
|
+
* Stage a reversible rollback at one user message on this same canonical
|
|
930
|
+
* OpenCode session. The next prompt commits the new path.
|
|
931
|
+
*/
|
|
932
|
+
rewind: (messageId: string) => Promise<({
|
|
933
|
+
data: import("@opencode-ai/sdk/v2/types").Session;
|
|
934
|
+
error: undefined;
|
|
935
|
+
} | {
|
|
936
|
+
data: undefined;
|
|
937
|
+
error: import("@opencode-ai/sdk/v2/types").EffectHttpApiErrorBadRequest | import("@opencode-ai/sdk/v2/types").InvalidRequestError | import("@opencode-ai/sdk/v2/types").NotFoundError | import("@opencode-ai/sdk/v2/types").SessionBusyError;
|
|
938
|
+
}) & {
|
|
939
|
+
request: Request;
|
|
940
|
+
response: Response;
|
|
941
|
+
}>;
|
|
942
|
+
/** Restore the path removed by `rewind()` before another prompt commits it. */
|
|
943
|
+
restoreRewind: () => Promise<({
|
|
944
|
+
data: import("@opencode-ai/sdk/v2/types").Session;
|
|
945
|
+
error: undefined;
|
|
946
|
+
} | {
|
|
947
|
+
data: undefined;
|
|
948
|
+
error: import("@opencode-ai/sdk/v2/types").EffectHttpApiErrorBadRequest | import("@opencode-ai/sdk/v2/types").InvalidRequestError | import("@opencode-ai/sdk/v2/types").NotFoundError | import("@opencode-ai/sdk/v2/types").SessionBusyError;
|
|
949
|
+
}) & {
|
|
950
|
+
request: Request;
|
|
951
|
+
response: Response;
|
|
952
|
+
}>;
|
|
786
953
|
/**
|
|
787
954
|
* Live SSE stream of THIS session's runtime events (message/part
|
|
788
955
|
* updates, session status, permissions/questions, lsp diagnostics, …).
|
|
@@ -852,7 +1019,7 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
852
1019
|
saveInstallation: typeof P.saveGitHubInstallation;
|
|
853
1020
|
deleteInstallation: typeof P.deleteGitHubInstallation;
|
|
854
1021
|
};
|
|
855
|
-
/** Billing read surface
|
|
1022
|
+
/** Billing read surface, including unified session costs. */
|
|
856
1023
|
billing: {
|
|
857
1024
|
accountState: typeof P.getAccountState;
|
|
858
1025
|
accountStateMinimal: typeof P.getAccountStateMinimal;
|
|
@@ -860,6 +1027,13 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
860
1027
|
transactionsSummary: typeof P.getBillingTransactionsSummary;
|
|
861
1028
|
creditBreakdown: typeof P.getBillingCreditBreakdown;
|
|
862
1029
|
usageHistory: typeof P.getBillingUsageHistory;
|
|
1030
|
+
/** Usage rollup (/v1/usage), optionally grouped by model, provider, or day. */
|
|
1031
|
+
usageRollup: typeof P.getUsageRollup;
|
|
1032
|
+
/** Unified finalized LLM and compute cost by session. */
|
|
1033
|
+
sessionCosts: {
|
|
1034
|
+
list: typeof P.listSessionCosts;
|
|
1035
|
+
get: typeof P.getSessionCostRecord;
|
|
1036
|
+
};
|
|
863
1037
|
tierConfigurations: typeof P.getBillingTierConfigurations;
|
|
864
1038
|
/** Stripe checkout — start a subscription and confirm it post-redirect. */
|
|
865
1039
|
checkout: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kortix.d.ts","sourceRoot":"","sources":["../../../src/core/client/kortix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,CAAC,MAAM,iBAAiB,CAAC;AAGrC,OAAO,EAAE,KAAK,oBAAoB,EAAmC,MAAM,gBAAgB,CAAC;AAC5F,OAAO,KAAK,CAAC,MAAM,yBAAyB,CAAC;AAI7C,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAEhC,wEAAwE;AACxE,MAAM,MAAM,YAAY,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,sFAAsF;AACtF,iBAAS,OAAO,IAAI,cAAc,CAEjC;AAsBD,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,MAAM,EAAE,MAAM;CAM3B;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE;
|
|
1
|
+
{"version":3,"file":"kortix.d.ts","sourceRoot":"","sources":["../../../src/core/client/kortix.ts"],"names":[],"mappings":"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"}
|
|
@@ -159,6 +159,13 @@ export function createKortix(config, opts) {
|
|
|
159
159
|
transactionsSummary: P.getBillingTransactionsSummary,
|
|
160
160
|
creditBreakdown: P.getBillingCreditBreakdown,
|
|
161
161
|
usageHistory: P.getBillingUsageHistory,
|
|
162
|
+
/** Usage rollup (/v1/usage), optionally grouped by model, provider, or day. */
|
|
163
|
+
usageRollup: P.getUsageRollup,
|
|
164
|
+
/** Unified finalized LLM and compute cost by session. */
|
|
165
|
+
sessionCosts: {
|
|
166
|
+
list: P.listSessionCosts,
|
|
167
|
+
get: P.getSessionCostRecord,
|
|
168
|
+
},
|
|
162
169
|
tierConfigurations: P.getBillingTierConfigurations,
|
|
163
170
|
/** Stripe checkout — start a subscription and confirm it post-redirect. */
|
|
164
171
|
checkout: {
|
|
@@ -251,6 +258,18 @@ export function createKortix(config, opts) {
|
|
|
251
258
|
};
|
|
252
259
|
/** Id-bound handle for a single project: every sub-resource, projectId pre-applied. */
|
|
253
260
|
function project(projectId) {
|
|
261
|
+
const connectorAuthorizations = {
|
|
262
|
+
list: () => P.listConnectorAuthorizations(projectId),
|
|
263
|
+
listAll: () => P.listAllConnectorAuthorizations(projectId),
|
|
264
|
+
reconcile: (...a) => P.reconcileConnectorAuthorization(projectId, ...a),
|
|
265
|
+
reconcileMember: (...a) => P.reconcileMemberConnectorAuthorization(projectId, ...a),
|
|
266
|
+
updateCredential: (...a) => P.updateConnectorAuthorizationCredential(projectId, ...a),
|
|
267
|
+
revoke: (...a) => P.revokeConnectorAuthorization(projectId, ...a),
|
|
268
|
+
activate: (...a) => P.activateConnectorAuthorization(projectId, ...a),
|
|
269
|
+
setDefault: (...a) => P.setDefaultConnectorAuthorization(projectId, ...a),
|
|
270
|
+
pipedreamConnect: (...a) => P.pipedreamConnectConnectorAuthorization(projectId, ...a),
|
|
271
|
+
pipedreamFinalize: (...a) => P.pipedreamFinalizeConnectorAuthorization(projectId, ...a),
|
|
272
|
+
};
|
|
254
273
|
return {
|
|
255
274
|
get: (opts) => P.getProject(projectId, opts),
|
|
256
275
|
detail: () => P.getProjectDetail(projectId),
|
|
@@ -319,18 +338,12 @@ export function createKortix(config, opts) {
|
|
|
319
338
|
},
|
|
320
339
|
setName: (...a) => P.setConnectorName(projectId, ...a),
|
|
321
340
|
setCredentialMode: (...a) => P.setConnectorCredentialMode(projectId, ...a),
|
|
341
|
+
setAuthorizationStrategy: (...a) => P.setConnectorAuthorizationStrategy(projectId, ...a),
|
|
322
342
|
setCredential: (...a) => P.setConnectorCredential(projectId, ...a),
|
|
323
343
|
setSensitive: (...a) => P.setConnectorSensitive(projectId, ...a),
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
reconcileMember: (...a) => P.reconcileMemberConnectionProfile(projectId, ...a),
|
|
328
|
-
updateCredential: (...a) => P.updateConnectionProfileCredential(projectId, ...a),
|
|
329
|
-
revoke: (...a) => P.revokeConnectionProfile(projectId, ...a),
|
|
330
|
-
activate: (...a) => P.activateConnectionProfile(projectId, ...a),
|
|
331
|
-
pipedreamConnect: (...a) => P.pipedreamConnectConnectionProfile(projectId, ...a),
|
|
332
|
-
pipedreamFinalize: (...a) => P.pipedreamFinalizeConnectionProfile(projectId, ...a),
|
|
333
|
-
},
|
|
344
|
+
authorizations: connectorAuthorizations,
|
|
345
|
+
/** @deprecated Use `authorizations`. */
|
|
346
|
+
profiles: connectorAuthorizations,
|
|
334
347
|
policies: {
|
|
335
348
|
get: (...a) => P.getConnectorPolicies(projectId, ...a),
|
|
336
349
|
set: (...a) => P.setConnectorPolicies(projectId, ...a),
|
|
@@ -390,6 +403,8 @@ export function createKortix(config, opts) {
|
|
|
390
403
|
sessions: {
|
|
391
404
|
list: (options) => P.listProjectSessions(projectId, options),
|
|
392
405
|
create: (input) => P.createProjectSession(projectId, input),
|
|
406
|
+
ensureWarm: () => P.ensureWarmProjectSession(projectId),
|
|
407
|
+
claimWarm: (input) => P.claimWarmProjectSession(projectId, input),
|
|
393
408
|
},
|
|
394
409
|
/** Review Center — the per-project human-in-the-loop inbox (change requests, tool approvals, agent outputs/decisions). */
|
|
395
410
|
review: {
|
|
@@ -449,13 +464,8 @@ export function createKortix(config, opts) {
|
|
|
449
464
|
disconnect: (connectorSlug) => P.disconnectEmail(projectId, connectorSlug),
|
|
450
465
|
updatePolicy: (...a) => P.updateEmailPolicy(projectId, ...a),
|
|
451
466
|
},
|
|
452
|
-
|
|
453
|
-
voices: () => P.getMeetVoices(projectId),
|
|
454
|
-
setVoice: (voice) => P.setMeetVoice(projectId, voice),
|
|
467
|
+
voice: {
|
|
455
468
|
setBotName: (name) => P.setMeetBotName(projectId, name),
|
|
456
|
-
previewVoice: (voiceId) => P.previewMeetVoice(projectId, voiceId),
|
|
457
|
-
/** Make the meeting bot speak text (text → ElevenLabs → Recall `output_audio`). */
|
|
458
|
-
speak: (botId, text, voice) => P.speakInMeeting(projectId, botId, text, voice),
|
|
459
469
|
},
|
|
460
470
|
},
|
|
461
471
|
/** Toggle an experimental feature (Customize → Settings → Experimental). Pass `enabled: null` to clear the override. */
|
|
@@ -498,6 +508,43 @@ export function createKortix(config, opts) {
|
|
|
498
508
|
let _ready = null;
|
|
499
509
|
let _model;
|
|
500
510
|
let _agent;
|
|
511
|
+
let _persistedPromptDefaults = null;
|
|
512
|
+
/**
|
|
513
|
+
* Resolve the server-owned prompt defaults once per handle.
|
|
514
|
+
*
|
|
515
|
+
* A stateful snapshot can contain an existing OpenCode session. OpenCode
|
|
516
|
+
* then reuses that session's last model unless every prompt specifies the
|
|
517
|
+
* current project-session model. Read the persisted Kortix session so the
|
|
518
|
+
* first SDK prompt cannot inherit stale snapshot configuration.
|
|
519
|
+
*/
|
|
520
|
+
async function persistedPromptDefaults() {
|
|
521
|
+
if (!_persistedPromptDefaults) {
|
|
522
|
+
_persistedPromptDefaults = P.getProjectSession(projectId, sessionId, {
|
|
523
|
+
showErrors: false,
|
|
524
|
+
}).then((projectSession) => {
|
|
525
|
+
const modelReference = typeof projectSession.metadata?.opencode_model === 'string'
|
|
526
|
+
? projectSession.metadata.opencode_model.trim()
|
|
527
|
+
: '';
|
|
528
|
+
const separator = modelReference.indexOf('/');
|
|
529
|
+
const model = separator > 0 && separator < modelReference.length - 1
|
|
530
|
+
? {
|
|
531
|
+
providerID: modelReference.slice(0, separator),
|
|
532
|
+
modelID: modelReference.slice(separator + 1),
|
|
533
|
+
}
|
|
534
|
+
: undefined;
|
|
535
|
+
const agent = projectSession.agent_name?.trim() || undefined;
|
|
536
|
+
return { model, agent };
|
|
537
|
+
});
|
|
538
|
+
}
|
|
539
|
+
try {
|
|
540
|
+
return await _persistedPromptDefaults;
|
|
541
|
+
}
|
|
542
|
+
catch (error) {
|
|
543
|
+
// A transient read must not poison every later send on this handle.
|
|
544
|
+
_persistedPromptDefaults = null;
|
|
545
|
+
throw error;
|
|
546
|
+
}
|
|
547
|
+
}
|
|
501
548
|
/**
|
|
502
549
|
* Adopt an already-resolved runtime for THIS (projectId, sessionId) from
|
|
503
550
|
* the shared session-runtime registry, if this handle hasn't resolved one
|
|
@@ -618,6 +665,8 @@ export function createKortix(config, opts) {
|
|
|
618
665
|
return {
|
|
619
666
|
// ── lifecycle (Kortix REST) ──────────────────────────────────────────
|
|
620
667
|
get: (opts) => P.getProjectSession(projectId, sessionId, opts),
|
|
668
|
+
/** Unified finalized LLM and compute cost for this session. */
|
|
669
|
+
cost: () => P.getSessionCostRecord(sessionId, { projectId }),
|
|
621
670
|
update: (input) => P.updateProjectSession(projectId, sessionId, input),
|
|
622
671
|
delete: () => {
|
|
623
672
|
// A deleted session's sandbox is gone — never let a later handle for
|
|
@@ -648,6 +697,8 @@ export function createKortix(config, opts) {
|
|
|
648
697
|
audit: (limit, options) => P.getSessionAudit(projectId, sessionId, limit, options),
|
|
649
698
|
/** Compact server-side transcript read (text + tool calls, no tool inputs/outputs) — callable with project-scoped session tokens. */
|
|
650
699
|
transcript: (options) => P.getSessionTranscript(projectId, sessionId, options),
|
|
700
|
+
/** This session's live voice-call transcript (spoken turns + ask_kortix/run_command calls). */
|
|
701
|
+
voiceTranscript: (options) => P.getVoiceTranscript(projectId, sessionId, options),
|
|
651
702
|
/**
|
|
652
703
|
* Resolve THIS handle's own runtime (idempotent): provisions/resumes the
|
|
653
704
|
* sandbox (long-poll until ready) and caches the resolved OpenCode session
|
|
@@ -684,6 +735,24 @@ export function createKortix(config, opts) {
|
|
|
684
735
|
setModel: (model) => {
|
|
685
736
|
_model = model;
|
|
686
737
|
},
|
|
738
|
+
/**
|
|
739
|
+
* PERSIST a new model for this session server-side, re-pointing the
|
|
740
|
+
* running sandbox. Distinct from `setModel`, which only chooses what the
|
|
741
|
+
* NEXT local `send` asks for and never leaves this handle.
|
|
742
|
+
*
|
|
743
|
+
* Restarting the runtime is how the change takes effect, so an in-flight
|
|
744
|
+
* turn ends. `applied_live` reports whether a running session took it now
|
|
745
|
+
* or whether it applies at next start.
|
|
746
|
+
*/
|
|
747
|
+
changeModel: async (model) => {
|
|
748
|
+
const result = await P.setProjectSessionModel(projectId, sessionId, model);
|
|
749
|
+
_persistedPromptDefaults = null;
|
|
750
|
+
return result;
|
|
751
|
+
},
|
|
752
|
+
/** Read the authoritative secret allowlist and connector authorizations. */
|
|
753
|
+
scope: () => P.getProjectSessionScope(projectId, sessionId),
|
|
754
|
+
/** Re-scope a running session — set semantics; see setProjectSessionScope. */
|
|
755
|
+
rescope: (scope) => P.setProjectSessionScope(projectId, sessionId, scope),
|
|
687
756
|
/** Pick the agent `send` will use for subsequent prompts (until changed). */
|
|
688
757
|
setAgent: (agent) => {
|
|
689
758
|
_agent = agent;
|
|
@@ -695,8 +764,11 @@ export function createKortix(config, opts) {
|
|
|
695
764
|
*/
|
|
696
765
|
send: async (text, opts) => {
|
|
697
766
|
const { opencodeSessionId, runtimeUrl } = await ensureReady();
|
|
698
|
-
const
|
|
699
|
-
const
|
|
767
|
+
const selectedModel = opts?.model ?? _model;
|
|
768
|
+
const selectedAgent = opts?.agent ?? _agent;
|
|
769
|
+
const persisted = selectedModel && selectedAgent ? {} : await persistedPromptDefaults();
|
|
770
|
+
const model = selectedModel ?? persisted.model;
|
|
771
|
+
const agent = selectedAgent ?? persisted.agent;
|
|
700
772
|
return getClientForUrl(runtimeUrl).session.prompt({
|
|
701
773
|
sessionID: opencodeSessionId,
|
|
702
774
|
parts: [{ type: 'text', text }],
|
|
@@ -707,7 +779,27 @@ export function createKortix(config, opts) {
|
|
|
707
779
|
/** Abort the agent's current run in this session. */
|
|
708
780
|
abort: async () => {
|
|
709
781
|
const { opencodeSessionId, runtimeUrl } = await ensureReady();
|
|
710
|
-
return getClientForUrl(runtimeUrl).session.abort({
|
|
782
|
+
return getClientForUrl(runtimeUrl).session.abort({
|
|
783
|
+
sessionID: opencodeSessionId,
|
|
784
|
+
});
|
|
785
|
+
},
|
|
786
|
+
/**
|
|
787
|
+
* Stage a reversible rollback at one user message on this same canonical
|
|
788
|
+
* OpenCode session. The next prompt commits the new path.
|
|
789
|
+
*/
|
|
790
|
+
rewind: async (messageId) => {
|
|
791
|
+
const { opencodeSessionId, runtimeUrl } = await ensureReady();
|
|
792
|
+
return getClientForUrl(runtimeUrl).session.revert({
|
|
793
|
+
sessionID: opencodeSessionId,
|
|
794
|
+
messageID: messageId,
|
|
795
|
+
});
|
|
796
|
+
},
|
|
797
|
+
/** Restore the path removed by `rewind()` before another prompt commits it. */
|
|
798
|
+
restoreRewind: async () => {
|
|
799
|
+
const { opencodeSessionId, runtimeUrl } = await ensureReady();
|
|
800
|
+
return getClientForUrl(runtimeUrl).session.unrevert({
|
|
801
|
+
sessionID: opencodeSessionId,
|
|
802
|
+
});
|
|
711
803
|
},
|
|
712
804
|
/**
|
|
713
805
|
* Live SSE stream of THIS session's runtime events (message/part
|
|
@@ -785,7 +877,7 @@ export function createKortix(config, opts) {
|
|
|
785
877
|
session,
|
|
786
878
|
/** GitHub App installation + repository linking (account-scoped). */
|
|
787
879
|
github,
|
|
788
|
-
/** Billing read surface
|
|
880
|
+
/** Billing read surface, including unified session costs. */
|
|
789
881
|
billing,
|
|
790
882
|
/** Public share links for a sandbox port (`/v1/p/share`, sandbox-scoped). */
|
|
791
883
|
sandboxShares,
|