{"record":{"id":"a5002ca5e2c77f59","repo":"microsoft/vscode","slug":"setting-github-copilot-settingid-is-too-low-us","errorCode":null,"errorMessage":"Setting github.copilot.${settingId} is too low; use a ratio in the range (0, 1] (e.g. 0.8 for 80%) or an absolute token count of at least 100.","messagePattern":"Setting github\\.copilot\\.(.+?) is too low; use a ratio in the range \\(0, 1\\] \\(e\\.g\\. 0\\.8 for 80%\\) or an absolute token count of at least 100\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"extensions/copilot/src/extension/intents/node/agentIntent.ts","lineNumber":190,"sourceCode":" * small to be a useful token budget) are rejected so a typo like `80` — which a\n * user likely meant as \"80%\" — fails loudly instead of silently compacting after\n * 80 tokens.\n *\n * Returns `undefined` when unset (or non-positive), meaning \"use the model's full\n * context window\".\n *\n * @internal - exported for testing\n */\nexport function resolveSummarizeThresholdTokens(value: number | undefined, effectiveMaxTokens: number, settingId: string): number | undefined {\n\tif (typeof value !== 'number' || value <= 0) {\n\t\treturn undefined;\n\t}\n\tif (value <= 1) {\n\t\t// Ratio of the model's context window.\n\t\treturn Math.max(1, Math.floor(effectiveMaxTokens * value));\n\t}\n\tif (value < 100) {\n\t\tthrow new Error(`Setting github.copilot.${settingId} is too low; use a ratio in the range (0, 1] (e.g. 0.8 for 80%) or an absolute token count of at least 100.`);\n\t}\n\t// Absolute token count.\n\treturn value;\n}\n\nexport const getAgentTools = async (accessor: ServicesAccessor, request: vscode.ChatRequest, model?: IChatEndpoint) => {\n\tconst toolsService = accessor.get<IToolsService>(IToolsService);\n\tconst testService = accessor.get<ITestProvider>(ITestProvider);\n\tconst tasksService = accessor.get<ITasksService>(ITasksService);\n\tconst configurationService = accessor.get<IConfigurationService>(IConfigurationService);\n\tconst experimentationService = accessor.get<IExperimentationService>(IExperimentationService);\n\tconst endpointProvider = accessor.get<IEndpointProvider>(IEndpointProvider);\n\tconst editToolLearningService = accessor.get<IEditToolLearningService>(IEditToolLearningService);\n\tconst authenticationService = accessor.get<IAuthenticationService>(IAuthenticationService);\n\tconst logService = accessor.get<ILogService>(ILogService);\n\n\tmodel ??= await endpointProvider.getChatEndpoint(request);\n","sourceCodeStart":172,"sourceCodeEnd":208,"githubUrl":"https://github.com/microsoft/vscode/blob/a94b963a32aa9749d69504576791fa29700ae46d/extensions/copilot/src/extension/intents/node/agentIntent.ts#L172-L208","documentation":"Error \"Setting github.copilot.${settingId} is too low; use a ratio in the range (0, 1] (e.g. 0.8 for 80%) or an absolute token count of at least 100.\" thrown in microsoft/vscode.","triggerScenarios":"Thrown at extensions/copilot/src/extension/intents/node/agentIntent.ts:190 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"a94b963a32aa9749d69504576791fa29700ae46d","analyzedAt":"2026-08-12T01:08:56.794Z","schemaVersion":2},"datasetVersion":"2026-08-12T06:17:24.410Z"}