Przejdź do treści
Biblioteka skilli
Programowanie · Integracja z narzędziem

git-profile

/git-profile

Zarządza tożsamością Git i profilami podpisywania GPG: wykrywa profile z GPG i konfiguracji git, przełącza lokalną tożsamość i sprawdza stan podpisywania.

Repozytorium
sd0x-harness ↗
Licencja
MIT
Ostatnia zmiana repozytorium
08.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
2
Skrypty
1
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 08.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co sprawdzić przed instalacją
  • 1 skrypt w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.

Skrypty: scripts/git-profile.sh

Co robi i kiedy

Zarządza tożsamością Git i profilami podpisywania GPG: wykrywa profile z GPG i konfiguracji git, przełącza lokalną tożsamość i sprawdza stan podpisywania.

Wyzwalacze z opisu

switch identitygit profilecheck signinggpg key statuswhich identity

Argumenty

/git-profile [doctor|list|use <profile>|remove <profile>|verify]
Oryginalny opis (EN)

Git identity and GPG signing profile manager. Discovers profiles from GPG + git config, switches local identity, checks signing health. Use when: user says 'switch identity', 'git profile', 'check signing', 'gpg key status', 'which identity', or /git-profile

Jak działa

  1. Workflow
  2. Subcommands
  3. Auto-Discovery
  4. Safety Rules
  5. Diagnostic Integration
Sekcje z nagłówków SKILL.md, w oryginale · 185 linii, 786 słów
Podgląd SKILL.md
---
name: git-profile
description: "Git identity and GPG signing profile manager. Discovers profiles from GPG + git config, switches local identity, checks signing health. Use when: user says 'switch identity', 'git profile', 'check signing', 'gpg key status', 'which identity', or /git-profile"
allowed-tools: Bash(bash:*), Bash(git:*), Read, Grep, Glob, AskUserQuestion
argument-hint: "[doctor|list|use <profile>|remove <profile>|verify]"
---

# Git Profile Manager

Manage git identity and GPG signing profiles per-repository.

## Workflow

```mermaid
sequenceDiagram
    participant U as User
    participant SK as SKILL.md
    participant SH as git-profile.sh
    participant AQ as AskUserQuestion

    U->>SK: /git-profile [subcommand]
    SK->>SK: Parse subcommand (default: doctor)

    alt doctor (default)
        SK->>SH: doctor
        SH-->>SK: Diagnostic JSON
        SK->>U: Health report table
    end

    alt list
        SK->>SH: list
        SH-->>SK: Profiles JSON
        SK->>U: Profile table with current match
    end

    alt use <profile>
        SK->>SH: resolve <profile>
        SH-->>SK: Plan JSON + plan-hash
        SK->>AQ: "Apply [hash] to local config?" / "Abort"
        AQ-->>SK: Approved
        SK->>SH: apply --plan-hash <hash>
        SH-->>SK: Result JSON
        SK->>U: Applied / Error
    end

    alt remove <profile>
        SK->>SH: remove-check <profile>
        SH-->>SK: Safety JSON (active repos list)
        alt profile is active
            SK->>AQ: "Profile active in N repos. Remove anyway?" / "Cancel"
        end
        SK->>SH: remove-exec <profile> [--force]
        SH-->>SK: Result JSON
        SK->>U: Removed / Error
    end

    alt verify
        SK->>SH: verify
        SH-->>SK: Verification JSON
        SK->>U: Verification report
    end
```

## Subcommands

### `doctor` (default)

Run diagnostics on current repository's git identity and GPG signing config.

**Steps:**
1. Run: `bash scripts/run-skill.sh git-profile git-profile.sh doctor`
2. Parse the JSON output
3. Render a health report table:

```
## Git Profile Health

| Item | Value | Source | Status |
|------|-------|--------|--------|
| Name | ... | ... | ... |
| Email | ... | ... | ... |
| Signing | ... | ... | ... |
| GPG Key | ... | ... | ... |
| Env Override | ... | ... | ... |
| Worktree | ... | ... | ... |
| Profile Match | ... | ... | ... |

Status: [overall status]
```

1. If `status` is `halt`: show the issue and stop
2. If `status` is `warn`: show warnings, continue
3. If registry is missing AND this is the first run: trigger auto-discovery (see below)

### `list`

List all registered profiles.

**Steps:**
1. Run: `bash scripts/run-skill.sh git-profile git-profile.sh list`
2. Parse the JSON output
3. Render a profile table with a marker on the currently matched profile

### `use <profile>`

Switch the current repository to use a named profile.

**Steps:**
1. Run: `bash scripts/run-skill.sh git-profile git-profile.sh resolve <profile>`
2. Parse the plan JSON — contains profile data, planned commands, and plan-hash
3. Show the user what will be written:

```
## Apply Profile: <profile-id>

| Config Key | Current | New |
|------------|---------|-----|
| user.name | ... | ... |
| user.email | ... | ... |
| user.signingkey | ... | ... / (unset) |
| commit.gpgsign | ... | true / (unset) |

Note: Keyless profiles unset signing-related keys instead of setting them.
```

1. Use `AskUserQuestion` with options:
   - `"Apply [<plan-hash>] to local config (Recommended)"`
   - `"Abort"`
2. On approval: `bash scripts/run-skill.sh git-profile git-profile.sh apply --plan-hash <hash>`
3. Parse result; if error (hash mismatch, write failure) report and stop
4. On success: report applied config

### `remove <profile>`

Remove a profile from the registry.

**Steps:**
1. Run: `bash scripts/run-skill.sh git-profile git-profile.sh remove-check <profile>`
2. If profile is active in any repo, use `AskUserQuestion`:
   - `"Profile is active in N repos. Remove with --force?"`
   - `"Cancel"`
3. On approval: `bash scripts/run-skill.sh git-profile git-profile.sh remove-exec <profile> [--force]`
4. Report result

### `verify`

Deep verification of current identity setup.

**Steps:**
1. Run: `bash scripts/run-skill.sh git-profile git-profile.sh verify`
2. Parse the verification JSON
3. Render verification report with checks:
   - Key expiry (90-day warning threshold)
   - Email match between git config and GPG key UID
   - Registry consistency

## Auto-Discovery

Triggered when: registry file is missing on first `doctor` run.

**Steps:**
1. Run: `bash scripts/run-skill.sh git-profile git-profile.sh discover`
2. Parse candidates JSON
3. Present candidates to user via `AskUserQuestion`:
   - `"Save N discovered profiles to registry (Recommended)"`
   - `"Skip — I'll configure manually"`
4. If approved, the discover command already persisted them; confirm to user
5. If skipped, create an empty registry to avoid re-prompting

## Safety Rules

| Rule | Description |
|------|-------------|
| v1 NEVER writes `~/.gitconfig` | Only `--local` scope writes |
| v1 NEVER enables `extensions.worktreeConfig` | Linked worktree: detect + warn only |
| NEVER auto-fix without confirmation | All writes gated by AskUserQuestion |
| NEVER store key material | Registry stores fingerprints only |
| Plan-hash verification | Re-compute hash before apply; reject if stale |
| Atomic registry writes | temp file + `chmod 0600` + `mv` |

## Diagnostic Integration

The `doctor --json` output follows the Shared Diagnostic Contract (see tech spec section 3.2).
Other skills (e.g., `/smart-commit` Step 1c) can call:

```
bash scripts/run-skill.sh git-profile git-profile.sh doctor --json
```

**Degradation policy**: If the script is not found or fails, the calling skill falls back to its own inline diagnostics. Infrastructure failure = warn-only; identity/signing missing = halt (unchanged).
Pliki w paczce (2)
  • SKILL.md 6 KB
  • scripts/git-profile.sh 32 KB

Wersje

W bazie nie ma innych skilli o nazwie git-profile.

Migawka bazy z 28.10.2026 · wersja paczki 1dd36dac149f (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 95glab-gpg-key
    Dodaje, wypisuje i usuwa klucze GPG do podpisywania commitów oraz sprawdza podpisane commity w GitLab.
  • 100lfx-git-setup
    Prowadzi autorów LFX przez konfigurację Gita do podpisu DCO i commitów podpisanych kluczem GPG: ustawienia ~/.gitconfig, dodanie klucza do GitHuba i naprawę commitów bez statusu Verified.
  • 100commit
    Tworzy commity conventional z podpisem GPG, wykrywa pliki w staging i podpowiada podział zmian obejmujących kilka zagadnień.
  • 100commit-push-pr
    Zatwierdza zmiany, wypycha je i tworzy pull request przez gh CLI, z obsługą podpisu GPG i zakładaniem gałęzi, gdy praca idzie na main lub master.
  • 84profile
    Zarządza zapisanymi profilami boxel-cli: listuje, dodaje, przełącza i usuwa profile oraz migruje z pliku .env.
  • 95sync-profiles
    Wyświetla, tworzy, przełącza, usuwa, porównuje i sprawdza profile synchronizacji konfiguracji.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.