@theia/ai-core 1.70.0-next.6 → 1.70.0-next.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/frontend-language-model-alias-registry.js +5 -5
- package/lib/browser/frontend-language-model-alias-registry.js.map +1 -1
- package/lib/browser/skill-prompt-coordinator.js +1 -1
- package/lib/browser/skill-prompt-coordinator.js.map +1 -1
- package/lib/common/agent-preferences.d.ts.map +1 -1
- package/lib/common/agent-preferences.js +49 -4
- package/lib/common/agent-preferences.js.map +1 -1
- package/lib/common/index.d.ts +1 -0
- package/lib/common/index.d.ts.map +1 -1
- package/lib/common/index.js +1 -0
- package/lib/common/index.js.map +1 -1
- package/lib/common/proxy-util.d.ts +9 -0
- package/lib/common/proxy-util.d.ts.map +1 -0
- package/lib/common/proxy-util.js +84 -0
- package/lib/common/proxy-util.js.map +1 -0
- package/lib/common/proxy-util.spec.d.ts +2 -0
- package/lib/common/proxy-util.spec.d.ts.map +1 -0
- package/lib/common/proxy-util.spec.js +89 -0
- package/lib/common/proxy-util.spec.js.map +1 -0
- package/lib/common/settings-service.d.ts +12 -0
- package/lib/common/settings-service.d.ts.map +1 -1
- package/lib/common/settings-service.js.map +1 -1
- package/lib/node/index.d.ts +2 -0
- package/lib/node/index.d.ts.map +1 -0
- package/lib/node/index.js +20 -0
- package/lib/node/index.js.map +1 -0
- package/lib/node/proxy-util.d.ts +23 -0
- package/lib/node/proxy-util.d.ts.map +1 -0
- package/lib/node/proxy-util.js +83 -0
- package/lib/node/proxy-util.js.map +1 -0
- package/lib/node/proxy-util.spec.d.ts +2 -0
- package/lib/node/proxy-util.spec.d.ts.map +1 -0
- package/lib/node/proxy-util.spec.js +122 -0
- package/lib/node/proxy-util.spec.js.map +1 -0
- package/package.json +12 -11
- package/src/browser/frontend-language-model-alias-registry.ts +5 -5
- package/src/browser/skill-prompt-coordinator.ts +1 -1
- package/src/common/agent-preferences.ts +51 -4
- package/src/common/index.ts +1 -0
- package/src/common/proxy-util.spec.ts +106 -0
- package/src/common/proxy-util.ts +86 -0
- package/src/common/settings-service.ts +12 -0
- package/src/node/index.ts +17 -0
- package/src/node/proxy-util.spec.ts +143 -0
- package/src/node/proxy-util.ts +85 -0
|
@@ -29,7 +29,7 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
29
29
|
id: 'default/code',
|
|
30
30
|
defaultModelIds: [
|
|
31
31
|
'anthropic/claude-opus-4-6',
|
|
32
|
-
'openai/gpt-5.
|
|
32
|
+
'openai/gpt-5.4',
|
|
33
33
|
'google/gemini-3.1-pro-preview'
|
|
34
34
|
],
|
|
35
35
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/code/description', 'Optimized for code understanding and generation tasks.')
|
|
@@ -38,7 +38,7 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
38
38
|
id: 'default/universal',
|
|
39
39
|
defaultModelIds: [
|
|
40
40
|
'anthropic/claude-opus-4-6',
|
|
41
|
-
'openai/gpt-5.
|
|
41
|
+
'openai/gpt-5.4',
|
|
42
42
|
'google/gemini-3.1-pro-preview'
|
|
43
43
|
],
|
|
44
44
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/universal/description', 'Well-balanced for both code and general language use.')
|
|
@@ -46,8 +46,8 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
46
46
|
{
|
|
47
47
|
id: 'default/code-completion',
|
|
48
48
|
defaultModelIds: [
|
|
49
|
-
'
|
|
50
|
-
'
|
|
49
|
+
'anthropic/claude-sonnet-4-6',
|
|
50
|
+
'openai/gpt-5.4',
|
|
51
51
|
'google/gemini-3.1-pro-preview'
|
|
52
52
|
],
|
|
53
53
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/code-completion/description', 'Best suited for code autocompletion scenarios.')
|
|
@@ -56,7 +56,7 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
56
56
|
id: 'default/summarize',
|
|
57
57
|
defaultModelIds: [
|
|
58
58
|
'anthropic/claude-opus-4-6',
|
|
59
|
-
'openai/gpt-5.
|
|
59
|
+
'openai/gpt-5.4',
|
|
60
60
|
'google/gemini-3.1-pro-preview'
|
|
61
61
|
],
|
|
62
62
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/summarize/description', 'Models prioritized for summarization and condensation of content.')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-language-model-alias-registry.js","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,8CAA8C;AAC9C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAiF;AACjF,sCAAkD;AAElD,mDAA4E;AAC5E,uEAAkF;AAClF,sEAA+D;AAGxD,IAAM,iCAAiC,GAAvC,MAAM,iCAAiC;IAAvC;QAEO,YAAO,GAAyB;YACtC;gBACI,EAAE,EAAE,cAAc;gBAClB,eAAe,EAAE;oBACb,2BAA2B;oBAC3B,gBAAgB;oBAChB,+BAA+B;iBAClC;gBACD,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,oDAAoD,EAAE,wDAAwD,CAAC;aAC5I;YACD;gBACI,EAAE,EAAE,mBAAmB;gBACvB,eAAe,EAAE;oBACb,2BAA2B;oBAC3B,gBAAgB;oBAChB,+BAA+B;iBAClC;gBACD,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,yDAAyD,EAAE,uDAAuD,CAAC;aAChJ;YACD;gBACI,EAAE,EAAE,yBAAyB;gBAC7B,eAAe,EAAE;oBACb,gBAAgB;oBAChB
|
|
1
|
+
{"version":3,"file":"frontend-language-model-alias-registry.js","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ let SkillPromptCoordinator = class SkillPromptCoordinator {
|
|
|
47
47
|
if (!this.registeredSkillCommands.has(skill.name)) {
|
|
48
48
|
this.promptService.addBuiltInPromptFragment({
|
|
49
49
|
id: `skill-command-${skill.name}`,
|
|
50
|
-
template: `
|
|
50
|
+
template: `Load the skill ${skill.name} using ~{getSkillFileContent}.`,
|
|
51
51
|
isCommand: true,
|
|
52
52
|
commandName: skill.name,
|
|
53
53
|
commandDescription: skill.description
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-prompt-coordinator.js","sourceRoot":"","sources":["../../src/browser/skill-prompt-coordinator.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAkE;AAElE,mDAA+C;AAC/C,6DAAyD;AAGlD,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAA5B;QAQO,4BAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;IAsC1D,CAAC;IApCG,OAAO;QACH,0BAA0B;QAC1B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,2BAA2B;QAC3B,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE;YACnC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAES,mBAAmB;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;QACpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAElE,4BAA4B;QAC5B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC9C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/B,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;gBACjE,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC;QAED,sBAAsB;QACtB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChD,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC;oBACxC,EAAE,EAAE,iBAAiB,KAAK,CAAC,IAAI,EAAE;oBACjC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"skill-prompt-coordinator.js","sourceRoot":"","sources":["../../src/browser/skill-prompt-coordinator.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAkE;AAElE,mDAA+C;AAC/C,6DAAyD;AAGlD,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAA5B;QAQO,4BAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;IAsC1D,CAAC;IApCG,OAAO;QACH,0BAA0B;QAC1B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,2BAA2B;QAC3B,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE;YACnC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAES,mBAAmB;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;QACpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAElE,4BAA4B;QAC5B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC9C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/B,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;gBACjE,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC;QAED,sBAAsB;QACtB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChD,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC;oBACxC,EAAE,EAAE,iBAAiB,KAAK,CAAC,IAAI,EAAE;oBACjC,QAAQ,EAAE,kBAAkB,KAAK,CAAC,IAAI,gCAAgC;oBACtE,SAAS,EAAE,IAAI;oBACf,WAAW,EAAE,KAAK,CAAC,IAAI;oBACvB,kBAAkB,EAAE,KAAK,CAAC,WAAW;iBACxC,CAAC,CAAC;gBACH,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,CAAC;QACL,CAAC;IACL,CAAC;CACJ,CAAA;AA9CY,wDAAsB;AAGZ;IADlB,IAAA,kBAAM,EAAC,4BAAY,CAAC;;4DACyB;AAG3B;IADlB,IAAA,kBAAM,EAAC,8BAAa,CAAC;;6DAC0B;iCANvC,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CA8ClC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-preferences.d.ts","sourceRoot":"","sources":["../../src/common/agent-preferences.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAO,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAKpD,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D,eAAO,MAAM,6BAA6B,EAAE,
|
|
1
|
+
{"version":3,"file":"agent-preferences.d.ts","sourceRoot":"","sources":["../../src/common/agent-preferences.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAO,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAKpD,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D,eAAO,MAAM,6BAA6B,EAAE,gBAsH3C,CAAC"}
|
|
@@ -76,10 +76,55 @@ exports.AgentSettingsPreferenceSchema = {
|
|
|
76
76
|
enum: [...notification_types_1.NOTIFICATION_TYPES],
|
|
77
77
|
title: core_1.nls.localize('theia/ai/agents/completionNotification/title', 'Completion Notification'),
|
|
78
78
|
markdownDescription: core_1.nls.localize('theia/ai/agents/completionNotification/mdDescription', 'Notification behavior when this agent completes a task. If not set, the global default notification setting will be used.\n\
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
79
|
+
- `os-notification`: Show OS/system notifications\n\
|
|
80
|
+
- `message`: Show notifications in the status bar/message area\n\
|
|
81
|
+
- `blink`: Blink or highlight the UI\n\
|
|
82
|
+
- `off`: Disable notifications for this agent')
|
|
83
|
+
},
|
|
84
|
+
capabilityOverrides: {
|
|
85
|
+
type: 'object',
|
|
86
|
+
title: core_1.nls.localize('theia/ai/agents/capabilityOverrides/title', 'Capability Overrides'),
|
|
87
|
+
markdownDescription: core_1.nls.localize('theia/ai/agents/capabilityOverrides/mdDescription', 'User overrides for template-based capabilities. Keys are capability fragment IDs, values are enabled (true) or disabled (false).'),
|
|
88
|
+
additionalProperties: {
|
|
89
|
+
type: 'boolean'
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
genericCapabilitySelections: {
|
|
93
|
+
type: 'object',
|
|
94
|
+
title: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/title', 'Generic Capability Selections'),
|
|
95
|
+
markdownDescription: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/mdDescription', 'User selections for generic capabilities such as skills, functions, and MCP tools.'),
|
|
96
|
+
properties: {
|
|
97
|
+
skills: {
|
|
98
|
+
type: 'array',
|
|
99
|
+
items: { type: 'string' },
|
|
100
|
+
description: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/skills', 'Selected skill IDs')
|
|
101
|
+
},
|
|
102
|
+
mcpFunctions: {
|
|
103
|
+
type: 'array',
|
|
104
|
+
items: { type: 'string' },
|
|
105
|
+
description: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/mcpFunctions', 'Selected MCP function IDs')
|
|
106
|
+
},
|
|
107
|
+
functions: {
|
|
108
|
+
type: 'array',
|
|
109
|
+
items: { type: 'string' },
|
|
110
|
+
description: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/functions', 'Selected function IDs')
|
|
111
|
+
},
|
|
112
|
+
promptFragments: {
|
|
113
|
+
type: 'array',
|
|
114
|
+
items: { type: 'string' },
|
|
115
|
+
description: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/promptFragments', 'Selected prompt fragment IDs')
|
|
116
|
+
},
|
|
117
|
+
agentDelegation: {
|
|
118
|
+
type: 'array',
|
|
119
|
+
items: { type: 'string' },
|
|
120
|
+
description: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/agentDelegation', 'Selected agent IDs for delegation')
|
|
121
|
+
},
|
|
122
|
+
variables: {
|
|
123
|
+
type: 'array',
|
|
124
|
+
items: { type: 'string' },
|
|
125
|
+
description: core_1.nls.localize('theia/ai/agents/genericCapabilitySelections/variables', 'Selected variable names')
|
|
126
|
+
}
|
|
127
|
+
}
|
|
83
128
|
}
|
|
84
129
|
},
|
|
85
130
|
required: ['languageModelRequirements']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-preferences.js","sourceRoot":"","sources":["../../src/common/agent-preferences.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,sCAAoD;AACpD,6DAE8B;AAEjB,QAAA,mBAAmB,GAAG,2BAA2B,CAAC;AAElD,QAAA,6BAA6B,GAAqB;IAC3D,UAAU,EAAE;QACR,CAAC,2BAAmB,CAAC,EAAE;YACnB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,uBAAuB,EAAE,gBAAgB,CAAC;YAC9D,MAAM,EAAE,IAAI;YACZ,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,+BAA+B,EAAE;wBACvD,CAAC;YACb,oBAAoB,EAAE;gBAClB,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,MAAM,EAAE;wBACJ,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,8BAA8B,EAAE,cAAc,CAAC;wBACnE,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,sCAAsC,EAAE,2EAA2E,CAAC;wBACtJ,OAAO,EAAE,IAAI;qBAChB;oBACD,UAAU,EAAE;wBACR,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,kCAAkC,EAAE,cAAc,CAAC;wBACvE,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EACxE,sFAAsF,CAAC;wBAC3F,OAAO,EAAE,IAAI;qBAChB;oBACD,yBAAyB,EAAE;wBACvB,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,iDAAiD,EAAE,6BAA6B,CAAC;wBACrG,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,yDAAyD,EAAE,oDAAoD,CAAC;wBAClJ,KAAK,EAAE;4BACH,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE;gCACR,OAAO,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,yDAAyD,EAAE,SAAS,CAAC;oCACzF,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,iEAAiE,EAC/F,oDAAoD,CAAC;iCAC5D;gCACD,UAAU,EAAE;oCACR,IAAI,EAAE,QAAQ;oCACd,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,YAAY,CAAC;oCAC1C,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,oEAAoE,EAClG,kDAAkD,CAAC;iCAC1D;6BACJ;4BACD,QAAQ,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC;yBACtC;qBACJ;oBACD,gBAAgB,EAAE;wBACd,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,mBAAmB,CAAC;wBAClF,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,gDAAgD,EAAE,kEAAkE,CAAC;wBACvJ,oBAAoB,EAAE;4BAClB,IAAI,EAAE,QAAQ;yBACjB;qBACJ;oBACD,sBAAsB,EAAE;wBACpB,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,GAAG,uCAAkB,CAAC;wBAC7B,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,8CAA8C,EAAE,yBAAyB,CAAC;wBAC9F,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,sDAAsD,EACpF;;;;
|
|
1
|
+
{"version":3,"file":"agent-preferences.js","sourceRoot":"","sources":["../../src/common/agent-preferences.ts"],"names":[],"mappings":"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"}
|
package/lib/common/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export * from './language-model';
|
|
|
9
9
|
export * from './language-model-alias';
|
|
10
10
|
export * from './prompt-service';
|
|
11
11
|
export * from './prompt-service-util';
|
|
12
|
+
export * from './proxy-util';
|
|
12
13
|
export * from './prompt-text';
|
|
13
14
|
export * from './protocol';
|
|
14
15
|
export * from './today-variable-contribution';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAeA,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAeA,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAE7B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC"}
|
package/lib/common/index.js
CHANGED
|
@@ -27,6 +27,7 @@ tslib_1.__exportStar(require("./language-model"), exports);
|
|
|
27
27
|
tslib_1.__exportStar(require("./language-model-alias"), exports);
|
|
28
28
|
tslib_1.__exportStar(require("./prompt-service"), exports);
|
|
29
29
|
tslib_1.__exportStar(require("./prompt-service-util"), exports);
|
|
30
|
+
tslib_1.__exportStar(require("./proxy-util"), exports);
|
|
30
31
|
tslib_1.__exportStar(require("./prompt-text"), exports);
|
|
31
32
|
tslib_1.__exportStar(require("./protocol"), exports);
|
|
32
33
|
tslib_1.__exportStar(require("./today-variable-contribution"), exports);
|
package/lib/common/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,0DAAgC;AAChC,kDAAwB;AACxB,yEAA+C;AAC/C,gEAAsC;AACtC,qEAA2C;AAC3C,oEAA0C;AAC1C,gEAAsC;AACtC,2DAAiC;AACjC,iEAAuC;AACvC,2DAAiC;AACjC,gEAAsC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,0DAAgC;AAChC,kDAAwB;AACxB,yEAA+C;AAC/C,gEAAsC;AACtC,qEAA2C;AAC3C,oEAA0C;AAC1C,gEAAsC;AACtC,2DAAiC;AACjC,iEAAuC;AACvC,2DAAiC;AACjC,gEAAsC;AACtC,uDAA6B;AAE7B,wDAA8B;AAC9B,qDAA2B;AAC3B,wEAA8C;AAC9C,6DAAmC;AACnC,6DAAmC;AACnC,mEAAyC;AACzC,gEAAsC;AACtC,iEAAuC;AACvC,6EAAmD;AACnD,+DAAqC;AACrC,kDAAwB;AACxB,6DAAmC;AACnC,2DAAiC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks whether the given target URL should bypass the proxy based on `no_proxy` rules.
|
|
3
|
+
*
|
|
4
|
+
* @param targetUrl - The URL to check against the no_proxy rules.
|
|
5
|
+
* @param noProxyValue - A comma-separated list of no_proxy rules.
|
|
6
|
+
* @returns `true` if the target URL should bypass the proxy, `false` otherwise.
|
|
7
|
+
*/
|
|
8
|
+
export declare function shouldBypassProxy(targetUrl: string | undefined, noProxyValue: string | undefined): boolean;
|
|
9
|
+
//# sourceMappingURL=proxy-util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-util.d.ts","sourceRoot":"","sources":["../../src/common/proxy-util.ts"],"names":[],"mappings":"AAgBA;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CA6D1G"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.shouldBypassProxy = shouldBypassProxy;
|
|
19
|
+
/**
|
|
20
|
+
* Checks whether the given target URL should bypass the proxy based on `no_proxy` rules.
|
|
21
|
+
*
|
|
22
|
+
* @param targetUrl - The URL to check against the no_proxy rules.
|
|
23
|
+
* @param noProxyValue - A comma-separated list of no_proxy rules.
|
|
24
|
+
* @returns `true` if the target URL should bypass the proxy, `false` otherwise.
|
|
25
|
+
*/
|
|
26
|
+
function shouldBypassProxy(targetUrl, noProxyValue) {
|
|
27
|
+
if (!targetUrl || !noProxyValue) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
let parsed;
|
|
31
|
+
try {
|
|
32
|
+
parsed = new URL(targetUrl);
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
const hostname = parsed.hostname.toLowerCase();
|
|
38
|
+
const port = parsed.port;
|
|
39
|
+
const rules = noProxyValue.split(',');
|
|
40
|
+
for (const rawRule of rules) {
|
|
41
|
+
const rule = rawRule.trim().toLowerCase();
|
|
42
|
+
if (!rule) {
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
if (rule === '*') {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
let ruleHost;
|
|
49
|
+
let rulePort;
|
|
50
|
+
const portSeparatorIndex = rule.lastIndexOf(':');
|
|
51
|
+
// Check if there's a port in the rule (only if the part after ':' is numeric)
|
|
52
|
+
if (portSeparatorIndex !== -1) {
|
|
53
|
+
const possiblePort = rule.substring(portSeparatorIndex + 1);
|
|
54
|
+
if (/^\d+$/.test(possiblePort)) {
|
|
55
|
+
ruleHost = rule.substring(0, portSeparatorIndex);
|
|
56
|
+
rulePort = possiblePort;
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
ruleHost = rule;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
ruleHost = rule;
|
|
64
|
+
}
|
|
65
|
+
// If the rule specifies a port, the target must match it
|
|
66
|
+
if (rulePort !== undefined && port !== rulePort) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
if (ruleHost.startsWith('.')) {
|
|
70
|
+
// Domain suffix match: .example.com matches *.example.com
|
|
71
|
+
if (hostname.endsWith(ruleHost) || hostname === ruleHost.substring(1)) {
|
|
72
|
+
return true;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
// Exact match or suffix match (without leading dot)
|
|
77
|
+
if (hostname === ruleHost || hostname.endsWith('.' + ruleHost)) {
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=proxy-util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-util.js","sourceRoot":"","sources":["../../src/common/proxy-util.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAShF,8CA6DC;AApED;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAAC,SAA6B,EAAE,YAAgC;IAC7F,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACD,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAEzB,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,SAAS;QACb,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,QAAgB,CAAC;QACrB,IAAI,QAA4B,CAAC;QACjC,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,8EAA8E;QAC9E,IAAI,kBAAkB,KAAK,CAAC,CAAC,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;YAC5D,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC7B,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;gBACjD,QAAQ,GAAG,YAAY,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACJ,QAAQ,GAAG,IAAI,CAAC;YACpB,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,QAAQ,GAAG,IAAI,CAAC;QACpB,CAAC;QAED,yDAAyD;QACzD,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9C,SAAS;QACb,CAAC;QAED,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,0DAA0D;YAC1D,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpE,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,oDAAoD;YACpD,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC;gBAC7D,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-util.spec.d.ts","sourceRoot":"","sources":["../../src/common/proxy-util.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const chai_1 = require("chai");
|
|
19
|
+
const proxy_util_1 = require("./proxy-util");
|
|
20
|
+
describe('proxy-util', () => {
|
|
21
|
+
describe('shouldBypassProxy', () => {
|
|
22
|
+
it('should return false when targetUrl is undefined', () => {
|
|
23
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)(undefined, 'localhost')).to.be.false;
|
|
24
|
+
});
|
|
25
|
+
it('should return false when noProxyValue is undefined', () => {
|
|
26
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://example.com', undefined)).to.be.false;
|
|
27
|
+
});
|
|
28
|
+
it('should return false when noProxyValue is empty', () => {
|
|
29
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://example.com', '')).to.be.false;
|
|
30
|
+
});
|
|
31
|
+
it('should return false when targetUrl cannot be parsed', () => {
|
|
32
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('not-a-url', 'localhost')).to.be.false;
|
|
33
|
+
});
|
|
34
|
+
it('should match exact hostname (case-insensitive)', () => {
|
|
35
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://myhost.local/v1', 'myhost.local')).to.be.true;
|
|
36
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://MyHost.Local/v1', 'myhost.local')).to.be.true;
|
|
37
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://myhost.local/v1', 'MyHost.Local')).to.be.true;
|
|
38
|
+
});
|
|
39
|
+
it('should not match partial hostname', () => {
|
|
40
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://notmyhost.local', 'myhost.local')).to.be.false;
|
|
41
|
+
});
|
|
42
|
+
it('should match domain suffix with leading dot', () => {
|
|
43
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://api.example.com/v1', '.example.com')).to.be.true;
|
|
44
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://deep.sub.example.com', '.example.com')).to.be.true;
|
|
45
|
+
});
|
|
46
|
+
it('should match exact domain for leading dot rule', () => {
|
|
47
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://example.com/v1', '.example.com')).to.be.true;
|
|
48
|
+
});
|
|
49
|
+
it('should match suffix without leading dot', () => {
|
|
50
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://sub.example.com/v1', 'example.com')).to.be.true;
|
|
51
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://example.com/v1', 'example.com')).to.be.true;
|
|
52
|
+
});
|
|
53
|
+
it('should match wildcard', () => {
|
|
54
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://anything.com', '*')).to.be.true;
|
|
55
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('https://secure.host.org/path', '*')).to.be.true;
|
|
56
|
+
});
|
|
57
|
+
it('should match IP addresses', () => {
|
|
58
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://192.168.1.100:8080/v1', '192.168.1.100')).to.be.true;
|
|
59
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://192.168.1.100/v1', '192.168.1.100')).to.be.true;
|
|
60
|
+
});
|
|
61
|
+
it('should not match different IP addresses', () => {
|
|
62
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://192.168.1.101/v1', '192.168.1.100')).to.be.false;
|
|
63
|
+
});
|
|
64
|
+
it('should match port-specific rules', () => {
|
|
65
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://myhost:8080/v1', 'myhost:8080')).to.be.true;
|
|
66
|
+
});
|
|
67
|
+
it('should not match when port differs', () => {
|
|
68
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://myhost:9090/v1', 'myhost:8080')).to.be.false;
|
|
69
|
+
});
|
|
70
|
+
it('should not match port-specific rule when target has no port', () => {
|
|
71
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://myhost/v1', 'myhost:8080')).to.be.false;
|
|
72
|
+
});
|
|
73
|
+
it('should trim whitespace around entries', () => {
|
|
74
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://example.com', ' example.com ')).to.be.true;
|
|
75
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://foo.com', ' foo.com , bar.com ')).to.be.true;
|
|
76
|
+
});
|
|
77
|
+
it('should handle multiple comma-separated rules', () => {
|
|
78
|
+
const noProxy = 'localhost,127.0.0.1,.internal.net';
|
|
79
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://localhost/api', noProxy)).to.be.true;
|
|
80
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://127.0.0.1:3000', noProxy)).to.be.true;
|
|
81
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://service.internal.net', noProxy)).to.be.true;
|
|
82
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://external.com', noProxy)).to.be.false;
|
|
83
|
+
});
|
|
84
|
+
it('should skip empty rules from consecutive commas', () => {
|
|
85
|
+
(0, chai_1.expect)((0, proxy_util_1.shouldBypassProxy)('http://example.com', 'example.com,,localhost')).to.be.true;
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
//# sourceMappingURL=proxy-util.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-util.spec.js","sourceRoot":"","sources":["../../src/common/proxy-util.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Event } from '@theia/core';
|
|
2
2
|
import { LanguageModelRequirement } from './language-model';
|
|
3
3
|
import { NotificationType } from './notification-types';
|
|
4
|
+
import { GenericCapabilitySelections } from './capability-utils';
|
|
4
5
|
export declare const AISettingsService: unique symbol;
|
|
5
6
|
/**
|
|
6
7
|
* Service to store and retrieve settings on a per-agent basis.
|
|
@@ -30,5 +31,16 @@ export interface AgentSettings {
|
|
|
30
31
|
* If undefined, defaults to 'off'.
|
|
31
32
|
*/
|
|
32
33
|
completionNotification?: NotificationType;
|
|
34
|
+
/**
|
|
35
|
+
* User overrides for template-based capabilities.
|
|
36
|
+
* Keys are capability fragment IDs, values are enabled/disabled state.
|
|
37
|
+
* Only stores explicit user choices that differ from template defaults.
|
|
38
|
+
*/
|
|
39
|
+
capabilityOverrides?: Record<string, boolean>;
|
|
40
|
+
/**
|
|
41
|
+
* User selections for generic capabilities (skills, functions, MCP tools, etc.).
|
|
42
|
+
* Stores selected IDs for each capability type.
|
|
43
|
+
*/
|
|
44
|
+
genericCapabilitySelections?: GenericCapabilitySelections;
|
|
33
45
|
}
|
|
34
46
|
//# sourceMappingURL=settings-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-service.d.ts","sourceRoot":"","sources":["../../src/common/settings-service.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"settings-service.d.ts","sourceRoot":"","sources":["../../src/common/settings-service.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,eAAO,MAAM,iBAAiB,eAA8B,CAAC;AAC7D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzF,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IACpE,WAAW,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CAC5B;AACD,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AACvD,MAAM,WAAW,aAAa;IAC1B,yBAAyB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACvD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C;;;OAGG;IACH,sBAAsB,CAAC,EAAE,gBAAgB,CAAC;IAC1C;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C;;;OAGG;IACH,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;CAC7D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-service.js","sourceRoot":"","sources":["../../src/common/settings-service.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"settings-service.js","sourceRoot":"","sources":["../../src/common/settings-service.ts"],"names":[],"mappings":";;;AAoBa,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"AAgBA,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const tslib_1 = require("tslib");
|
|
19
|
+
tslib_1.__exportStar(require("./proxy-util"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,uDAA6B"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a custom fetch function that routes requests through the given HTTP proxy.
|
|
3
|
+
* Returns `undefined` if no proxy URL is provided.
|
|
4
|
+
*
|
|
5
|
+
* @param proxyUrl - The proxy URL to use, or `undefined` for no proxy.
|
|
6
|
+
* @returns A custom fetch function using the proxy, or `undefined`.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createProxyFetch(proxyUrl: string | undefined): typeof fetch | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* Resolves the proxy URL to use for a given target URL.
|
|
11
|
+
*
|
|
12
|
+
* Resolution order:
|
|
13
|
+
* 1. If `settingsProxy` is provided (e.g., from Theia `http.proxy` preference), use it.
|
|
14
|
+
* 2. Otherwise check environment variables based on the target URL scheme.
|
|
15
|
+
* 3. If a proxy is resolved, check `no_proxy`/`NO_PROXY` — if bypass, return `undefined`.
|
|
16
|
+
* 4. Return the resolved proxy URL or `undefined` if none found.
|
|
17
|
+
*
|
|
18
|
+
* @param targetUrl - The URL for which to resolve a proxy.
|
|
19
|
+
* @param settingsProxy - An optional proxy URL from application settings.
|
|
20
|
+
* @returns The proxy URL to use, or `undefined` if no proxy should be used.
|
|
21
|
+
*/
|
|
22
|
+
export declare function getProxyUrl(targetUrl: string | undefined, settingsProxy?: string): string | undefined;
|
|
23
|
+
//# sourceMappingURL=proxy-util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-util.d.ts","sourceRoot":"","sources":["../../src/node/proxy-util.ts"],"names":[],"mappings":"AAmBA;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,KAAK,GAAG,SAAS,CAQvF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAmCrG"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.createProxyFetch = createProxyFetch;
|
|
19
|
+
exports.getProxyUrl = getProxyUrl;
|
|
20
|
+
const undici = require("undici");
|
|
21
|
+
const proxy_util_1 = require("../common/proxy-util");
|
|
22
|
+
/**
|
|
23
|
+
* Creates a custom fetch function that routes requests through the given HTTP proxy.
|
|
24
|
+
* Returns `undefined` if no proxy URL is provided.
|
|
25
|
+
*
|
|
26
|
+
* @param proxyUrl - The proxy URL to use, or `undefined` for no proxy.
|
|
27
|
+
* @returns A custom fetch function using the proxy, or `undefined`.
|
|
28
|
+
*/
|
|
29
|
+
function createProxyFetch(proxyUrl) {
|
|
30
|
+
if (!proxyUrl) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
const proxyAgent = new undici.ProxyAgent(proxyUrl);
|
|
34
|
+
return ((input, init) => fetch(input, { ...init, dispatcher: proxyAgent }));
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Resolves the proxy URL to use for a given target URL.
|
|
38
|
+
*
|
|
39
|
+
* Resolution order:
|
|
40
|
+
* 1. If `settingsProxy` is provided (e.g., from Theia `http.proxy` preference), use it.
|
|
41
|
+
* 2. Otherwise check environment variables based on the target URL scheme.
|
|
42
|
+
* 3. If a proxy is resolved, check `no_proxy`/`NO_PROXY` — if bypass, return `undefined`.
|
|
43
|
+
* 4. Return the resolved proxy URL or `undefined` if none found.
|
|
44
|
+
*
|
|
45
|
+
* @param targetUrl - The URL for which to resolve a proxy.
|
|
46
|
+
* @param settingsProxy - An optional proxy URL from application settings.
|
|
47
|
+
* @returns The proxy URL to use, or `undefined` if no proxy should be used.
|
|
48
|
+
*/
|
|
49
|
+
function getProxyUrl(targetUrl, settingsProxy) {
|
|
50
|
+
let proxyUrl;
|
|
51
|
+
if (settingsProxy) {
|
|
52
|
+
proxyUrl = settingsProxy;
|
|
53
|
+
}
|
|
54
|
+
else if (targetUrl) {
|
|
55
|
+
let scheme;
|
|
56
|
+
try {
|
|
57
|
+
scheme = new URL(targetUrl).protocol;
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
if (scheme === 'https:') {
|
|
63
|
+
proxyUrl = process.env.https_proxy
|
|
64
|
+
|| process.env.HTTPS_PROXY
|
|
65
|
+
|| process.env.http_proxy
|
|
66
|
+
|| process.env.HTTP_PROXY;
|
|
67
|
+
}
|
|
68
|
+
else if (scheme === 'http:') {
|
|
69
|
+
proxyUrl = process.env.http_proxy
|
|
70
|
+
|| process.env.HTTP_PROXY;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (!proxyUrl) {
|
|
74
|
+
return undefined;
|
|
75
|
+
}
|
|
76
|
+
// Check no_proxy / NO_PROXY
|
|
77
|
+
const noProxy = process.env.no_proxy ?? process.env.NO_PROXY;
|
|
78
|
+
if ((0, proxy_util_1.shouldBypassProxy)(targetUrl, noProxy)) {
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
81
|
+
return proxyUrl;
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=proxy-util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-util.js","sourceRoot":"","sources":["../../src/node/proxy-util.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAYhF,4CAQC;AAeD,kCAmCC;AApED,iCAAiC;AACjC,qDAAyD;AAEzD;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAC,QAA4B;IACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACnD,OAAO,CAAC,CAAC,KAA6B,EAAE,IAAkB,EAAE,EAAE,CAC1D,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,UAAU,EAAiB,CAAC,CACnD,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,WAAW,CAAC,SAA6B,EAAE,aAAsB;IAC7E,IAAI,QAA4B,CAAC;IAEjC,IAAI,aAAa,EAAE,CAAC;QAChB,QAAQ,GAAG,aAAa,CAAC;IAC7B,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACnB,IAAI,MAAc,CAAC;QACnB,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtB,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW;mBAC3B,OAAO,CAAC,GAAG,CAAC,WAAW;mBACvB,OAAO,CAAC,GAAG,CAAC,UAAU;mBACtB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QAClC,CAAC;aAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU;mBAC1B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QAClC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,4BAA4B;IAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC7D,IAAI,IAAA,8BAAiB,EAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;QACxC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-util.spec.d.ts","sourceRoot":"","sources":["../../src/node/proxy-util.spec.ts"],"names":[],"mappings":""}
|