longer-agent 0.1.1 → 0.1.3

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.
Files changed (134) hide show
  1. package/README.md +74 -178
  2. package/README.zh-CN.md +74 -178
  3. package/agent_templates/executor/agent.yaml +1 -0
  4. package/agent_templates/executor/system_prompt.md +1 -1
  5. package/agent_templates/explorer/agent.yaml +1 -0
  6. package/agent_templates/explorer/system_prompt.md +1 -1
  7. package/agent_templates/main/agent.yaml +1 -0
  8. package/agent_templates/main/system_prompt.md +3 -2
  9. package/dist/agents/tool-loop.d.ts.map +1 -1
  10. package/dist/agents/tool-loop.js +6 -0
  11. package/dist/agents/tool-loop.js.map +1 -1
  12. package/dist/auth/openai-oauth.d.ts.map +1 -1
  13. package/dist/auth/openai-oauth.js +6 -10
  14. package/dist/auth/openai-oauth.js.map +1 -1
  15. package/dist/cli.d.ts +1 -2
  16. package/dist/cli.d.ts.map +1 -1
  17. package/dist/cli.js +81 -60
  18. package/dist/cli.js.map +1 -1
  19. package/dist/commands.d.ts +6 -1
  20. package/dist/commands.d.ts.map +1 -1
  21. package/dist/commands.js +115 -27
  22. package/dist/commands.js.map +1 -1
  23. package/dist/config.d.ts +19 -26
  24. package/dist/config.d.ts.map +1 -1
  25. package/dist/config.js +80 -120
  26. package/dist/config.js.map +1 -1
  27. package/dist/dotenv.d.ts +18 -0
  28. package/dist/dotenv.d.ts.map +1 -0
  29. package/dist/dotenv.js +91 -0
  30. package/dist/dotenv.js.map +1 -0
  31. package/dist/home-path.d.ts +3 -0
  32. package/dist/home-path.d.ts.map +1 -0
  33. package/dist/home-path.js +7 -0
  34. package/dist/home-path.js.map +1 -0
  35. package/dist/index.d.ts +6 -2
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +10 -2
  38. package/dist/index.js.map +1 -1
  39. package/dist/init-wizard.d.ts +2 -3
  40. package/dist/init-wizard.d.ts.map +1 -1
  41. package/dist/init-wizard.js +349 -145
  42. package/dist/init-wizard.js.map +1 -1
  43. package/dist/log-projection.d.ts.map +1 -1
  44. package/dist/log-projection.js +71 -12
  45. package/dist/log-projection.js.map +1 -1
  46. package/dist/managed-provider-credentials.d.ts +23 -0
  47. package/dist/managed-provider-credentials.d.ts.map +1 -0
  48. package/dist/managed-provider-credentials.js +56 -0
  49. package/dist/managed-provider-credentials.js.map +1 -0
  50. package/dist/mcp-client.d.ts.map +1 -1
  51. package/dist/mcp-client.js +2 -1
  52. package/dist/mcp-client.js.map +1 -1
  53. package/dist/mcp-config.d.ts +13 -0
  54. package/dist/mcp-config.d.ts.map +1 -0
  55. package/dist/mcp-config.js +64 -0
  56. package/dist/mcp-config.js.map +1 -0
  57. package/dist/model-discovery.d.ts +20 -0
  58. package/dist/model-discovery.d.ts.map +1 -0
  59. package/dist/model-discovery.js +47 -0
  60. package/dist/model-discovery.js.map +1 -0
  61. package/dist/model-selection.d.ts +1 -1
  62. package/dist/model-selection.d.ts.map +1 -1
  63. package/dist/model-selection.js +20 -10
  64. package/dist/model-selection.js.map +1 -1
  65. package/dist/persistence.d.ts +14 -1
  66. package/dist/persistence.d.ts.map +1 -1
  67. package/dist/persistence.js +12 -8
  68. package/dist/persistence.js.map +1 -1
  69. package/dist/provider-credential-flow.d.ts +28 -0
  70. package/dist/provider-credential-flow.d.ts.map +1 -0
  71. package/dist/provider-credential-flow.js +112 -0
  72. package/dist/provider-credential-flow.js.map +1 -0
  73. package/dist/provider-presets.d.ts +4 -0
  74. package/dist/provider-presets.d.ts.map +1 -1
  75. package/dist/provider-presets.js +26 -9
  76. package/dist/provider-presets.js.map +1 -1
  77. package/dist/providers/registry.d.ts.map +1 -1
  78. package/dist/providers/registry.js +3 -2
  79. package/dist/providers/registry.js.map +1 -1
  80. package/dist/session.d.ts +6 -17
  81. package/dist/session.d.ts.map +1 -1
  82. package/dist/session.js +82 -216
  83. package/dist/session.js.map +1 -1
  84. package/dist/settings.d.ts +8 -27
  85. package/dist/settings.d.ts.map +1 -1
  86. package/dist/settings.js +4 -108
  87. package/dist/settings.js.map +1 -1
  88. package/dist/templates/loader.d.ts.map +1 -1
  89. package/dist/templates/loader.js +2 -0
  90. package/dist/templates/loader.js.map +1 -1
  91. package/dist/tools/basic.d.ts +2 -2
  92. package/dist/tools/basic.d.ts.map +1 -1
  93. package/dist/tools/basic.js +54 -7
  94. package/dist/tools/basic.js.map +1 -1
  95. package/dist/tools/comm.d.ts.map +1 -1
  96. package/dist/tools/comm.js +8 -7
  97. package/dist/tools/comm.js.map +1 -1
  98. package/dist/tui/app.d.ts.map +1 -1
  99. package/dist/tui/app.js +176 -39
  100. package/dist/tui/app.js.map +1 -1
  101. package/dist/tui/components/command-prompt-panel.d.ts +22 -0
  102. package/dist/tui/components/command-prompt-panel.d.ts.map +1 -0
  103. package/dist/tui/components/command-prompt-panel.js +26 -0
  104. package/dist/tui/components/command-prompt-panel.js.map +1 -0
  105. package/dist/tui/components/input-panel.d.ts.map +1 -1
  106. package/dist/tui/components/input-panel.js +8 -6
  107. package/dist/tui/components/input-panel.js.map +1 -1
  108. package/dist/tui/components/logo-panel.d.ts.map +1 -1
  109. package/dist/tui/components/logo-panel.js +2 -4
  110. package/dist/tui/components/logo-panel.js.map +1 -1
  111. package/dist/tui/components/plan-panel.d.ts +3 -1
  112. package/dist/tui/components/plan-panel.d.ts.map +1 -1
  113. package/dist/tui/components/plan-panel.js +15 -2
  114. package/dist/tui/components/plan-panel.js.map +1 -1
  115. package/dist/tui/components/status-bar.d.ts.map +1 -1
  116. package/dist/tui/components/status-bar.js +17 -4
  117. package/dist/tui/components/status-bar.js.map +1 -1
  118. package/dist/tui/status-bar-model-name.d.ts +2 -0
  119. package/dist/tui/status-bar-model-name.d.ts.map +1 -0
  120. package/dist/tui/status-bar-model-name.js +81 -0
  121. package/dist/tui/status-bar-model-name.js.map +1 -0
  122. package/dist/update-check.d.ts +19 -0
  123. package/dist/update-check.d.ts.map +1 -0
  124. package/dist/update-check.js +116 -0
  125. package/dist/update-check.js.map +1 -0
  126. package/dist/version.d.ts +2 -0
  127. package/dist/version.d.ts.map +1 -0
  128. package/dist/version.js +7 -0
  129. package/dist/version.js.map +1 -0
  130. package/package.json +9 -5
  131. package/prompts/tools/plan.md +11 -240
  132. package/prompts/tools/summarize_context.md +1 -1
  133. package/prompts/tools/time.md +6 -0
  134. package/configExample.yaml +0 -83
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Dynamic model discovery for local inference servers.
3
+ *
4
+ * Fetches available models from an OpenAI-compatible `/v1/models` endpoint
5
+ * exposed by servers like oMLX and LM Studio.
6
+ */
7
+ /**
8
+ * Fetch available models from a local server's `/v1/models` endpoint.
9
+ *
10
+ * @param baseUrl The base URL including `/v1`, e.g. `http://localhost:8000/v1`
11
+ * @param timeoutMs Request timeout in milliseconds (default 5000)
12
+ * @returns Array of discovered models, or empty array on failure.
13
+ */
14
+ export async function fetchModelsFromServer(baseUrl, timeoutMs = 5000) {
15
+ const url = `${baseUrl.replace(/\/+$/, "")}/models`;
16
+ try {
17
+ const controller = new AbortController();
18
+ const timer = setTimeout(() => controller.abort(), timeoutMs);
19
+ const resp = await fetch(url, {
20
+ headers: { Authorization: "Bearer local" },
21
+ signal: controller.signal,
22
+ });
23
+ clearTimeout(timer);
24
+ if (!resp.ok)
25
+ return [];
26
+ const body = (await resp.json());
27
+ if (!body.data || !Array.isArray(body.data))
28
+ return [];
29
+ return body.data
30
+ .filter((m) => typeof m["id"] === "string" && m["id"])
31
+ .map((m) => {
32
+ const model = { id: m["id"] };
33
+ // Some servers report context length in various fields
34
+ const ctxLen = m["context_length"] ??
35
+ m["max_model_len"] ??
36
+ m["context_window"];
37
+ if (typeof ctxLen === "number" && ctxLen > 0) {
38
+ model.contextLength = ctxLen;
39
+ }
40
+ return model;
41
+ });
42
+ }
43
+ catch {
44
+ return [];
45
+ }
46
+ }
47
+ //# sourceMappingURL=model-discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-discovery.js","sourceRoot":"","sources":["../src/model-discovery.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAe,EACf,SAAS,GAAG,IAAI;IAEhB,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC;IACpD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC5B,OAAO,EAAE,EAAE,aAAa,EAAE,cAAc,EAAE;YAC1C,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,YAAY,CAAC,KAAK,CAAC,CAAC;QAEpB,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,CAAC;QAExB,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAE9B,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QAEvD,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;aACrD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAoB,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAW,EAAE,CAAC;YACzD,uDAAuD;YACvD,MAAM,MAAM,GACT,CAAC,CAAC,gBAAgB,CAAY;gBAC9B,CAAC,CAAC,eAAe,CAAY;gBAC7B,CAAC,CAAC,gBAAgB,CAAY,CAAC;YAClC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC;YAC/B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -11,6 +11,6 @@ export interface ResolvedModelSelection {
11
11
  modelSelectionKey: string;
12
12
  modelId: string;
13
13
  }
14
- export declare function resolveModelSelection(session: any, target: string, apiKey?: string): ResolvedModelSelection;
14
+ export declare function resolveModelSelection(session: any, target: string): ResolvedModelSelection;
15
15
  export declare function resolvePersistedModelSelection(session: any, selection: PersistedModelSelection): ResolvedModelSelection;
16
16
  //# sourceMappingURL=model-selection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-selection.d.ts","sourceRoot":"","sources":["../src/model-selection.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB;AAiFD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,sBAAsB,CAgGxB;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,uBAAuB,GACjC,sBAAsB,CAgCxB"}
1
+ {"version":3,"file":"model-selection.d.ts","sourceRoot":"","sources":["../src/model-selection.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB;AA8FD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,MAAM,GACb,sBAAsB,CA8FxB;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,uBAAuB,GACjC,sBAAsB,CAgCxB"}
@@ -1,6 +1,7 @@
1
1
  import { hasOAuthTokens } from "./auth/openai-oauth.js";
2
2
  import { formatScopedModelName } from "./config.js";
3
3
  import { buildProviderPresetRawConfig, findProviderPreset, findProviderPresetModel, } from "./provider-presets.js";
4
+ import { isManagedProvider } from "./managed-provider-credentials.js";
4
5
  function readModelEntries(config) {
5
6
  if (typeof config?.listModelEntries === "function") {
6
7
  try {
@@ -37,6 +38,17 @@ function hasEnvApiKey(envVar) {
37
38
  return typeof raw === "string" && raw.trim() !== "";
38
39
  }
39
40
  function getProviderKeySource(entries, provider) {
41
+ if (isManagedProvider(provider)) {
42
+ const fromConfig = entries.find((entry) => entry.provider === provider
43
+ && entry.hasResolvedApiKey
44
+ && entry.apiKeyRaw.trim() !== "");
45
+ if (fromConfig)
46
+ return fromConfig.apiKeyRaw;
47
+ const preset = findProviderPreset(provider);
48
+ if (preset && hasEnvApiKey(preset.envVar))
49
+ return `\${${preset.envVar}}`;
50
+ return undefined;
51
+ }
40
52
  // Exact provider match in existing config entries.
41
53
  const fromConfig = entries.find((entry) => entry.provider === provider
42
54
  && entry.hasResolvedApiKey
@@ -74,7 +86,7 @@ function runtimeModelName(provider, model) {
74
86
  .replace(/^-+|-+$/g, "");
75
87
  return `runtime-${slug(provider)}-${slug(model)}`;
76
88
  }
77
- export function resolveModelSelection(session, target, apiKey) {
89
+ export function resolveModelSelection(session, target) {
78
90
  const config = session.config;
79
91
  let selectedConfigName = target;
80
92
  const knownNames = new Set(config?.modelNames ?? []);
@@ -102,17 +114,15 @@ export function resolveModelSelection(session, target, apiKey) {
102
114
  const entries = readModelEntries(config);
103
115
  const exactEntries = entries.filter((entry) => entry.provider === parsed.provider && entry.model === resolvedModel);
104
116
  const exactWithKey = exactEntries.find((entry) => entry.hasResolvedApiKey);
105
- if (exactWithKey && !apiKey && !presetRequiresDedicatedConfig) {
117
+ if (exactWithKey && !presetRequiresDedicatedConfig) {
106
118
  selectedConfigName = exactWithKey.name;
107
119
  }
108
120
  else {
109
- const keySource = (apiKey && apiKey.trim() !== "")
110
- ? apiKey
111
- : getProviderKeySource(entries, parsed.provider)
112
- ?? (session.primaryAgent?.modelConfig?.provider === parsed.provider
113
- && session.primaryAgent?.modelConfig?.apiKey
114
- ? session.primaryAgent.modelConfig.apiKey
115
- : undefined);
121
+ const keySource = getProviderKeySource(entries, parsed.provider)
122
+ ?? (session.primaryAgent?.modelConfig?.provider === parsed.provider
123
+ && session.primaryAgent?.modelConfig?.apiKey
124
+ ? session.primaryAgent.modelConfig.apiKey
125
+ : undefined);
116
126
  if (!keySource) {
117
127
  if (parsed.provider === "openai-codex") {
118
128
  throw new Error("Not logged in to OpenAI (ChatGPT).\n" +
@@ -125,7 +135,7 @@ export function resolveModelSelection(session, target, apiKey) {
125
135
  throw new Error(`Missing API key for provider '${parsed.provider}'${preset ? ` (${preset.name})` : ""}.` +
126
136
  envHint +
127
137
  `\nOr run 'longeragent init' to configure.` +
128
- `\nTip: /model ${parsed.provider}:${parsed.model} key=YOUR_API_KEY (current session only)`);
138
+ `\nTip: select ${parsed.provider}:${parsed.model} in /model to import or paste a key.`);
129
139
  }
130
140
  if (typeof config?.upsertModelRaw !== "function") {
131
141
  throw new Error("Runtime model creation is not supported by this config object.");
@@ -1 +1 @@
1
- {"version":3,"file":"model-selection.js","sourceRoot":"","sources":["../src/model-selection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-selection.js","sourceRoot":"","sources":["../src/model-selection.ts"],"names":[],"mappings":"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"}
@@ -61,7 +61,14 @@ export interface LogSessionMeta {
61
61
  compactCount: number;
62
62
  thinkingLevel: string;
63
63
  cacheHitEnabled: boolean;
64
- activePlanFile?: string;
64
+ activePlanCheckpoints?: string[];
65
+ activePlanChecked?: boolean[];
66
+ }
67
+ /** Local inference server config (oMLX, LM Studio, etc.) */
68
+ export interface LocalProviderConfig {
69
+ baseUrl: string;
70
+ model: string;
71
+ contextLength: number;
65
72
  }
66
73
  export interface GlobalTuiPreferences {
67
74
  version: number;
@@ -73,6 +80,12 @@ export interface GlobalTuiPreferences {
73
80
  cacheHitEnabled: boolean;
74
81
  accentColor?: string;
75
82
  disabledSkills?: string[];
83
+ /** Provider → environment variable name mapping (e.g. { "openai": "OPENAI_API_KEY_1" }) */
84
+ providerEnvVars?: Record<string, string>;
85
+ /** Local inference server configurations (e.g. { "lmstudio": { baseUrl, model, contextLength } }) */
86
+ localProviders?: Record<string, LocalProviderConfig>;
87
+ /** Context window multiplier (0.0–1.0). Effective context = contextLength × contextRatio. Default 1.0. */
88
+ contextRatio?: number;
76
89
  }
77
90
  export declare function createGlobalTuiPreferences(partial?: Partial<GlobalTuiPreferences>): GlobalTuiPreferences;
78
91
  export declare function createLogSessionMeta(partial?: Partial<LogSessionMeta>): LogSessionMeta;
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"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"}
@@ -18,12 +18,11 @@ import { existsSync, mkdirSync, readdirSync, readFileSync, renameSync, statSync,
18
18
  import { gunzipSync, gzipSync } from "node:zlib";
19
19
  import { homedir, tmpdir } from "node:os";
20
20
  import { basename, join } from "node:path";
21
+ import { getLongerAgentHomeDir } from "./home-path.js";
21
22
  import { LogIdAllocator } from "./log-entry.js";
22
23
  // ------------------------------------------------------------------
23
24
  // Constants
24
25
  // ------------------------------------------------------------------
25
- const DEFAULT_LONGERAGENT_DIRNAME = ".longeragent";
26
- const ENV_BASE_DIR = "LONGERAGENT_HOME";
27
26
  const GLOBAL_TUI_PREFERENCES_FILE = "tui-preferences.json";
28
27
  // ------------------------------------------------------------------
29
28
  // Helpers
@@ -36,10 +35,7 @@ function projectSlug(projectPath) {
36
35
  function resolvePreferredBaseDir(baseDir) {
37
36
  if (baseDir)
38
37
  return baseDir.replace(/^~/, homedir());
39
- const envValue = process.env[ENV_BASE_DIR];
40
- if (envValue)
41
- return envValue.replace(/^~/, homedir());
42
- return join(homedir(), DEFAULT_LONGERAGENT_DIRNAME);
38
+ return getLongerAgentHomeDir();
43
39
  }
44
40
  function resolveSessionTimezone() {
45
41
  return Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC";
@@ -210,6 +206,9 @@ export class SessionStore {
210
206
  accentColor: raw.accent_color ?? undefined,
211
207
  cacheHitEnabled: raw.cache_hit_enabled ?? true,
212
208
  disabledSkills: Array.isArray(raw.disabled_skills) ? raw.disabled_skills : undefined,
209
+ providerEnvVars: raw.provider_env_vars ?? undefined,
210
+ localProviders: raw.local_providers ?? undefined,
211
+ contextRatio: typeof raw.context_ratio === "number" ? raw.context_ratio : undefined,
213
212
  });
214
213
  }
215
214
  catch {
@@ -236,6 +235,9 @@ export class SessionStore {
236
235
  cache_hit_enabled: payload.cacheHitEnabled,
237
236
  accent_color: payload.accentColor ?? null,
238
237
  disabled_skills: payload.disabledSkills ?? null,
238
+ provider_env_vars: payload.providerEnvVars ?? null,
239
+ local_providers: payload.localProviders ?? null,
240
+ context_ratio: payload.contextRatio ?? null,
239
241
  }, null, 2));
240
242
  renameSync(tmp, file);
241
243
  this._activeBaseDir = baseDir;
@@ -406,7 +408,8 @@ export function saveLog(dir, meta, entries) {
406
408
  compact_count: meta.compactCount,
407
409
  thinking_level: meta.thinkingLevel,
408
410
  cache_hit_enabled: meta.cacheHitEnabled,
409
- active_plan_file: meta.activePlanFile ?? null,
411
+ active_plan_checkpoints: meta.activePlanCheckpoints ?? null,
412
+ active_plan_checked: meta.activePlanChecked ?? null,
410
413
  entries: entries.map(entryToSnake),
411
414
  };
412
415
  const logFile = join(dir, "log.json");
@@ -432,7 +435,8 @@ export function loadLog(dir) {
432
435
  compactCount: raw.compact_count ?? 0,
433
436
  thinkingLevel: raw.thinking_level ?? "default",
434
437
  cacheHitEnabled: raw.cache_hit_enabled ?? false,
435
- activePlanFile: raw.active_plan_file ?? undefined,
438
+ activePlanCheckpoints: Array.isArray(raw.active_plan_checkpoints) ? raw.active_plan_checkpoints : undefined,
439
+ activePlanChecked: Array.isArray(raw.active_plan_checked) ? raw.active_plan_checked : undefined,
436
440
  };
437
441
  const rawEntries = (raw.entries ?? []);
438
442
  const entries = rawEntries.map(entryFromSnake);
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAyD,MAAM,gBAAgB,CAAC;AAEvG,qEAAqE;AACrE,YAAY;AACZ,qEAAqE;AAErE,MAAM,2BAA2B,GAAG,cAAc,CAAC;AACnD,MAAM,YAAY,GAAG,kBAAkB,CAAC;AACxC,MAAM,2BAA2B,GAAG,sBAAsB,CAAC;AAE3D,qEAAqE;AACrE,UAAU;AACV,qEAAqE;AAErE,SAAS,WAAW,CAAC,WAAmB;IACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC;IAC7C,MAAM,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAgB;IAC/C,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3C,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,2BAA2B,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,IAAI,KAAK,CAAC;AACnE,CAAC;AAED,SAAS,cAAc,CAAC,CAAO;IAC7B,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC;IACvC,OAAO;QACL,GAAG,CAAC,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE;QACjE,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE;QACpG,GAAG,IAAI,GAAG,WAAW,IAAI,UAAU,EAAE;KACtC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAc;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,OAAO,cAAc,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,aAAa;IAMpB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE;QACzB,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC;QAC7B,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE;QACtB,QAAQ,EAAE,sBAAsB,EAAE;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa;IACpB,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IACrB,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7D,OAAO;QACL,CAAC,CAAC,cAAc,EAAE;QAClB,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACxB,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACnB,GAAG;QACH,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpB,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACtB,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;KACvB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,qEAAqE;AACrE,eAAe;AACf,qEAAqE;AAErE,MAAM,OAAO,YAAY;IACf,YAAY,CAAqB;IACjC,YAAY,CAAS;IACrB,iBAAiB,CAAS;IAC1B,cAAc,CAAqB;IACnC,WAAW,CAAS;IACpB,WAAW,CAAqB;IAExC,YAAY,IAAiD;QAC3D,IAAI,CAAC,YAAY,GAAG,IAAI,EAAE,WAAW,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,EAAE,WAAW;YACnC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;YAC/B,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,iBAAiB,GAAG,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACjF,CAAC;IAED,kBAAkB;IAEV,kBAAkB;QACxB,MAAM,UAAU,GAAG;YACjB,IAAI,CAAC,iBAAiB;YACtB,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,UAAU,CAAC;SAC1C,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC1B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,sBAAsB,CAAC,UAAkB;QAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QACrD,IAAI,UAAU,CAAC,WAAW,CAAC;YAAE,OAAO;QACpC,aAAa,CACX,WAAW,EACX,IAAI,CAAC,SAAS,CACZ;YACE,aAAa,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;YACtC,UAAU,EAAE,aAAa,EAAE,CAAC,MAAM;SACnC,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;IACJ,CAAC;IAEO,yBAAyB;QAC/B,MAAM,UAAU,GAAG;YACjB,IAAI,CAAC,cAAc;YACnB,GAAG,IAAI,CAAC,kBAAkB,EAAE;SAC7B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC1B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,sBAAsB,CAAC,OAAe;QAC5C,OAAO,IAAI,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;IACpD,CAAC;IAEO,MAAM,CAAC,uBAAuB,CAAC,UAAkB;QACvD,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACjF,IAAI,UAAU,CAAC,SAAS,CAAC;gBAAE,SAAS;YACpC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,aAAa;QACX,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC;YAChD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAChE,IAAI,CAAC;gBACH,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC3C,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;gBACxC,MAAM,UAAU,GAAG,YAAY,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpE,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAE9D,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;gBAC9B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;gBAC9B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;gBAE9B,IAAI,OAAO,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvC,OAAO,CAAC,IAAI,CACV,4CAA4C,IAAI,CAAC,iBAAiB,0BAA0B,OAAO,GAAG,CACvG,CAAC;gBACJ,CAAC;gBACD,OAAO,UAAU,CAAC;YACpB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;gBAClC,SAAS;YACX,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,8BAA8B,CAAC;QACvF,MAAM,IAAI,KAAK,CAAC,sDAAsD,MAAM,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,4EAA4E;IAC5E,YAAY;QACV,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,qBAAqB;QACnB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,yBAAyB,EAAE,EAAE,CAAC;YACvD,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,SAAS;YAChC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;gBACpD,OAAO,0BAA0B,CAAC;oBAChC,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,CAAC;oBACzB,eAAe,EAAE,GAAG,CAAC,iBAAiB,IAAI,SAAS;oBACnD,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;oBAC9C,iBAAiB,EAAE,GAAG,CAAC,mBAAmB,IAAI,SAAS;oBACvD,OAAO,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;oBAClC,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;oBAC9C,WAAW,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;oBAC1C,eAAe,EAAE,GAAG,CAAC,iBAAiB,IAAI,IAAI;oBAC9C,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;iBACrF,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;QACD,OAAO,0BAA0B,EAAE,CAAC;IACtC,CAAC;IAED,qBAAqB,CAAC,WAAiC;QACrD,MAAM,OAAO,GAAG,0BAA0B,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,yBAAyB,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxC,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAClD,MAAM,GAAG,GAAG,IAAI,GAAG,MAAM,CAAC;gBAC1B,aAAa,CACX,GAAG,EACH,IAAI,CAAC,SAAS,CAAC;oBACb,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,iBAAiB,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;oBAClD,cAAc,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;oBAC7C,mBAAmB,EAAE,OAAO,CAAC,iBAAiB,IAAI,IAAI;oBACtD,QAAQ,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;oBACjC,cAAc,EAAE,OAAO,CAAC,aAAa;oBACrC,iBAAiB,EAAE,OAAO,CAAC,eAAe;oBAC1C,YAAY,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;oBACzC,eAAe,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;iBAChD,EAAE,IAAI,EAAE,CAAC,CAAC,CACZ,CAAC;gBACF,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACtB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;gBAC9B,OAAO;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,sCAAsC,CAAC;QAC/F,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,YAAY;QACV,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;YAAE,OAAO,EAAE,CAAC;QAE7C,MAAM,QAAQ,GAA6E,EAAE,CAAC;QAC9F,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAE/D,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,SAAS;YACtC,IAAI,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;oBAAE,SAAS;YAC3C,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;YACpC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,SAAS;YACnC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;gBACvD,MAAM,UAAU,GAAI,GAAG,CAAC,YAAY,CAAY,IAAI,EAAE,CAAC;gBACvD,MAAM,OAAO,GAAG,iBAAiB,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC;gBAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YACtD,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,YAAY;QACd,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QACxC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC;YACH,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;YACpE,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU,CAAC,KAAa;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;CACF;AAwCD,MAAM,UAAU,0BAA0B,CACxC,OAAuC;IAEvC,OAAO;QACL,OAAO,EAAE,CAAC;QACV,eAAe,EAAE,SAAS;QAC1B,aAAa,EAAE,SAAS;QACxB,iBAAiB,EAAE,SAAS;QAC5B,OAAO,EAAE,SAAS;QAClB,aAAa,EAAE,SAAS;QACxB,eAAe,EAAE,IAAI;QACrB,GAAG,OAAO;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,OAAiC;IAEjC,OAAO;QACL,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,EAAE;QACf,eAAe,EAAE,EAAE;QACnB,aAAa,EAAE,SAAS;QACxB,iBAAiB,EAAE,SAAS;QAC5B,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,SAAS;QACxB,eAAe,EAAE,KAAK;QACtB,GAAG,OAAO;KACX,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,iDAAiD;AACjD,qEAAqE;AAErE,SAAS,YAAY,CAAC,KAAe;IACnC,MAAM,GAAG,GAA4B;QACnC,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,WAAW,EAAE,KAAK,CAAC,UAAU;QAC7B,YAAY,EAAE,KAAK,CAAC,WAAW;QAC/B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,OAAO;QACvB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC;IACF,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC;IACvE,IAAI,KAAK,CAAC,UAAU;QAAE,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC;IAC5C,IAAI,KAAK,CAAC,YAAY;QAAE,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC;IAC/D,IAAI,KAAK,CAAC,SAAS;QAAE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IAC1C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,GAA4B;IAClD,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAY;QACpB,IAAI,EAAE,GAAG,CAAC,IAAoB;QAC9B,SAAS,EAAE,GAAG,CAAC,SAAmB;QAClC,SAAS,EAAG,GAAG,CAAC,UAAqB,IAAI,CAAC;QAC1C,UAAU,EAAE,GAAG,CAAC,WAAiC;QACjD,UAAU,EAAG,GAAG,CAAC,WAAuB,IAAI,KAAK;QACjD,WAAW,EAAG,GAAG,CAAC,YAAsC,IAAI,IAAI;QAChE,OAAO,EAAG,GAAG,CAAC,OAAkB,IAAI,EAAE;QACtC,OAAO,EAAG,GAAG,CAAC,QAAgC,IAAI,IAAI;QACtD,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI;QAC5B,QAAQ,EAAG,GAAG,CAAC,QAAoB,IAAI,KAAK;QAC5C,IAAI,EAAG,GAAG,CAAC,IAAgC,IAAI,EAAE;QACjD,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,aAAuB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,oBAAoB;AACpB,qEAAqE;AAErE,MAAM,UAAU,OAAO,CACrB,GAAW,EACX,IAAoB,EACpB,OAAmB;IAEnB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;IAC5B,IAAI,CAAC,IAAI,CAAC,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEpD,MAAM,OAAO,GAA4B;QACvC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,YAAY,EAAE,IAAI,CAAC,WAAW;QAC9B,iBAAiB,EAAE,IAAI,CAAC,eAAe;QACvC,cAAc,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI;QAC1C,mBAAmB,EAAE,IAAI,CAAC,iBAAiB,IAAI,IAAI;QACnD,QAAQ,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;QAC9B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,aAAa,EAAE,IAAI,CAAC,YAAY;QAChC,cAAc,EAAE,IAAI,CAAC,aAAa;QAClC,iBAAiB,EAAE,IAAI,CAAC,eAAe;QACvC,gBAAgB,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI;QAC7C,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;KACnC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,OAAO,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACrD,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC3B,CAAC;AAQD,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAEvD,MAAM,IAAI,GAAmB;QAC3B,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,CAAC;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE;QAC/B,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE;QAC/B,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE;QAC/B,WAAW,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE;QACnC,eAAe,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE;QAC5C,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;QAC9C,iBAAiB,EAAE,GAAG,CAAC,mBAAmB,IAAI,SAAS;QACvD,OAAO,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;QAClC,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;QAC1B,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC;QAC9B,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,CAAC;QACpC,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;QAC9C,eAAe,EAAE,GAAG,CAAC,iBAAiB,IAAI,KAAK;QAC/C,cAAc,EAAE,GAAG,CAAC,gBAAgB,IAAI,SAAS;KAClD,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAmC,CAAC;IACzE,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAE/C,+BAA+B;IAC/B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,qCAAqC;IACrC,MAAM,WAAW,GAAG,IAAI,cAAc,EAAE,CAAC;IACzC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAEjC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AACxC,CAAC;AAYD,MAAM,UAAU,oBAAoB,CAClC,OAAmB;IAEnB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACnE,CAAC;IAED,0EAA0E;IAC1E,CAAC;QACC,qCAAqC;QACrC,IAAI,oBAAoB,GAAG,CAAC,CAAC,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBAClE,oBAAoB,GAAG,CAAC,CAAC;gBACzB,MAAM;YACR,CAAC;QACH,CAAC;QACD,uEAAuE;QACvE,KAAK,IAAI,CAAC,GAAG,oBAAoB,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/D,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,YAAY,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBAC3D,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC5B,QAAQ,CAAC,IAAI,CAAC,yCAAyC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBACzE,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAED,4DAA4D;IAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,SAAS;YAAE,SAAS;QAE5D,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAoB,CAAC;QACnD,0CAA0C;QAC1C,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBAC5G,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,mEAAmE;YACnE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,SAAS,EAAE,CAAC;gBACd,yEAAyE;gBACzE,MAAM,WAAW,GAAG,gBAAgB,UAAU,EAAE,CAAC;gBACjD,MAAM,cAAc,GAAa;oBAC/B,EAAE,EAAE,WAAW;oBACf,IAAI,EAAE,aAAa;oBACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;oBACrB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,UAAU,EAAE,KAAK;oBACjB,WAAW,EAAE,IAAI;oBACjB,OAAO,EAAE,EAAE;oBACX,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE;wBACP,UAAU;wBACV,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAkB;wBACvC,OAAO,EAAE,yEAAyE;wBAClF,WAAW,EAAE,aAAa;qBAC3B;oBACD,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE;wBACJ,UAAU;wBACV,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ;wBAC7B,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,IAAI;wBACf,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACnF;iBACF,CAAC;gBACF,6BAA6B;gBAC7B,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;gBACzC,QAAQ,CAAC,IAAI,CAAC,6CAA6C,KAAK,CAAC,EAAE,KAAK,UAAU,IAAI,CAAC,CAAC;gBACxF,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,CAAC;QACC,6CAA6C;QAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC9C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;QACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,CAAC,SAAS;gBAAE,SAAS;YAC1B,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC7B,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAe,EAAE,CAAC,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACvC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAe,EAAE,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,cAAc,EAAE,CAAC;YAC1C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC,mCAAmC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC,CAAC;gBACtF,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS;gBAAE,SAAS;YACxC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,MAAM,KAAK,SAAS;gBAAE,SAAS;YAEnC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAoB,CAAC;YACtD,IAAI,CAAC,UAAU;gBAAE,SAAS;YAE1B,0EAA0E;YAC1E,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;oBAC5G,aAAa,GAAG,IAAI,CAAC;oBACrB,MAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,WAAW,GAAG,cAAc,UAAU,EAAE,CAAC;gBAC/C,MAAM,cAAc,GAAa;oBAC/B,EAAE,EAAE,WAAW;oBACf,IAAI,EAAE,aAAa;oBACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;oBACrB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAgC;oBAC1D,UAAU,EAAE,KAAK;oBACjB,WAAW,EAAE,IAAI;oBACjB,OAAO,EAAE,EAAE;oBACX,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE;wBACP,UAAU;wBACV,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK;wBACzC,OAAO,EAAE,4DAA4D;wBACrE,WAAW,EAAE,aAAa;qBAC3B;oBACD,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE;wBACJ,UAAU;wBACV,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK;wBACzC,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,IAAI;wBACf,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACzF;iBACF,CAAC;gBACF,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;gBAC9C,QAAQ,CAAC,IAAI,CAAC,oDAAoD,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC,CAAC;gBAC1G,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AACzC,CAAC;AAED,qEAAqE;AACrE,iBAAiB;AACjB,qEAAqE;AAErE,MAAM,UAAU,aAAa,CAC3B,GAAW,EACX,WAAmB,EACnB,OAAmB,EACnB,cAAsB,EACtB,YAAoB;IAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACxC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3C,MAAM,QAAQ,GAA4C,EAAE,CAAC;IAC7D,KAAK,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC,IAAI,YAAY,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1E,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAChD,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;QACpB,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,WAAW,UAAU,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,aAAa,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,GAAW,EACX,WAAmB;IAEnB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,WAAW,UAAU,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAmB,EACnB,QAAiD;IAEjD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACnE,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACvC,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ export interface PromptChoice {
2
+ label: string;
3
+ value: string;
4
+ description?: string;
5
+ }
6
+ export interface PromptSelectRequest {
7
+ message: string;
8
+ options: PromptChoice[];
9
+ }
10
+ export interface PromptSecretRequest {
11
+ message: string;
12
+ allowEmpty?: boolean;
13
+ }
14
+ export interface CredentialPromptAdapter {
15
+ select(request: PromptSelectRequest): Promise<string | undefined>;
16
+ secret(request: PromptSecretRequest): Promise<string | undefined>;
17
+ }
18
+ export interface EnsureManagedCredentialOptions {
19
+ mode: "init" | "model";
20
+ allowReplaceExisting?: boolean;
21
+ }
22
+ export interface EnsureManagedCredentialResult {
23
+ status: "configured" | "skipped";
24
+ source?: "existing" | "imported" | "pasted";
25
+ envVar: string;
26
+ }
27
+ export declare function ensureManagedProviderCredential(providerId: string, adapter: CredentialPromptAdapter, options: EnsureManagedCredentialOptions): Promise<EnsureManagedCredentialResult>;
28
+ //# sourceMappingURL=provider-credential-flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-credential-flow.d.ts","sourceRoot":"","sources":["../src/provider-credential-flow.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAClE,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,MAAM,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,+BAA+B,CACnD,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,uBAAuB,EAChC,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,6BAA6B,CAAC,CA+GxC"}
@@ -0,0 +1,112 @@
1
+ import { setDotenvKey } from "./dotenv.js";
2
+ import { detectManagedCredentialCandidates, getManagedCredentialSpec, hasManagedCredential, } from "./managed-provider-credentials.js";
3
+ import { findProviderPreset } from "./provider-presets.js";
4
+ function providerLabel(providerId) {
5
+ return findProviderPreset(providerId)?.name ?? providerId;
6
+ }
7
+ export async function ensureManagedProviderCredential(providerId, adapter, options) {
8
+ const spec = getManagedCredentialSpec(providerId);
9
+ if (!spec) {
10
+ throw new Error(`Provider '${providerId}' does not use managed credentials.`);
11
+ }
12
+ const label = providerLabel(providerId);
13
+ const cancelLabel = options.mode === "init" ? "Skip" : "Cancel";
14
+ if (hasManagedCredential(providerId)) {
15
+ if (!options.allowReplaceExisting) {
16
+ return {
17
+ status: "configured",
18
+ source: "existing",
19
+ envVar: spec.internalEnvVar,
20
+ };
21
+ }
22
+ const existingChoice = await adapter.select({
23
+ message: `${label}: A LongerAgent-managed key is already saved`,
24
+ options: [
25
+ {
26
+ label: "Keep current key",
27
+ value: "keep",
28
+ description: `Continue using ${spec.internalEnvVar}`,
29
+ },
30
+ {
31
+ label: "Replace key",
32
+ value: "replace",
33
+ description: "Import a detected key or paste a new one",
34
+ },
35
+ {
36
+ label: cancelLabel,
37
+ value: "cancel",
38
+ description: "Leave this provider unchanged",
39
+ },
40
+ ],
41
+ });
42
+ if (existingChoice === "keep") {
43
+ return {
44
+ status: "configured",
45
+ source: "existing",
46
+ envVar: spec.internalEnvVar,
47
+ };
48
+ }
49
+ if (!existingChoice || existingChoice === "cancel") {
50
+ return { status: "skipped", envVar: spec.internalEnvVar };
51
+ }
52
+ }
53
+ const candidates = detectManagedCredentialCandidates(providerId);
54
+ const choice = await adapter.select({
55
+ message: candidates.length > 0
56
+ ? `${label}: Choose how to configure the API key`
57
+ : `${label}: No saved LongerAgent key found`,
58
+ options: [
59
+ ...candidates.map((candidate) => ({
60
+ label: `Import detected ${candidate.envVar}`,
61
+ value: `import:${candidate.envVar}`,
62
+ description: `Copy ${candidate.envVar} into ${spec.internalEnvVar}`,
63
+ })),
64
+ {
65
+ label: "Paste a different key",
66
+ value: "paste",
67
+ description: `Save it as ${spec.internalEnvVar}`,
68
+ },
69
+ {
70
+ label: cancelLabel,
71
+ value: "cancel",
72
+ description: options.mode === "init"
73
+ ? "Leave this provider unconfigured for now"
74
+ : "Abort model switching",
75
+ },
76
+ ],
77
+ });
78
+ if (!choice || choice === "cancel") {
79
+ return { status: "skipped", envVar: spec.internalEnvVar };
80
+ }
81
+ if (choice.startsWith("import:")) {
82
+ const envVar = choice.slice("import:".length);
83
+ const candidate = candidates.find((item) => item.envVar === envVar);
84
+ if (!candidate) {
85
+ throw new Error(`Detected key '${envVar}' is no longer available.`);
86
+ }
87
+ setDotenvKey(spec.internalEnvVar, candidate.value.trim());
88
+ return {
89
+ status: "configured",
90
+ source: "imported",
91
+ envVar: spec.internalEnvVar,
92
+ };
93
+ }
94
+ while (true) {
95
+ const pasted = await adapter.secret({
96
+ message: `${label}: Paste API key`,
97
+ allowEmpty: false,
98
+ });
99
+ if (pasted === undefined) {
100
+ return { status: "skipped", envVar: spec.internalEnvVar };
101
+ }
102
+ if (pasted.trim() === "")
103
+ continue;
104
+ setDotenvKey(spec.internalEnvVar, pasted.trim());
105
+ return {
106
+ status: "configured",
107
+ source: "pasted",
108
+ envVar: spec.internalEnvVar,
109
+ };
110
+ }
111
+ }
112
+ //# sourceMappingURL=provider-credential-flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-credential-flow.js","sourceRoot":"","sources":["../src/provider-credential-flow.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,10 @@ export interface ProviderPreset {
26
26
  groupLabel?: string;
27
27
  /** Display label for this preset within its group (middle level, e.g. "Kimi-Global"). */
28
28
  subLabel?: string;
29
+ /** Whether this is a local inference server (oMLX, LM Studio, etc.). Local providers skip API key prompts and use dynamic model discovery. */
30
+ localServer?: boolean;
31
+ /** Default base URL for local servers (e.g. "http://localhost:8000/v1"). */
32
+ defaultBaseUrl?: string;
29
33
  }
30
34
  export declare const PROVIDER_PRESETS: ProviderPreset[];
31
35
  export declare function findProviderPreset(providerId: string): ProviderPreset | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"provider-presets.d.ts","sourceRoot":"","sources":["../src/provider-presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,gDAAgD;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,+GAA+G;IAC/G,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAmBD,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAgJ5C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEjF;AAED,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,mBAAmB,GAAG,SAAS,CAQjC;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,MAAM,GACb,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOzB"}
1
+ {"version":3,"file":"provider-presets.d.ts","sourceRoot":"","sources":["../src/provider-presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,gDAAgD;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,+GAA+G;IAC/G,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8IAA8I;IAC9I,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAmBD,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAgK5C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEjF;AAED,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,mBAAmB,GAAG,SAAS,CAQjC;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,MAAM,GACb,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOzB"}