{"$schema":"http://json-schema.org/draft-07/schema#","title":"Schema for Cody settings in the Cody VSCode Extension.","description":"This prevents invalid Cody specific configuration in the settings file.","type":"object","allOf":[{"$ref":"https://json.schemastore.org/package"}],"properties":{"cody.serverEndpoint":{"order":1,"type":"string","description":"URL to the Sourcegraph instance.","examples":"https://example.sourcegraph.com","markdownDeprecationMessage":"**Deprecated**: Please sign in via the UI instead. If you are already signed in, you can empty this field to remove this warning.","deprecationMessage":"Deprecated: Please sign in via the UI instead."},"cody.codebase":{"order":2,"type":"string","markdownDescription":"A Git repository URL to use instead of allowing Cody to infer the Git repository from the workspace.","examples":["https://github.com/sourcegraph/cody","ssh://git@github.com/sourcegraph/cody"]},"cody.useContext":{"order":99,"type":"string","enum":["embeddings","keyword","blended","none"],"default":"blended","markdownDescription":"Controls which context providers Cody uses for chat, commands and inline edits. Use 'blended' for best results. For debugging other context sources, 'embeddings' will use an embeddings-based index if available. 'keyword' will use a search-based index. 'none' will not use embeddings or search-based indexes."},"cody.customHeaders":{"order":4,"type":"object","markdownDescription":"Adds custom HTTP headers to all network requests to the Sourcegraph endpoint. Defining required headers here ensures requests are properly forwarded through intermediary proxy servers, which may mandate certain custom headers for internal or external communication.","default":{},"examples":[{"Cache-Control":"no-cache","Proxy-Authenticate":"Basic"}]},"cody.autocomplete.enabled":{"order":5,"type":"boolean","markdownDescription":"Enables code autocompletions.","default":true},"cody.autocomplete.languages":{"order":5,"type":"object","markdownDescription":"Enables or disables code autocompletions for specified [language ids](https://code.visualstudio.com/docs/languages/identifiers). `\"*\"` is the default fallback if no language-specific setting is found.\n\nThe default setting: \n\n```json\n{\n \"*\": true\n}\n```\n\nTo disable autocomplete for a given [language id](https://code.visualstudio.com/docs/languages/identifiers#_known-language-identifiers) set its value to `false`, for example:\n\n```json\n{\n \"*\": true,\n \"plaintext\": false\n}\n```","default":{"*":true},"examples":[{"*":true,"plaintext":false}]},"cody.commandCodeLenses":{"order":8,"type":"boolean","markdownDescription":"Adds code lenses to current file for quick access to Cody commands.","default":false},"cody.chat.preInstruction":{"order":6,"type":"string","markdownDescription":"A custom instruction to be included at the start of all chat messages (e.g. \"Answer all my questions in Spanish.\")","examples":["Answer all my questions in Spanish."]},"cody.chat.defaultLocation":{"order":6,"type":"string","enum":["sticky","sidebar","editor"],"markdownDescription":"Controls where the Cody chat view opens when the user invokes the `Cody: New Chat` command, or the Alt+L and Alt+/ shortcuts.","enumDescriptions":["Opens in the last-activated view location, which is set whenever the user explicitly chooses to open chat in a given location","Opens in the sidebar","Opens in an editor panel"],"default":"sticky"},"cody.edit.preInstruction":{"order":7,"type":"string","markdownDescription":"A custom instruction to be included at the end of all instructions for edit commands (e.g. \"Write all unit tests with Jest instead of detected framework.\")","examples":["Write all unit tests with Jest instead of detected framework."]},"cody.codeActions.enabled":{"order":11,"title":"Cody Code Actions","type":"boolean","markdownDescription":"Add Cody options to Quick Fix menus for fixing, explaining, documenting, and editing code.","default":true},"cody.commandHints.enabled":{"order":12,"title":"Cody Command Hints","type":"boolean","markdownDescription":"Enable hints for Cody commands such as \"Opt+K to Edit\" or \"Opt+D to Document\"","default":true},"cody.experimental.tracing":{"order":99,"type":"boolean","markdownDescription":"Enable OpenTelemetry tracing","default":false},"cody.experimental.commitMessage":{"order":99,"type":"boolean","markdownDescription":"Enable commit message generation","default":false},"cody.experimental.minion.anthropicKey":{"order":99,"type":"string","default":""},"cody.debug.verbose":{"order":99,"type":"boolean","markdownDescription":"Enables verbose debug output. Debug messages may contain more details if the invocation includes verbose information."},"cody.debug.filter":{"order":99,"type":"string","markdownDescription":"Regular expression to filter debug output. If empty, defaults to '.*', which prints all messages."},"cody.telemetry.level":{"order":99,"type":"string","enum":["all","off"],"enumDescriptions":["Sends usage data and errors.","Disables all extension telemetry."],"markdownDescription":"Controls the telemetry about Cody usage and errors. See [Cody usage and privacy notice](https://about.sourcegraph.com/terms/cody-notice).","default":"all"},"cody.autocomplete.advanced.provider":{"type":"string","default":null,"enum":[null,"anthropic","fireworks","unstable-gemini","unstable-openai","experimental-ollama","experimental-openaicompatible"],"markdownDescription":"The provider used for code autocomplete. Most providers other than `anthropic` require the `cody.autocomplete.advanced.serverEndpoint` and `cody.autocomplete.advanced.accessToken` settings to also be set. Check the Cody output channel for error messages if autocomplete is not working as expected."},"cody.autocomplete.advanced.serverEndpoint":{"type":"string","markdownDescription":"The server endpoint used for code autocomplete. This is only supported with a provider other than `anthropic`."},"cody.autocomplete.advanced.accessToken":{"type":"string","markdownDescription":"The access token used for code autocomplete. This is only supported with a provider other than `anthropic`."},"cody.autocomplete.advanced.model":{"type":"string","default":null,"enum":[null,"starcoder-16b","starcoder-7b"],"markdownDescription":"Overwrite the model used for code autocompletion inference. This is only supported with the `fireworks` provider"},"cody.autocomplete.completeSuggestWidgetSelection":{"type":"boolean","default":true,"markdownDescription":"Autocomplete based on the currently selection in the suggest widget. Requires the VS Code user setting `editor.inlineSuggest.suppressSuggestions` set to true and will change it to true in user settings if it is not true."},"cody.autocomplete.formatOnAccept":{"type":"boolean","default":false,"markdownDescription":"Format completions on accept using [the default document formatter](https://code.visualstudio.com/docs/editor/codebasics#_formatting)."},"cody.autocomplete.disableInsideComments":{"type":"boolean","default":false,"markdownDescription":"Prevent autocomplete requests while inside code comments."},"cody.experimental.foldingRanges":{"type":"string","enum":["lsp","indentation-based"],"enumDescriptions":["Use folding ranges that are enabled by default in VS Code, and are usually powered by LSP","Use custom implementation of folding ranges that is indentation based. This is the implementation that is used by other Cody clients like the JetBrains plugin"],"markdownDescription":"Determines the algorithm Cody uses to detect folding ranges. Cody uses folding ranges for several features like the 'Document code' command","default":"all"},"cody.autocomplete.experimental.graphContext":{"type":"string","default":null,"enum":[null,"bfg","bfg-mixed","tsc","tsc-mixed"],"markdownDescription":"Use the code graph to retrieve context for autocomplete requests."},"cody.autocomplete.experimental.fireworksOptions":{"type":"object","markdownDescription":"Experimental options for the direct-Fireworks autocomplete provider.","properties":{"url":{"type":"string","description":"The URL of the Fireworks API.","default":"https://api.fireworks.ai/inference/v1/completions"},"token":{"type":"string","description":"The access token of the Fireworks API."},"model":{"type":"string","description":"The model ID can be acquired from `firectl list deployments`","default":"accounts/sourcegraph/models/starcoder2-7b"},"parameters":{"type":"object","description":"Parameters for querying the the model.","properties":{"temperature":"number","top_k":"number","top_p":"number","stop":{"type":"array","default":[],"items":{"type":"string"}}}}}},"cody.autocomplete.experimental.ollamaOptions":{"type":"object","markdownDescription":"Options for the [Ollama](https://ollama.ai/) experimental autocomplete provider.","default":{"url":"http://localhost:11434","model":"deepseek-coder:6.7b-base-q4_K_M"},"properties":{"url":{"type":"string","description":"The URL of the Ollama API.","default":"http://localhost:11434"},"model":{"type":"string","default":"deepseek-coder:6.7b-base-q4_K_M","examples":["codellama:7b-code","codellama:13b-code","deepseek-coder:6.7b-base-q4_K_M","starcoder2:7b","starcoder2:15b"]},"parameters":{"type":"object","description":"Parameters for how Ollama will run the model. See Ollama [PARAMETER documentation](https://github.com/jmorganca/ollama/blob/main/docs/api.md#generate-request-with-options).","properties":{"num_ctx":"number","temperature":"number","top_k":"number","top_p":"number"}}}},"cody.autocomplete.experimental.preloadDebounceInterval":{"type":"number","default":0,"markdownDescription":"Changes the preload debounce interval for autocomplete requests triggered on cursor movement."},"openctx.enable":{"type":"boolean","markdownDescription":"Enable OpenCtx providers for Cody.","default":true},"openctx.providers":{"type":"object","markdownDescription":"OpenCtx providers configuration.","default":{}},"cody.internal.unstable":{"order":999,"type":"boolean","markdownDescription":"[INTERNAL ONLY] Enable all unstable experimental features.","default":false}}}