Przejdź do treści
Biblioteka skilli
Programowanie · Budowanie i kod

fix-bug

/fix-bug

Bada zgłoszenie GitHub podane jako URL lub numer i implementuje poprawkę, w tym diagnozuje błędy i awarie w DBHub.

Repozytorium
dbhub ↗
Licencja
MIT
Ostatnia zmiana repozytorium
26.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
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
2
Przestarzałość

Brak sygnałów. Repozytorium zmienione 26.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 robi i kiedy

Bada zgłoszenie GitHub podane jako URL lub numer i implementuje poprawkę, w tym diagnozuje błędy i awarie w DBHub.

Wyzwalacze z opisu

fix issuefix bugfix #123
Oryginalny opis (EN)

Use when given a GitHub issue URL or number to investigate and implement a fix. Triggers on "fix issue", "fix bug", "fix #123", GitHub issue URLs, or any request to resolve a reported problem from a GitHub issue. Also triggers when asked to investigate errors, diagnose failures, or debug unexpected behavior in DBHub.

Jak działa

  1. Workflow
  2. Step 1: Fetch Issue
  3. Step 2: Analyze Issue
  4. Step 3: Locate Relevant Code
  5. Step 4: Reproduce
  6. Step 5: Plan the Fix
  7. Step 6: Implement
  8. Step 7: Verify
  9. Step 8: Create PR
  10. Common Mistakes
Sekcje z nagłówków SKILL.md, w oryginale · 145 linii, 772 słów
Podgląd SKILL.md
---
name: fix-bug
description: Use when given a GitHub issue URL or number to investigate and implement a fix. Triggers on "fix issue", "fix bug", "fix #123", GitHub issue URLs, or any request to resolve a reported problem from a GitHub issue. Also triggers when asked to investigate errors, diagnose failures, or debug unexpected behavior in DBHub.
---

# Fix Bug from GitHub Issue

Systematic workflow for turning a GitHub issue into a working fix in the DBHub codebase.

## Workflow

1. **Fetch** → 2. **Analyze** → 3. **Locate** → 4. **Reproduce** → 5. **Plan** → 6. **Implement** → 7. **Verify** → 8. **PR**

## Step 1: Fetch Issue

```bash
# From URL: https://github.com/owner/repo/issues/123
gh issue view 123 --json title,body,labels,comments,state

# From another repo
gh issue view 123 --repo owner/repo --json title,body,labels,comments,state
```

| Input | How to fetch |
|-------|-------------|
| `https://github.com/owner/repo/issues/42` | `gh issue view 42 --repo owner/repo` |
| `#42` or `42` | `gh issue view 42` (current repo) |
| `owner/repo#42` | `gh issue view 42 --repo owner/repo` |

## Step 2: Analyze Issue

Extract from the issue:
- **What's broken**: Expected vs actual behavior
- **Reproduction steps**: How to trigger the bug
- **Environment**: Database type, connection method (DSN, SSH tunnel, TOML config), transport (stdio/HTTP)
- **Labels/comments**: May reveal affected area or prior investigation
- **Linked PRs/issues**: Check for related context

## Step 3: Locate Relevant Code

Use the issue details to identify which part of the codebase is affected. DBHub has a clear modular structure — most bugs fall into one of these areas:

| Bug Category | Where to Look | Key Files |
|-------------|--------------|-----------|
| Connection failures | Connector implementations | `src/connectors/{db-type}/index.ts`, `src/connectors/manager.ts` |
| SQL execution errors | Tool handlers | `src/tools/execute-sql.ts`, `src/utils/allowed-keywords.ts` |
| Schema/table listing | Search tool | `src/tools/search-objects.ts` |
| DSN parsing issues | Parser logic | `src/connectors/{db-type}/index.ts` (DSNParser), `src/utils/dsn-obfuscate.ts`, `src/utils/safe-url.ts` |
| SSH tunnel problems | Tunnel utilities | `src/utils/ssh-tunnel.ts`, `src/utils/ssh-config-parser.ts` |
| TOML config issues | Config loading | `src/config/toml-loader.ts`, `src/types/config.ts` |
| Multi-database routing | Manager & tools | `src/connectors/manager.ts`, `src/utils/tool-handler-helpers.ts` |
| Custom tool issues | Custom handler | `src/tools/custom-tool-handler.ts`, `src/tools/registry.ts` |
| HTTP transport | Server setup | `src/server.ts` |
| Read-only violations | SQL validation | `src/utils/allowed-keywords.ts`, `src/utils/sql-parser.ts` |
| Row limiting | SQL rewriting | `src/utils/sql-row-limiter.ts` |
| API endpoint issues | API handlers | `src/api/sources.ts`, `src/api/requests.ts` |
| AWS IAM auth | Token signing | `src/utils/aws-rds-signer.ts` |

Search for error messages, function names, or file paths mentioned in the issue. Trace the code path from entry point to the failure.

## Step 4: Reproduce

**If integration tests exist for the area:**
Write a failing test that captures the bug. DBHub's test infrastructure makes this straightforward:
- Database connector bugs → extend existing integration test in `src/connectors/__tests__/`
- Utility bugs → add cases to existing unit tests in `src/utils/__tests__/`
- Tool handler bugs → add to `src/tools/__tests__/`
- Config bugs → add to `src/config/__tests__/`

Use the test fixtures in `src/__fixtures__/` for multi-database or readonly/max_rows scenarios.

**If no test infrastructure applies:**
Trace the code path and confirm the logic flaw by reading.

## Step 5: Plan the Fix

For non-trivial fixes (multi-file, architectural impact): use `EnterPlanMode`.

For simple fixes (single function, clear root cause): proceed directly.

## Step 6: Implement

- Fix the root cause, not just the symptom
- Keep changes minimal and focused
- Follow existing code conventions (see CLAUDE.md for style guide)
- Use parameterized queries for any database operations
- Validate inputs with zod schemas where appropriate

## Step 7: Verify

Run the relevant tests to confirm the fix:
```bash
pnpm test:unit                    # Quick check — no Docker needed
pnpm test src/path/to/test.ts     # Run the specific test file
pnpm test:integration             # Full integration suite if needed
```

Check that:
- The failing test (if written) now passes
- No existing tests regressed
- The diff fully addresses the issue

## Step 8: Create PR

1. **Create a branch**:
   ```bash
   git checkout -b fix/issue-123
   ```

2. **Commit changes** referencing the issue:
   ```bash
   git add <changed-files>
   git commit -m "$(cat <<'EOF'
   Fix: <short description>

   Closes #123
   EOF
   )"
   ```

3. **Push and create the PR**:
   ```bash
   git push -u origin fix/issue-123
   gh pr create --title "Fix: <short description>" --body "$(cat <<'EOF'
   ## Summary
   <What was broken and how this fixes it>

   ## Changes
   <Bullet list of changes>

   Closes #123

   ## Test plan
   - [ ] Existing tests pass
   - [ ] New test covers the bug scenario (if applicable)
   EOF
   )"
   ```

4. **Return the PR URL** to the user.

## Common Mistakes

- **Fixing symptoms instead of root cause**: Trace the full code path before patching
- **Skipping reproduction**: A fix without a repro is a guess
- **Scope creep**: Fix the reported issue, don't refactor surrounding code
- **Missing edge cases**: Check if the fix handles related scenarios mentioned in comments
- **Not testing with the right database**: If the bug is database-specific, test with that connector

Wersje

RepozytoriumWynikLicencja
Ta strona · bytebase/dbhub100MIT
mthines/agent-skills100MIT
mgiovani/cc-arsenal100MIT
tddworks/claudebar100Apache-2.0
remix-run/react-router100MIT
nowsprinting/unity-coding-skills100Unlicense
tmj-90/gaffer100Apache-2.0
acartag7/edictum100MIT
JamieMason/syncpack100MIT

Migawka bazy z 28.10.2026 · wersja paczki c9e25acde758 (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

  • 100bugfix
    Naprawia błąd ze zgłoszenia na GitHubie metodą najpierw odtworzyć: przyjmuje adres lub numer zgłoszenia, bada problem zgłoszony przez użytkownika i go debuguje.
  • 100fix-issue
    Analizuje i naprawia zgłoszenie GitHub w projekcie iam-policy-validator, obejmując zgłoszenia błędów i prośby o nowe funkcje.
  • 88fix-github-issue
    Naprawia zgłoszenie GitHub wskazane numerem: czyta opis, lokalizuje przyczynę, wprowadza poprawkę i przygotowuje zmiany do przeglądu.
  • 90fix-issue
    Rozwiązuje zgłoszenie GitHub od przeczytania do otwarcia pull requestu, gdy użytkownik podaje jego numer.
  • 90triage-issue
    Bada błąd w kodzie, szuka przyczyny źródłowej i zakłada zgłoszenie GitHub z planem poprawki opartym na TDD.
  • 100reproduce-bug
    Odtwarza błąd z issue GitHub krok po kroku i wyjaśnia jego przyczynę, gdy podano numer lub link zgłoszenia.

Uwagi i zgłoszenia

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