Repository navigation
v0.5.0: Multi-Account Core & Guard
What's Changed in v0.5.0: Multi-Account Core & Guard
1. Per-Repository Profile Binding & Dynamic Status Bar
- Deterministic Profile Resolution: Follows
explicit repository binding->matcher->global fallback. - Repository Isolation: Switching profile applies cleanly to the active repository without mutating other repositories in multi-root workspaces.
- Dynamic Status Bar & Mismatch Detection: Status bar tracks the active editor's repository, compares its local
user.emailwith the bound profile, and displays a warning with quick-fix guidance if mismatched. - QuickPick & Command Integration: Added commands
gitaxis.bindRepo,gitaxis.unbindRepo, andgitaxis.verifyAccount.
2. Wrong-Account SSH & API Fixes
- SSH Key Isolation: Enforces
-o IdentitiesOnly=yesincore.sshCommand(ssh -i "<key>" -o IdentitiesOnly=yes) with quoted path safety to preventssh-agentfrom silently offering conflicting keys. - GitHub CLI User Scoping: Leverages
gh auth token --hostname <host> --user <username>to resolve the exact token for the targeted GitHub account. - Accurate Error Reporting: Preserves HTTP 401/403/404 errors instead of swallowing them with silent fallbacks.
3. Commit & Push Guard
- Pre-Commit Guard: Checks repository
user.emailanduser.nameagainst the bound profile; offers "Fix and continue", "Commit anyway", or "Cancel" when mismatched. - Pre-Push Guard: Checks remote repository owner against profile allowed organizations/usernames and wildcard patterns.
- Configurable Safety: Configured via
gitaxis.guard.mode(block|warn|off), failing closed safely when safety checks cannot execute.
4. Inline "Verify Account" Action
- Inline Verify button per profile in the sidebar webview and command palette.
- Supports GitHub PAT (verifies user, token expiration, scopes), GitHub CLI status, and SSH handshakes (
ssh -T git@github.com). - Displays live verification badges and authenticated account names.
Full Changelog: v0.4.0...v0.5.0
Full Changelog: v0.4.0...v0.5.0
Full Changelog: v0.4.0...v0.5.0