Skip to content

Git assist

Two commands work with the built-in git extension.

Writes a message for the staged diff — or, with nothing staged, the working-tree diff — into the Source Control commit box. The prompt asks for an imperative summary under 72 characters and, only when the change needs it, a blank line and a short body; no quotes, no code fences. The diff is cut at 12,000 characters, so stage a large change in parts if you want each described precisely.

Run it from the Command Palette, or from the Source Control view’s commit-box action where the editor shows one. From the palette it describes the first repository of the workspace.

It uses your default model — sirius.ai.defaultModel, else the first model of sirius.ai.defaultProvider, else the first model Sirius lists — the same one the chat panel’s Auto resolves to. Project rules are not applied to it. If a small model wraps its answer in a code fence, the fence is removed before the message reaches the commit box.

What it says when it cannot: Sirius: no git repository found. · Sirius: nothing staged or changed to describe. · Sirius: no model available — add a provider key with “Sirius: Set API Key”, or start Ollama.

Lists the files the repository reports as merge conflicts and opens the chat with: Resolve the merge conflicts in: … Read each file, understand both sides of every conflict, and apply a resolution that keeps the intent of both changes. Explain each resolution briefly as you go. The agent then reads and edits the files, and every resolution comes back as a diff you keep or undo like any other agent edit. With no conflicts: Sirius: no merge conflicts to resolve.