2 "$schema": "https://json-schema.org/draft/2020-12/schema",
3 "$id": "https://github.com/charmbracelet/crush/internal/config/config",
4 "$ref": "#/$defs/Config",
15 "description": "Style of attribution trailer to add to commits",
16 "default": "assisted-by"
20 "description": "Deprecated: use trailer_style instead",
25 "description": "Add Generated with Crush line to commit messages and issues and PRs",
29 "additionalProperties": false,
36 "description": "Maximum depth for the ls tool",
44 "description": "Maximum number of items to return for the ls tool",
51 "additionalProperties": false,
60 "additionalProperties": {
61 "$ref": "#/$defs/SelectedModel"
64 "description": "Model configurations for different model types"
67 "additionalProperties": {
68 "$ref": "#/$defs/ProviderConfig"
71 "description": "AI provider configurations"
74 "$ref": "#/$defs/MCPs",
75 "description": "Model Context Protocol server configurations"
78 "$ref": "#/$defs/LSPs",
79 "description": "Language Server Protocol configurations"
82 "$ref": "#/$defs/Options",
83 "description": "General application options"
86 "$ref": "#/$defs/Permissions",
87 "description": "Permission settings for tool usage"
90 "$ref": "#/$defs/Tools",
91 "description": "Tool configurations"
94 "additionalProperties": {
96 "$ref": "#/$defs/HookConfig"
101 "description": "User-defined shell commands that fire on hook events (e.g. PreToolUse)"
104 "additionalProperties": false,
111 "description": "Regex pattern tested against the tool name. Empty means match all tools."
115 "description": "Shell command to execute when the hook fires"
119 "description": "Timeout in seconds for the hook command",
123 "additionalProperties": false,
133 "description": "Whether this LSP server is disabled",
138 "description": "Command to execute for the LSP server",
148 "description": "Arguments to pass to the LSP server command"
151 "additionalProperties": {
155 "description": "Environment variables to set to the LSP server command"
170 "description": "File types this LSP server handles"
182 "description": "Files or directories that indicate the project root"
186 "description": "Initialization options passed to the LSP server during initialize request"
190 "description": "LSP server-specific settings passed during initialization"
194 "description": "Timeout in seconds for LSP server initialization",
202 "additionalProperties": false,
206 "additionalProperties": {
207 "$ref": "#/$defs/LSPConfig"
215 "description": "Command to execute for stdio MCP servers",
221 "additionalProperties": {
225 "description": "Environment variables to set for the MCP server"
232 "description": "Arguments to pass to the MCP server command"
241 "description": "Type of MCP connection",
247 "description": "URL for HTTP or SSE MCP servers",
249 "http://localhost:3000/mcp"
254 "description": "Whether this MCP server is disabled",
265 "description": "List of tools from this MCP server to disable"
275 "description": "Allow list of tools from this MCP server"
279 "description": "Timeout in seconds for MCP server connections",
288 "additionalProperties": {
292 "description": "HTTP headers for HTTP/SSE MCP servers"
295 "additionalProperties": false,
302 "additionalProperties": {
303 "$ref": "#/$defs/MCPConfig"
321 "cost_per_1m_in_cached": {
324 "cost_per_1m_out_cached": {
330 "default_max_tokens": {
336 "reasoning_levels": {
342 "default_reasoning_effort": {
345 "supports_attachments": {
349 "$ref": "#/$defs/ModelOptions"
352 "additionalProperties": false,
359 "cost_per_1m_in_cached",
360 "cost_per_1m_out_cached",
362 "default_max_tokens",
364 "supports_attachments"
378 "frequency_penalty": {
381 "presence_penalty": {
384 "provider_options": {
388 "additionalProperties": false,
402 "description": "Paths to files containing context information for the AI"
408 "~/.config/crush/skills",
413 "description": "Paths to directories containing Agent Skills (folders with SKILL.md files)"
416 "$ref": "#/$defs/TUIOptions",
417 "description": "Terminal user interface options"
421 "description": "Enable debug logging",
426 "description": "Enable debug logging for LSP servers",
429 "disable_auto_summarize": {
431 "description": "Disable automatic conversation summarization",
436 "description": "Directory for storing application data. Relative paths are resolved against the working directory; absolute paths are used as-is.",
451 "description": "List of built-in tools to disable and hide from the agent"
453 "disable_provider_auto_update": {
455 "description": "Disable providers auto-update",
458 "disable_default_providers": {
460 "description": "Ignore all default/embedded providers. When enabled, providers must be fully specified in the config file with base_url, models, and api_key - no merging with defaults occurs",
464 "$ref": "#/$defs/Attribution",
465 "description": "Attribution settings for generated content"
469 "description": "Disable sending metrics",
474 "description": "Name of the context file to create/update during project initialization",
475 "default": "AGENTS.md",
485 "description": "Automatically setup LSPs based on root markers",
490 "description": "Show indeterminate progress updates during long operations",
493 "disable_notifications": {
495 "description": "Disable desktop notifications",
506 "description": "List of skill names to disable and hide from the agent"
509 "additionalProperties": false,
523 "description": "List of tools that don't require permission prompts"
526 "additionalProperties": false,
533 "description": "Unique identifier for the provider",
540 "description": "Human-readable name for the provider",
548 "description": "Base URL for the provider's API",
550 "https://api.openai.com/v1"
563 "description": "Provider type that determines the API format",
568 "description": "API key for authentication with the provider",
574 "$ref": "#/$defs/Token",
575 "description": "OAuth2 token for authentication with the provider"
579 "description": "Whether this provider is disabled",
582 "system_prompt_prefix": {
584 "description": "Custom prefix to add to system prompts for this provider"
587 "additionalProperties": {
591 "description": "Additional HTTP headers to send with requests"
595 "description": "Additional fields to include in request bodies, only works with openai-compatible providers"
597 "provider_options": {
599 "description": "Additional provider-specific options for this provider"
603 "description": "Flat-rate mode for this provider"
607 "$ref": "#/$defs/Model"
610 "description": "List of models available from this provider"
613 "additionalProperties": false,
620 "description": "The model ID as used by the provider API",
627 "description": "The model provider ID that matches a key in the providers config",
632 "reasoning_effort": {
639 "description": "Reasoning effort level for OpenAI models that support it"
643 "description": "Enable thinking mode for Anthropic models that support reasoning"
648 "description": "Maximum number of tokens for model responses",
657 "description": "Sampling temperature",
666 "description": "Top-p (nucleus) sampling parameter",
673 "description": "Top-k sampling parameter"
675 "frequency_penalty": {
677 "description": "Frequency penalty to reduce repetition"
679 "presence_penalty": {
681 "description": "Presence penalty to increase topic diversity"
683 "provider_options": {
685 "description": "Additional provider-specific options for the model"
688 "additionalProperties": false,
699 "description": "Enable compact mode for the TUI interface",
708 "description": "Diff mode for the TUI interface"
711 "$ref": "#/$defs/Completions",
712 "description": "Completions UI options"
716 "description": "Enable transparent background for the TUI interface",
720 "additionalProperties": false,
738 "additionalProperties": false,
751 "description": "Timeout for the grep tool call"
754 "additionalProperties": false,
761 "description": "Maximum depth for the ls tool",
769 "description": "Maximum number of items to return for the ls tool",
776 "additionalProperties": false,
782 "$ref": "#/$defs/ToolLs"
785 "$ref": "#/$defs/ToolGrep"
788 "additionalProperties": false,
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list