{ // Model used to generate commit messages. Omit to inherit the current pi model. "model": "openai-codex/gpt-5.4-mini", // Message generation: "ai" uses a model; "fallback" skips AI and uses changed-file heuristics. "messageMode": "ai", // Maximum time to wait for AI message generation before falling back. Set 0 to disable. "messageTimeoutMs": 45000, // Maximum generated tokens for commit-message generation, including reasoning/thinking tokens. "messageMaxTokens": 1024, // Maximum final commit-message characters. Set 0 to disable AI shortening/post-processing. "maxMessageChars": 600, // Change selection mode: "staged" commits only staged changes; "all" stages all changes first. "defaultMode": "all", // Discover and commit dirty nested submodules before committing the parent repository. "recursive": true, // Conversation context for message generation: "none", "recent", or "session". "contextMode": "recent", // Number of latest user prompts included when contextMode is "recent". "recentPromptCount": 5, // Maximum conversation context size passed to the message generator. "maxContextBytes": 8000, // Maximum staged diff size passed to the message generator for each repository. Set 0 to omit full diffs. "maxDiffBytes": 30000, // Ask before creating commits in interactive UI mode. Set false to behave like --yes. "confirmBeforeCommit": true, // Include a timing breakdown in autocommit output. "profile": false }