openpond 0.1.0 → 0.2.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 +4 -4
- package/dist/cache.d.ts +7 -10
- package/dist/chunks/{app-layer-XEYHFJHI.js → app-layer-F3CGXB33.js} +9 -7
- package/dist/chunks/{app-server-runtime-Y6MW4XCG.js → app-server-runtime-RHO5TFUC.js} +9 -7
- package/dist/chunks/{apps-GSXUDK6V.js → apps-L5XCL7QY.js} +12 -10
- package/dist/chunks/{chunk-J7PYGDRY.js → chunk-26AMV5ZI.js} +1 -1
- package/dist/chunks/{chunk-DNXBJZAU.js → chunk-3EB7I67T.js} +1 -1
- package/dist/chunks/{chunk-J3YDKJFD.js → chunk-3ELF4FXY.js} +19 -11
- package/dist/chunks/{chunk-HFPUR4CQ.js → chunk-3VEYNDHN.js} +10 -10
- package/dist/chunks/chunk-4KA25HUP.js +5648 -0
- package/dist/chunks/{chunk-EFET7LB7.js → chunk-6SMNG6YA.js} +62 -90
- package/dist/chunks/{chunk-N3TGCM7J.js → chunk-7RIGZB7N.js} +50 -37
- package/dist/chunks/{chunk-47EIAYI7.js → chunk-A6G3PFA5.js} +6 -4
- package/dist/chunks/{chunk-D7BO5Y5J.js → chunk-FJ2JGB2N.js} +31 -189
- package/dist/chunks/{chunk-WBAZFKC7.js → chunk-G65WAOJV.js} +2 -2
- package/dist/chunks/{chunk-CNTM26OW.js → chunk-K4TZEHAW.js} +16 -16
- package/dist/chunks/{chunk-AN2EYCN3.js → chunk-KCRCIQPD.js} +1 -5
- package/dist/chunks/chunk-OCBRPU2K.js +629 -0
- package/dist/chunks/{chunk-2JABRRNR.js → chunk-PS37DB5F.js} +1 -1
- package/dist/chunks/{chunk-TGM5IPYO.js → chunk-UZMVNKXM.js} +1 -1
- package/dist/chunks/{chunk-TZWAUV2L.js → chunk-VT6BLHMB.js} +10750 -1240
- package/dist/chunks/{chunk-5TKZBMQM.js → chunk-X6F4LBTQ.js} +102 -1
- package/dist/chunks/{chunk-6G6MDZLM.js → chunk-XA4KBDMY.js} +213 -999
- package/dist/chunks/chunk-ZNQEROWP.js +254 -0
- package/dist/chunks/{cli-L5VPOV6I.js → cli-D2MUUBEX.js} +7 -5
- package/dist/chunks/configuration-command-NR6JYIUD.js +187 -0
- package/dist/chunks/{continual-FYDKLCO7.js → continual-37CE4LLJ.js} +4 -4
- package/dist/chunks/{core-commands-MAN3CSJQ.js → core-commands-SWGIOZLW.js} +8 -6
- package/dist/chunks/database-DEYUZDIM.js +20 -0
- package/dist/chunks/{desktop-test-OE5SST2W.js → desktop-test-QOS7G5NE.js} +8 -6
- package/dist/chunks/dist-AKYCQNNF.js +187 -0
- package/dist/chunks/{extension-J3CIEDP4.js → extension-HJUJBQAD.js} +67 -730
- package/dist/chunks/{help-JNGJJFU5.js → help-J6PZ23IC.js} +1 -1
- package/dist/chunks/{opchat-6HEQJFLL.js → opchat-ABX5YBAT.js} +9 -7
- package/dist/chunks/{organizations-MWAPNOCK.js → organizations-CPNC47DO.js} +8 -6
- package/dist/chunks/{profile-P7HMONTZ.js → profile-Q3HB5MIO.js} +16 -14
- package/dist/chunks/{project-agent-2RAK7GAZ.js → project-agent-YHUBX4OR.js} +9 -7
- package/dist/chunks/{sandbox-command-G22CPFNK.js → sandbox-command-YFL5QTWX.js} +8 -6
- package/dist/chunks/{sandbox-template-S4WRUWJ6.js → sandbox-template-Z6P7NTNF.js} +12 -10
- package/dist/chunks/{src-BKBZ7WLO.js → src-7XEENEBI.js} +16 -12
- package/dist/chunks/{src-A6O6ZGIL.js → src-KBBIV4NT.js} +1338 -10969
- package/dist/chunks/{taskset-BMI7KOWP.js → taskset-2TRZBRRT.js} +1 -1
- package/dist/chunks/{teams-bot-5VBYEN7M.js → teams-bot-WD33NLH5.js} +7 -5
- package/dist/chunks/{training-UPVSGDTB.js → training-4XH37UZB.js} +1 -1
- package/dist/chunks/{workspaces-XM5BY3MO.js → workspaces-WG2MH2WE.js} +2 -2
- package/dist/cli.js +25 -17
- package/dist/client.d.ts +1 -1
- package/dist/config.d.ts +1 -0
- package/dist/index.js +20803 -15878
- package/dist/private-json-file.d.ts +1 -2
- package/dist/skills/openpond-desktop-harness/SKILL.md +1 -1
- package/dist/web/assets/App-C9aGkxVg.js +173 -0
- package/dist/web/assets/{AppDialog-CSXu5wRu.js → AppDialog-CK6_lg8c.js} +1 -1
- package/dist/web/assets/{AppTerminalPanel-y2bVL2RV.js → AppTerminalPanel-BKqgX4sd.js} +2 -2
- package/dist/web/assets/{AppsView-Bs9pwD2H.js → AppsView-B1NUuAIf.js} +1 -1
- package/dist/web/assets/{BrowserSidebar-CUgT5V1m.js → BrowserSidebar-DOvYxXeP.js} +1 -1
- package/dist/web/assets/{CartesianChart-DA85hfrP.js → CartesianChart-pOrYpzBr.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-B8mlPhM3.js → CollaborationTabs-CgbR-MBJ.js} +1 -1
- package/dist/web/assets/{CommandMenu-EwUGCeC_.js → CommandMenu-CrIr4qUX.js} +1 -1
- package/dist/web/assets/{CommunityView-IHNq-YJz.js → CommunityView-CvAVQ_HZ.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-qOL2zA26.js → ComposerCreateImproveStrip-DybcKwwd.js} +1 -1
- package/dist/web/assets/GetStartedView-DVInkexN.js +1 -0
- package/dist/web/assets/{LabModelVersionDetailPage-BK0eoUlW.js → LabModelVersionDetailPage-NaaPElmM.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-CRPb4qBn.js → LabSkillSidebar-CuaYrtiu.js} +1 -1
- package/dist/web/assets/LabsRoute-BRR6x3SX.js +2 -0
- package/dist/web/assets/{MainChatThread-Cu6_UnNE.js → MainChatThread-BfkjCZB9.js} +2 -2
- package/dist/web/assets/MainPane-Gw-YK38n.js +8 -0
- package/dist/web/assets/{MarkdownText-N60tvLug.js → MarkdownText-DOlVQR8a.js} +1 -1
- package/dist/web/assets/{Messages-CYQFLElK.js → Messages-DMubppta.js} +6 -6
- package/dist/web/assets/{NativeSkillSidebar-zbx7WmOk.js → NativeSkillSidebar-DSFwZ-od.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-B0zev5Sx.js → NewExperienceSwitcher-Dj0ePIJ-.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-lZlzrp-R.js → NewProjectDialog-B8NQV-Ji.js} +1 -1
- package/dist/web/assets/{OutputsPage-B4zYYUT5.js → OutputsPage-D_LDYTgV.js} +1 -1
- package/dist/web/assets/{ProjectsPage-97wgc84s.js → ProjectsPage-xjDYPc_W.js} +1 -1
- package/dist/web/assets/RightChatPanelStack-BktRQ9wg.js +1 -0
- package/dist/web/assets/{RightSidebarHomePanel-BUcWVJi-.js → RightSidebarHomePanel-j0VckZUu.js} +1 -1
- package/dist/web/assets/ScheduledWorkPage-1aT4bBY-.js +1 -0
- package/dist/web/assets/SettingsView-BSpuMDpv.js +9 -0
- package/dist/web/assets/SettingsView-CAH0vreE.css +1 -0
- package/dist/web/assets/{TeamChatView-Fj5_yjVE.js → TeamChatView-BPWJbDf1.js} +2 -2
- package/dist/web/assets/{TerminalOverlay-D2WBeJvp.js → TerminalOverlay-CrSwUk2d.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-dYW_dh3M.js → TrainingCreationPanel-B4HMRwUg.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-zeJWmmW6.js → TrainingDraftPanel-D4r1tN3I.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-B6SBqYuB.js → UsageSettingsSection-2aymqwIM.js} +1 -1
- package/dist/web/assets/{WorkSidebarPanel-BwbWKpOZ.js → WorkSidebarPanel-B0X0OiR6.js} +1 -1
- package/dist/web/assets/WorkspaceDiffPanel-Pg7GL0br.js +14 -0
- package/dist/web/assets/{WorkspaceEnvironmentMenu-D-3YGp06.js → WorkspaceEnvironmentMenu-OAfMEt7L.js} +3 -3
- package/dist/web/assets/{WorkspaceGitDialogs-BUbzUN4m.js → WorkspaceGitDialogs-YxcPH2Rq.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-CXPY7bBI.js → WorkspaceMonacoEditor-COKTiQZl.js} +3 -3
- package/dist/web/assets/{arrow-up-right-C7VWgGQP.js → arrow-up-right-_TX-awvK.js} +1 -1
- package/dist/web/assets/{chat-file-links-CqfMdhHQ.js → chat-file-links-CWLsRYvW.js} +1 -1
- package/dist/web/assets/chevron-up--mNnEqha.js +1 -0
- package/dist/web/assets/{clipboard-B-8k7mlT.js → clipboard-CyRSS8Sy.js} +1 -1
- package/dist/web/assets/{cloud-upload-CUVFzURz.js → cloud-upload-uBJBUYTy.js} +1 -1
- package/dist/web/assets/{cssMode-DYvfmqoL.js → cssMode-BrXSsZYs.js} +1 -1
- package/dist/web/assets/{folder-open-CnbcQIy8.js → folder-open-DktdZNW7.js} +1 -1
- package/dist/web/assets/{folder-plus-BOaLAKy4.js → folder-plus-DO06i9Vo.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-DQeHsooT.js → git-commit-horizontal-zFSIkPs7.js} +1 -1
- package/dist/web/assets/{htmlMode-BXEI-BVY.js → htmlMode-X9UMFkjt.js} +1 -1
- package/dist/web/assets/index-BEPmTPIA.js +1 -0
- package/dist/web/assets/{index-CGMb_VXm.css → index-ByQIHpc9.css} +1 -1
- package/dist/web/assets/{index-D-VK8mST.js → index-UOGdfLzi.js} +1 -1
- package/dist/web/assets/{info-DtzDuGLn.js → info-BEJXUqCD.js} +1 -1
- package/dist/web/assets/{jsonMode-Dosjh_hK.js → jsonMode-DIsB-j2E.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-BNe-6FJA.js → lspLanguageFeatures-CmZ17KpA.js} +1 -1
- package/dist/web/assets/{minimize-2-DnxKN5oK.js → minimize-2-DumTpFtE.js} +1 -1
- package/dist/web/assets/{monaco.contribution-CfF-ajhi.js → monaco.contribution-D6w5PJji.js} +2 -2
- package/dist/web/assets/{monaco.contribution-ytyanGyj.js → monaco.contribution-DJ_NmcHu.js} +2 -2
- package/dist/web/assets/{monaco.contribution-CnkROzNv.js → monaco.contribution-LZEujgny.js} +2 -2
- package/dist/web/assets/{monaco.contribution-Dyns81H2.js → monaco.contribution-YVDfJcG4.js} +2 -2
- package/dist/web/assets/{play-B3o6IAQd.js → play-CLFeH7CU.js} +1 -1
- package/dist/web/assets/{python-B7zZ_9Z_.js → python-Djbda_qZ.js} +1 -1
- package/dist/web/assets/{refresh-cw-DSJZXa8S.js → refresh-cw-B4IpQ_7Q.js} +1 -1
- package/dist/web/assets/{save-iC-AXHN6.js → save-BbTHztnA.js} +1 -1
- package/dist/web/assets/{square-B2roZTxf.js → square-BJrVbmz6.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-CjlV4YHK.js → toggleHighContrast-BopU5W9S.js} +1 -1
- package/dist/web/assets/{tsMode-XmKmSq0B.js → tsMode-CH_0_YDX.js} +1 -1
- package/dist/web/assets/{upload-BgHXNjfJ.js → upload-UumVeufu.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-CVJz0AMr.js → useLocalAgentSchedules-BRa23U7O.js} +1 -1
- package/dist/web/assets/{wifi-off-CneL8bDZ.js → wifi-off-BWJWivn6.js} +1 -1
- package/dist/web/assets/{workers-CT7VYBR5.js → workers-pTe8RvSI.js} +1 -1
- package/dist/web/assets/{yaml-CF8jchCz.js → yaml-DNLASORn.js} +1 -1
- package/dist/web/index.html +2 -2
- package/docs/command-reference.md +28 -2
- package/package.json +7 -5
- package/dist/chunks/chunk-P6JLLWMI.js +0 -238
- package/dist/web/assets/App-DfiCmBv6.js +0 -173
- package/dist/web/assets/GetStartedView-C2ypO0v7.js +0 -1
- package/dist/web/assets/LabsRoute-Bw-HD6QC.js +0 -2
- package/dist/web/assets/MainPane-k1iII9e9.js +0 -8
- package/dist/web/assets/RightChatPanelStack-I2znDCc7.js +0 -1
- package/dist/web/assets/ScheduledWorkPage-Bp-t0eVj.js +0 -1
- package/dist/web/assets/SettingsView-BRPrJuP5.css +0 -1
- package/dist/web/assets/SettingsView-C1xyn1Y4.js +0 -6
- package/dist/web/assets/WorkspaceDiffPanel-D9Kp0vFw.js +0 -14
- package/dist/web/assets/chevron-up-DD9Tei-Q.js +0 -1
- package/dist/web/assets/index-D-WCyNdJ.js +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
+
import "./chunk-BVY5JYM6.js";
|
|
2
3
|
import "./chunk-W5GKHH77.js";
|
|
3
4
|
import {
|
|
4
5
|
CONNECTED_APP_PROVIDER_TOOL_NAMES,
|
|
@@ -23,19 +24,47 @@ import {
|
|
|
23
24
|
ContinualBenchPanelRoleSchema,
|
|
24
25
|
ContinualBenchmarkProtocolReleaseSchema
|
|
25
26
|
} from "./chunk-R3C3MNSI.js";
|
|
26
|
-
import "./chunk-BVY5JYM6.js";
|
|
27
27
|
import {
|
|
28
28
|
loadOpenPondProfileState,
|
|
29
29
|
parseProfileSkillMarkdown
|
|
30
|
-
} from "./chunk-
|
|
31
|
-
import "./chunk-
|
|
30
|
+
} from "./chunk-A6G3PFA5.js";
|
|
31
|
+
import "./chunk-3ELF4FXY.js";
|
|
32
32
|
import "./chunk-YVCYVDNP.js";
|
|
33
33
|
import "./chunk-X7ZG4TSW.js";
|
|
34
|
-
import
|
|
35
|
-
openPondConfigDirectory,
|
|
36
|
-
updatePrivateJsonFile
|
|
37
|
-
} from "./chunk-D7BO5Y5J.js";
|
|
34
|
+
import "./chunk-FJ2JGB2N.js";
|
|
38
35
|
import "./chunk-KSRWKXRB.js";
|
|
36
|
+
import {
|
|
37
|
+
AppPreferencesSchema,
|
|
38
|
+
ChatModelRefSchema,
|
|
39
|
+
ChatProviderSchema,
|
|
40
|
+
CodexPermissionModeSchema,
|
|
41
|
+
CodexReasoningEffortSchema,
|
|
42
|
+
ContextCompactionPreferencesSchema,
|
|
43
|
+
DEFAULT_CHAT_PROVIDER,
|
|
44
|
+
DEFAULT_OPENPOND_COMMAND_ACCESS_MODE,
|
|
45
|
+
OpenPondCommandAccessModeSchema,
|
|
46
|
+
PERSONALIZATION_TEMPLATES,
|
|
47
|
+
PersonalizationSettingsSchema,
|
|
48
|
+
PersonalizationTemplateIdSchema,
|
|
49
|
+
ProviderIdSchema,
|
|
50
|
+
ProviderSettingsSchema,
|
|
51
|
+
SUBAGENT_RUNTIME_EVENT_NAMES,
|
|
52
|
+
ServerStatusSchema,
|
|
53
|
+
SidebarSectionsCollapsedSchema,
|
|
54
|
+
SubagentDelegationModeSchema,
|
|
55
|
+
SubagentPreferencesSchema,
|
|
56
|
+
SubagentRoleIdSchema,
|
|
57
|
+
TrainingPreferencesSchema,
|
|
58
|
+
WorkspaceEditorPreferencesSchema,
|
|
59
|
+
WorkspaceKindSchema,
|
|
60
|
+
withFileLock
|
|
61
|
+
} from "./chunk-4KA25HUP.js";
|
|
62
|
+
import {
|
|
63
|
+
getLocalRecord,
|
|
64
|
+
putLocalRecord,
|
|
65
|
+
resolveOpenPondHome,
|
|
66
|
+
storagePaths
|
|
67
|
+
} from "./chunk-ZNQEROWP.js";
|
|
39
68
|
import {
|
|
40
69
|
external_exports
|
|
41
70
|
} from "./chunk-FQS2QL5F.js";
|
|
@@ -426,11 +455,11 @@ import { existsSync } from "node:fs";
|
|
|
426
455
|
import { mkdir, readFile, rename, rm, stat, writeFile } from "node:fs/promises";
|
|
427
456
|
import path2 from "node:path";
|
|
428
457
|
var REGISTRY_SCHEMA_VERSION = 1;
|
|
429
|
-
var OPERATION_LOCK_STALE_MS = 2 * 60 * 1e3;
|
|
430
458
|
var OPERATION_LOCK_TIMEOUT_MS = 15e3;
|
|
431
459
|
function createGithubExtensionManager(options = {}) {
|
|
432
|
-
const
|
|
433
|
-
const
|
|
460
|
+
const home = path2.resolve(options.home ?? options.rootPath ?? resolveOpenPondHome());
|
|
461
|
+
const rootPath = path2.resolve(options.rootPath ?? path2.join(home, "library", "extensions"));
|
|
462
|
+
const registryPath = storagePaths(home).database;
|
|
434
463
|
const github = createGithubSourceClient({
|
|
435
464
|
fetch: options.fetch,
|
|
436
465
|
githubToken: options.githubToken
|
|
@@ -438,7 +467,7 @@ function createGithubExtensionManager(options = {}) {
|
|
|
438
467
|
const now = options.now ?? (() => /* @__PURE__ */ new Date());
|
|
439
468
|
async function list() {
|
|
440
469
|
try {
|
|
441
|
-
const registry = await readRegistry(
|
|
470
|
+
const registry = await readRegistry(home);
|
|
442
471
|
const extensions = await Promise.all(registry.extensions.map((extension) => hydrateExtension(rootPath, extension)));
|
|
443
472
|
markInstalledSkillConflicts(extensions, await reservedSkillNames(options.reservedSkillNames));
|
|
444
473
|
return {
|
|
@@ -458,7 +487,7 @@ function createGithubExtensionManager(options = {}) {
|
|
|
458
487
|
}
|
|
459
488
|
async function preview(request) {
|
|
460
489
|
const resolution = await github.resolve(request);
|
|
461
|
-
const registry = await readRegistry(
|
|
490
|
+
const registry = await readRegistry(home);
|
|
462
491
|
const existing = registry.extensions.find((extension) => extension.id === resolution.preview.id) ?? null;
|
|
463
492
|
assertSkillNamesAvailable(
|
|
464
493
|
resolution.preview,
|
|
@@ -470,7 +499,7 @@ function createGithubExtensionManager(options = {}) {
|
|
|
470
499
|
async function add(request) {
|
|
471
500
|
const identity = parseGithubExtensionSource(request.source);
|
|
472
501
|
return withExtensionLock(rootPath, identity.id, async () => {
|
|
473
|
-
const registry = await readRegistry(
|
|
502
|
+
const registry = await readRegistry(home);
|
|
474
503
|
if (registry.extensions.some((extension) => extension.id === identity.id)) {
|
|
475
504
|
throw new GithubExtensionError(`${identity.owner}/${identity.repo} is already installed.`, {
|
|
476
505
|
code: "extension_already_installed",
|
|
@@ -494,7 +523,7 @@ function createGithubExtensionManager(options = {}) {
|
|
|
494
523
|
});
|
|
495
524
|
try {
|
|
496
525
|
const reserved = await reservedSkillNames(options.reservedSkillNames);
|
|
497
|
-
await writeRegistry(
|
|
526
|
+
await writeRegistry(home, now, (current) => ({
|
|
498
527
|
...current,
|
|
499
528
|
extensions: appendInstalledExtension(current, installed, reserved)
|
|
500
529
|
}));
|
|
@@ -509,7 +538,7 @@ function createGithubExtensionManager(options = {}) {
|
|
|
509
538
|
async function update(request) {
|
|
510
539
|
const identity = parseGithubExtensionSource(request.source);
|
|
511
540
|
return withExtensionLock(rootPath, identity.id, async () => {
|
|
512
|
-
const registry = await readRegistry(
|
|
541
|
+
const registry = await readRegistry(home);
|
|
513
542
|
const existing = requireInstalled(registry, identity.id);
|
|
514
543
|
const resolution = await github.resolve({
|
|
515
544
|
source: existing.repositoryUrl,
|
|
@@ -533,7 +562,7 @@ function createGithubExtensionManager(options = {}) {
|
|
|
533
562
|
});
|
|
534
563
|
try {
|
|
535
564
|
const reserved = await reservedSkillNames(options.reservedSkillNames);
|
|
536
|
-
await writeRegistry(
|
|
565
|
+
await writeRegistry(home, now, (current) => ({
|
|
537
566
|
...current,
|
|
538
567
|
extensions: replaceInstalledExtension(current, installed, reserved)
|
|
539
568
|
}));
|
|
@@ -568,19 +597,19 @@ function createGithubExtensionManager(options = {}) {
|
|
|
568
597
|
}
|
|
569
598
|
async function inspect(source) {
|
|
570
599
|
const identity = parseGithubExtensionSource(source);
|
|
571
|
-
const registry = await readRegistry(
|
|
600
|
+
const registry = await readRegistry(home);
|
|
572
601
|
return hydrateExtension(rootPath, requireInstalled(registry, identity.id));
|
|
573
602
|
}
|
|
574
603
|
async function remove(source) {
|
|
575
604
|
const identity = parseGithubExtensionSource(source);
|
|
576
605
|
return withExtensionLock(rootPath, identity.id, async () => {
|
|
577
|
-
const registry = await readRegistry(
|
|
606
|
+
const registry = await readRegistry(home);
|
|
578
607
|
const existing = requireInstalled(registry, identity.id);
|
|
579
608
|
const target = extensionDirectory(rootPath, identity.owner, identity.repo);
|
|
580
609
|
const trash = `${target}.${randomUUID()}.remove`;
|
|
581
610
|
if (existsSync(target)) await rename(target, trash);
|
|
582
611
|
try {
|
|
583
|
-
await writeRegistry(
|
|
612
|
+
await writeRegistry(home, now, (current) => ({
|
|
584
613
|
...current,
|
|
585
614
|
extensions: current.extensions.filter((extension) => extension.id !== existing.id)
|
|
586
615
|
}));
|
|
@@ -797,28 +826,18 @@ function requireInstalled(registry, id) {
|
|
|
797
826
|
status: 404
|
|
798
827
|
});
|
|
799
828
|
}
|
|
800
|
-
async function readRegistry(
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
}
|
|
806
|
-
return {
|
|
807
|
-
schemaVersion: REGISTRY_SCHEMA_VERSION,
|
|
808
|
-
updatedAt: typeof parsed.updatedAt === "string" ? parsed.updatedAt : null,
|
|
809
|
-
extensions: parsed.extensions.filter(isStoredExtension)
|
|
810
|
-
};
|
|
811
|
-
} catch (error) {
|
|
812
|
-
if (error.code === "ENOENT") return emptyRegistry();
|
|
813
|
-
throw error;
|
|
814
|
-
}
|
|
829
|
+
async function readRegistry(home) {
|
|
830
|
+
const value = getLocalRecord(home, "extension_installations", "registry")?.value;
|
|
831
|
+
if (!value) return emptyRegistry();
|
|
832
|
+
if (value.schemaVersion !== REGISTRY_SCHEMA_VERSION || !Array.isArray(value.extensions) || !value.extensions.every(isStoredExtension)) throw new Error("Extension registry has an unsupported format.");
|
|
833
|
+
return normalizeRegistry(value);
|
|
815
834
|
}
|
|
816
|
-
async function writeRegistry(
|
|
817
|
-
await
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
updatedAt: now().toISOString()
|
|
821
|
-
})
|
|
835
|
+
async function writeRegistry(home, now, update) {
|
|
836
|
+
await withFileLock(path2.join(storagePaths(home).runtime, "extension-registry"), async () => {
|
|
837
|
+
const current = getLocalRecord(home, "extension_installations", "registry");
|
|
838
|
+
const next = update(await readRegistry(home));
|
|
839
|
+
putLocalRecord(home, "extension_installations", "registry", { ...next, schemaVersion: REGISTRY_SCHEMA_VERSION, updatedAt: now().toISOString() }, current?.revision ?? null);
|
|
840
|
+
});
|
|
822
841
|
}
|
|
823
842
|
function normalizeRegistry(value) {
|
|
824
843
|
return {
|
|
@@ -859,513 +878,12 @@ function backupDirectory(rootPath, id) {
|
|
|
859
878
|
}
|
|
860
879
|
async function withExtensionLock(rootPath, id, operation) {
|
|
861
880
|
const safeId = id.replace(/[^a-z0-9.-]+/gi, "-");
|
|
862
|
-
|
|
863
|
-
await mkdir(path2.dirname(lockPath), { recursive: true, mode: 448 });
|
|
864
|
-
const deadline = Date.now() + OPERATION_LOCK_TIMEOUT_MS;
|
|
865
|
-
while (true) {
|
|
866
|
-
try {
|
|
867
|
-
await mkdir(lockPath, { mode: 448 });
|
|
868
|
-
break;
|
|
869
|
-
} catch (error) {
|
|
870
|
-
if (error.code !== "EEXIST") throw error;
|
|
871
|
-
const lockStat = await stat(lockPath).catch(() => null);
|
|
872
|
-
if (lockStat && Date.now() - lockStat.mtimeMs > OPERATION_LOCK_STALE_MS) {
|
|
873
|
-
await rm(lockPath, { recursive: true, force: true });
|
|
874
|
-
continue;
|
|
875
|
-
}
|
|
876
|
-
if (Date.now() >= deadline) {
|
|
877
|
-
throw new GithubExtensionError(`Timed out waiting for extension operation: ${id}`, {
|
|
878
|
-
code: "extension_operation_busy",
|
|
879
|
-
status: 409
|
|
880
|
-
});
|
|
881
|
-
}
|
|
882
|
-
await new Promise((resolve) => setTimeout(resolve, 30));
|
|
883
|
-
}
|
|
884
|
-
}
|
|
885
|
-
try {
|
|
886
|
-
return await operation();
|
|
887
|
-
} finally {
|
|
888
|
-
await rm(lockPath, { recursive: true, force: true });
|
|
889
|
-
}
|
|
881
|
+
return withFileLock(path2.join(rootPath, ".locks", safeId), operation, OPERATION_LOCK_TIMEOUT_MS);
|
|
890
882
|
}
|
|
891
883
|
function extensionSort(left, right) {
|
|
892
884
|
return left.id.localeCompare(right.id);
|
|
893
885
|
}
|
|
894
886
|
|
|
895
|
-
// ../../packages/contracts/src/providers.ts
|
|
896
|
-
var PROVIDER_IDS = [
|
|
897
|
-
"openpond",
|
|
898
|
-
"codex",
|
|
899
|
-
"anthropic",
|
|
900
|
-
"openai",
|
|
901
|
-
"xai",
|
|
902
|
-
"google",
|
|
903
|
-
"openrouter",
|
|
904
|
-
"deepseek",
|
|
905
|
-
"zai",
|
|
906
|
-
"moonshot",
|
|
907
|
-
"together",
|
|
908
|
-
"groq",
|
|
909
|
-
"custom-openai-compatible"
|
|
910
|
-
];
|
|
911
|
-
var ProviderIdSchema = external_exports.enum(PROVIDER_IDS);
|
|
912
|
-
var ProviderLifecycleStatusSchema = external_exports.enum([
|
|
913
|
-
"active",
|
|
914
|
-
"preview",
|
|
915
|
-
"planned",
|
|
916
|
-
"deprecated"
|
|
917
|
-
]);
|
|
918
|
-
var ProviderCredentialModeSchema = external_exports.enum([
|
|
919
|
-
"openpond-account",
|
|
920
|
-
"openpond-managed",
|
|
921
|
-
"codex-login",
|
|
922
|
-
"chatgpt-subscription",
|
|
923
|
-
"local-byok",
|
|
924
|
-
"hosted-byok",
|
|
925
|
-
"custom"
|
|
926
|
-
]);
|
|
927
|
-
var ProviderCredentialSourceSchema = external_exports.enum([
|
|
928
|
-
"none",
|
|
929
|
-
"local_secret",
|
|
930
|
-
"env",
|
|
931
|
-
"openpond_account",
|
|
932
|
-
"codex_login",
|
|
933
|
-
"chatgpt_subscription",
|
|
934
|
-
"hosted"
|
|
935
|
-
]);
|
|
936
|
-
var ProviderCredentialStatusSchema = external_exports.object({
|
|
937
|
-
connected: external_exports.boolean().default(false),
|
|
938
|
-
source: ProviderCredentialSourceSchema.default("none"),
|
|
939
|
-
redacted: external_exports.string().nullable().default(null),
|
|
940
|
-
lastValidatedAt: external_exports.string().nullable().default(null),
|
|
941
|
-
lastError: external_exports.string().nullable().default(null)
|
|
942
|
-
});
|
|
943
|
-
var ProviderRoutingSchema = external_exports.object({
|
|
944
|
-
hostedOpChat: external_exports.boolean().default(false),
|
|
945
|
-
localRuntime: external_exports.boolean().default(true),
|
|
946
|
-
localByok: external_exports.boolean().default(false),
|
|
947
|
-
hostedByok: external_exports.boolean().default(false)
|
|
948
|
-
});
|
|
949
|
-
var ProviderModelDiscoverySchema = external_exports.enum([
|
|
950
|
-
"hosted",
|
|
951
|
-
"provider",
|
|
952
|
-
"manual",
|
|
953
|
-
"none"
|
|
954
|
-
]);
|
|
955
|
-
var ProviderCapabilitiesSchema = external_exports.object({
|
|
956
|
-
chatCompletions: external_exports.boolean().default(true),
|
|
957
|
-
streaming: external_exports.boolean().default(true),
|
|
958
|
-
modelDiscovery: ProviderModelDiscoverySchema.default("none"),
|
|
959
|
-
toolCalling: external_exports.boolean().default(false),
|
|
960
|
-
reasoning: external_exports.boolean().default(false),
|
|
961
|
-
imageInput: external_exports.boolean().default(false),
|
|
962
|
-
structuredOutput: external_exports.boolean().default(false)
|
|
963
|
-
});
|
|
964
|
-
var ProviderModelSourceSchema = external_exports.enum([
|
|
965
|
-
"hosted",
|
|
966
|
-
"provider",
|
|
967
|
-
"curated",
|
|
968
|
-
"manual",
|
|
969
|
-
"cache"
|
|
970
|
-
]);
|
|
971
|
-
var ProviderModelCapabilitiesSchema = external_exports.object({
|
|
972
|
-
streaming: external_exports.boolean().default(true),
|
|
973
|
-
toolCalling: external_exports.boolean().default(false),
|
|
974
|
-
reasoning: external_exports.boolean().default(false),
|
|
975
|
-
vision: external_exports.boolean().default(false),
|
|
976
|
-
structuredOutput: external_exports.boolean().default(false)
|
|
977
|
-
});
|
|
978
|
-
var ProviderModelSchema = external_exports.object({
|
|
979
|
-
id: external_exports.string().trim().min(1).max(300),
|
|
980
|
-
providerId: ProviderIdSchema,
|
|
981
|
-
displayName: external_exports.string().trim().min(1).max(300),
|
|
982
|
-
contextWindow: external_exports.number().int().positive().nullable().default(null),
|
|
983
|
-
outputLimit: external_exports.number().int().positive().nullable().default(null),
|
|
984
|
-
lifecycleStatus: ProviderLifecycleStatusSchema.default("active"),
|
|
985
|
-
source: ProviderModelSourceSchema,
|
|
986
|
-
capabilities: ProviderModelCapabilitiesSchema.default(
|
|
987
|
-
() => ProviderModelCapabilitiesSchema.parse({})
|
|
988
|
-
),
|
|
989
|
-
raw: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
|
|
990
|
-
});
|
|
991
|
-
var ProviderModelCacheSchema = external_exports.object({
|
|
992
|
-
providerId: ProviderIdSchema,
|
|
993
|
-
models: external_exports.array(ProviderModelSchema).default([]),
|
|
994
|
-
fetchedAt: external_exports.string().nullable().default(null),
|
|
995
|
-
lastError: external_exports.string().nullable().default(null),
|
|
996
|
-
source: external_exports.enum(["none", "hosted", "provider", "curated", "manual"]).default("none")
|
|
997
|
-
});
|
|
998
|
-
var ProviderConfigSchema = external_exports.object({
|
|
999
|
-
enabled: external_exports.boolean().default(false),
|
|
1000
|
-
baseUrl: external_exports.string().trim().min(1).max(2048).nullable().default(null),
|
|
1001
|
-
defaultModel: external_exports.string().trim().min(1).max(300).nullable().default(null),
|
|
1002
|
-
modelOverrides: external_exports.array(external_exports.string().trim().min(1).max(300)).max(500).default([]),
|
|
1003
|
-
updatedAt: external_exports.string().nullable().default(null)
|
|
1004
|
-
});
|
|
1005
|
-
var ProviderConfigPatchSchema = external_exports.object({
|
|
1006
|
-
enabled: external_exports.boolean().optional(),
|
|
1007
|
-
baseUrl: external_exports.string().trim().min(1).max(2048).nullable().optional(),
|
|
1008
|
-
defaultModel: external_exports.string().trim().min(1).max(300).nullable().optional(),
|
|
1009
|
-
modelOverrides: external_exports.array(external_exports.string().trim().min(1).max(300)).max(500).optional()
|
|
1010
|
-
});
|
|
1011
|
-
var ProviderCatalogModelSchema = external_exports.object({
|
|
1012
|
-
id: external_exports.string().trim().min(1).max(300),
|
|
1013
|
-
displayName: external_exports.string().trim().min(1).max(300),
|
|
1014
|
-
contextWindow: external_exports.number().int().positive().nullable().optional(),
|
|
1015
|
-
outputLimit: external_exports.number().int().positive().nullable().optional(),
|
|
1016
|
-
lifecycleStatus: ProviderLifecycleStatusSchema.optional(),
|
|
1017
|
-
capabilities: ProviderModelCapabilitiesSchema.partial().optional()
|
|
1018
|
-
});
|
|
1019
|
-
var ProviderCatalogProviderSchema = external_exports.object({
|
|
1020
|
-
id: ProviderIdSchema,
|
|
1021
|
-
displayName: external_exports.string().trim().min(1).max(160),
|
|
1022
|
-
lifecycleStatus: ProviderLifecycleStatusSchema.default("active"),
|
|
1023
|
-
credentialModes: external_exports.array(ProviderCredentialModeSchema).default([]),
|
|
1024
|
-
routing: ProviderRoutingSchema,
|
|
1025
|
-
capabilities: ProviderCapabilitiesSchema,
|
|
1026
|
-
defaultEnabled: external_exports.boolean().optional(),
|
|
1027
|
-
defaultBaseUrl: external_exports.string().trim().min(1).max(2048).nullable().optional(),
|
|
1028
|
-
defaultModel: external_exports.string().trim().min(1).max(300).nullable().optional(),
|
|
1029
|
-
modelCacheSource: external_exports.enum(["none", "hosted", "provider", "curated", "manual"]),
|
|
1030
|
-
models: external_exports.array(ProviderCatalogModelSchema).default([])
|
|
1031
|
-
});
|
|
1032
|
-
var ProviderCatalogSchema = external_exports.object({
|
|
1033
|
-
version: external_exports.literal(1).default(1),
|
|
1034
|
-
generatedAt: external_exports.string().datetime(),
|
|
1035
|
-
providers: external_exports.array(ProviderCatalogProviderSchema)
|
|
1036
|
-
});
|
|
1037
|
-
var ProviderStatusSchema = external_exports.object({
|
|
1038
|
-
id: ProviderIdSchema,
|
|
1039
|
-
displayName: external_exports.string().trim().min(1).max(160),
|
|
1040
|
-
lifecycleStatus: ProviderLifecycleStatusSchema.default("active"),
|
|
1041
|
-
credentialModes: external_exports.array(ProviderCredentialModeSchema).default([]),
|
|
1042
|
-
routing: ProviderRoutingSchema.default(() => ProviderRoutingSchema.parse({})),
|
|
1043
|
-
capabilities: ProviderCapabilitiesSchema.default(
|
|
1044
|
-
() => ProviderCapabilitiesSchema.parse({})
|
|
1045
|
-
),
|
|
1046
|
-
credential: ProviderCredentialStatusSchema.default(
|
|
1047
|
-
() => ProviderCredentialStatusSchema.parse({})
|
|
1048
|
-
),
|
|
1049
|
-
enabled: external_exports.boolean().default(false),
|
|
1050
|
-
available: external_exports.boolean().default(false),
|
|
1051
|
-
defaultModel: external_exports.string().trim().min(1).max(300).nullable().default(null),
|
|
1052
|
-
modelIds: external_exports.array(external_exports.string().trim().min(1).max(300)).max(1e3).default([]),
|
|
1053
|
-
lastError: external_exports.string().nullable().default(null)
|
|
1054
|
-
});
|
|
1055
|
-
var ProviderSettingsSchema = external_exports.object({
|
|
1056
|
-
version: external_exports.literal(1).default(1),
|
|
1057
|
-
providers: external_exports.record(external_exports.string(), ProviderConfigSchema).default({}),
|
|
1058
|
-
statuses: external_exports.record(external_exports.string(), ProviderStatusSchema).default({}),
|
|
1059
|
-
modelCaches: external_exports.record(external_exports.string(), ProviderModelCacheSchema).default({}),
|
|
1060
|
-
updatedAt: external_exports.string().nullable().default(null)
|
|
1061
|
-
});
|
|
1062
|
-
var ChatModelRefSchema = external_exports.object({
|
|
1063
|
-
providerId: ProviderIdSchema,
|
|
1064
|
-
modelId: external_exports.string().trim().min(1).max(300)
|
|
1065
|
-
});
|
|
1066
|
-
var ProviderSettingsUpdateSchema = external_exports.object({
|
|
1067
|
-
providers: external_exports.record(external_exports.string(), ProviderConfigPatchSchema).optional()
|
|
1068
|
-
});
|
|
1069
|
-
var ProviderCredentialWriteRequestSchema = external_exports.object({
|
|
1070
|
-
source: external_exports.enum(["local_secret", "env"]).default("local_secret"),
|
|
1071
|
-
value: external_exports.string().min(1).max(2e4).optional(),
|
|
1072
|
-
envVar: external_exports.string().trim().min(1).max(160).optional()
|
|
1073
|
-
}).superRefine((value, context) => {
|
|
1074
|
-
if (value.source === "env" && !value.envVar) {
|
|
1075
|
-
context.addIssue({
|
|
1076
|
-
code: "custom",
|
|
1077
|
-
path: ["envVar"],
|
|
1078
|
-
message: "envVar is required when provider credential source is env."
|
|
1079
|
-
});
|
|
1080
|
-
}
|
|
1081
|
-
if (value.source === "local_secret" && !value.value) {
|
|
1082
|
-
context.addIssue({
|
|
1083
|
-
code: "custom",
|
|
1084
|
-
path: ["value"],
|
|
1085
|
-
message: "value is required when provider credential source is local_secret."
|
|
1086
|
-
});
|
|
1087
|
-
}
|
|
1088
|
-
});
|
|
1089
|
-
var ProviderCredentialDeleteRequestSchema = external_exports.object({
|
|
1090
|
-
source: external_exports.enum(["local_secret", "env", "chatgpt_subscription"]).optional()
|
|
1091
|
-
});
|
|
1092
|
-
var ProviderValidationRequestSchema = external_exports.object({
|
|
1093
|
-
modelId: external_exports.string().trim().min(1).max(300).optional(),
|
|
1094
|
-
baseUrl: external_exports.string().trim().min(1).max(2048).optional()
|
|
1095
|
-
});
|
|
1096
|
-
var ProviderModelsRequestSchema = external_exports.object({
|
|
1097
|
-
query: external_exports.string().trim().max(200).optional(),
|
|
1098
|
-
refresh: external_exports.boolean().default(false),
|
|
1099
|
-
limit: external_exports.number().int().positive().max(500).default(100)
|
|
1100
|
-
});
|
|
1101
|
-
var ProviderModelsRefreshRequestSchema = external_exports.object({
|
|
1102
|
-
query: external_exports.string().trim().max(200).optional(),
|
|
1103
|
-
force: external_exports.boolean().default(false)
|
|
1104
|
-
});
|
|
1105
|
-
|
|
1106
|
-
// ../../packages/contracts/src/subagents.ts
|
|
1107
|
-
var SUBAGENT_BUILT_IN_ROLE_IDS = [
|
|
1108
|
-
"coding",
|
|
1109
|
-
"research",
|
|
1110
|
-
"review",
|
|
1111
|
-
"test",
|
|
1112
|
-
"docs",
|
|
1113
|
-
"planner",
|
|
1114
|
-
"summarizer"
|
|
1115
|
-
];
|
|
1116
|
-
var SubagentBuiltInRoleIdSchema = external_exports.enum(SUBAGENT_BUILT_IN_ROLE_IDS);
|
|
1117
|
-
var SubagentRoleIdSchema = external_exports.string().trim().min(1).max(80).regex(/^[a-z][a-z0-9_-]*$/);
|
|
1118
|
-
var SubagentIsolationModeSchema = external_exports.enum(["none", "worktree", "copy_on_write"]);
|
|
1119
|
-
var SubagentToolPolicySchema = external_exports.enum(["read_only", "workspace_write", "full_tools"]);
|
|
1120
|
-
var SubagentPeerMessagesSchema = external_exports.enum(["disabled", "parent_scoped"]);
|
|
1121
|
-
var SubagentDelegationModeSchema = external_exports.enum(["manual", "balanced", "proactive"]);
|
|
1122
|
-
var SubagentRunStatusSchema = external_exports.enum([
|
|
1123
|
-
"queued",
|
|
1124
|
-
"running",
|
|
1125
|
-
"completed",
|
|
1126
|
-
"failed",
|
|
1127
|
-
"cancelled",
|
|
1128
|
-
"needs_resume"
|
|
1129
|
-
]);
|
|
1130
|
-
var SUBAGENT_RUNTIME_EVENT_NAMES = [
|
|
1131
|
-
"subagent.started",
|
|
1132
|
-
"subagent.reported",
|
|
1133
|
-
"subagent.completed",
|
|
1134
|
-
"subagent.progress",
|
|
1135
|
-
"subagent.failed",
|
|
1136
|
-
"subagent.cancelled",
|
|
1137
|
-
"subagent.cleanup",
|
|
1138
|
-
"subagent.workspace_retained",
|
|
1139
|
-
"subagent.workspace_retention_expiring",
|
|
1140
|
-
"subagent.archived",
|
|
1141
|
-
"subagent.message"
|
|
1142
|
-
];
|
|
1143
|
-
var SubagentRuntimeEventNameSchema = external_exports.enum(SUBAGENT_RUNTIME_EVENT_NAMES);
|
|
1144
|
-
var SUBAGENT_ROLE_PRESETS = [
|
|
1145
|
-
{
|
|
1146
|
-
id: "coding",
|
|
1147
|
-
label: "Coding",
|
|
1148
|
-
description: "Make scoped code changes and return patch, diff, and test evidence.",
|
|
1149
|
-
defaultToolPolicy: "full_tools"
|
|
1150
|
-
},
|
|
1151
|
-
{
|
|
1152
|
-
id: "research",
|
|
1153
|
-
label: "Research",
|
|
1154
|
-
description: "Inspect docs, code, web or repo context and return cited findings.",
|
|
1155
|
-
defaultToolPolicy: "full_tools"
|
|
1156
|
-
},
|
|
1157
|
-
{
|
|
1158
|
-
id: "review",
|
|
1159
|
-
label: "Review",
|
|
1160
|
-
description: "Inspect diffs or implementation plans and return ranked findings.",
|
|
1161
|
-
defaultToolPolicy: "full_tools"
|
|
1162
|
-
},
|
|
1163
|
-
{
|
|
1164
|
-
id: "test",
|
|
1165
|
-
label: "Test",
|
|
1166
|
-
description: "Run or design validation in isolation and return command evidence.",
|
|
1167
|
-
defaultToolPolicy: "full_tools"
|
|
1168
|
-
},
|
|
1169
|
-
{
|
|
1170
|
-
id: "docs",
|
|
1171
|
-
label: "Docs",
|
|
1172
|
-
description: "Update or draft project documentation in an isolated target.",
|
|
1173
|
-
defaultToolPolicy: "full_tools"
|
|
1174
|
-
},
|
|
1175
|
-
{
|
|
1176
|
-
id: "planner",
|
|
1177
|
-
label: "Planner",
|
|
1178
|
-
description: "Decompose a goal into child assignments and context packs.",
|
|
1179
|
-
defaultToolPolicy: "full_tools"
|
|
1180
|
-
},
|
|
1181
|
-
{
|
|
1182
|
-
id: "summarizer",
|
|
1183
|
-
label: "Summarizer",
|
|
1184
|
-
description: "Compact transcripts, child results, and goal state for parent context.",
|
|
1185
|
-
defaultToolPolicy: "full_tools"
|
|
1186
|
-
}
|
|
1187
|
-
];
|
|
1188
|
-
var SubagentRoleSettingsSchema = external_exports.object({
|
|
1189
|
-
id: SubagentRoleIdSchema,
|
|
1190
|
-
enabled: external_exports.boolean().default(true),
|
|
1191
|
-
modelRef: ChatModelRefSchema.nullable().default(null),
|
|
1192
|
-
isolationMode: SubagentIsolationModeSchema.default("none"),
|
|
1193
|
-
maxConcurrentRuns: external_exports.number().int().min(1).max(16).default(1),
|
|
1194
|
-
toolPolicy: SubagentToolPolicySchema.default("read_only"),
|
|
1195
|
-
background: external_exports.boolean().default(true),
|
|
1196
|
-
peerMessages: SubagentPeerMessagesSchema.default("parent_scoped")
|
|
1197
|
-
});
|
|
1198
|
-
var SubagentPreferencesSchema = external_exports.object({
|
|
1199
|
-
enabled: external_exports.boolean().default(true),
|
|
1200
|
-
workspaceDefaultsVersion: external_exports.literal(1).default(1),
|
|
1201
|
-
toolDefaultsVersion: external_exports.literal(1).default(1),
|
|
1202
|
-
delegationMode: SubagentDelegationModeSchema.default("manual"),
|
|
1203
|
-
defaultModelRef: ChatModelRefSchema.nullable().default(null),
|
|
1204
|
-
roles: external_exports.array(SubagentRoleSettingsSchema).max(64).default(() => defaultSubagentRoleSettings()),
|
|
1205
|
-
maxConcurrentRuns: external_exports.number().int().min(1).max(32).default(4),
|
|
1206
|
-
maxConcurrentRunsPerProvider: external_exports.number().int().min(1).max(32).nullable().default(2),
|
|
1207
|
-
maxConcurrentRunsPerWorkspaceTarget: external_exports.number().int().min(1).max(32).nullable().default(1)
|
|
1208
|
-
}).transform((preferences) => ({
|
|
1209
|
-
...preferences,
|
|
1210
|
-
roles: normalizeSubagentRoleSettings(preferences.roles)
|
|
1211
|
-
}));
|
|
1212
|
-
var SubagentRefSchema = external_exports.object({
|
|
1213
|
-
kind: external_exports.enum(["session", "turn", "file", "diff", "artifact"]),
|
|
1214
|
-
id: external_exports.string().trim().min(1).max(500),
|
|
1215
|
-
label: external_exports.string().trim().min(1).max(500)
|
|
1216
|
-
});
|
|
1217
|
-
var SubagentEvidenceRetentionPolicySchema = external_exports.object({
|
|
1218
|
-
kind: external_exports.enum(["retain_with_parent"]).default("retain_with_parent"),
|
|
1219
|
-
messageRetentionDays: external_exports.number().int().min(1).max(3650).nullable().default(null),
|
|
1220
|
-
artifactRetentionDays: external_exports.number().int().min(1).max(3650).nullable().default(null),
|
|
1221
|
-
cleanupAfterExpiry: external_exports.boolean().default(false)
|
|
1222
|
-
}).default(() => ({
|
|
1223
|
-
kind: "retain_with_parent",
|
|
1224
|
-
messageRetentionDays: null,
|
|
1225
|
-
artifactRetentionDays: null,
|
|
1226
|
-
cleanupAfterExpiry: false
|
|
1227
|
-
}));
|
|
1228
|
-
var SubagentProgressPhaseSchema = external_exports.enum(["orient", "edit", "validate", "report"]);
|
|
1229
|
-
var SubagentValidationAttemptSchema = external_exports.object({
|
|
1230
|
-
command: external_exports.string().trim().min(1).max(2e3),
|
|
1231
|
-
status: external_exports.enum(["passed", "failed", "unknown"]).default("unknown"),
|
|
1232
|
-
exitCode: external_exports.number().int().nullable().default(null),
|
|
1233
|
-
outputSummary: external_exports.string().trim().max(5e3).nullable().default(null),
|
|
1234
|
-
startedAt: external_exports.string().nullable().default(null),
|
|
1235
|
-
completedAt: external_exports.string().nullable().default(null)
|
|
1236
|
-
});
|
|
1237
|
-
var SubagentProgressSchema = external_exports.object({
|
|
1238
|
-
phase: SubagentProgressPhaseSchema.default("orient"),
|
|
1239
|
-
inspectedFiles: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(500).default([]),
|
|
1240
|
-
inspectedResources: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(500).default([]),
|
|
1241
|
-
repeatedSearches: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(200).default([]),
|
|
1242
|
-
repeatedReads: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(200).default([]),
|
|
1243
|
-
repeatedCommands: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(200).default([]),
|
|
1244
|
-
changedFiles: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(500).default([]),
|
|
1245
|
-
patchRefs: external_exports.array(SubagentRefSchema).max(100).default([]),
|
|
1246
|
-
validationAttempts: external_exports.array(SubagentValidationAttemptSchema).max(100).default([]),
|
|
1247
|
-
latestMeaningfulActivity: external_exports.string().trim().max(5e3).nullable().default(null),
|
|
1248
|
-
currentBlocker: external_exports.string().trim().max(5e3).nullable().default(null),
|
|
1249
|
-
updatedAt: external_exports.string().nullable().default(null)
|
|
1250
|
-
}).default(() => ({
|
|
1251
|
-
phase: "orient",
|
|
1252
|
-
inspectedFiles: [],
|
|
1253
|
-
inspectedResources: [],
|
|
1254
|
-
repeatedSearches: [],
|
|
1255
|
-
repeatedReads: [],
|
|
1256
|
-
repeatedCommands: [],
|
|
1257
|
-
changedFiles: [],
|
|
1258
|
-
patchRefs: [],
|
|
1259
|
-
validationAttempts: [],
|
|
1260
|
-
latestMeaningfulActivity: null,
|
|
1261
|
-
currentBlocker: null,
|
|
1262
|
-
updatedAt: null
|
|
1263
|
-
}));
|
|
1264
|
-
var SubagentReportSchema = external_exports.object({
|
|
1265
|
-
summary: external_exports.string().trim().max(2e4).default(""),
|
|
1266
|
-
findings: external_exports.array(external_exports.string().trim().min(1).max(5e3)).max(200).default([]),
|
|
1267
|
-
artifacts: external_exports.array(SubagentRefSchema).max(200).default([]),
|
|
1268
|
-
patchRef: SubagentRefSchema.nullable().default(null),
|
|
1269
|
-
diffRef: SubagentRefSchema.nullable().default(null),
|
|
1270
|
-
testsRun: external_exports.array(external_exports.string().trim().min(1).max(2e3)).max(100).default([]),
|
|
1271
|
-
blockers: external_exports.array(external_exports.string().trim().min(1).max(5e3)).max(100).default([]),
|
|
1272
|
-
confidence: external_exports.enum(["low", "medium", "high"]).nullable().default(null),
|
|
1273
|
-
followUpNeeded: external_exports.boolean().default(false)
|
|
1274
|
-
});
|
|
1275
|
-
var SubagentRunSchema = external_exports.object({
|
|
1276
|
-
id: external_exports.string().trim().min(1).max(200),
|
|
1277
|
-
parentSessionId: external_exports.string().trim().min(1).max(200),
|
|
1278
|
-
parentTurnId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1279
|
-
childSessionId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1280
|
-
roleId: SubagentRoleIdSchema,
|
|
1281
|
-
objective: external_exports.string().trim().min(1).max(5e4),
|
|
1282
|
-
modelRef: ChatModelRefSchema.nullable().default(null),
|
|
1283
|
-
isolationMode: SubagentIsolationModeSchema.default("none"),
|
|
1284
|
-
toolPolicy: SubagentToolPolicySchema.default("read_only"),
|
|
1285
|
-
background: external_exports.boolean().default(true),
|
|
1286
|
-
peerMessages: SubagentPeerMessagesSchema.default("parent_scoped"),
|
|
1287
|
-
status: SubagentRunStatusSchema.default("queued"),
|
|
1288
|
-
progress: SubagentProgressSchema,
|
|
1289
|
-
evidenceRetention: SubagentEvidenceRetentionPolicySchema,
|
|
1290
|
-
createdAt: external_exports.string(),
|
|
1291
|
-
startedAt: external_exports.string().nullable().default(null),
|
|
1292
|
-
completedAt: external_exports.string().nullable().default(null),
|
|
1293
|
-
updatedAt: external_exports.string().nullable().default(null),
|
|
1294
|
-
error: external_exports.string().nullable().default(null),
|
|
1295
|
-
report: SubagentReportSchema.nullable().default(null),
|
|
1296
|
-
metadata: external_exports.record(external_exports.string(), external_exports.unknown()).optional().default({})
|
|
1297
|
-
});
|
|
1298
|
-
var SubagentLifecycleActionSchema = external_exports.enum(["cleanup", "archive", "cleanup_and_archive"]);
|
|
1299
|
-
var SubagentLifecycleActionRequestSchema = external_exports.object({
|
|
1300
|
-
action: SubagentLifecycleActionSchema,
|
|
1301
|
-
reason: external_exports.string().trim().min(1).max(2e3).nullable().default(null)
|
|
1302
|
-
});
|
|
1303
|
-
var SubagentLifecycleActionResponseSchema = external_exports.object({
|
|
1304
|
-
action: SubagentLifecycleActionSchema,
|
|
1305
|
-
run: SubagentRunSchema,
|
|
1306
|
-
workspaceCleanup: external_exports.record(external_exports.string(), external_exports.unknown()).nullable().default(null),
|
|
1307
|
-
sessionArchive: external_exports.record(external_exports.string(), external_exports.unknown()).nullable().default(null),
|
|
1308
|
-
nextStep: external_exports.string()
|
|
1309
|
-
});
|
|
1310
|
-
var SubagentMessageKindSchema = external_exports.enum([
|
|
1311
|
-
"question",
|
|
1312
|
-
"answer",
|
|
1313
|
-
"handoff",
|
|
1314
|
-
"artifact",
|
|
1315
|
-
"status",
|
|
1316
|
-
"blocker"
|
|
1317
|
-
]);
|
|
1318
|
-
var SubagentMessagePrioritySchema = external_exports.enum(["normal", "interrupt"]);
|
|
1319
|
-
var SubagentMessageDeliverySchema = external_exports.object({
|
|
1320
|
-
status: external_exports.enum(["pending", "delivered", "undelivered"]).default("pending"),
|
|
1321
|
-
deliveredRunIds: external_exports.array(external_exports.string().trim().min(1).max(200)).max(200).default([]),
|
|
1322
|
-
acknowledgedRunIds: external_exports.array(external_exports.string().trim().min(1).max(200)).max(200).default([]),
|
|
1323
|
-
deliveredParentSessionId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1324
|
-
acknowledgedParentSessionId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1325
|
-
wakeRequestedParentSessionId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1326
|
-
wakeQueuedParentSessionId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1327
|
-
wakeDeferredParentSessionId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1328
|
-
wakeParentReason: external_exports.string().trim().min(1).max(1e3).nullable().default(null),
|
|
1329
|
-
wakeRequestedRunIds: external_exports.array(external_exports.string().trim().min(1).max(200)).max(200).default([]),
|
|
1330
|
-
wakeInterruptedRunIds: external_exports.array(external_exports.string().trim().min(1).max(200)).max(200).default([]),
|
|
1331
|
-
wakeDeferredRunIds: external_exports.array(external_exports.string().trim().min(1).max(200)).max(200).default([]),
|
|
1332
|
-
reason: external_exports.string().trim().min(1).max(1e3).nullable().default(null)
|
|
1333
|
-
});
|
|
1334
|
-
var SubagentMessageSchema = external_exports.object({
|
|
1335
|
-
id: external_exports.string().trim().min(1).max(200),
|
|
1336
|
-
fromRunId: external_exports.string().trim().min(1).max(200),
|
|
1337
|
-
toRunId: external_exports.string().trim().min(1).max(200).nullable().default(null),
|
|
1338
|
-
toRole: SubagentRoleIdSchema.nullable().default(null),
|
|
1339
|
-
kind: SubagentMessageKindSchema,
|
|
1340
|
-
priority: SubagentMessagePrioritySchema.optional(),
|
|
1341
|
-
body: external_exports.string().trim().min(1).max(5e4),
|
|
1342
|
-
refs: external_exports.array(SubagentRefSchema).max(100).default([]),
|
|
1343
|
-
delivery: SubagentMessageDeliverySchema.optional(),
|
|
1344
|
-
createdAt: external_exports.string()
|
|
1345
|
-
});
|
|
1346
|
-
function defaultSubagentRoleSettings() {
|
|
1347
|
-
return SUBAGENT_ROLE_PRESETS.map(
|
|
1348
|
-
(preset) => SubagentRoleSettingsSchema.parse({
|
|
1349
|
-
id: preset.id,
|
|
1350
|
-
toolPolicy: preset.defaultToolPolicy
|
|
1351
|
-
})
|
|
1352
|
-
);
|
|
1353
|
-
}
|
|
1354
|
-
function normalizeSubagentRoleSettings(roles) {
|
|
1355
|
-
const builtIns = defaultSubagentRoleSettings();
|
|
1356
|
-
const roleById = new Map(builtIns.map((role) => [role.id, role]));
|
|
1357
|
-
const customRoles = [];
|
|
1358
|
-
for (const role of roles ?? []) {
|
|
1359
|
-
const normalized = SubagentRoleSettingsSchema.parse(role);
|
|
1360
|
-
if (roleById.has(normalized.id)) {
|
|
1361
|
-
roleById.set(normalized.id, normalized);
|
|
1362
|
-
} else {
|
|
1363
|
-
customRoles.push(normalized);
|
|
1364
|
-
}
|
|
1365
|
-
}
|
|
1366
|
-
return [...builtIns.map((role) => roleById.get(role.id) ?? role), ...customRoles];
|
|
1367
|
-
}
|
|
1368
|
-
|
|
1369
887
|
// ../../packages/contracts/src/runtime.ts
|
|
1370
888
|
var RuntimeEventNameSchema = external_exports.enum([
|
|
1371
889
|
"session.started",
|
|
@@ -1951,194 +1469,6 @@ var CodexStatusSchema = external_exports.object({
|
|
|
1951
1469
|
})
|
|
1952
1470
|
});
|
|
1953
1471
|
|
|
1954
|
-
// ../../packages/contracts/src/settings.ts
|
|
1955
|
-
var DEFAULT_OPENPOND_CHAT_MODEL = "openpond-chat";
|
|
1956
|
-
var DEFAULT_CHAT_PROVIDER = "openpond";
|
|
1957
|
-
var DEFAULT_CHAT_MODEL = DEFAULT_OPENPOND_CHAT_MODEL;
|
|
1958
|
-
var DEFAULT_CODEX_PERMISSION_MODE = "default";
|
|
1959
|
-
var DEFAULT_CODEX_REASONING_EFFORT = "high";
|
|
1960
|
-
var DEFAULT_OPENPOND_COMMAND_ACCESS_MODE = "ask";
|
|
1961
|
-
var ChatProviderSchema = ProviderIdSchema;
|
|
1962
|
-
var CodexPermissionModeSchema = external_exports.enum(["default", "auto-review", "full-access"]);
|
|
1963
|
-
var OpenPondCommandAccessModeSchema = external_exports.enum(["ask", "full-access", "disabled"]);
|
|
1964
|
-
var CodexReasoningEffortSchema = external_exports.enum(["low", "medium", "high", "xhigh"]);
|
|
1965
|
-
var WorkspaceKindSchema = external_exports.enum([
|
|
1966
|
-
"sandbox_app",
|
|
1967
|
-
"local_project",
|
|
1968
|
-
"sandbox",
|
|
1969
|
-
"sandbox_template"
|
|
1970
|
-
]);
|
|
1971
|
-
var HostedContextProviderSchema = external_exports.enum(["openpond"]);
|
|
1972
|
-
var ContextUsageSourceSchema = external_exports.enum(["provider_usage", "provider_tokenizer", "model_family", "heuristic"]);
|
|
1973
|
-
var ContextUsageSnapshotSchema = external_exports.object({
|
|
1974
|
-
provider: ChatProviderSchema,
|
|
1975
|
-
model: external_exports.string().min(1),
|
|
1976
|
-
usedTokens: external_exports.number().int().nonnegative(),
|
|
1977
|
-
maxContextTokens: external_exports.number().int().positive(),
|
|
1978
|
-
usableContextTokens: external_exports.number().int().positive(),
|
|
1979
|
-
percentFull: external_exports.number().min(0).max(100),
|
|
1980
|
-
source: ContextUsageSourceSchema,
|
|
1981
|
-
updatedAtEventId: external_exports.string().nullable()
|
|
1982
|
-
});
|
|
1983
|
-
var SidebarSectionsCollapsedSchema = external_exports.object({
|
|
1984
|
-
pinned: external_exports.boolean().default(false),
|
|
1985
|
-
projects: external_exports.boolean().default(false),
|
|
1986
|
-
cloudProjects: external_exports.boolean().default(false),
|
|
1987
|
-
chats: external_exports.boolean().default(false),
|
|
1988
|
-
savedForLater: external_exports.boolean().default(true)
|
|
1989
|
-
});
|
|
1990
|
-
var WorkspaceLspGlobalModeSchema = external_exports.enum(["auto", "off"]);
|
|
1991
|
-
var WorkspaceLspLanguageIdSchema = external_exports.enum(["typescript", "python", "rust"]);
|
|
1992
|
-
var WorkspaceLspLanguageModeSchema = external_exports.enum(["auto", "disabled", "custom"]);
|
|
1993
|
-
var WorkspaceLspLanguagePreferenceSchema = external_exports.object({
|
|
1994
|
-
mode: WorkspaceLspLanguageModeSchema.default("auto"),
|
|
1995
|
-
customCommand: external_exports.string().trim().max(4096).default("")
|
|
1996
|
-
});
|
|
1997
|
-
var WorkspaceEditorPreferencesSchema = external_exports.object({
|
|
1998
|
-
languageServers: WorkspaceLspGlobalModeSchema.default("auto"),
|
|
1999
|
-
diagnosticsWhileEditing: external_exports.boolean().default(true),
|
|
2000
|
-
checkOnSave: external_exports.boolean().default(true),
|
|
2001
|
-
languages: external_exports.object({
|
|
2002
|
-
typescript: WorkspaceLspLanguagePreferenceSchema.optional().default(
|
|
2003
|
-
() => WorkspaceLspLanguagePreferenceSchema.parse({})
|
|
2004
|
-
),
|
|
2005
|
-
python: WorkspaceLspLanguagePreferenceSchema.optional().default(
|
|
2006
|
-
() => WorkspaceLspLanguagePreferenceSchema.parse({})
|
|
2007
|
-
),
|
|
2008
|
-
rust: WorkspaceLspLanguagePreferenceSchema.optional().default(
|
|
2009
|
-
() => WorkspaceLspLanguagePreferenceSchema.parse({})
|
|
2010
|
-
)
|
|
2011
|
-
}).optional().default(() => ({
|
|
2012
|
-
typescript: WorkspaceLspLanguagePreferenceSchema.parse({}),
|
|
2013
|
-
python: WorkspaceLspLanguagePreferenceSchema.parse({}),
|
|
2014
|
-
rust: WorkspaceLspLanguagePreferenceSchema.parse({})
|
|
2015
|
-
}))
|
|
2016
|
-
});
|
|
2017
|
-
var WorkspaceLspSettingsStatusSchema = external_exports.object({
|
|
2018
|
-
language: WorkspaceLspLanguageIdSchema,
|
|
2019
|
-
label: external_exports.string(),
|
|
2020
|
-
mode: WorkspaceLspLanguageModeSchema,
|
|
2021
|
-
status: external_exports.enum(["found", "missing", "disabled", "error"]),
|
|
2022
|
-
command: external_exports.string().nullable(),
|
|
2023
|
-
message: external_exports.string().nullable()
|
|
2024
|
-
});
|
|
2025
|
-
var WorkspaceLspSettingsStatusResponseSchema = external_exports.object({
|
|
2026
|
-
settings: WorkspaceEditorPreferencesSchema,
|
|
2027
|
-
languages: external_exports.array(WorkspaceLspSettingsStatusSchema),
|
|
2028
|
-
updatedAt: external_exports.string()
|
|
2029
|
-
});
|
|
2030
|
-
var WorkspaceLspRuntimeClientStatusSchema = external_exports.object({
|
|
2031
|
-
id: external_exports.string(),
|
|
2032
|
-
root: external_exports.string(),
|
|
2033
|
-
status: external_exports.enum(["starting", "connected", "unavailable", "error"]),
|
|
2034
|
-
message: external_exports.string().nullable().optional().default(null),
|
|
2035
|
-
openedDocuments: external_exports.number().int().nonnegative(),
|
|
2036
|
-
pendingRequests: external_exports.number().int().nonnegative(),
|
|
2037
|
-
lastUsedAt: external_exports.string(),
|
|
2038
|
-
stderrTail: external_exports.string()
|
|
2039
|
-
});
|
|
2040
|
-
var WorkspaceLspRuntimeStatusResponseSchema = external_exports.object({
|
|
2041
|
-
clients: external_exports.array(WorkspaceLspRuntimeClientStatusSchema),
|
|
2042
|
-
maxClients: external_exports.number().int().positive(),
|
|
2043
|
-
idleTimeoutMs: external_exports.number().int().positive(),
|
|
2044
|
-
updatedAt: external_exports.string()
|
|
2045
|
-
});
|
|
2046
|
-
var ContextCompactionPreferencesSchema = external_exports.object({
|
|
2047
|
-
autoEnabled: external_exports.boolean().default(true),
|
|
2048
|
-
triggerPercent: external_exports.number().int().min(50).max(95).default(85),
|
|
2049
|
-
summaryModel: external_exports.enum(["same_model"]).default("same_model")
|
|
2050
|
-
});
|
|
2051
|
-
var TrainingPreferencesSchema = external_exports.object({
|
|
2052
|
-
defaultModelRef: ChatModelRefSchema.nullable().default(null),
|
|
2053
|
-
creationMode: external_exports.enum(["defaults", "customize"]).default("customize"),
|
|
2054
|
-
autoApproveEvidence: external_exports.boolean().default(false)
|
|
2055
|
-
});
|
|
2056
|
-
var AppPreferencesSchema = external_exports.object({
|
|
2057
|
-
defaultChatProvider: ChatProviderSchema.default(DEFAULT_CHAT_PROVIDER),
|
|
2058
|
-
defaultChatModel: external_exports.string().min(1).default(DEFAULT_CHAT_MODEL),
|
|
2059
|
-
defaultChatModelRef: ChatModelRefSchema.nullable().optional(),
|
|
2060
|
-
subagents: SubagentPreferencesSchema.optional().default(() => SubagentPreferencesSchema.parse({})),
|
|
2061
|
-
codexPermissionMode: CodexPermissionModeSchema.default(DEFAULT_CODEX_PERMISSION_MODE),
|
|
2062
|
-
codexReasoningEffort: CodexReasoningEffortSchema.default(DEFAULT_CODEX_REASONING_EFFORT),
|
|
2063
|
-
openPondCommandAccessMode: OpenPondCommandAccessModeSchema.default(DEFAULT_OPENPOND_COMMAND_ACCESS_MODE),
|
|
2064
|
-
defaultBranchPrefix: external_exports.string().trim().max(48).default("feat/"),
|
|
2065
|
-
defaultNewProjectDirectory: external_exports.string().trim().max(4096).default(""),
|
|
2066
|
-
defaultTeamId: external_exports.string().trim().max(191).nullable().default(null),
|
|
2067
|
-
advancedWorkspaceControls: external_exports.boolean().default(false),
|
|
2068
|
-
steerActiveResponses: external_exports.boolean().default(true),
|
|
2069
|
-
contextCompaction: ContextCompactionPreferencesSchema.optional().default(
|
|
2070
|
-
() => ContextCompactionPreferencesSchema.parse({})
|
|
2071
|
-
),
|
|
2072
|
-
training: TrainingPreferencesSchema.optional().default(() => TrainingPreferencesSchema.parse({})),
|
|
2073
|
-
sidebarWidth: external_exports.number().int().min(244).max(560).default(332),
|
|
2074
|
-
diffPanelWidth: external_exports.number().int().min(320).max(2400).default(560),
|
|
2075
|
-
sidebarSectionsCollapsed: SidebarSectionsCollapsedSchema.optional().default(() => SidebarSectionsCollapsedSchema.parse({})),
|
|
2076
|
-
editor: WorkspaceEditorPreferencesSchema.optional().default(() => WorkspaceEditorPreferencesSchema.parse({}))
|
|
2077
|
-
});
|
|
2078
|
-
var DEFAULT_PERSONALIZATION_TEMPLATE_ID = "default";
|
|
2079
|
-
var PERSONALIZATION_TEMPLATES = [
|
|
2080
|
-
{
|
|
2081
|
-
id: "default",
|
|
2082
|
-
name: "Balanced",
|
|
2083
|
-
source: "built_in",
|
|
2084
|
-
description: "Clear, useful, and concise.",
|
|
2085
|
-
content: "You are OpenPond Chat, a clear and useful AI assistant.\nBe concise, accurate, and direct.\nDo not use emojis.\nAsk only when missing information would materially change the answer.\nPrioritize practical next steps."
|
|
2086
|
-
},
|
|
2087
|
-
{
|
|
2088
|
-
id: "pragmatic",
|
|
2089
|
-
name: "Pragmatic",
|
|
2090
|
-
source: "built_in",
|
|
2091
|
-
description: "Direct, practical, and engineering-minded.",
|
|
2092
|
-
content: "You are a pragmatic AI assistant with strong engineering judgment.\nBe direct, concrete, and outcome-focused.\nDo not use emojis.\nPrefer simple working solutions over clever abstractions.\nCall out weak assumptions plainly."
|
|
2093
|
-
},
|
|
2094
|
-
{
|
|
2095
|
-
id: "friendly",
|
|
2096
|
-
name: "Friendly",
|
|
2097
|
-
source: "built_in",
|
|
2098
|
-
description: "Warm, conversational, and approachable.",
|
|
2099
|
-
content: "You are a friendly AI assistant.\nUse a warm, conversational tone without filler.\nDo not use emojis.\nExplain decisions clearly and keep the user moving.\nBe patient when clarifying tradeoffs."
|
|
2100
|
-
},
|
|
2101
|
-
{
|
|
2102
|
-
id: "formal",
|
|
2103
|
-
name: "Formal",
|
|
2104
|
-
source: "built_in",
|
|
2105
|
-
description: "Polished, careful, and professional.",
|
|
2106
|
-
content: "You are a formal AI assistant.\nUse precise, professional language.\nDo not use emojis.\nStructure answers clearly and avoid casual phrasing.\nState uncertainty and assumptions explicitly."
|
|
2107
|
-
},
|
|
2108
|
-
{
|
|
2109
|
-
id: "technical",
|
|
2110
|
-
name: "Technical",
|
|
2111
|
-
source: "built_in",
|
|
2112
|
-
description: "Precise, detailed, and implementation-focused.",
|
|
2113
|
-
content: "You are a technical AI assistant.\nPrioritize correctness, implementation detail, and edge cases.\nDo not use emojis.\nUse concise explanations, but include necessary specifics.\nSurface risks, constraints, and verification steps."
|
|
2114
|
-
}
|
|
2115
|
-
];
|
|
2116
|
-
var PersonalizationTemplateIdSchema = external_exports.string().trim().min(1).max(120);
|
|
2117
|
-
var PersonalizationTemplateSchema = external_exports.object({
|
|
2118
|
-
id: PersonalizationTemplateIdSchema,
|
|
2119
|
-
name: external_exports.string(),
|
|
2120
|
-
source: external_exports.enum(["built_in", "custom"]).default("custom"),
|
|
2121
|
-
description: external_exports.string(),
|
|
2122
|
-
content: external_exports.string()
|
|
2123
|
-
});
|
|
2124
|
-
var PersonalizationSettingsSchema = external_exports.object({
|
|
2125
|
-
activeTemplateId: PersonalizationTemplateIdSchema.default(DEFAULT_PERSONALIZATION_TEMPLATE_ID),
|
|
2126
|
-
customized: external_exports.boolean().default(false),
|
|
2127
|
-
soul: external_exports.string(),
|
|
2128
|
-
soulPath: external_exports.string().nullable(),
|
|
2129
|
-
updatedAt: external_exports.string().nullable(),
|
|
2130
|
-
templates: external_exports.array(PersonalizationTemplateSchema).default(() => [...PERSONALIZATION_TEMPLATES])
|
|
2131
|
-
});
|
|
2132
|
-
var ServerStatusSchema = external_exports.object({
|
|
2133
|
-
id: external_exports.string(),
|
|
2134
|
-
host: external_exports.string(),
|
|
2135
|
-
port: external_exports.number(),
|
|
2136
|
-
startedAt: external_exports.string(),
|
|
2137
|
-
storePath: external_exports.string(),
|
|
2138
|
-
version: external_exports.string(),
|
|
2139
|
-
runtimeVersion: external_exports.string()
|
|
2140
|
-
});
|
|
2141
|
-
|
|
2142
1472
|
// ../../packages/contracts/src/experiences.ts
|
|
2143
1473
|
var ExperienceSchema = external_exports.enum(["chat", "work", "development"]);
|
|
2144
1474
|
var ProductAreaSchema = external_exports.enum(["chat", "models", "development"]);
|
|
@@ -3252,6 +2582,7 @@ var BootstrapPayloadSchema = external_exports.object({
|
|
|
3252
2582
|
server: ServerStatusSchema,
|
|
3253
2583
|
account: AccountStateSchema,
|
|
3254
2584
|
codex: CodexStatusSchema,
|
|
2585
|
+
configuration: external_exports.object({ rawRevision: external_exports.string(), effectiveRevision: external_exports.string(), sources: external_exports.array(external_exports.object({ layer: external_exports.string(), path: external_exports.string(), revision: external_exports.string() })), provenance: external_exports.record(external_exports.string(), external_exports.object({ layer: external_exports.string(), path: external_exports.string(), revision: external_exports.string() })) }).optional(),
|
|
3255
2586
|
preferences: AppPreferencesSchema.optional().default(() => AppPreferencesSchema.parse({})),
|
|
3256
2587
|
providers: ProviderSettingsSchema.optional().default(() => ProviderSettingsSchema.parse({})),
|
|
3257
2588
|
personalization: PersonalizationSettingsSchema.optional().default(
|
|
@@ -3771,6 +3102,7 @@ var ReorderSidebarAppsRequestSchema = external_exports.object({
|
|
|
3771
3102
|
appIds: external_exports.array(external_exports.string()).min(1)
|
|
3772
3103
|
});
|
|
3773
3104
|
var UpdateAppPreferencesRequestSchema = external_exports.object({
|
|
3105
|
+
expectedRevision: external_exports.string().optional(),
|
|
3774
3106
|
defaultChatProvider: ChatProviderSchema.optional(),
|
|
3775
3107
|
defaultChatModel: external_exports.string().min(1).optional(),
|
|
3776
3108
|
defaultChatModelRef: ChatModelRefSchema.nullable().optional(),
|
|
@@ -4295,6 +3627,9 @@ var LocalAgentScheduleSchema = external_exports.object({
|
|
|
4295
3627
|
var LocalAgentScheduleRunSchema = external_exports.object({
|
|
4296
3628
|
id: external_exports.string(),
|
|
4297
3629
|
scheduleId: external_exports.string(),
|
|
3630
|
+
definitionSnapshot: LocalAgentScheduleSchema.optional(),
|
|
3631
|
+
configurationSnapshot: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
|
|
3632
|
+
inputSnapshot: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
|
|
4298
3633
|
localProjectId: external_exports.string(),
|
|
4299
3634
|
scheduleName: external_exports.string(),
|
|
4300
3635
|
scheduledFor: external_exports.string(),
|
|
@@ -4464,6 +3799,8 @@ var ChatWorkflowSchema = external_exports.object({
|
|
|
4464
3799
|
updatedAt: external_exports.string()
|
|
4465
3800
|
});
|
|
4466
3801
|
var ChatWorkflowRunSchema = external_exports.object({
|
|
3802
|
+
definitionSnapshot: ChatWorkflowSchema.optional(),
|
|
3803
|
+
configurationSnapshot: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
|
|
4467
3804
|
id: external_exports.string(),
|
|
4468
3805
|
workflowId: external_exports.string(),
|
|
4469
3806
|
sessionId: external_exports.string(),
|