VS Code style Source Control view for Paseo (git)
Requires Paseo: ^0.8.0 — from this plugin's own paseo-plugin.json.
From the plugin's README
Manifest JSON
{
"id": "vscode-git",
"requirements": {
"paseo": "^0.8.0"
}
}paseo plugin add RedwindA/paseo-vscode-gitREADME
A standalone Paseo plugin inspired by VS Code's Source Control view. Includes staging, commits, inline and side-by-side diffs, hunk actions, a commit graph, branches, remotes, stashes, tags, and a Git output panel.
Requires a Paseo 0.8 host and compatible client, plus Git on the daemon machine. No modified Paseo checkout or custom daemon build is required. This project is not an official Microsoft or VS Code extension.
Copy or clone this repository onto the machine running the Paseo daemon. Enable plugins in Settings → Plugins if needed, then run on that machine:
paseo plugin install /absolute/path/to/paseo-vscode-git
paseo plugin ls
The plugin ID is vscode-git. Paseo compiles the TypeScript source and supplies runtime
modules; installing npm development dependencies is unnecessary for normal use.
Git commands run with the daemon user's repository access and Git credentials.
Plugins are trusted code running with that user's permissions.
Open a workspace, then use the Command Center (Ctrl+K / ⌘K):
Install on each daemon that should provide the plugin. Connected clients receive its UI from that daemon; there is no separate mobile installation.
After changing a directory installation:
paseo plugin reload vscode-git
Push this repository to your Git hosting service. Replace OWNER/REPOSITORY below with
its actual GitHub path (or use a Git URL for another hosting service):
paseo plugin add RedwindA/paseo-vscode-git --ref main
paseo plugin update vscode-git
A branch tracks updates; a tag or commit pins a version. No npm publish or plugin build step is required. Repository creation and pushing are separate from local installation.
The sparkle button uses a command configured in the daemon process environment:
export VSCODE_GIT_COMMIT_COMMAND='["/absolute/path/to/generate-message"]'
Set this in your daemon service's environment before starting it. If the daemon already runs, changing your shell environment or reloading the plugin does not change the daemon's environment; apply it at your next planned service restart.
The JSON array contains the executable followed by arguments. No shell is used. Your command receives a prompt and diff on stdin and must print only the commit message to stdout. Configure its AI provider credentials on the server. Use a non-interactive command that does not modify files. Do not put secrets in command arguments.
Staged changes take precedence; otherwise tracked unstaged changes are used. Stage new files first. The command has a 25-second timeout; diffs larger than 128 KiB are rejected. The generated message fills the input for review and does not create a commit. Missing configuration or command failures appear as errors; normal Git actions remain available. This does not use Paseo's metadata-generation settings or require any added host API.
Use Node.js 22.13 or later and npm. Dependencies come from npm, including the published Paseo 0.8.0-beta.1 SDK; none refer to a local Paseo checkout.
npm ci
npm run typecheck
npm run lint
npm run format:check
npm test -- server/git-parse.test.ts --bail=1
npm test -- shared/graph.shared.test.ts --bail=1
Client code lives in client/, daemon code in server/, and RPC contracts in shared/.
Paseo loads index.client.tsx and index.server.ts. Edit these source files directly;
there is no generated plugin bundle to commit.
Scanned 10 Sep 2026, 16:24 UTC at commit 63523525951e91dd3bb98a575f2da20ce8383f87.
Scanned 10 Sep 2026, 16:26 UTC from RedwindA/paseo-vscode-git.