@undefineds.co/linx 0.2.17 → 0.2.19

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 (117) hide show
  1. package/README.md +3 -6
  2. package/dist/generated/version.js +1 -1
  3. package/dist/generated/version.js.map +1 -1
  4. package/dist/index.js +256 -143
  5. package/dist/index.js.map +1 -1
  6. package/dist/lib/account-api.js +1 -1
  7. package/dist/lib/account-api.js.map +1 -1
  8. package/dist/lib/account-session.js +1 -1
  9. package/dist/lib/account-session.js.map +1 -1
  10. package/dist/lib/ai-command.js +186 -367
  11. package/dist/lib/ai-command.js.map +1 -1
  12. package/dist/lib/chat-api.js +177 -19
  13. package/dist/lib/chat-api.js.map +1 -1
  14. package/dist/lib/codex-plugin/bridge.js.map +1 -1
  15. package/dist/lib/codex-plugin/codex-native-proxy.js.map +1 -1
  16. package/dist/lib/codex-plugin/index.js.map +1 -1
  17. package/dist/lib/codex-plugin/runner.js.map +1 -1
  18. package/dist/lib/credentials-store.js +7 -1
  19. package/dist/lib/credentials-store.js.map +1 -1
  20. package/dist/lib/default-model.js +1 -0
  21. package/dist/lib/default-model.js.map +1 -1
  22. package/dist/lib/login-command.js +33 -10
  23. package/dist/lib/login-command.js.map +1 -1
  24. package/dist/lib/models.js +2 -27
  25. package/dist/lib/models.js.map +1 -1
  26. package/dist/lib/node-warning-filter.js +34 -0
  27. package/dist/lib/node-warning-filter.js.map +1 -0
  28. package/dist/lib/oidc-auth.js +130 -18
  29. package/dist/lib/oidc-auth.js.map +1 -1
  30. package/dist/lib/oidc-session-storage.js.map +1 -1
  31. package/dist/lib/pi-adapter/auth.js +47 -11
  32. package/dist/lib/pi-adapter/auth.js.map +1 -1
  33. package/dist/lib/pi-adapter/branding.js +802 -78
  34. package/dist/lib/pi-adapter/branding.js.map +1 -1
  35. package/dist/lib/pi-adapter/index.js.map +1 -1
  36. package/dist/lib/pi-adapter/interactive.js +179 -5
  37. package/dist/lib/pi-adapter/interactive.js.map +1 -1
  38. package/dist/lib/pi-adapter/pod-approval.js +8 -0
  39. package/dist/lib/pi-adapter/pod-approval.js.map +1 -0
  40. package/dist/lib/pi-adapter/pod-mirror-mapping.js +189 -0
  41. package/dist/lib/pi-adapter/pod-mirror-mapping.js.map +1 -0
  42. package/dist/lib/pi-adapter/pod-mirror.js +416 -0
  43. package/dist/lib/pi-adapter/pod-mirror.js.map +1 -0
  44. package/dist/lib/pi-adapter/pod-tools.js +104 -0
  45. package/dist/lib/pi-adapter/pod-tools.js.map +1 -0
  46. package/dist/lib/pi-adapter/runtime.js +327 -28
  47. package/dist/lib/pi-adapter/runtime.js.map +1 -1
  48. package/dist/lib/pi-adapter/session.js +608 -0
  49. package/dist/lib/pi-adapter/session.js.map +1 -0
  50. package/dist/lib/pi-adapter/stream.js +154 -4
  51. package/dist/lib/pi-adapter/stream.js.map +1 -1
  52. package/dist/lib/pi-adapter/theme.js.map +1 -1
  53. package/dist/lib/pi-adapter/web-fetch.js +154 -0
  54. package/dist/lib/pi-adapter/web-fetch.js.map +1 -0
  55. package/dist/lib/pod-chat-store.js +40 -30
  56. package/dist/lib/pod-chat-store.js.map +1 -1
  57. package/dist/lib/pod-data-session.js +110 -0
  58. package/dist/lib/pod-data-session.js.map +1 -0
  59. package/dist/lib/profile-identity.js +16 -60
  60. package/dist/lib/profile-identity.js.map +1 -1
  61. package/dist/lib/prompt.js.map +1 -1
  62. package/dist/lib/runtime-target.js +1 -1
  63. package/dist/lib/runtime-target.js.map +1 -1
  64. package/dist/lib/solid-auth.js.map +1 -1
  65. package/dist/lib/thread-utils.js.map +1 -1
  66. package/dist/lib/watch/archive.js +1 -1
  67. package/dist/lib/watch/archive.js.map +1 -1
  68. package/dist/lib/watch/auth.js +1 -1
  69. package/dist/lib/watch/auth.js.map +1 -1
  70. package/dist/lib/watch/codex-composer.js.map +1 -1
  71. package/dist/lib/watch/codex-footer.js.map +1 -1
  72. package/dist/lib/watch/codex-overlay.js.map +1 -1
  73. package/dist/lib/watch/codex-request-form.js +1 -1
  74. package/dist/lib/watch/codex-request-form.js.map +1 -1
  75. package/dist/lib/watch/codex-request-input.js.map +1 -1
  76. package/dist/lib/watch/display.js.map +1 -1
  77. package/dist/lib/watch/format.js.map +1 -1
  78. package/dist/lib/watch/hooks/claude.js +4 -0
  79. package/dist/lib/watch/hooks/claude.js.map +1 -1
  80. package/dist/lib/watch/hooks/codebuddy.js +4 -0
  81. package/dist/lib/watch/hooks/codebuddy.js.map +1 -1
  82. package/dist/lib/watch/hooks/codex.js +4 -0
  83. package/dist/lib/watch/hooks/codex.js.map +1 -1
  84. package/dist/lib/watch/hooks/index.js.map +1 -1
  85. package/dist/lib/watch/hooks/shared.js +0 -1
  86. package/dist/lib/watch/hooks/shared.js.map +1 -1
  87. package/dist/lib/watch/index.js.map +1 -1
  88. package/dist/lib/watch/pod-ai.js +29 -37
  89. package/dist/lib/watch/pod-ai.js.map +1 -1
  90. package/dist/lib/watch/pod-approval.js +822 -220
  91. package/dist/lib/watch/pod-approval.js.map +1 -1
  92. package/dist/lib/watch/pod-persistence.js +214 -106
  93. package/dist/lib/watch/pod-persistence.js.map +1 -1
  94. package/dist/lib/watch/runner.js +243 -38
  95. package/dist/lib/watch/runner.js.map +1 -1
  96. package/dist/lib/watch/secretary.js +238 -0
  97. package/dist/lib/watch/secretary.js.map +1 -0
  98. package/dist/lib/watch/types.js.map +1 -1
  99. package/dist/watch-cli.js +8 -34
  100. package/dist/watch-cli.js.map +1 -1
  101. package/package.json +3 -9
  102. package/vendor/agent-runtime/dist/acp.d.ts +27 -0
  103. package/vendor/agent-runtime/dist/acp.js +86 -0
  104. package/vendor/agent-runtime/dist/companion-model.d.ts +7 -0
  105. package/vendor/agent-runtime/dist/companion-model.js +12 -0
  106. package/vendor/agent-runtime/dist/index.d.ts +3 -0
  107. package/vendor/agent-runtime/dist/index.js +3 -0
  108. package/vendor/agent-runtime/dist/turn-controller.d.ts +69 -0
  109. package/vendor/agent-runtime/dist/turn-controller.js +129 -0
  110. package/vendor/agent-runtime/package.json +11 -0
  111. package/vendor/client/dist/client/index.d.ts +0 -118
  112. package/vendor/client/dist/client/index.js +0 -260
  113. package/vendor/client/dist/index.d.ts +0 -1
  114. package/vendor/client/dist/index.js +0 -1
  115. package/vendor/client/dist/watch/index.d.ts +0 -226
  116. package/vendor/client/dist/watch/index.js +0 -1114
  117. package/vendor/client/package.json +0 -9
@@ -1,24 +1,64 @@
1
1
  import { createPiAgentStreamAdapter } from './stream.js';
2
2
  import { resolveLinxPiCloudOAuthCredential } from './auth.js';
3
- import { loginWithBrowserConsent } from '../oidc-auth.js';
4
- import { DEFAULT_LINX_CLOUD_MODEL_ID, resolvePreferredLinxCloudModelId } from '../default-model.js';
3
+ import { ensureBrowserConsentLogin, isOidcLoginExpiredError } from '../oidc-auth.js';
4
+ import { DEFAULT_LINX_CLOUD_MODEL_ID, FALLBACK_LINX_CLOUD_MODEL_IDS, resolvePreferredLinxCloudModelId } from '../default-model.js';
5
5
  import { ensureLinxPiTheme } from './theme.js';
6
- import { AuthStorage, ModelRegistry, SettingsManager, createAgentSessionFromServices, createAgentSessionRuntime, createAgentSessionServices, createCodingTools, } from '@mariozechner/pi-coding-agent';
6
+ import { AuthStorage, ModelRegistry, SettingsManager, createCodingTools, createAgentSessionFromServices, createAgentSessionRuntime, createAgentSessionServices, createLocalBashOperations, } from '@mariozechner/pi-coding-agent';
7
+ import { webFetchTool, webSearchTool } from './web-fetch.js';
8
+ import { podReadTool, podWriteTool } from './pod-tools.js';
9
+ import { existsSync } from 'node:fs';
10
+ import { dirname, join, resolve } from 'node:path';
11
+ import { fileURLToPath } from 'node:url';
12
+ import { isRemoteAuthExpiredError } from '../chat-api.js';
13
+ import { installLinxPiRemoteApproval } from './pod-approval.js';
7
14
  const UNDEFINEDS_PROVIDER_ID = 'undefineds';
8
- const UNDEFINEDS_PROVIDER_LABEL = 'undefineds(cloud)';
15
+ const UNDEFINEDS_PROVIDER_LABEL = 'undefineds';
9
16
  const UNDEFINEDS_PROVIDER_API = 'openai-completions';
10
17
  const UNDEFINEDS_SESSION_ID = 'undefineds_pi_frontend';
11
18
  const UNDEFINEDS_AUTH_BRIDGE_ID = 'undefineds-cloud-oauth-bridge';
19
+ const LINX_PACKAGE_SOURCE = '@undefineds.co/linx';
20
+ export const DEFAULT_LINX_PI_BASH_TIMEOUT_SECONDS = 15;
21
+ export async function resolveLinxStartupLoginPromptDecision(options) {
22
+ if (options.print) {
23
+ return { shouldPrompt: false, reason: 'print-mode' };
24
+ }
25
+ if (options.backend === 'native') {
26
+ return { shouldPrompt: false, reason: 'native-backend' };
27
+ }
28
+ const resolveCredential = options.resolveCredential ?? resolveLinxPiCloudOAuthCredential;
29
+ try {
30
+ const credential = await resolveCredential(options.issuerUrl);
31
+ return credential
32
+ ? { shouldPrompt: false, reason: 'credential-present' }
33
+ : { shouldPrompt: true, reason: 'missing-credential' };
34
+ }
35
+ catch (error) {
36
+ if (isOidcLoginExpiredError(error)) {
37
+ return { shouldPrompt: true, reason: 'expired-credential' };
38
+ }
39
+ throw error;
40
+ }
41
+ }
42
+ export function resolveLinxStartupLoginReason(decision) {
43
+ if (!decision.shouldPrompt) {
44
+ return null;
45
+ }
46
+ return decision.reason === 'expired-credential' ? 'expired' : 'startup';
47
+ }
48
+ export function resolveLinxInteractiveLoginReason(options) {
49
+ if (options.runtimePromptOnStart) {
50
+ return 'expired';
51
+ }
52
+ return resolveLinxStartupLoginReason(options.startupDecision);
53
+ }
12
54
  export function createPiRuntimeAdapter(dependencies, options = {}) {
13
55
  const backendMode = options.backend ?? 'cloud';
14
56
  const cwd = options.cwd ?? process.cwd();
15
57
  const requestedModel = options.model?.trim() || undefined;
16
58
  let activeModelId = requestedModel ?? DEFAULT_LINX_CLOUD_MODEL_ID;
17
59
  const baseUrl = options.providerConfig?.baseUrl ?? 'https://api.undefineds.co/v1';
18
- const providerModels = [buildProviderModel({
19
- id: activeModelId,
20
- contextWindow: 1_000_000,
21
- })];
60
+ let shouldPromptLoginOnStart = false;
61
+ const providerModels = buildFallbackProviderModels(activeModelId);
22
62
  const proxy = backendMode === 'native'
23
63
  ? dependencies.createNativeProxy?.({
24
64
  cwd,
@@ -55,12 +95,12 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
55
95
  issuerUrl: options.providerConfig?.issuerUrl,
56
96
  explicitApiKey: options.providerConfig?.apiKey,
57
97
  });
58
- return dependencies.createRemoteCompletion({
98
+ return completeWithAuthRecovery(apiKey, {
59
99
  runtimeUrl: baseUrl,
60
- apiKey,
61
100
  model: input.model,
62
101
  messages: withSystemPrompt(input.systemPrompt, input.messages),
63
102
  tools: input.tools,
103
+ signal: input.signal,
64
104
  });
65
105
  },
66
106
  }
@@ -83,8 +123,10 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
83
123
  usesCallbackServer: true,
84
124
  async login(callbacks) {
85
125
  callbacks.onProgress?.('Opening LinX Cloud login in your browser...');
86
- const result = await loginWithBrowserConsent({
126
+ const result = await ensureBrowserConsentLogin({
87
127
  issuerUrl: options.providerConfig?.issuerUrl,
128
+ forceFresh: callbacks.forceFresh,
129
+ signal: callbacks.signal,
88
130
  onAuthUrl(url) {
89
131
  callbacks.onAuth({
90
132
  url,
@@ -93,7 +135,10 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
93
135
  },
94
136
  manualRedirectUrl: callbacks.onManualCodeInput,
95
137
  });
96
- await syncProviderModels(result.tokenSet.accessToken ?? '');
138
+ if (result.reusedExistingSession) {
139
+ callbacks.onProgress?.('Reused existing LinX Cloud session.');
140
+ }
141
+ await syncProviderModels(result.tokenSet.accessToken ?? '', { throwAuthExpired: true });
97
142
  return {
98
143
  refresh: result.tokenSet.refreshToken ?? '',
99
144
  access: result.tokenSet.accessToken ?? '',
@@ -114,14 +159,19 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
114
159
  };
115
160
  const resolvedOAuth = options.providerConfig?.oauth
116
161
  ? null
117
- : await resolveLinxPiCloudOAuthCredential(options.providerConfig?.issuerUrl);
162
+ : await resolveLinxPiCloudOAuthCredential(options.providerConfig?.issuerUrl).catch((error) => {
163
+ if (isOidcLoginExpiredError(error)) {
164
+ return null;
165
+ }
166
+ throw error;
167
+ });
118
168
  const explicitOAuthCredential = options.providerConfig?.oauth
119
169
  ? await options.providerConfig.oauth.login()
120
170
  : null;
121
171
  const explicitApiKey = options.providerConfig?.apiKey;
122
172
  const authMode = options.providerConfig?.oauth || resolvedOAuth || !explicitApiKey ? 'oauth' : 'apiKey';
123
173
  if (resolvedOAuth?.access) {
124
- await syncProviderModels(resolvedOAuth.access);
174
+ await syncProviderModels(resolvedOAuth.access, { refreshOnAuthExpired: true });
125
175
  }
126
176
  else if (explicitOAuthCredential?.access) {
127
177
  await syncProviderModels(explicitOAuthCredential.access);
@@ -141,6 +191,9 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
141
191
  if (!options.providerConfig?.oauth && !resolvedOAuth && !explicitApiKey) {
142
192
  authStorage.setRuntimeApiKey(UNDEFINEDS_PROVIDER_ID, 'linx-runtime-managed-auth');
143
193
  }
194
+ else if (explicitApiKey) {
195
+ authStorage.setRuntimeApiKey(UNDEFINEDS_PROVIDER_ID, explicitApiKey);
196
+ }
144
197
  if (options.providerConfig?.oauth && explicitOAuthCredential) {
145
198
  authStorage.set(UNDEFINEDS_PROVIDER_ID, { type: 'oauth', ...explicitOAuthCredential });
146
199
  }
@@ -150,15 +203,24 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
150
203
  const settingsManager = SettingsManager.create(context.cwd, context.agentDir);
151
204
  ensureLinxPiTheme(context.agentDir);
152
205
  settingsManager.setTheme('linx');
153
- sanitizeLinxCloudDefaults(settingsManager);
206
+ const defaultModelId = sanitizeLinxCloudDefaults(settingsManager, requestedModel, providerModels);
207
+ activeModelId = defaultModelId;
208
+ const bundledSkillsDir = resolveBundledLinxSkillsDir();
154
209
  const services = await createAgentSessionServices({
155
210
  cwd: context.cwd,
156
211
  agentDir: context.agentDir,
157
212
  authStorage,
158
213
  settingsManager,
159
214
  modelRegistry,
215
+ resourceLoaderOptions: {
216
+ additionalSkillPaths: bundledSkillsDir ? [bundledSkillsDir] : [],
217
+ skillsOverride: bundledSkillsDir
218
+ ? (base) => withBundledLinxSkillSourceInfo(base, bundledSkillsDir)
219
+ : undefined,
220
+ systemPromptOverride: overrideLinxSystemPrompt,
221
+ },
160
222
  });
161
- const selectedModel = modelRegistry.find(UNDEFINEDS_PROVIDER_ID, requestedModel ?? activeModelId)
223
+ const selectedModel = modelRegistry.find(UNDEFINEDS_PROVIDER_ID, defaultModelId)
162
224
  ?? modelRegistry.getAvailable().find((candidate) => candidate.provider === UNDEFINEDS_PROVIDER_ID);
163
225
  if (!selectedModel) {
164
226
  throw new Error('Failed to resolve undefineds model from the LinX Pi runtime adapter');
@@ -168,10 +230,16 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
168
230
  sessionManager: context.sessionManager,
169
231
  sessionStartEvent: context.sessionStartEvent,
170
232
  model: selectedModel,
171
- tools: createCodingTools(context.cwd),
233
+ tools: createLinxPiCodingTools(context.cwd),
234
+ customTools: [webFetchTool, webSearchTool, podReadTool, podWriteTool],
172
235
  });
173
236
  const session = created.session;
174
- if (session.model?.provider === UNDEFINEDS_PROVIDER_ID && session.model.id !== selectedModel.id) {
237
+ enableLinxXhighThinking(session);
238
+ installLinxPiRemoteApproval({
239
+ session,
240
+ cwd: context.cwd,
241
+ });
242
+ if (session.model?.provider !== selectedModel.provider || session.model?.id !== selectedModel.id) {
175
243
  await session.setModel(selectedModel);
176
244
  }
177
245
  const runtime = await createAgentSessionRuntime(async () => ({
@@ -188,9 +256,10 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
188
256
  runtime.linxAuthBridge = {
189
257
  description: UNDEFINEDS_AUTH_BRIDGE_ID,
190
258
  authMode,
191
- providerId: 'undefineds-cloud',
259
+ providerId: UNDEFINEDS_PROVIDER_ID,
192
260
  providerLabel: UNDEFINEDS_PROVIDER_LABEL,
193
261
  runtimeUrl: baseUrl,
262
+ shouldPromptLoginOnStart,
194
263
  };
195
264
  return runtime;
196
265
  },
@@ -201,30 +270,221 @@ export function createPiRuntimeAdapter(dependencies, options = {}) {
201
270
  await proxy?.close();
202
271
  },
203
272
  };
204
- async function syncProviderModels(apiKey) {
273
+ async function syncProviderModels(apiKey, options = {}) {
205
274
  if (!apiKey || !dependencies.listRemoteModels) {
206
275
  return;
207
276
  }
208
- const remoteModels = await dependencies.listRemoteModels(null, baseUrl, apiKey).catch(() => []);
277
+ const remoteModels = await listRemoteModelsWithAuthRecovery(apiKey, options);
209
278
  if (remoteModels.length === 0) {
210
279
  return;
211
280
  }
212
- const nextModels = remoteModels.map((entry) => buildProviderModel({
281
+ const mergedModels = mergeLinxProviderModels(remoteModels.map((entry) => ({
213
282
  id: entry.id,
214
283
  contextWindow: entry.contextWindow ?? 1_000_000,
215
- }));
284
+ })), activeModelId);
285
+ const nextModels = mergedModels.map((entry) => buildProviderModel(entry));
216
286
  providerModels.splice(0, providerModels.length, ...nextModels);
217
287
  if (!requestedModel) {
218
288
  activeModelId = resolvePreferredLinxCloudModelId(nextModels, activeModelId);
219
289
  }
220
290
  }
291
+ async function listRemoteModelsWithAuthRecovery(apiKey, recoveryOptions) {
292
+ try {
293
+ return await dependencies.listRemoteModels(null, baseUrl, apiKey);
294
+ }
295
+ catch (error) {
296
+ if (!isAuthExpiredError(error)) {
297
+ return [];
298
+ }
299
+ if (recoveryOptions.refreshOnAuthExpired) {
300
+ const refreshed = await resolveLinxPiCloudOAuthCredential(options.providerConfig?.issuerUrl, { forceRefresh: true }).catch((refreshError) => {
301
+ if (isOidcLoginExpiredError(refreshError)) {
302
+ return null;
303
+ }
304
+ throw refreshError;
305
+ });
306
+ if (refreshed?.access) {
307
+ try {
308
+ return await dependencies.listRemoteModels(null, baseUrl, refreshed.access);
309
+ }
310
+ catch (retryError) {
311
+ if (!isAuthExpiredError(retryError)) {
312
+ return [];
313
+ }
314
+ }
315
+ }
316
+ }
317
+ shouldPromptLoginOnStart = true;
318
+ if (recoveryOptions.throwAuthExpired) {
319
+ throw error;
320
+ }
321
+ return [];
322
+ }
323
+ }
324
+ async function completeWithAuthRecovery(apiKey, request) {
325
+ try {
326
+ return await dependencies.createRemoteCompletion({
327
+ ...request,
328
+ apiKey,
329
+ });
330
+ }
331
+ catch (error) {
332
+ if (!isAuthExpiredError(error)) {
333
+ throw error;
334
+ }
335
+ const refreshed = await resolveLinxPiCloudOAuthCredential(options.providerConfig?.issuerUrl, { forceRefresh: true }).catch((refreshError) => {
336
+ if (isOidcLoginExpiredError(refreshError)) {
337
+ return null;
338
+ }
339
+ throw refreshError;
340
+ });
341
+ if (!refreshed?.access) {
342
+ throw error;
343
+ }
344
+ return dependencies.createRemoteCompletion({
345
+ ...request,
346
+ apiKey: refreshed.access,
347
+ });
348
+ }
349
+ }
221
350
  }
222
- function sanitizeLinxCloudDefaults(settingsManager) {
223
- const provider = settingsManager.getDefaultProvider();
224
- const model = settingsManager.getDefaultModel();
225
- if (provider === UNDEFINEDS_PROVIDER_ID && model && model !== 'linx' && model !== 'linx-lite') {
226
- settingsManager.setDefaultModelAndProvider(UNDEFINEDS_PROVIDER_ID, DEFAULT_LINX_CLOUD_MODEL_ID);
351
+ export function resolveBundledLinxSkillsDir(importMetaUrl = import.meta.url) {
352
+ const moduleDir = dirname(fileURLToPath(importMetaUrl));
353
+ const candidates = [
354
+ // Published package: dist/lib/pi-adapter/runtime.js -> dist/skills
355
+ join(moduleDir, '..', '..', 'skills'),
356
+ // Test/dev bundle: <tmp>/dist/lib/pi-adapter/runtime.js -> repo skills
357
+ resolve(moduleDir, '..', '..', '..', '..', 'skills'),
358
+ // Source-tree fallback when running through a TS loader.
359
+ resolve(moduleDir, '..', '..', '..', '..', '..', 'skills'),
360
+ ];
361
+ for (const candidate of candidates) {
362
+ if (existsSync(candidate)) {
363
+ return candidate;
364
+ }
227
365
  }
366
+ return null;
367
+ }
368
+ function withBundledLinxSkillSourceInfo(base, bundledSkillsDir) {
369
+ return {
370
+ ...base,
371
+ skills: base.skills.map((skill) => (skill.filePath.startsWith(bundledSkillsDir)
372
+ ? {
373
+ ...skill,
374
+ sourceInfo: {
375
+ path: skill.filePath,
376
+ source: LINX_PACKAGE_SOURCE,
377
+ scope: 'temporary',
378
+ origin: 'package',
379
+ baseDir: bundledSkillsDir,
380
+ },
381
+ }
382
+ : skill)),
383
+ };
384
+ }
385
+ export function createLinxPiCodingTools(cwd, options = {}) {
386
+ const localBashOperations = options.bashOperations ?? createLocalBashOperations();
387
+ const bashTimeoutSeconds = options.bashTimeoutSeconds ?? DEFAULT_LINX_PI_BASH_TIMEOUT_SECONDS;
388
+ return createCodingTools(cwd, {
389
+ bash: {
390
+ operations: {
391
+ exec(command, workingDirectory, execOptions) {
392
+ return localBashOperations.exec(command, workingDirectory ?? process.cwd(), {
393
+ ...execOptions,
394
+ timeout: typeof execOptions.timeout === 'number'
395
+ ? execOptions.timeout
396
+ : bashTimeoutSeconds,
397
+ });
398
+ },
399
+ },
400
+ },
401
+ });
402
+ }
403
+ function hasLinxXhighThinking(session) {
404
+ return session.model?.provider === UNDEFINEDS_PROVIDER_ID && session.model.reasoning === true;
405
+ }
406
+ function isThinkingLevel(level) {
407
+ return level === 'off'
408
+ || level === 'minimal'
409
+ || level === 'low'
410
+ || level === 'medium'
411
+ || level === 'high'
412
+ || level === 'xhigh';
413
+ }
414
+ function clampLinxThinkingLevel(level, availableLevels) {
415
+ if (availableLevels.includes(level)) {
416
+ return level;
417
+ }
418
+ return availableLevels.includes('high') ? 'high' : (availableLevels.at(-1) ?? 'off');
419
+ }
420
+ function patchLinxThinkingLevelSetter(session) {
421
+ const originalSetThinkingLevel = session.setThinkingLevel?.bind(session);
422
+ if (!originalSetThinkingLevel) {
423
+ return;
424
+ }
425
+ session.setThinkingLevel = (level) => {
426
+ if (!hasLinxXhighThinking(session)) {
427
+ return originalSetThinkingLevel(level);
428
+ }
429
+ const effectiveLevel = clampLinxThinkingLevel(level, session.getAvailableThinkingLevels?.() ?? []);
430
+ const isChanging = effectiveLevel !== session.thinkingLevel;
431
+ if (session.agent?.state) {
432
+ session.agent.state.thinkingLevel = effectiveLevel;
433
+ }
434
+ if (isChanging) {
435
+ session.sessionManager?.appendThinkingLevelChange?.(effectiveLevel);
436
+ session.settingsManager?.setDefaultThinkingLevel?.(effectiveLevel);
437
+ }
438
+ return undefined;
439
+ };
440
+ }
441
+ function normalizeInitialLinxThinkingLevel(session) {
442
+ if (!hasLinxXhighThinking(session) || typeof session.thinkingLevel !== 'string' || !isThinkingLevel(session.thinkingLevel)) {
443
+ return;
444
+ }
445
+ const effectiveLevel = clampLinxThinkingLevel(session.thinkingLevel, session.getAvailableThinkingLevels?.() ?? []);
446
+ if (effectiveLevel !== session.thinkingLevel) {
447
+ if (session.agent?.state) {
448
+ session.agent.state.thinkingLevel = effectiveLevel;
449
+ }
450
+ }
451
+ }
452
+ function enableLinxXhighThinking(session) {
453
+ const linxSession = session;
454
+ const originalSupportsXhighThinking = session.supportsXhighThinking?.bind(session);
455
+ const originalGetAvailableThinkingLevels = session.getAvailableThinkingLevels?.bind(session);
456
+ if (originalSupportsXhighThinking) {
457
+ linxSession.supportsXhighThinking = () => (hasLinxXhighThinking(linxSession)
458
+ ? true
459
+ : originalSupportsXhighThinking());
460
+ }
461
+ if (originalGetAvailableThinkingLevels) {
462
+ linxSession.getAvailableThinkingLevels = () => {
463
+ const levels = originalGetAvailableThinkingLevels();
464
+ if (hasLinxXhighThinking(linxSession) && !levels.includes('xhigh')) {
465
+ return [...levels, 'xhigh'];
466
+ }
467
+ return levels;
468
+ };
469
+ }
470
+ patchLinxThinkingLevelSetter(linxSession);
471
+ normalizeInitialLinxThinkingLevel(linxSession);
472
+ }
473
+ function isAuthExpiredError(error) {
474
+ return isRemoteAuthExpiredError(error);
475
+ }
476
+ function sanitizeLinxCloudDefaults(settingsManager, requestedModel, providerModels) {
477
+ const availableModelIds = new Set(providerModels.map((model) => model.id));
478
+ const savedProvider = settingsManager.getDefaultProvider();
479
+ const savedModel = settingsManager.getDefaultModel();
480
+ const savedLinxModel = savedProvider === UNDEFINEDS_PROVIDER_ID && savedModel && availableModelIds.has(savedModel)
481
+ ? savedModel
482
+ : undefined;
483
+ const nextModel = requestedModel || savedLinxModel || DEFAULT_LINX_CLOUD_MODEL_ID;
484
+ if (savedProvider !== UNDEFINEDS_PROVIDER_ID || savedModel !== nextModel) {
485
+ settingsManager.setDefaultModelAndProvider(UNDEFINEDS_PROVIDER_ID, nextModel);
486
+ }
487
+ return nextModel;
228
488
  }
229
489
  function buildProviderModel(input) {
230
490
  return {
@@ -248,6 +508,32 @@ function buildProviderModel(input) {
248
508
  },
249
509
  };
250
510
  }
511
+ function buildFallbackProviderModels(activeModelId) {
512
+ return mergeLinxProviderModels([], activeModelId).map((entry) => buildProviderModel(entry));
513
+ }
514
+ function mergeLinxProviderModels(models, activeModelId) {
515
+ const byId = new Map();
516
+ for (const id of [
517
+ ...FALLBACK_LINX_CLOUD_MODEL_IDS,
518
+ activeModelId,
519
+ ]) {
520
+ byId.set(id, {
521
+ id,
522
+ contextWindow: 1_000_000,
523
+ });
524
+ }
525
+ for (const model of models) {
526
+ const id = model.id.trim();
527
+ if (!id) {
528
+ continue;
529
+ }
530
+ byId.set(id, {
531
+ id,
532
+ contextWindow: model.contextWindow,
533
+ });
534
+ }
535
+ return [...byId.values()];
536
+ }
251
537
  async function resolveLinxPiCloudApiKey(options) {
252
538
  if (options.explicitApiKey) {
253
539
  return options.explicitApiKey;
@@ -268,4 +554,17 @@ function withSystemPrompt(systemPrompt, messages) {
268
554
  }
269
555
  return [{ role: 'system', content: prompt }, ...messages];
270
556
  }
557
+ function overrideLinxSystemPrompt(base) {
558
+ const original = base?.trim();
559
+ const identity = [
560
+ 'You are LinX, an AI Secretary operating inside the LinX CLI.',
561
+ 'When replying in Chinese, describe yourself as "AI主理人".',
562
+ 'Use a friendly, direct style like: "你好!我是 LinX,一个 AI 主理人,很高兴为你服务!"',
563
+ 'Keep Pi-compatible coding agent behavior: read files, run commands, edit code, use tools, and follow project instructions.',
564
+ ].join('\n');
565
+ if (!original) {
566
+ return identity;
567
+ }
568
+ return `${identity}\n\n${original.replace(/\bpi\b/g, 'LinX').replace(/\bPi\b/g, 'LinX')}`;
569
+ }
271
570
  //# sourceMappingURL=runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../../../../src/lib/pi-adapter/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/lib/pi-adapter/runtime.ts"],"names":[],"mappings":"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"}