@iaforged/context-code 1.0.81 → 1.0.83

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 (32) hide show
  1. package/dist/src/commands.js +0 -2
  2. package/dist/src/components/PromptInput/PromptInput.js +7 -2
  3. package/dist/src/components/PromptInput/useMaybeTruncateInput.js +1 -14
  4. package/dist/src/components/agents/AgentDetail.js +19 -210
  5. package/dist/src/components/agents/AgentEditor.js +60 -70
  6. package/dist/src/components/agents/AgentsList.js +3 -2
  7. package/dist/src/components/agents/AgentsMenu.js +10 -10
  8. package/dist/src/components/agents/ColorPicker.js +2 -2
  9. package/dist/src/components/agents/ToolSelector.js +13 -13
  10. package/dist/src/components/agents/agentFileUtils.js +12 -11
  11. package/dist/src/components/agents/new-agent-creation/CreateAgentWizard.js +1 -1
  12. package/dist/src/components/agents/new-agent-creation/wizard-steps/ColorStep.js +22 -68
  13. package/dist/src/components/agents/new-agent-creation/wizard-steps/ConfirmStep.js +30 -369
  14. package/dist/src/components/agents/new-agent-creation/wizard-steps/ConfirmStepWrapper.js +13 -15
  15. package/dist/src/components/agents/new-agent-creation/wizard-steps/DescriptionStep.js +4 -4
  16. package/dist/src/components/agents/new-agent-creation/wizard-steps/GenerateStep.js +15 -22
  17. package/dist/src/components/agents/new-agent-creation/wizard-steps/LocationStep.js +2 -2
  18. package/dist/src/components/agents/new-agent-creation/wizard-steps/MemoryStep.js +9 -9
  19. package/dist/src/components/agents/new-agent-creation/wizard-steps/MethodStep.js +3 -3
  20. package/dist/src/components/agents/new-agent-creation/wizard-steps/ModelStep.js +8 -38
  21. package/dist/src/components/agents/new-agent-creation/wizard-steps/PromptStep.js +4 -4
  22. package/dist/src/components/agents/new-agent-creation/wizard-steps/ToolsStep.js +1 -1
  23. package/dist/src/components/agents/new-agent-creation/wizard-steps/TypeStep.js +3 -3
  24. package/dist/src/components/agents/validateAgent.js +16 -16
  25. package/dist/src/hooks/usePasteHandler.js +68 -7
  26. package/dist/src/services/compact/compact.js +22 -20
  27. package/dist/src/tools/AgentTool/AgentTool.js +12 -8
  28. package/dist/src/tools/AgentTool/agentDisplay.js +5 -2
  29. package/dist/src/tools/AgentTool/loadAgentsDir.js +36 -0
  30. package/dist/src/tools/AgentTool/resumeAgent.js +7 -3
  31. package/dist/src/utils/model/providers.js +14 -0
  32. package/package.json +1 -1
@@ -10,6 +10,8 @@ import { runWithCwdOverride } from '../../utils/cwd.js';
10
10
  import { logForDebugging } from '../../utils/debug.js';
11
11
  import { createUserMessage, filterOrphanedThinkingOnlyMessages, filterUnresolvedToolUses, filterWhitespaceOnlyAssistantMessages, } from '../../utils/messages.js';
12
12
  import { getAgentModel } from '../../utils/model/agent.js';
13
+ import { runWithProviderOverride } from '../../utils/model/providerOverrideContext.js';
14
+ import { providerPreferenceToApiProvider } from '../../utils/model/providers.js';
13
15
  import { getQuerySourceForAgent } from '../../utils/promptCategory.js';
14
16
  import { getAgentTranscript, readAgentMetadata, } from '../../utils/sessionStorage.js';
15
17
  import { buildEffectiveSystemPrompt } from '../../utils/systemPrompt.js';
@@ -65,6 +67,8 @@ export async function resumeAgentBackground({ agentId, prompt, toolUseContext, c
65
67
  selectedAgent = GENERAL_PURPOSE_AGENT;
66
68
  }
67
69
  const uiDescription = meta?.description ?? '(resumed)';
70
+ const agentProviderOverride = providerPreferenceToApiProvider(selectedAgent.provider);
71
+ const withAgentProvider = (fn) => runWithProviderOverride(agentProviderOverride, fn);
68
72
  let forkParentSystemPrompt;
69
73
  if (isResumedFork) {
70
74
  if (toolUseContext.renderedSystemPrompt) {
@@ -89,7 +93,7 @@ export async function resumeAgentBackground({ agentId, prompt, toolUseContext, c
89
93
  }
90
94
  }
91
95
  // Resolve model for analytics metadata (runAgent resolves its own internally)
92
- const resolvedAgentModel = getAgentModel(selectedAgent.model, toolUseContext.options.mainLoopModel, undefined, permissionMode);
96
+ const resolvedAgentModel = withAgentProvider(() => getAgentModel(selectedAgent.model, toolUseContext.options.mainLoopModel, undefined, permissionMode));
93
97
  const workerPermissionContext = {
94
98
  ...appState.toolPermissionContext,
95
99
  mode: selectedAgent.permissionMode ?? 'acceptEdits',
@@ -152,7 +156,7 @@ export async function resumeAgentBackground({ agentId, prompt, toolUseContext, c
152
156
  invocationEmitted: false,
153
157
  };
154
158
  const wrapWithCwd = (fn) => resumedWorktreePath ? runWithCwdOverride(resumedWorktreePath, fn) : fn();
155
- void runWithAgentContext(asyncAgentContext, () => wrapWithCwd(() => runAsyncAgentLifecycle({
159
+ void withAgentProvider(() => runWithAgentContext(asyncAgentContext, () => wrapWithCwd(() => runAsyncAgentLifecycle({
156
160
  taskId: agentBackgroundTask.agentId,
157
161
  abortController: agentBackgroundTask.abortController,
158
162
  makeStream: onCacheSafeParams => runAgent({
@@ -173,7 +177,7 @@ export async function resumeAgentBackground({ agentId, prompt, toolUseContext, c
173
177
  isForkSubagentEnabled() ||
174
178
  getSdkAgentProgressSummariesEnabled(),
175
179
  getWorktreeResult: async () => resumedWorktreePath ? { worktreePath: resumedWorktreePath } : {},
176
- })));
180
+ }))));
177
181
  return {
178
182
  agentId,
179
183
  description: uiDescription,
@@ -1,6 +1,7 @@
1
1
  import { isEnvTruthy } from '../envUtils.js';
2
2
  import { getSecureStorage } from '../secureStorage/index.js';
3
3
  import { isProviderBaseUrlCustomized } from './providerBaseUrls.js';
4
+ import { getProviderOverride } from './providerOverrideContext.js';
4
5
  import { getStoredActiveProviderPreference } from './providerProfilesDb.js';
5
6
  import { listProviderProfiles } from './providerProfiles.js';
6
7
  function hasStoredOpenAIOAuthToken() {
@@ -31,6 +32,15 @@ function hasStoredClaudeAIOAuthToken() {
31
32
  return false;
32
33
  }
33
34
  }
35
+ export function providerPreferenceToApiProvider(provider) {
36
+ if (!provider) {
37
+ return undefined;
38
+ }
39
+ if (provider === 'claude') {
40
+ return 'firstParty';
41
+ }
42
+ return provider;
43
+ }
34
44
  export function isOpenAIProviderConfigured() {
35
45
  return (isEnvTruthy(process.env.CLAUDE_CODE_USE_OPENAI) ||
36
46
  Boolean(process.env.OPENAI_API_KEY) ||
@@ -168,6 +178,10 @@ export function hasDualProviderSessions() {
168
178
  hasStoredClaudeAIOAuthToken());
169
179
  }
170
180
  export function getAPIProvider() {
181
+ const providerOverride = getProviderOverride();
182
+ if (providerOverride) {
183
+ return providerOverride;
184
+ }
171
185
  if (isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)) {
172
186
  return 'bedrock';
173
187
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iaforged/context-code",
3
- "version": "1.0.81",
3
+ "version": "1.0.83",
4
4
  "description": "Context Code es un asistente de desarrollo para la terminal. Puede revisar tu proyecto, editar archivos, ejecutar comandos y apoyarte en tareas reales de programacion.",
5
5
  "author": "Context AI",
6
6
  "license": "MIT",