nolo-cli 0.83.0 → 0.84.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.
Files changed (106) hide show
  1. package/{_executeModel-LUNEV235.js → _executeModel-BPUR2QYH.js} +29 -28
  2. package/{action-YVYQEAAV.js → action-P4TNFGAD.js} +3 -3
  3. package/{addContentAction-O7R66HEX.js → addContentAction-MB2HHMDZ.js} +2 -2
  4. package/{addDialogAgentAction-74OA7KYP.js → addDialogAgentAction-S2NRBCWW.js} +2 -2
  5. package/{agentDeleteCommand-2YAHAZFJ.js → agentDeleteCommand-MNAA6MIG.js} +15 -14
  6. package/{agentEmailCommands-G6A7IRPQ.js → agentEmailCommands-SK34WJKU.js} +37 -36
  7. package/{agentListCommands-KMS675GZ.js → agentListCommands-I26MKI4T.js} +31 -19
  8. package/{agentMachineCommands-W2SMNSQ3.js → agentMachineCommands-M6QDR6P3.js} +15 -14
  9. package/{agentProviderCommands-GNPTL5XR.js → agentProviderCommands-X3UNW77C.js} +1 -1
  10. package/{agentRecordCommands-D7BRMFNI.js → agentRecordCommands-HTHLO2MM.js} +36 -35
  11. package/{agentRunCommand-VL6MMEUB.js → agentRunCommand-IAIRCMTH.js} +38 -36
  12. package/{agentRuntimeLocal-VXZSDIGT.js → agentRuntimeLocal-3WTYYIT2.js} +16 -11
  13. package/{agentSlice-5YJHUO47.js → agentSlice-TVP3HINW.js} +2 -2
  14. package/{appDeleteCommands-32MHLR4L.js → appDeleteCommands-SB5TNLKY.js} +16 -15
  15. package/{appDeployCommands-WCQOUSOB.js → appDeployCommands-2IPKZINV.js} +16 -15
  16. package/{appDeployStatusCommands-6QKB7DYN.js → appDeployStatusCommands-K63TFUID.js} +16 -15
  17. package/{appGetCommands-SFAPP5PB.js → appGetCommands-VU2SLNEH.js} +16 -15
  18. package/{appListCommands-EKUBDRUO.js → appListCommands-S3T4DJ36.js} +16 -15
  19. package/{authCommand-F4EFRRX6.js → authCommand-HGP2XTKC.js} +100 -8
  20. package/{builtinSkillRegistry-FUAVTRVZ.js → builtinSkillRegistry-Q2VVY3SC.js} +2 -2
  21. package/{chatQueueReduxAdapter-PQMRR2PK.js → chatQueueReduxAdapter-TWIYKVIZ.js} +9 -9
  22. package/{chunk-Z77CRGTW.js → chunk-3AMA42ZI.js} +1 -1
  23. package/{chunk-5FBTLSFG.js → chunk-3BGIKIPF.js} +317 -153
  24. package/{chunk-ORYWEJO4.js → chunk-3IUWIAHP.js} +3 -3
  25. package/{chunk-Q2XN3EOZ.js → chunk-3VUWPRFW.js} +17 -7
  26. package/{chunk-GEPUP7OO.js → chunk-3YIAR5UI.js} +1 -1
  27. package/{chunk-5H7KJX7J.js → chunk-4MK3I7Y4.js} +1 -1
  28. package/{chunk-6VFARHZW.js → chunk-52Q2IW2X.js} +783 -999
  29. package/{chunk-6Q33GUCC.js → chunk-5MEYHVIB.js} +1 -1
  30. package/{chunk-6YTOJY35.js → chunk-6D2JFXLY.js} +35 -0
  31. package/{chunk-FZGV4FGK.js → chunk-6GFOD3TK.js} +260 -140
  32. package/{chunk-HJUYAD4A.js → chunk-6Z7MY3V7.js} +1 -1
  33. package/{chunk-V4MJDUSR.js → chunk-AHAHBQMU.js} +1 -1
  34. package/{chunk-TOP2VXOR.js → chunk-BFDFRLLQ.js} +2 -2
  35. package/chunk-BMQ2MJUK.js +153 -0
  36. package/{chunk-RG6JBBX5.js → chunk-CWQINZEA.js} +119 -3
  37. package/{chunk-BTI7PJDX.js → chunk-DD6XE56O.js} +12 -65
  38. package/{chunk-ETI2NYVF.js → chunk-FKNWP6SG.js} +1 -1
  39. package/{chunk-SSDAAEC2.js → chunk-FP76KI2Y.js} +280 -40
  40. package/chunk-FV3JEYR3.js +870 -0
  41. package/{chunk-DHDMC6FO.js → chunk-GIVFXPWK.js} +2 -0
  42. package/chunk-GMZLP5DV.js +82 -0
  43. package/{chunk-UZGQNTVW.js → chunk-GNCCNNZD.js} +3 -1
  44. package/{chunk-AFUORTY4.js → chunk-GP5LKBUZ.js} +1 -1
  45. package/{chunk-ZCYXJSTU.js → chunk-H4AHY5BU.js} +4 -81
  46. package/{chunk-OEVAY4J6.js → chunk-HAFJ3NDE.js} +2 -2
  47. package/{chunk-IIVGDG4I.js → chunk-HCT7U36O.js} +3 -0
  48. package/{chunk-4OEFYTWL.js → chunk-HKNXJGEC.js} +1 -1
  49. package/{chunk-VLTIYV3X.js → chunk-HYJFRTLW.js} +1 -1
  50. package/{chunk-NA35QHCF.js → chunk-K36IXSCQ.js} +1 -1
  51. package/{chunk-DRGSDQBL.js → chunk-KAUSRTO6.js} +2 -2
  52. package/{chunk-GPCZ7UXG.js → chunk-LJ5VW2UJ.js} +1 -1
  53. package/{chunk-YFE4A4O7.js → chunk-LMREEBWT.js} +120 -37
  54. package/{chunk-JRQFUXY7.js → chunk-LVIFM7VW.js} +1 -1
  55. package/{chunk-RFCKMYDK.js → chunk-MZYBSTMH.js} +4 -4
  56. package/chunk-OCZKATRC.js +129 -0
  57. package/{chunk-DNCEALKX.js → chunk-P5EVSOPA.js} +2 -2
  58. package/{chunk-BP4XNZRM.js → chunk-PBA4UJBK.js} +1 -1
  59. package/{chunk-G2O6V3HJ.js → chunk-PMAIQX7A.js} +3 -3
  60. package/{chunk-AEOE4Z6Q.js → chunk-QSHEEA5N.js} +2 -2
  61. package/{chunk-KQ4ONNQD.js → chunk-QU7KDSZX.js} +1 -1
  62. package/{chunk-45C5ER5U.js → chunk-RPJUFEGR.js} +4 -4
  63. package/{chunk-X6DN5HBD.js → chunk-U4OKDZFH.js} +3 -3
  64. package/{chunk-4S5QUMJP.js → chunk-UDVH2P4A.js} +4 -4
  65. package/{chunk-UKZDAFYT.js → chunk-UEVXFHQB.js} +2 -2
  66. package/{chunk-H62HCIUP.js → chunk-VRTTFDBM.js} +2 -1
  67. package/{chunk-6IG4XSS6.js → chunk-WP5UXDA5.js} +71 -4
  68. package/{chunk-3DII57IT.js → chunk-XD2MJFUG.js} +1 -1
  69. package/{chunk-QVKRR2SS.js → chunk-XP3VVAPG.js} +878 -175
  70. package/{chunk-L5UXH3B2.js → chunk-Z2PV6O2T.js} +18 -2
  71. package/{chunk-53HEEOTT.js → chunk-Z5625XML.js} +1 -1
  72. package/{contentThunks-GJV22WVZ.js → contentThunks-JYWI7G7I.js} +10 -10
  73. package/{createAgentAutomationAction-6V25TZEO.js → createAgentAutomationAction-Z4SUJ54Y.js} +10 -10
  74. package/{createDialogAction-SX36BGSX.js → createDialogAction-RCHFLVJ2.js} +12 -12
  75. package/{createPageAction-IR4BGJSI.js → createPageAction-YK2253XQ.js} +11 -11
  76. package/{dbSlice-XVWBAGYN.js → dbSlice-A6C6H32X.js} +1 -1
  77. package/{dialogCommands-5J56DFWN.js → dialogCommands-X4UOZQWX.js} +16 -15
  78. package/{dialogSlice-UNX2FAPZ.js → dialogSlice-IVTWLCE2.js} +15 -9
  79. package/{docCreateCommands-KYI2DC2U.js → docCreateCommands-VD6TGHG4.js} +15 -14
  80. package/{docDeleteCommands-67REUSRY.js → docDeleteCommands-OT3R2G4W.js} +16 -15
  81. package/{docReadCommands-HOSVSBDJ.js → docReadCommands-2G7BIXSH.js} +15 -14
  82. package/{docStore-JWVG5NDO.js → docStore-UENKCCDX.js} +2 -2
  83. package/{docUpdateCommands-EMGCSMXY.js → docUpdateCommands-45MVJKZA.js} +15 -14
  84. package/{handleSendMessageAction-B75UOJKF.js → handleSendMessageAction-LM2J4HC3.js} +50 -58
  85. package/index.js +51 -51
  86. package/{machineCommands-GFPTOY6L.js → machineCommands-6N6MQIE6.js} +38 -37
  87. package/{machineWsRunDispatch-46PSZ3DJ.js → machineWsRunDispatch-7MFKVQCR.js} +35 -34
  88. package/{memberThunks-QGFLFVCI.js → memberThunks-P2ECUJ56.js} +2 -2
  89. package/package.json +1 -1
  90. package/pdf-U6KSUEZZ.js +26435 -0
  91. package/{providerPresetApply-FG6NZ57W.js → providerPresetApply-XI3WUPTI.js} +2 -2
  92. package/{providerRegistry-757OWH3O.js → providerRegistry-KEPWWGXD.js} +2 -2
  93. package/{readlineWorkspace-UFSWHFKD.js → readlineWorkspace-JWBON5CX.js} +184 -63
  94. package/{removeDialogAgentAction-IX3MN2ZO.js → removeDialogAgentAction-W66BJ7CF.js} +4 -4
  95. package/{runAgentClientLoop-25LJ4XGV.js → runAgentClientLoop-TA4SSPHE.js} +26 -26
  96. package/{setDialogExtraReferencesAction-X4HCPNZL.js → setDialogExtraReferencesAction-2ALKG3WA.js} +3 -3
  97. package/{setPrimaryDialogAgentAction-4GMIQLOD.js → setPrimaryDialogAgentAction-TQZB55F6.js} +4 -4
  98. package/{settingSlice-ZQZVUPKK.js → settingSlice-P4ZW7K5X.js} +2 -2
  99. package/{spaceCommands-NKJVJCQQ.js → spaceCommands-6NSAXB7D.js} +15 -14
  100. package/{streamAgentChatTurn-A46QFV4O.js → streamAgentChatTurn-X5ENGUIS.js} +94 -34
  101. package/{switchDialogAgentAction-N52LRPA3.js → switchDialogAgentAction-3KI72HHS.js} +2 -2
  102. package/{toolApiClient-QVJ6HDNN.js → toolApiClient-G3M73RTB.js} +2 -2
  103. package/{tools-TTDGRNY6.js → tools-XRQR7ZZR.js} +23 -23
  104. package/{tuiSummaryLlmCaller-WFRWERGK.js → tuiSummaryLlmCaller-UFGFOIIW.js} +5 -4
  105. package/{updateDialogTitleAction-QJPZGF52.js → updateDialogTitleAction-ESUUD3GT.js} +10 -10
  106. package/chunk-Q5FJJ6XI.js +0 -103
@@ -8,51 +8,51 @@ import {
8
8
  toolQueryFunc,
9
9
  toolQueryFunctionSchema,
10
10
  toolRegistry
11
- } from "./chunk-5FBTLSFG.js";
11
+ } from "./chunk-3BGIKIPF.js";
12
12
  import "./chunk-5UTFL4QJ.js";
13
13
  import "./chunk-NF64D32W.js";
14
14
  import "./chunk-3L2WKC3W.js";
15
15
  import "./chunk-3VNWWVKB.js";
16
- import "./chunk-RG6JBBX5.js";
16
+ import "./chunk-CWQINZEA.js";
17
17
  import "./chunk-KQHGZWSV.js";
18
18
  import "./chunk-J4MOO56S.js";
19
- import "./chunk-HJUYAD4A.js";
20
- import "./chunk-VLTIYV3X.js";
21
- import "./chunk-UKZDAFYT.js";
19
+ import "./chunk-6Z7MY3V7.js";
20
+ import "./chunk-HYJFRTLW.js";
21
+ import "./chunk-UEVXFHQB.js";
22
22
  import "./chunk-N4G4PKQ6.js";
23
- import "./chunk-FZGV4FGK.js";
23
+ import "./chunk-6GFOD3TK.js";
24
24
  import "./chunk-MEYIRKDN.js";
25
25
  import "./chunk-63W5N6P3.js";
26
26
  import "./chunk-VF4K2QE6.js";
27
- import "./chunk-G2O6V3HJ.js";
28
- import "./chunk-RFCKMYDK.js";
29
- import "./chunk-ORYWEJO4.js";
27
+ import "./chunk-PMAIQX7A.js";
28
+ import "./chunk-MZYBSTMH.js";
29
+ import "./chunk-3IUWIAHP.js";
30
30
  import "./chunk-ZJ7UHBJS.js";
31
- import "./chunk-QVKRR2SS.js";
31
+ import "./chunk-XP3VVAPG.js";
32
32
  import "./chunk-MC4XLIJ7.js";
33
33
  import "./chunk-3BMYXEUW.js";
34
34
  import "./chunk-YYLHWIW6.js";
35
35
  import "./chunk-AGGIDPCZ.js";
36
- import "./chunk-4S5QUMJP.js";
37
- import "./chunk-TOP2VXOR.js";
36
+ import "./chunk-UDVH2P4A.js";
37
+ import "./chunk-BFDFRLLQ.js";
38
38
  import "./chunk-5RGU3J7P.js";
39
- import "./chunk-6YTOJY35.js";
39
+ import "./chunk-6D2JFXLY.js";
40
40
  import "./chunk-M76ECQRD.js";
41
41
  import "./chunk-YDH3FDFQ.js";
42
- import "./chunk-JRQFUXY7.js";
42
+ import "./chunk-LVIFM7VW.js";
43
43
  import {
44
44
  TOOL_PACKS,
45
45
  addDefaultLightWebToolsForConfiguredAgents,
46
46
  applyDefaultWebToolPacks
47
- } from "./chunk-DHDMC6FO.js";
47
+ } from "./chunk-GIVFXPWK.js";
48
48
  import "./chunk-Q554LLSI.js";
49
49
  import "./chunk-KHCLMKZZ.js";
50
- import "./chunk-IIVGDG4I.js";
50
+ import "./chunk-HCT7U36O.js";
51
51
  import "./chunk-FDTR4QJ6.js";
52
- import "./chunk-UZGQNTVW.js";
52
+ import "./chunk-GNCCNNZD.js";
53
53
  import "./chunk-6OZ36FXI.js";
54
- import "./chunk-4OEFYTWL.js";
55
- import "./chunk-DNCEALKX.js";
54
+ import "./chunk-HKNXJGEC.js";
55
+ import "./chunk-P5EVSOPA.js";
56
56
  import "./chunk-PSCNXBYA.js";
57
57
  import "./chunk-GQBOR3G6.js";
58
58
  import "./chunk-BYXBJQAS.js";
@@ -66,14 +66,14 @@ import "./chunk-O6OSWFZQ.js";
66
66
  import "./chunk-7S4YWN7P.js";
67
67
  import "./chunk-ACTMNVHM.js";
68
68
  import "./chunk-Q67DOFOO.js";
69
- import "./chunk-BP4XNZRM.js";
70
- import "./chunk-AFUORTY4.js";
69
+ import "./chunk-PBA4UJBK.js";
70
+ import "./chunk-GP5LKBUZ.js";
71
71
  import "./chunk-Y5GCAMGP.js";
72
72
  import "./chunk-QDSINZM3.js";
73
73
  import "./chunk-KX6YBIHG.js";
74
- import "./chunk-V4MJDUSR.js";
74
+ import "./chunk-AHAHBQMU.js";
75
75
  import "./chunk-UAD2WT54.js";
76
- import "./chunk-H62HCIUP.js";
76
+ import "./chunk-VRTTFDBM.js";
77
77
  import "./chunk-VMFTFOWF.js";
78
78
  import "./chunk-WWC7I6TA.js";
79
79
  import "./chunk-ABQYVJBJ.js";
@@ -7,14 +7,15 @@ import {
7
7
  canUsePlatformChatProvider,
8
8
  parsePlatformChatCompletionResponse,
9
9
  resolvePlatformChatProviderConfig
10
- } from "./chunk-ZCYXJSTU.js";
10
+ } from "./chunk-H4AHY5BU.js";
11
+ import "./chunk-GMZLP5DV.js";
11
12
  import "./chunk-CQ3WA2NE.js";
12
13
  import "./chunk-N7J63Q6C.js";
13
14
  import "./chunk-PUOC4YRO.js";
14
15
  import "./chunk-6OZ36FXI.js";
15
16
  import {
16
17
  COMPACTION_SUMMARY_SYSTEM_PROMPT
17
- } from "./chunk-DNCEALKX.js";
18
+ } from "./chunk-P5EVSOPA.js";
18
19
  import "./chunk-PSCNXBYA.js";
19
20
  import "./chunk-GQBOR3G6.js";
20
21
  import "./chunk-BYXBJQAS.js";
@@ -22,9 +23,9 @@ import "./chunk-OIVSQH2O.js";
22
23
  import "./chunk-DWLEOOGR.js";
23
24
  import "./chunk-W7XHHYWM.js";
24
25
  import "./chunk-Q67DOFOO.js";
25
- import "./chunk-V4MJDUSR.js";
26
+ import "./chunk-AHAHBQMU.js";
26
27
  import "./chunk-UAD2WT54.js";
27
- import "./chunk-H62HCIUP.js";
28
+ import "./chunk-VRTTFDBM.js";
28
29
  import "./chunk-VMFTFOWF.js";
29
30
  import "./chunk-WWC7I6TA.js";
30
31
  import "./chunk-ABQYVJBJ.js";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  updateContentTitle
3
- } from "./chunk-ORYWEJO4.js";
3
+ } from "./chunk-3IUWIAHP.js";
4
4
  import "./chunk-ZJ7UHBJS.js";
5
5
  import {
6
6
  isAssistantToolStub,
7
7
  selectAllMsgs
8
- } from "./chunk-QVKRR2SS.js";
8
+ } from "./chunk-XP3VVAPG.js";
9
9
  import {
10
10
  BUILTIN_DIALOG_LLM_FALLBACK_MODEL,
11
11
  BUILTIN_TITLE_LLM_CONFIG
@@ -15,10 +15,10 @@ import "./chunk-YYLHWIW6.js";
15
15
  import "./chunk-AGGIDPCZ.js";
16
16
  import {
17
17
  runLlm
18
- } from "./chunk-4S5QUMJP.js";
19
- import "./chunk-TOP2VXOR.js";
18
+ } from "./chunk-UDVH2P4A.js";
19
+ import "./chunk-BFDFRLLQ.js";
20
20
  import "./chunk-5RGU3J7P.js";
21
- import "./chunk-6YTOJY35.js";
21
+ import "./chunk-6D2JFXLY.js";
22
22
  import {
23
23
  require_date_fns
24
24
  } from "./chunk-M76ECQRD.js";
@@ -27,10 +27,10 @@ import {
27
27
  buildDialogFallbackTitleFromMessages,
28
28
  resolveDialogTitle
29
29
  } from "./chunk-2MBTWINN.js";
30
- import "./chunk-4OEFYTWL.js";
30
+ import "./chunk-HKNXJGEC.js";
31
31
  import {
32
32
  serializeMessageContent
33
- } from "./chunk-DNCEALKX.js";
33
+ } from "./chunk-P5EVSOPA.js";
34
34
  import "./chunk-PSCNXBYA.js";
35
35
  import "./chunk-GQBOR3G6.js";
36
36
  import "./chunk-BYXBJQAS.js";
@@ -43,18 +43,18 @@ import "./chunk-HNMXYYJR.js";
43
43
  import "./chunk-7S4YWN7P.js";
44
44
  import "./chunk-ACTMNVHM.js";
45
45
  import "./chunk-Q67DOFOO.js";
46
- import "./chunk-AFUORTY4.js";
46
+ import "./chunk-GP5LKBUZ.js";
47
47
  import "./chunk-Y5GCAMGP.js";
48
48
  import "./chunk-QDSINZM3.js";
49
49
  import "./chunk-KX6YBIHG.js";
50
- import "./chunk-V4MJDUSR.js";
50
+ import "./chunk-AHAHBQMU.js";
51
51
  import {
52
52
  normalizeSpaceId
53
53
  } from "./chunk-UAD2WT54.js";
54
54
  import {
55
55
  patch,
56
56
  selectById
57
- } from "./chunk-H62HCIUP.js";
57
+ } from "./chunk-VRTTFDBM.js";
58
58
  import "./chunk-VMFTFOWF.js";
59
59
  import "./chunk-WWC7I6TA.js";
60
60
  import "./chunk-ABQYVJBJ.js";
package/chunk-Q5FJJ6XI.js DELETED
@@ -1,103 +0,0 @@
1
- // packages/agent-runtime/devinOAuth.ts
2
- import { existsSync, readFileSync } from "node:fs";
3
- import { homedir } from "node:os";
4
- import { join } from "node:path";
5
- var DEVIN_CONNECT_URL = "https://server.codeium.com/exa.api_server_pb.ApiServerService/GetChatMessage";
6
- function buildDevinAuthUrl(orgId) {
7
- const cleanOrg = orgId?.trim();
8
- if (cleanOrg) {
9
- return `https://app.devin.ai/org/${encodeURIComponent(cleanOrg)}/settings/keys`;
10
- }
11
- return "https://app.devin.ai/settings/keys";
12
- }
13
- function extractDevinToken(input) {
14
- const raw = input?.trim();
15
- if (!raw) return null;
16
- if (/^https?:\/\//i.test(raw)) {
17
- try {
18
- const url = new URL(raw);
19
- const queryToken = url.searchParams.get("token") || url.searchParams.get("access_token") || url.searchParams.get("auth_token");
20
- if (queryToken?.trim()) return queryToken.trim();
21
- if (url.hash) {
22
- const hashParams = new URLSearchParams(url.hash.replace(/^#/, ""));
23
- const hashToken = hashParams.get("token") || hashParams.get("access_token") || hashParams.get("auth_token");
24
- if (hashToken?.trim()) return hashToken.trim();
25
- }
26
- } catch {
27
- }
28
- }
29
- return raw || null;
30
- }
31
- function parseDevinCredentialsToml(content) {
32
- for (const line of content.split(/\r?\n/)) {
33
- const cogMatch = line.match(/(cog_[A-Za-z0-9_-]+)/);
34
- if (cogMatch?.[1]) {
35
- return cogMatch[1].trim();
36
- }
37
- const match = line.match(
38
- /^\s*(?:windsurf_api_key|devin_api_key|api_key|api_token|token)\s*=\s*"([^"]+)"\s*$/i
39
- );
40
- if (match?.[1]) {
41
- return match[1].trim();
42
- }
43
- }
44
- return null;
45
- }
46
- function detectLocalDevinCredentials(options) {
47
- const baseHome = options?.homeDir || homedir();
48
- const xdgData = process.env.XDG_DATA_HOME;
49
- const candidateCliPaths = [
50
- xdgData ? join(xdgData, "devin", "credentials.toml") : null,
51
- join(baseHome, ".local", "share", "devin", "credentials.toml"),
52
- process.env.APPDATA ? join(process.env.APPDATA, "devin", "credentials.toml") : null
53
- ].filter((p) => Boolean(p));
54
- for (const credPath of candidateCliPaths) {
55
- if (existsSync(credPath)) {
56
- try {
57
- const content = readFileSync(credPath, "utf-8");
58
- const token = parseDevinCredentialsToml(content);
59
- if (token) {
60
- return {
61
- found: true,
62
- token,
63
- source: "devin-cli",
64
- sourcePath: credPath
65
- };
66
- }
67
- } catch {
68
- }
69
- }
70
- }
71
- const codeiumPath = join(baseHome, ".codeium", "config.json");
72
- if (existsSync(codeiumPath)) {
73
- try {
74
- const parsed = JSON.parse(readFileSync(codeiumPath, "utf-8"));
75
- const token = parsed.apiKey || parsed.api_key;
76
- if (token?.trim()) {
77
- return {
78
- found: true,
79
- token: token.trim(),
80
- source: "codeium-config",
81
- sourcePath: codeiumPath
82
- };
83
- }
84
- } catch {
85
- }
86
- }
87
- return { found: false };
88
- }
89
- function buildDevinOAuthCredential(token, now = Date.now()) {
90
- return {
91
- provider: "devin",
92
- accessToken: token.trim(),
93
- obtainedAt: now
94
- };
95
- }
96
-
97
- export {
98
- DEVIN_CONNECT_URL,
99
- buildDevinAuthUrl,
100
- extractDevinToken,
101
- detectLocalDevinCredentials,
102
- buildDevinOAuthCredential
103
- };