{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/aider/latest.json",
  "title": "Aider CLI Options Schema",
  "x-lintel": {
    "source": "https://www.schemastore.org/aider-0.82.json",
    "sourceSha256": "38a856d268813d59fb762de86f367547a3a791fb870a198efabce7ae8c543e21",
    "fileMatch": [
      ".aider.conf.yml"
    ],
    "parsers": [
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "description": "Specify the model to use for the main chat. Default: None"
    },
    "openai-api-key": {
      "type": "string",
      "description": "Specify the OpenAI API key. Default: None"
    },
    "anthropic-api-key": {
      "type": "string",
      "description": "Specify the Anthropic API key. Default: None"
    },
    "openai-api-base": {
      "type": "string",
      "description": "Specify the api base url. Default: None"
    },
    "openai-api-type": {
      "type": "string",
      "description": "Specify the OpenAI API type. Default: None"
    },
    "openai-api-version": {
      "type": "string",
      "description": "Specify the OpenAI API version. Default: None"
    },
    "openai-api-deployment-id": {
      "type": "string",
      "description": "Specify the OpenAI API deployment ID. Default: None"
    },
    "openai-organization-id": {
      "type": "string",
      "description": "Specify the OpenAI organization ID. Default: None"
    },
    "set-env": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Set environment variables. Default: []"
    },
    "api-key": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Set an API key for a provider. Default: []"
    },
    "list-models": {
      "type": "string",
      "description": "List known models which match the (partial) MODEL name. Default: None"
    },
    "model-settings-file": {
      "type": "string",
      "description": "Specify a file with aider model settings for unknown models. Default: .aider.model.settings.yml",
      "default": ".aider.model.settings.yml"
    },
    "model-metadata-file": {
      "type": "string",
      "description": "Specify a file with context window and costs for unknown models. Default: .aider.model.metadata.json",
      "default": ".aider.model.metadata.json"
    },
    "alias": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Add a model alias. Default: []"
    },
    "reasoning-effort": {
      "type": "string",
      "description": "Set the reasoning_effort API parameter. Default: None"
    },
    "thinking-tokens": {
      "type": "string",
      "description": "Set the thinking token budget for models that support it. Default: None"
    },
    "verify-ssl": {
      "type": "boolean",
      "description": "Verify the SSL cert when connecting to models. Default: true",
      "default": true
    },
    "timeout": {
      "type": "string",
      "description": "Timeout in seconds for API calls. Default: None"
    },
    "edit-format": {
      "type": "string",
      "description": "Specify what edit format the LLM should use. Default: None"
    },
    "architect": {
      "type": "boolean",
      "description": "Use architect edit format for the main chat. Default: None"
    },
    "auto-accept-architect": {
      "type": "boolean",
      "description": "Enable/disable automatic acceptance of architect changes. Default: true",
      "default": true
    },
    "weak-model": {
      "type": "string",
      "description": "Specify the model to use for commit messages and chat history summarization. Default: None"
    },
    "editor-model": {
      "type": "string",
      "description": "Specify the model to use for editor tasks. Default: None"
    },
    "editor-edit-format": {
      "type": "string",
      "description": "Specify the edit format for the editor model. Default: None"
    },
    "show-model-warnings": {
      "type": "boolean",
      "description": "Only work with models that have meta-data available. Default: true",
      "default": true
    },
    "check-model-accepts-settings": {
      "type": "boolean",
      "description": "Check if model accepts settings like reasoning_effort/thinking_tokens. Default: true",
      "default": true
    },
    "max-chat-history-tokens": {
      "type": "string",
      "description": "Soft limit on tokens for chat history, after which summarization begins. Default: None"
    },
    "cache-prompts": {
      "type": "boolean",
      "description": "Enable caching of prompts. Default: false",
      "default": false
    },
    "cache-keepalive-pings": {
      "type": "string",
      "description": "Number of times to ping at 5min intervals to keep prompt cache warm. Default: 0",
      "default": "0"
    },
    "map-tokens": {
      "type": "string",
      "description": "Suggested number of tokens to use for repo map. Default: None"
    },
    "map-refresh": {
      "type": "string",
      "description": "Control how often the repo map is refreshed. Default: auto",
      "default": "auto"
    },
    "map-multiplier-no-files": {
      "type": "string",
      "description": "Multiplier for map tokens when no files are specified. Default: 2",
      "default": "2"
    },
    "input-history-file": {
      "type": "string",
      "description": "Specify the chat input history file. Default: .aider.input.history",
      "default": ".aider.input.history"
    },
    "chat-history-file": {
      "type": "string",
      "description": "Specify the chat history file. Default: .aider.chat.history.md",
      "default": ".aider.chat.history.md"
    },
    "restore-chat-history": {
      "type": "boolean",
      "description": "Restore the previous chat history messages. Default: false",
      "default": false
    },
    "llm-history-file": {
      "type": "string",
      "description": "Log the conversation with the LLM to this file. Default: None"
    },
    "dark-mode": {
      "type": "boolean",
      "description": "Use colors suitable for a dark terminal background. Default: false",
      "default": false
    },
    "light-mode": {
      "type": "boolean",
      "description": "Use colors suitable for a light terminal background. Default: false",
      "default": false
    },
    "pretty": {
      "type": "boolean",
      "description": "Enable/disable pretty, colorized output. Default: true",
      "default": true
    },
    "stream": {
      "type": "boolean",
      "description": "Enable/disable streaming responses. Default: true",
      "default": true
    },
    "user-input-color": {
      "type": "string",
      "description": "Set the color for user input. Default: #00cc00",
      "default": "#00cc00"
    },
    "tool-output-color": {
      "type": "string",
      "description": "Set the color for tool output. Default: None"
    },
    "tool-error-color": {
      "type": "string",
      "description": "Set the color for tool error messages. Default: #FF2222",
      "default": "#FF2222"
    },
    "tool-warning-color": {
      "type": "string",
      "description": "Set the color for tool warning messages. Default: #FFA500",
      "default": "#FFA500"
    },
    "assistant-output-color": {
      "type": "string",
      "description": "Set the color for assistant output. Default: #0088ff",
      "default": "#0088ff"
    },
    "completion-menu-color": {
      "type": "string",
      "description": "Set the color for the completion menu. Default: None"
    },
    "completion-menu-bg-color": {
      "type": "string",
      "description": "Set the background color for the completion menu. Default: None"
    },
    "completion-menu-current-color": {
      "type": "string",
      "description": "Set the color for the current item in the completion menu. Default: None"
    },
    "completion-menu-current-bg-color": {
      "type": "string",
      "description": "Set the background color for the current item in the completion menu. Default: None"
    },
    "code-theme": {
      "type": "string",
      "description": "Set the markdown code theme. Default: default",
      "default": "default"
    },
    "show-diffs": {
      "type": "boolean",
      "description": "Show diffs when committing changes. Default: false",
      "default": false
    },
    "git": {
      "type": "boolean",
      "description": "Enable/disable looking for a git repo. Default: true",
      "default": true
    },
    "gitignore": {
      "type": "boolean",
      "description": "Enable/disable adding .aider* to .gitignore. Default: true",
      "default": true
    },
    "aiderignore": {
      "type": "string",
      "description": "Specify the aider ignore file. Default: .aiderignore",
      "default": ".aiderignore"
    },
    "subtree-only": {
      "type": "boolean",
      "description": "Only consider files in the current subtree of the git repository. Default: false",
      "default": false
    },
    "auto-commits": {
      "type": "boolean",
      "description": "Enable/disable auto commit of LLM changes. Default: true",
      "default": true
    },
    "dirty-commits": {
      "type": "boolean",
      "description": "Enable/disable commits when repo is found dirty. Default: true",
      "default": true
    },
    "attribute-author": {
      "type": "boolean",
      "description": "Attribute aider code changes in the git author name. Default: None"
    },
    "attribute-committer": {
      "type": "boolean",
      "description": "Attribute aider commits in the git committer name. Default: None"
    },
    "attribute-commit-message-author": {
      "type": "boolean",
      "description": "Prefix commit messages with ‘aider: ‘ if aider authored the changes. Default: false",
      "default": false
    },
    "attribute-commit-message-committer": {
      "type": "boolean",
      "description": "Prefix all commit messages with ‘aider: ‘. Default: false",
      "default": false
    },
    "attribute-co-authored-by": {
      "type": "boolean",
      "description": "Attribute aider edits using the Co-authored-by trailer in the commit message. Default: false",
      "default": false
    },
    "git-commit-verify": {
      "type": "boolean",
      "description": "Enable/disable git pre-commit hooks with –no-verify. Default: false",
      "default": false
    },
    "commit": {
      "type": "boolean",
      "description": "Commit all pending changes with a suitable commit message, then exit. Default: false",
      "default": false
    },
    "commit-prompt": {
      "type": "string",
      "description": "Specify a custom prompt for generating commit messages. Default: None"
    },
    "dry-run": {
      "type": "boolean",
      "description": "Perform a dry run without modifying files. Default: false",
      "default": false
    },
    "skip-sanity-check-repo": {
      "type": "boolean",
      "description": "Skip the sanity check for the git repository. Default: false",
      "default": false
    },
    "watch-files": {
      "type": "boolean",
      "description": "Enable/disable watching files for ai coding comments. Default: false",
      "default": false
    },
    "lint": {
      "type": "boolean",
      "description": "Lint and fix provided files, or dirty files if none provided. Default: false",
      "default": false
    },
    "lint-cmd": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specify lint commands to run for different languages. Default: []"
    },
    "auto-lint": {
      "type": "boolean",
      "description": "Enable/disable automatic linting after changes. Default: true",
      "default": true
    },
    "test-cmd": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specify command to run tests. Default: []"
    },
    "auto-test": {
      "type": "boolean",
      "description": "Enable/disable automatic testing after changes. Default: false",
      "default": false
    },
    "test": {
      "type": "boolean",
      "description": "Run tests, fix problems found and then exit. Default: false",
      "default": false
    },
    "analytics": {
      "type": "boolean",
      "description": "Enable/disable analytics for current session. Default: None"
    },
    "analytics-log": {
      "type": "string",
      "description": "Specify a file to log analytics events. Default: None"
    },
    "analytics-disable": {
      "type": "boolean",
      "description": "Permanently disable analytics. Default: false",
      "default": false
    },
    "just-check-update": {
      "type": "boolean",
      "description": "Check for updates and return status in the exit code. Default: false",
      "default": false
    },
    "check-update": {
      "type": "boolean",
      "description": "Check for new aider versions on launch. Default: true",
      "default": true
    },
    "show-release-notes": {
      "type": "boolean",
      "description": "Show release notes on first run of new version. Default: None"
    },
    "install-main-branch": {
      "type": "boolean",
      "description": "Install the latest version from the main branch. Default: false",
      "default": false
    },
    "upgrade": {
      "type": "boolean",
      "description": "Upgrade aider to the latest version from PyPI. Default: false",
      "default": false
    },
    "version": {
      "type": "boolean",
      "description": "Show the version number and exit. Default: None"
    },
    "message": {
      "type": "string",
      "description": "Specify a single message to send the LLM, process reply then exit. Default: None"
    },
    "message-file": {
      "type": "string",
      "description": "Specify a file containing the message to send the LLM, process reply, then exit. Default: None"
    },
    "gui": {
      "type": "boolean",
      "description": "Run aider in your browser. Default: false",
      "default": false
    },
    "copy-paste": {
      "type": "boolean",
      "description": "Enable automatic copy/paste of chat between aider and web UI. Default: false",
      "default": false
    },
    "apply": {
      "type": "string",
      "description": "Apply the changes from the given file instead of running the chat. Default: None"
    },
    "apply-clipboard-edits": {
      "type": "boolean",
      "description": "Apply clipboard contents as edits using the main model’s editor format. Default: false",
      "default": false
    },
    "exit": {
      "type": "boolean",
      "description": "Do all startup activities then exit before accepting user input. Default: false",
      "default": false
    },
    "show-repo-map": {
      "type": "boolean",
      "description": "Print the repo map and exit. Default: false",
      "default": false
    },
    "show-prompts": {
      "type": "boolean",
      "description": "Print the system prompts and exit. Default: false",
      "default": false
    },
    "voice-format": {
      "type": "string",
      "description": "Audio format for voice recording. Default: wav",
      "default": "wav"
    },
    "voice-language": {
      "type": "string",
      "description": "Specify the language for voice using ISO 639-1 code. Default: en",
      "default": "en"
    },
    "voice-input-device": {
      "type": "string",
      "description": "Specify the input device name for voice recording. Default: None"
    },
    "disable-playwright": {
      "type": "boolean",
      "description": "Never prompt for or attempt to install Playwright for web scraping. Default: false",
      "default": false
    },
    "file": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specify a file to edit. Default: []"
    },
    "read": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specify a read-only file. Default: []"
    },
    "vim": {
      "type": "boolean",
      "description": "Use VI editing mode in the terminal. Default: false",
      "default": false
    },
    "chat-language": {
      "type": "string",
      "description": "Specify the language to use in the chat. Default: None"
    },
    "yes-always": {
      "type": "boolean",
      "description": "Always say yes to every confirmation. Default: None"
    },
    "verbose": {
      "type": "boolean",
      "description": "Enable verbose output. Default: false",
      "default": false
    },
    "load": {
      "type": "string",
      "description": "Load and execute /commands from a file on launch. Default: None"
    },
    "encoding": {
      "type": "string",
      "description": "Specify the encoding for input and output. Default: utf-8",
      "default": "utf-8"
    },
    "line-endings": {
      "type": "string",
      "description": "Line endings to use when writing files. Default: platform",
      "default": "platform"
    },
    "config": {
      "type": "string",
      "description": "Specify the config file. Default: None"
    },
    "env-file": {
      "type": "string",
      "description": "Specify the .env file to load. Default: .env",
      "default": ".env"
    },
    "suggest-shell-commands": {
      "type": "boolean",
      "description": "Enable/disable suggesting shell commands. Default: true",
      "default": true
    },
    "fancy-input": {
      "type": "boolean",
      "description": "Enable/disable fancy input with history and completion. Default: true",
      "default": true
    },
    "multiline": {
      "type": "boolean",
      "description": "Enable/disable multi-line input mode with Meta-Enter to submit. Default: false",
      "default": false
    },
    "notifications": {
      "type": "boolean",
      "description": "Enable/disable terminal bell notifications when LLM responses are ready. Default: false",
      "default": false
    },
    "notifications-command": {
      "type": "string",
      "description": "Specify a command to run for notifications instead of the terminal bell. Default: None"
    },
    "detect-urls": {
      "type": "boolean",
      "description": "Enable/disable detection and offering to add URLs to chat. Default: true",
      "default": true
    },
    "editor": {
      "type": "string",
      "description": "Specify which editor to use for the /editor command. Default: None"
    },
    "opus": {
      "type": "boolean",
      "description": "Use claude-3-opus-20240229 model for the main chat. Default: false",
      "default": false
    },
    "sonnet": {
      "type": "boolean",
      "description": "Use anthropic/claude-3-7-sonnet-20250219 model for the main chat. Default: false",
      "default": false
    },
    "haiku": {
      "type": "boolean",
      "description": "Use claude-3-5-haiku-20241022 model for the main chat. Default: false",
      "default": false
    },
    "mini": {
      "type": "boolean",
      "description": "Use gpt-4o-mini model for the main chat. Default: false",
      "default": false
    },
    "deepseek": {
      "type": "boolean",
      "description": "Use deepseek/deepseek-chat model for the main chat. Default: false",
      "default": false
    },
    "o1-mini": {
      "type": "boolean",
      "description": "Use o1-mini model for the main chat. Default: false",
      "default": false
    },
    "o1-preview": {
      "type": "boolean",
      "description": "Use o1-preview model for the main chat. Default: false",
      "default": false
    },
    "4": {
      "type": "boolean",
      "description": "Use gpt-4-0613 model for the main chat. Default: false",
      "default": false
    },
    "4o": {
      "type": "boolean",
      "description": "Use gpt-4o model for the main chat. Default: false",
      "default": false
    },
    "4-turbo": {
      "type": "boolean",
      "description": "Use gpt-4-1106-preview model for the main chat. Default: false",
      "default": false
    },
    "35turbo": {
      "type": "boolean",
      "description": "Use gpt-3.5-turbo model for the main chat. Default: false",
      "default": false
    }
  }
}
