@kortix/sdk 0.12.5 → 0.12.7
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 +29 -2
- package/dist/browser/stores/sync-store/stream-cache.d.ts +29 -0
- package/dist/browser/stores/sync-store/stream-cache.d.ts.map +1 -1
- package/dist/browser/stores/sync-store/stream-cache.js +127 -18
- package/dist/browser/stores/sync-store/stream-cache.js.map +1 -1
- package/dist/core/client/kortix.d.ts +57 -12
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +40 -1
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/http/api/errors.d.ts +26 -0
- package/dist/core/http/api/errors.d.ts.map +1 -1
- package/dist/core/http/api/errors.js +44 -0
- package/dist/core/http/api/errors.js.map +1 -1
- package/dist/core/http/api-client.d.ts +37 -1
- package/dist/core/http/api-client.d.ts.map +1 -1
- package/dist/core/http/api-client.js +92 -17
- package/dist/core/http/api-client.js.map +1 -1
- package/dist/core/http/opencode-errors.d.ts.map +1 -1
- package/dist/core/http/opencode-errors.js +19 -0
- package/dist/core/http/opencode-errors.js.map +1 -1
- package/dist/core/rest/platform-client/host-boundary.d.ts +17 -0
- package/dist/core/rest/platform-client/host-boundary.d.ts.map +1 -1
- package/dist/core/rest/platform-client/host-boundary.js +21 -0
- package/dist/core/rest/platform-client/host-boundary.js.map +1 -1
- package/dist/core/rest/projects-client/apps.d.ts +216 -0
- package/dist/core/rest/projects-client/apps.d.ts.map +1 -0
- package/dist/core/rest/projects-client/apps.js +105 -0
- package/dist/core/rest/projects-client/apps.js.map +1 -0
- package/dist/core/rest/projects-client/audit.d.ts +39 -2
- package/dist/core/rest/projects-client/audit.d.ts.map +1 -1
- package/dist/core/rest/projects-client/audit.js +46 -2
- package/dist/core/rest/projects-client/audit.js.map +1 -1
- package/dist/core/rest/projects-client/connectors.d.ts +88 -3
- package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
- package/dist/core/rest/projects-client/connectors.js +43 -6
- package/dist/core/rest/projects-client/connectors.js.map +1 -1
- package/dist/core/rest/projects-client/iam.d.ts +3 -1
- package/dist/core/rest/projects-client/iam.d.ts.map +1 -1
- package/dist/core/rest/projects-client/iam.js +2 -0
- package/dist/core/rest/projects-client/iam.js.map +1 -1
- package/dist/core/rest/projects-client/index.d.ts +1 -0
- package/dist/core/rest/projects-client/index.d.ts.map +1 -1
- package/dist/core/rest/projects-client/index.js +1 -0
- package/dist/core/rest/projects-client/index.js.map +1 -1
- package/dist/core/rest/projects-client/projects.d.ts +136 -15
- package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
- package/dist/core/rest/projects-client/projects.js +180 -5
- package/dist/core/rest/projects-client/projects.js.map +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +50 -5
- package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sessions.js +91 -7
- package/dist/core/rest/projects-client/sessions.js.map +1 -1
- package/dist/core/turns/view-model.d.ts +15 -0
- package/dist/core/turns/view-model.d.ts.map +1 -1
- package/dist/core/turns/view-model.js +19 -2
- package/dist/core/turns/view-model.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/kortix.esm.min.js +43 -31
- package/dist/kortix.global.js +43 -31
- package/dist/react/index.d.ts +9 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +14 -0
- package/dist/react/index.js.map +1 -1
- package/dist/react/invalidate-project.d.ts +76 -0
- package/dist/react/invalidate-project.d.ts.map +1 -0
- package/dist/react/invalidate-project.js +72 -0
- package/dist/react/invalidate-project.js.map +1 -0
- package/dist/react/provider-refresh.d.ts.map +1 -1
- package/dist/react/provider-refresh.js +12 -3
- package/dist/react/provider-refresh.js.map +1 -1
- package/dist/react/query-contracts.d.ts +112 -0
- package/dist/react/query-contracts.d.ts.map +1 -0
- package/dist/react/query-contracts.js +100 -0
- package/dist/react/query-contracts.js.map +1 -0
- package/dist/react/query-keys.d.ts +251 -0
- package/dist/react/query-keys.d.ts.map +1 -0
- package/dist/react/query-keys.js +249 -0
- package/dist/react/query-keys.js.map +1 -0
- package/dist/react/session-title-sync.d.ts.map +1 -1
- package/dist/react/session-title-sync.js +14 -4
- package/dist/react/session-title-sync.js.map +1 -1
- package/dist/react/use-admin-accounts.d.ts +85 -0
- package/dist/react/use-admin-accounts.d.ts.map +1 -1
- package/dist/react/use-admin-accounts.js +100 -0
- package/dist/react/use-admin-accounts.js.map +1 -1
- package/dist/react/use-admin-activity-analytics.d.ts +91 -0
- package/dist/react/use-admin-activity-analytics.d.ts.map +1 -0
- package/dist/react/use-admin-activity-analytics.js +83 -0
- package/dist/react/use-admin-activity-analytics.js.map +1 -0
- package/dist/react/use-admin-projects.d.ts +50 -0
- package/dist/react/use-admin-projects.d.ts.map +1 -0
- package/dist/react/use-admin-projects.js +28 -0
- package/dist/react/use-admin-projects.js.map +1 -0
- package/dist/react/use-canonical-opencode-session.d.ts.map +1 -1
- package/dist/react/use-canonical-opencode-session.js +12 -7
- package/dist/react/use-canonical-opencode-session.js.map +1 -1
- package/dist/react/use-feature-flag.d.ts +23 -0
- package/dist/react/use-feature-flag.d.ts.map +1 -0
- package/dist/react/use-feature-flag.js +32 -0
- package/dist/react/use-feature-flag.js.map +1 -0
- package/dist/react/use-gateway-catalog-sync.d.ts.map +1 -1
- package/dist/react/use-gateway-catalog-sync.js +5 -2
- package/dist/react/use-gateway-catalog-sync.js.map +1 -1
- package/dist/react/use-model-defaults.d.ts.map +1 -1
- package/dist/react/use-model-defaults.js +3 -1
- package/dist/react/use-model-defaults.js.map +1 -1
- package/dist/react/use-model-enablement.d.ts.map +1 -1
- package/dist/react/use-model-enablement.js +6 -2
- package/dist/react/use-model-enablement.js.map +1 -1
- package/dist/react/use-opencode-events/handle-event.d.ts +6 -0
- package/dist/react/use-opencode-events/handle-event.d.ts.map +1 -1
- package/dist/react/use-opencode-events/handle-event.js +11 -5
- package/dist/react/use-opencode-events/handle-event.js.map +1 -1
- package/dist/react/use-opencode-events/helpers.d.ts +44 -1
- package/dist/react/use-opencode-events/helpers.d.ts.map +1 -1
- package/dist/react/use-opencode-events/helpers.js +88 -6
- package/dist/react/use-opencode-events/helpers.js.map +1 -1
- package/dist/react/use-opencode-events/index.d.ts.map +1 -1
- package/dist/react/use-opencode-events/index.js +8 -0
- package/dist/react/use-opencode-events/index.js.map +1 -1
- package/dist/react/use-opencode-sessions/agents.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/agents.js +10 -1
- package/dist/react/use-opencode-sessions/agents.js.map +1 -1
- package/dist/react/use-opencode-sessions/providers.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/providers.js +9 -2
- package/dist/react/use-opencode-sessions/providers.js.map +1 -1
- package/dist/react/use-project-apps.d.ts +410 -0
- package/dist/react/use-project-apps.d.ts.map +1 -0
- package/dist/react/use-project-apps.js +98 -0
- package/dist/react/use-project-apps.js.map +1 -0
- package/dist/react/use-project-config.d.ts +7 -0
- package/dist/react/use-project-config.d.ts.map +1 -1
- package/dist/react/use-project-config.js +14 -4
- package/dist/react/use-project-config.js.map +1 -1
- package/dist/react/use-project-models.d.ts.map +1 -1
- package/dist/react/use-project-models.js +8 -2
- package/dist/react/use-project-models.js.map +1 -1
- package/dist/react/use-project-name.d.ts +23 -0
- package/dist/react/use-project-name.d.ts.map +1 -0
- package/dist/react/use-project-name.js +44 -0
- package/dist/react/use-project-name.js.map +1 -0
- package/dist/react/use-project-secrets.d.ts +5 -2
- package/dist/react/use-project-secrets.d.ts.map +1 -1
- package/dist/react/use-project-secrets.js +8 -2
- package/dist/react/use-project-secrets.js.map +1 -1
- package/dist/react/use-project-session.d.ts +40 -0
- package/dist/react/use-project-session.d.ts.map +1 -0
- package/dist/react/use-project-session.js +49 -0
- package/dist/react/use-project-session.js.map +1 -0
- package/dist/react/use-project-triggers.d.ts +4 -2
- package/dist/react/use-project-triggers.d.ts.map +1 -1
- package/dist/react/use-project-triggers.js +7 -2
- package/dist/react/use-project-triggers.js.map +1 -1
- package/dist/react/use-session-phase.d.ts +23 -0
- package/dist/react/use-session-phase.d.ts.map +1 -0
- package/dist/react/use-session-phase.js +23 -0
- package/dist/react/use-session-phase.js.map +1 -0
- package/dist/react/use-session.d.ts +117 -1
- package/dist/react/use-session.d.ts.map +1 -1
- package/dist/react/use-session.js +222 -21
- package/dist/react/use-session.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -140,6 +140,11 @@ await s.send("Build me a widget"); // provisions/resumes if needed, then prompts
|
|
|
140
140
|
await s.rewind(userMessageId); // stages a reversible rollback on this session
|
|
141
141
|
await s.restoreRewind(); // restores the removed path before the next prompt
|
|
142
142
|
await s.previews();
|
|
143
|
+
await s.reloadConfig({ refresh_repo: false });
|
|
144
|
+
await s.reloadConfigStream(
|
|
145
|
+
{ refresh_repo: false },
|
|
146
|
+
(event) => event.type === "phase" && console.log(event.phase),
|
|
147
|
+
);
|
|
143
148
|
|
|
144
149
|
// Lower level: the typed OpenCode REST compatibility client for THIS sandbox.
|
|
145
150
|
// `.runtime` throws until the runtime is resolved, and the runtime is keyed by
|
|
@@ -148,6 +153,28 @@ const { opencodeSessionId } = await s.ensureReady();
|
|
|
148
153
|
await s.runtime.session.prompt({ sessionID: opencodeSessionId, parts });
|
|
149
154
|
```
|
|
150
155
|
|
|
156
|
+
### Apps
|
|
157
|
+
|
|
158
|
+
`kortix.project(projectId).apps` deploys immutable App versions behind one stable URL. New Apps use `private` access. Apps is an experimental project feature, so API operations return `404` until a project manager enables it.
|
|
159
|
+
|
|
160
|
+
```ts
|
|
161
|
+
const apps = kortix.project(projectId).apps;
|
|
162
|
+
const app = await apps.create({ slug: 'docs', name: 'Docs' });
|
|
163
|
+
const artifact = await apps.artifacts.uploadArchive(tarGzBytes);
|
|
164
|
+
await apps.deployments.create(app.app_id, {
|
|
165
|
+
artifact_id: artifact.artifact_id,
|
|
166
|
+
source: { kind: 'static', spa: true },
|
|
167
|
+
});
|
|
168
|
+
await apps.access.update(app.app_id, {
|
|
169
|
+
mode: 'restricted',
|
|
170
|
+
member_ids: [memberId],
|
|
171
|
+
group_ids: [groupId],
|
|
172
|
+
});
|
|
173
|
+
const browserSession = await apps.access.session(app.app_id);
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
Access modes are `private`, `project`, `restricted`, `public`, and `password`. An access session exchanges a five-minute URL for an eight-hour, host-only cookie. A stopped or idle App resumes on the same public request. Transient machine requests receive `202 app_starting` and `Retry-After: 3`.
|
|
177
|
+
|
|
151
178
|
For OpenCode REST sessions, `send()` reads the persisted session model and
|
|
152
179
|
agent before the first prompt on a handle. This prevents a snapshot-inherited
|
|
153
180
|
OpenCode session from reusing stale snapshot defaults. A per-call choice
|
|
@@ -188,8 +215,8 @@ exhaustive — see `API-MAP.md` for the full per-domain surface:
|
|
|
188
215
|
| `kortix.marketplace` | public marketplace catalog browse + sources (not project-scoped): `items` · `item` · `itemFile` · `marketplaces` · `featured` · `sources.{list,add,remove}` — distinct from the install-scoped `project(id).marketplace` |
|
|
189
216
|
| `kortix.validateToken()` | pasted-API-key validation helper — `GET /accounts/me`, never throws, resolves `{valid, identity?, error?}` |
|
|
190
217
|
| `kortix.connectors` | Connector data plane for an agent-minted session token: `catalog` · `tools` · `search` · `describe` · `call` · `uploadAttachment` |
|
|
191
|
-
| `kortix.project(id)` | id-bound handle: `.secrets` · `.access` · `.connectors` (data plane + configuration + Connections) · `.policies` · `.triggers` · `.files` · `.git` · `.changeRequests` (incl. `requestChanges`) · `.sessions` · `.tokens` (project-scoped CLI PATs — the `KORTIX_TOKEN` shape) · `.marketplace` / `.registry` (install/update/remove catalog items) · `.setupLinks.{requestSecret,requestConnector}` (agent-minted secret-entry / connector links) · `.validateManifest` · `.gitToken` · `.setDefaultAgent(name)` · `.session(sid)` (+ more namespaces: `.review`, `.approvals`, `.gateway` (incl. `.routing` and `.playground`), `.channels`, `.modelDefaults`, `.sandbox`) |
|
|
192
|
-
| `kortix.session(pid, sid)` | id-bound handle: lifecycle (`get`/`update`/`delete`/`start`/`restart`/`stop`/`setSharing`/`previews`/`commit`/`publicShares`/`ensureReady`) · finalized `cost()` · `send`/`abort`/`rewind`/`restoreRewind`/`setModel`/`setAgent` · `transcript()` · `.files` · runtime URL helpers (`health`/`previewUrl`/`proxyUrl`) · OpenCode REST compatibility escape hatches: `stream()` and `.runtime` |
|
|
218
|
+
| `kortix.project(id)` | id-bound handle: `.apps` (stable serverless App URLs, access, artifacts, deployments, logs, rollback, start/stop) · `.secrets` · `.access` · `.connectors` (data plane + configuration + Connections) · `.policies` · `.triggers` · `.files` · `.git` · `.changeRequests` (incl. `requestChanges`) · `.sessions` · `.tokens` (project-scoped CLI PATs — the `KORTIX_TOKEN` shape) · `.marketplace` / `.registry` (install/update/remove catalog items) · `.setupLinks.{requestSecret,requestConnector}` (agent-minted secret-entry / connector links) · `.validateManifest` · `.gitToken` · `.setDefaultAgent(name)` · `.session(sid)` (+ more namespaces: `.review`, `.approvals`, `.gateway` (incl. `.routing` and `.playground`), `.channels`, `.modelDefaults`, `.sandbox`) |
|
|
219
|
+
| `kortix.session(pid, sid)` | id-bound handle: lifecycle (`get`/`update`/`delete`/`start`/`restart`/`stop`/`reloadConfig`/`reloadConfigStream`/`setSharing`/`previews`/`commit`/`publicShares`/`ensureReady`) · finalized `cost()` · `send`/`abort`/`rewind`/`restoreRewind`/`setModel`/`setAgent` · `transcript()` · `.files` · runtime URL helpers (`health`/`previewUrl`/`proxyUrl`) · OpenCode REST compatibility escape hatches: `stream()` and `.runtime` |
|
|
193
220
|
| `kortix.runtime()` | the OpenCode v2 compatibility client for the active sandbox; use a session-scoped handle in multi-tenant code |
|
|
194
221
|
|
|
195
222
|
Runnable, self-contained scripts for the highest-value flows live in
|
|
@@ -1,2 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The in-progress assistant text, mirrored into `sessionStorage`.
|
|
3
|
+
*
|
|
4
|
+
* Its only consumer restores a streaming prefix after a page refresh, once, and
|
|
5
|
+
* already discards anything older than thirty minutes. That is the whole
|
|
6
|
+
* contract, and it is what makes coalescing safe: the cache is a recovery hint,
|
|
7
|
+
* not a source of truth, and the backend's hydrate replaces it moments later.
|
|
8
|
+
*
|
|
9
|
+
* It used to write on EVERY delta. Each write did `getItem` + `JSON.parse` +
|
|
10
|
+
* `JSON.stringify` + `setItem` of the entire accumulated response — so the cost
|
|
11
|
+
* of caching one answer was quadratic in its length. A 20 KB reply arriving in
|
|
12
|
+
* ~30-character deltas is ~670 writes averaging 10 KB, i.e. several megabytes of
|
|
13
|
+
* synchronous JSON and storage work on the main thread, per response, while the
|
|
14
|
+
* page is also trying to render the stream.
|
|
15
|
+
*
|
|
16
|
+
* Two changes remove it:
|
|
17
|
+
*
|
|
18
|
+
* 1. What was last written is remembered in memory, so the read-back that
|
|
19
|
+
* guarded against regressions happens once per session key per page rather
|
|
20
|
+
* than once per delta.
|
|
21
|
+
* 2. Writes are throttled leading-and-trailing. The first delta lands
|
|
22
|
+
* immediately — a refresh one second into a reply still finds text — and
|
|
23
|
+
* everything inside the window collapses into one trailing write.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* How long writes coalesce. Matches the IndexedDB transcript layer next door,
|
|
27
|
+
* and is three orders of magnitude below the consumer's staleness tolerance.
|
|
28
|
+
*/
|
|
29
|
+
export declare const STREAM_CACHE_FLUSH_MS = 500;
|
|
1
30
|
export declare function writeStreamCache(sessionID: string, messageID: string, partID: string, text: string, parentID?: string): void;
|
|
2
31
|
//# sourceMappingURL=stream-cache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-cache.d.ts","sourceRoot":"","sources":["../../../../src/browser/stores/sync-store/stream-cache.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAC/B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"stream-cache.d.ts","sourceRoot":"","sources":["../../../../src/browser/stores/sync-store/stream-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;GAGG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AA2DzC,wBAAgB,gBAAgB,CAC/B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,QAuEjB"}
|
|
@@ -1,29 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The in-progress assistant text, mirrored into `sessionStorage`.
|
|
3
|
+
*
|
|
4
|
+
* Its only consumer restores a streaming prefix after a page refresh, once, and
|
|
5
|
+
* already discards anything older than thirty minutes. That is the whole
|
|
6
|
+
* contract, and it is what makes coalescing safe: the cache is a recovery hint,
|
|
7
|
+
* not a source of truth, and the backend's hydrate replaces it moments later.
|
|
8
|
+
*
|
|
9
|
+
* It used to write on EVERY delta. Each write did `getItem` + `JSON.parse` +
|
|
10
|
+
* `JSON.stringify` + `setItem` of the entire accumulated response — so the cost
|
|
11
|
+
* of caching one answer was quadratic in its length. A 20 KB reply arriving in
|
|
12
|
+
* ~30-character deltas is ~670 writes averaging 10 KB, i.e. several megabytes of
|
|
13
|
+
* synchronous JSON and storage work on the main thread, per response, while the
|
|
14
|
+
* page is also trying to render the stream.
|
|
15
|
+
*
|
|
16
|
+
* Two changes remove it:
|
|
17
|
+
*
|
|
18
|
+
* 1. What was last written is remembered in memory, so the read-back that
|
|
19
|
+
* guarded against regressions happens once per session key per page rather
|
|
20
|
+
* than once per delta.
|
|
21
|
+
* 2. Writes are throttled leading-and-trailing. The first delta lands
|
|
22
|
+
* immediately — a refresh one second into a reply still finds text — and
|
|
23
|
+
* everything inside the window collapses into one trailing write.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* How long writes coalesce. Matches the IndexedDB transcript layer next door,
|
|
27
|
+
* and is three orders of magnitude below the consumer's staleness tolerance.
|
|
28
|
+
*/
|
|
29
|
+
export const STREAM_CACHE_FLUSH_MS = 500;
|
|
30
|
+
/**
|
|
31
|
+
* Keyed by the storage object itself rather than held in a bare module map.
|
|
32
|
+
*
|
|
33
|
+
* A page has exactly one `sessionStorage` for its lifetime, so in production
|
|
34
|
+
* this is a plain per-page cache. In tests each case installs a fresh stub and
|
|
35
|
+
* therefore gets fresh state for free — no reset hook, and so no test-only
|
|
36
|
+
* export leaking into a published package.
|
|
37
|
+
*/
|
|
38
|
+
const STATE = new WeakMap();
|
|
39
|
+
/** The one read of real storage: what a previous page load left behind. */
|
|
40
|
+
function seedEntry(store, key) {
|
|
41
|
+
const empty = { messageID: "", partID: "", latestLength: 0, writtenAt: 0 };
|
|
42
|
+
try {
|
|
43
|
+
const raw = store.getItem(key);
|
|
44
|
+
if (!raw)
|
|
45
|
+
return empty;
|
|
46
|
+
const prev = JSON.parse(raw);
|
|
47
|
+
if (!prev || typeof prev.text !== "string")
|
|
48
|
+
return empty;
|
|
49
|
+
return {
|
|
50
|
+
messageID: prev.messageID ?? "",
|
|
51
|
+
partID: prev.partID ?? "",
|
|
52
|
+
latestLength: prev.text.length,
|
|
53
|
+
writtenAt: 0,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
return empty;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function flush(store, key, entry, payload) {
|
|
61
|
+
try {
|
|
62
|
+
store.setItem(key, JSON.stringify({ ...payload, updatedAt: Date.now() }));
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
// Storage can be full or blocked; the cache is optional either way.
|
|
66
|
+
}
|
|
67
|
+
entry.messageID = payload.messageID;
|
|
68
|
+
entry.partID = payload.partID;
|
|
69
|
+
entry.writtenAt = Date.now();
|
|
70
|
+
}
|
|
1
71
|
export function writeStreamCache(sessionID, messageID, partID, text, parentID) {
|
|
2
72
|
if (typeof window === "undefined")
|
|
3
73
|
return;
|
|
4
74
|
if (!sessionID || !messageID || !partID || !text)
|
|
5
75
|
return;
|
|
6
|
-
|
|
76
|
+
let store;
|
|
7
77
|
try {
|
|
8
|
-
|
|
9
|
-
const prev = raw ? JSON.parse(raw) : null;
|
|
10
|
-
if (prev &&
|
|
11
|
-
prev.messageID === messageID &&
|
|
12
|
-
prev.partID === partID &&
|
|
13
|
-
typeof prev.text === "string" &&
|
|
14
|
-
prev.text.length >= text.length) {
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
sessionStorage.setItem(key, JSON.stringify({
|
|
18
|
-
messageID,
|
|
19
|
-
parentID,
|
|
20
|
-
partID,
|
|
21
|
-
text,
|
|
22
|
-
updatedAt: Date.now(),
|
|
23
|
-
}));
|
|
78
|
+
store = sessionStorage;
|
|
24
79
|
}
|
|
25
80
|
catch {
|
|
26
|
-
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
let byKey = STATE.get(store);
|
|
84
|
+
if (!byKey) {
|
|
85
|
+
byKey = new Map();
|
|
86
|
+
STATE.set(store, byKey);
|
|
87
|
+
}
|
|
88
|
+
const key = `opencode_stream_cache:${sessionID}`;
|
|
89
|
+
let entry = byKey.get(key);
|
|
90
|
+
if (!entry) {
|
|
91
|
+
entry = seedEntry(store, key);
|
|
92
|
+
byKey.set(key, entry);
|
|
93
|
+
}
|
|
94
|
+
const samePart = entry.messageID === messageID && entry.partID === partID;
|
|
95
|
+
// A stale, shorter snapshot of the SAME part must never regress the cache.
|
|
96
|
+
// Measured against the longest text accepted rather than the last one
|
|
97
|
+
// written, so a pending trailing write is not undone by a late short event.
|
|
98
|
+
if (samePart && text.length <= entry.latestLength)
|
|
99
|
+
return;
|
|
100
|
+
entry.latestLength = text.length;
|
|
101
|
+
const payload = { messageID, parentID, partID, text };
|
|
102
|
+
// A different part is a different subject: write it now rather than let it
|
|
103
|
+
// wait behind a window opened by the part it replaced.
|
|
104
|
+
if (!samePart) {
|
|
105
|
+
if (entry.timer) {
|
|
106
|
+
clearTimeout(entry.timer);
|
|
107
|
+
entry.timer = undefined;
|
|
108
|
+
}
|
|
109
|
+
entry.pending = undefined;
|
|
110
|
+
flush(store, key, entry, payload);
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
const elapsed = Date.now() - entry.writtenAt;
|
|
114
|
+
if (elapsed >= STREAM_CACHE_FLUSH_MS) {
|
|
115
|
+
if (entry.timer) {
|
|
116
|
+
clearTimeout(entry.timer);
|
|
117
|
+
entry.timer = undefined;
|
|
118
|
+
}
|
|
119
|
+
entry.pending = undefined;
|
|
120
|
+
flush(store, key, entry, payload);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
// Inside the window: keep only the newest text and let one timer land it.
|
|
124
|
+
// `JSON.stringify` is deliberately NOT done here — deferring it is most of
|
|
125
|
+
// the saving, since it is the part that scales with the response.
|
|
126
|
+
entry.pending = payload;
|
|
127
|
+
if (!entry.timer) {
|
|
128
|
+
const self = entry;
|
|
129
|
+
self.timer = setTimeout(() => {
|
|
130
|
+
self.timer = undefined;
|
|
131
|
+
const queued = self.pending;
|
|
132
|
+
self.pending = undefined;
|
|
133
|
+
if (queued)
|
|
134
|
+
flush(store, key, self, queued);
|
|
135
|
+
}, STREAM_CACHE_FLUSH_MS - elapsed);
|
|
27
136
|
}
|
|
28
137
|
}
|
|
29
138
|
//# sourceMappingURL=stream-cache.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-cache.js","sourceRoot":"","sources":["../../../../src/browser/stores/sync-store/stream-cache.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAC/B,SAAiB,EACjB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,QAAiB;IAEjB,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI;QAAE,OAAO;
|
|
1
|
+
{"version":3,"file":"stream-cache.js","sourceRoot":"","sources":["../../../../src/browser/stores/sync-store/stream-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAmBzC;;;;;;;GAOG;AACH,MAAM,KAAK,GAAG,IAAI,OAAO,EAAoC,CAAC;AAE9D,2EAA2E;AAC3E,SAAS,SAAS,CAAC,KAAc,EAAE,GAAW;IAC7C,MAAM,KAAK,GAAe,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACvF,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAiC,CAAC;QAC7D,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACzD,OAAO;YACN,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;YAC/B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;YACzB,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;YAC9B,SAAS,EAAE,CAAC;SACZ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED,SAAS,KAAK,CAAC,KAAc,EAAE,GAAW,EAAE,KAAiB,EAAE,OAAqB;IACnF,IAAI,CAAC;QACJ,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACR,oEAAoE;IACrE,CAAC;IACD,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC/B,SAAiB,EACjB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,QAAiB;IAEjB,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI;QAAE,OAAO;IAEzD,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACJ,KAAK,GAAG,cAAc,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;IACR,CAAC;IAED,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;QAClB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,GAAG,GAAG,yBAAyB,SAAS,EAAE,CAAC;IACjD,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC9B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;IAE1E,2EAA2E;IAC3E,sEAAsE;IACtE,4EAA4E;IAC5E,IAAI,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,YAAY;QAAE,OAAO;IAC1D,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;IAEjC,MAAM,OAAO,GAAiB,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAEpE,2EAA2E;IAC3E,uDAAuD;IACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;QACzB,CAAC;QACD,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;QAC1B,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAClC,OAAO;IACR,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;IAC7C,IAAI,OAAO,IAAI,qBAAqB,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;QACzB,CAAC;QACD,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;QAC1B,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAClC,OAAO;IACR,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,kEAAkE;IAClE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,MAAM;gBAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,CAAC;IACrC,CAAC;AACF,CAAC"}
|
|
@@ -155,6 +155,8 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
155
155
|
file_count: number;
|
|
156
156
|
files: P.ProjectFileEntry[];
|
|
157
157
|
}>;
|
|
158
|
+
/** Canonical project-scoped audit timeline. */
|
|
159
|
+
audit: (options?: Parameters<typeof P.listProjectAudit>[1]) => Promise<P.AuditEventList>;
|
|
158
160
|
update: (input: Parameters<typeof P.updateProject>[1]) => Promise<P.KortixProject>;
|
|
159
161
|
archive: () => Promise<{
|
|
160
162
|
ok: boolean;
|
|
@@ -163,6 +165,35 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
163
165
|
modelPicker: () => Promise<P.ProjectLlmCatalogResponse>;
|
|
164
166
|
sandboxHealth: () => Promise<P.ProjectSandboxHealth>;
|
|
165
167
|
onboardingComplete: (completed: boolean) => Promise<P.KortixProject>;
|
|
168
|
+
/** Provider-neutral serverless Apps owned by this project. */
|
|
169
|
+
apps: {
|
|
170
|
+
list: () => Promise<P.App[]>;
|
|
171
|
+
create: (input: Parameters<typeof P.createApp>[1]) => Promise<P.App>;
|
|
172
|
+
get: (appId: string) => Promise<P.App>;
|
|
173
|
+
update: (appId: string, input: P.UpdateAppInput) => Promise<P.App>;
|
|
174
|
+
access: {
|
|
175
|
+
get: (appId: string) => Promise<P.AppAccessConfig>;
|
|
176
|
+
update: (appId: string, input: P.UpdateAppAccessInput) => Promise<P.AppAccessConfig>;
|
|
177
|
+
session: (appId: string) => Promise<P.AppAccessSession>;
|
|
178
|
+
};
|
|
179
|
+
remove: (appId: string) => Promise<{
|
|
180
|
+
ok: boolean;
|
|
181
|
+
}>;
|
|
182
|
+
artifacts: {
|
|
183
|
+
register: (input: Parameters<typeof P.registerAppArtifact>[1]) => Promise<P.RegisterAppArtifactResponse>;
|
|
184
|
+
uploadArchive: (input: Blob | Uint8Array<ArrayBufferLike>, options?: P.UploadAppArtifactOptions | undefined) => Promise<P.AppArtifact>;
|
|
185
|
+
finalize: (artifactId: string, input: P.FinalizeAppArtifactInput) => Promise<P.AppArtifact>;
|
|
186
|
+
};
|
|
187
|
+
deployments: {
|
|
188
|
+
create: (appId: string, input: P.CreateAppDeploymentInput) => Promise<P.AppDeployment>;
|
|
189
|
+
list: (appId: string) => Promise<P.AppDeployment[]>;
|
|
190
|
+
get: (appId: string, deploymentId: string) => Promise<P.AppDeploymentDetail>;
|
|
191
|
+
logs: (appId: string, deploymentId: string, options?: P.AppLogsOptions | undefined) => Promise<P.AppLogsResponse>;
|
|
192
|
+
};
|
|
193
|
+
start: (appId: string) => Promise<P.App>;
|
|
194
|
+
stop: (appId: string) => Promise<P.App>;
|
|
195
|
+
rollback: (appId: string, deploymentId: string) => Promise<P.App>;
|
|
196
|
+
};
|
|
166
197
|
/** Project-scoped CLI PATs (auto-minted at session-create as `KORTIX_TOKEN`; can also be minted by hand). */
|
|
167
198
|
tokens: {
|
|
168
199
|
list: () => Promise<P.ProjectCliTokenListResponse>;
|
|
@@ -349,10 +380,16 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
349
380
|
};
|
|
350
381
|
/** Easy-connect (Pipedream): app catalog + connect/finalize handshake. */
|
|
351
382
|
pipedream: {
|
|
352
|
-
listApps: (
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
383
|
+
listApps: (qOrQuery?: string | P.PipedreamCatalogQuery | undefined, cursor?: string | undefined) => Promise<P.PipedreamCatalogPage>;
|
|
384
|
+
/** The browse page: a fixed top slice of each of the largest
|
|
385
|
+
* categories, with each category's true total, in one request. */
|
|
386
|
+
listSections: (opts?: {
|
|
387
|
+
perCategory?: number;
|
|
388
|
+
maxCategories?: number;
|
|
389
|
+
} | undefined) => Promise<{
|
|
390
|
+
sections: P.PipedreamSection[];
|
|
391
|
+
categories: P.PipedreamCategory[];
|
|
392
|
+
indexReady?: boolean;
|
|
356
393
|
}>;
|
|
357
394
|
connect: (slug: string) => Promise<{
|
|
358
395
|
token?: string;
|
|
@@ -548,8 +585,10 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
548
585
|
}>;
|
|
549
586
|
};
|
|
550
587
|
};
|
|
551
|
-
/** Toggle
|
|
552
|
-
|
|
588
|
+
/** Toggle a feature flag (Customize → Feature flags). Pass `enabled: null` to clear the override. */
|
|
589
|
+
updateFeatureFlag: (feature: P.FeatureFlagKey, enabled: boolean | null) => Promise<P.KortixProject>;
|
|
590
|
+
/** @deprecated Renamed to `updateFeatureFlag`. Keeps the legacy `/experimental` wire path for older deployed APIs. */
|
|
591
|
+
updateExperimentalFeature: (feature: P.FeatureFlagKey, enabled: boolean | null) => Promise<P.KortixProject>;
|
|
553
592
|
/** Default model preferences (account/agent/project scope, gateway-resolved). */
|
|
554
593
|
modelDefaults: {
|
|
555
594
|
get: () => Promise<P.ModelDefaultsResponse>;
|
|
@@ -634,6 +673,11 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
634
673
|
* resolved again — same reason `restart` forgets it.
|
|
635
674
|
*/
|
|
636
675
|
reloadConfig: (input?: Parameters<typeof P.reloadProjectSessionConfig>[2]) => Promise<P.SessionReloadResult>;
|
|
676
|
+
/** Reload config with server-observed progress events. */
|
|
677
|
+
reloadConfigStream: (input: {
|
|
678
|
+
refresh_repo?: boolean;
|
|
679
|
+
force?: boolean;
|
|
680
|
+
}, onEvent: (event: P.SessionReloadStreamEvent) => void, options?: import("../../index.js").ApiClientOptions | undefined) => Promise<P.SessionReloadResult>;
|
|
637
681
|
setSharing: (intent: Parameters<typeof P.setProjectSessionSharing>[2]) => Promise<P.ProjectSession>;
|
|
638
682
|
previews: () => Promise<{
|
|
639
683
|
candidates: P.SessionPreviewCandidate[];
|
|
@@ -651,9 +695,7 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
651
695
|
}>;
|
|
652
696
|
};
|
|
653
697
|
/** Per-session audit trail of connector-gated agent actions. */
|
|
654
|
-
audit: (limit?: number, options?:
|
|
655
|
-
showErrors?: boolean;
|
|
656
|
-
}) => Promise<P.SessionAudit>;
|
|
698
|
+
audit: (limit?: number, options?: Parameters<typeof P.getSessionAudit>[3]) => Promise<P.SessionAudit>;
|
|
657
699
|
/** Compact server-side transcript read (text + tool calls, no tool inputs/outputs) — callable with project-scoped session tokens. */
|
|
658
700
|
transcript: (options?: Parameters<typeof P.getSessionTranscript>[2]) => Promise<P.SessionTranscript>;
|
|
659
701
|
/** This session's live voice-call transcript (spoken turns + ask_kortix/run_command calls). */
|
|
@@ -847,6 +889,11 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
847
889
|
* resolved again — same reason `restart` forgets it.
|
|
848
890
|
*/
|
|
849
891
|
reloadConfig: (input?: Parameters<typeof P.reloadProjectSessionConfig>[2]) => Promise<P.SessionReloadResult>;
|
|
892
|
+
/** Reload config with server-observed progress events. */
|
|
893
|
+
reloadConfigStream: (input: {
|
|
894
|
+
refresh_repo?: boolean;
|
|
895
|
+
force?: boolean;
|
|
896
|
+
}, onEvent: (event: P.SessionReloadStreamEvent) => void, options?: import("../../index.js").ApiClientOptions | undefined) => Promise<P.SessionReloadResult>;
|
|
850
897
|
setSharing: (intent: Parameters<typeof P.setProjectSessionSharing>[2]) => Promise<P.ProjectSession>;
|
|
851
898
|
previews: () => Promise<{
|
|
852
899
|
candidates: P.SessionPreviewCandidate[];
|
|
@@ -864,9 +911,7 @@ export declare function createKortix(config: KortixPlatformConfig, opts?: {
|
|
|
864
911
|
}>;
|
|
865
912
|
};
|
|
866
913
|
/** Per-session audit trail of connector-gated agent actions. */
|
|
867
|
-
audit: (limit?: number, options?:
|
|
868
|
-
showErrors?: boolean;
|
|
869
|
-
}) => Promise<P.SessionAudit>;
|
|
914
|
+
audit: (limit?: number, options?: Parameters<typeof P.getSessionAudit>[3]) => Promise<P.SessionAudit>;
|
|
870
915
|
/** Compact server-side transcript read (text + tool calls, no tool inputs/outputs) — callable with project-scoped session tokens. */
|
|
871
916
|
transcript: (options?: Parameters<typeof P.getSessionTranscript>[2]) => Promise<P.SessionTranscript>;
|
|
872
917
|
/** This session's live voice-call transcript (spoken turns + ask_kortix/run_command calls). */
|
|
@@ -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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"}
|
|
@@ -289,12 +289,41 @@ export function createKortix(config, opts) {
|
|
|
289
289
|
return {
|
|
290
290
|
get: (opts) => P.getProject(projectId, opts),
|
|
291
291
|
detail: () => P.getProjectDetail(projectId),
|
|
292
|
+
/** Canonical project-scoped audit timeline. */
|
|
293
|
+
audit: (options) => P.listProjectAudit(projectId, options),
|
|
292
294
|
update: (input) => P.updateProject(projectId, input),
|
|
293
295
|
archive: () => P.archiveProject(projectId),
|
|
294
296
|
llmCatalog: () => P.getProjectLlmCatalog(projectId),
|
|
295
297
|
modelPicker: () => P.getProjectModelPicker(projectId),
|
|
296
298
|
sandboxHealth: () => P.getProjectSandboxHealth(projectId),
|
|
297
299
|
onboardingComplete: (...a) => P.setProjectOnboardingComplete(projectId, ...a),
|
|
300
|
+
/** Provider-neutral serverless Apps owned by this project. */
|
|
301
|
+
apps: {
|
|
302
|
+
list: () => P.listApps(projectId),
|
|
303
|
+
create: (input) => P.createApp(projectId, input),
|
|
304
|
+
get: (appId) => P.getApp(projectId, appId),
|
|
305
|
+
update: (...a) => P.updateApp(projectId, ...a),
|
|
306
|
+
access: {
|
|
307
|
+
get: (...a) => P.getAppAccess(projectId, ...a),
|
|
308
|
+
update: (...a) => P.updateAppAccess(projectId, ...a),
|
|
309
|
+
session: (...a) => P.createAppAccessSession(projectId, ...a),
|
|
310
|
+
},
|
|
311
|
+
remove: (appId) => P.deleteApp(projectId, appId),
|
|
312
|
+
artifacts: {
|
|
313
|
+
register: (input) => P.registerAppArtifact(projectId, input),
|
|
314
|
+
uploadArchive: (...a) => P.uploadAppArtifactArchive(projectId, ...a),
|
|
315
|
+
finalize: (...a) => P.finalizeAppArtifact(projectId, ...a),
|
|
316
|
+
},
|
|
317
|
+
deployments: {
|
|
318
|
+
create: (...a) => P.createAppDeployment(projectId, ...a),
|
|
319
|
+
list: (appId) => P.listAppDeployments(projectId, appId),
|
|
320
|
+
get: (...a) => P.getAppDeployment(projectId, ...a),
|
|
321
|
+
logs: (...a) => P.getAppDeploymentLogs(projectId, ...a),
|
|
322
|
+
},
|
|
323
|
+
start: (appId) => P.startApp(projectId, appId),
|
|
324
|
+
stop: (appId) => P.stopApp(projectId, appId),
|
|
325
|
+
rollback: (...a) => P.rollbackApp(projectId, ...a),
|
|
326
|
+
},
|
|
298
327
|
/** Project-scoped CLI PATs (auto-minted at session-create as `KORTIX_TOKEN`; can also be minted by hand). */
|
|
299
328
|
tokens: {
|
|
300
329
|
list: () => P.listProjectCliTokens(projectId),
|
|
@@ -369,6 +398,9 @@ export function createKortix(config, opts) {
|
|
|
369
398
|
/** Easy-connect (Pipedream): app catalog + connect/finalize handshake. */
|
|
370
399
|
pipedream: {
|
|
371
400
|
listApps: (...a) => P.listPipedreamApps(projectId, ...a),
|
|
401
|
+
/** The browse page: a fixed top slice of each of the largest
|
|
402
|
+
* categories, with each category's true total, in one request. */
|
|
403
|
+
listSections: (...a) => P.listPipedreamSections(projectId, ...a),
|
|
372
404
|
connect: (...a) => P.pipedreamConnect(projectId, ...a),
|
|
373
405
|
finalize: (...a) => P.pipedreamFinalize(projectId, ...a),
|
|
374
406
|
},
|
|
@@ -486,7 +518,9 @@ export function createKortix(config, opts) {
|
|
|
486
518
|
setBotName: (name) => P.setMeetBotName(projectId, name),
|
|
487
519
|
},
|
|
488
520
|
},
|
|
489
|
-
/** Toggle
|
|
521
|
+
/** Toggle a feature flag (Customize → Feature flags). Pass `enabled: null` to clear the override. */
|
|
522
|
+
updateFeatureFlag: (...a) => P.updateFeatureFlag(projectId, ...a),
|
|
523
|
+
/** @deprecated Renamed to `updateFeatureFlag`. Keeps the legacy `/experimental` wire path for older deployed APIs. */
|
|
490
524
|
updateExperimentalFeature: (...a) => P.updateExperimentalFeature(projectId, ...a),
|
|
491
525
|
/** Default model preferences (account/agent/project scope, gateway-resolved). */
|
|
492
526
|
modelDefaults: {
|
|
@@ -715,6 +749,11 @@ export function createKortix(config, opts) {
|
|
|
715
749
|
forgetReady();
|
|
716
750
|
return P.reloadProjectSessionConfig(projectId, sessionId, input);
|
|
717
751
|
},
|
|
752
|
+
/** Reload config with server-observed progress events. */
|
|
753
|
+
reloadConfigStream: (...args) => {
|
|
754
|
+
forgetReady();
|
|
755
|
+
return P.reloadProjectSessionConfigStream(projectId, sessionId, ...args);
|
|
756
|
+
},
|
|
718
757
|
setSharing: (intent) => P.setProjectSessionSharing(projectId, sessionId, intent),
|
|
719
758
|
previews: () => P.getSessionPreviewCandidates(projectId, sessionId),
|
|
720
759
|
commit: (input) => P.commitSessionChanges(projectId, sessionId, input),
|