Przejdź do treści
Biblioteka skilli
Programowanie · Automatyzacja

autoresearch-finalize

/autoresearch-finalize

Finalizuje sesję autoresearch w czyste, nadające się do przeglądu gałęzie, przy prośbie o sprzątanie eksperymentów i przygotowanie do review.

Licencja
MIT
Ostatnia zmiana repozytorium
07.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 07.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: finalize.sh

Co robi i kiedy

Finalizuje sesję autoresearch w czyste, nadające się do przeglądu gałęzie, przy prośbie o sprzątanie eksperymentów i przygotowanie do review.

Wyzwalacze z opisu

finalize autoresearchclean up experimentsprepare autoresearch for review
Oryginalny opis (EN)

Finalize an autoresearch session into clean, reviewable branches. Use when asked to "finalize autoresearch", "clean up experiments", or "prepare autoresearch for review".

Jak działa

  1. Step 1 — Analyze and Propose Groups
  2. Step 2 — Write groups.json and Run
  3. Step 3 — Report
  4. Edge Cases
Sekcje z nagłówków SKILL.md, w oryginale · 84 linii, 513 słów
Podgląd SKILL.md
---
name: autoresearch-finalize
context: fork
description: Finalize an autoresearch session into clean, reviewable branches. Use when asked to "finalize autoresearch", "clean up experiments", or "prepare autoresearch for review".
---

# Finalize Autoresearch

Turn a noisy autoresearch branch into clean, independent branches — one per logical change, each starting from the merge-base.

## Step 1 — Analyze and Propose Groups

1. Read `.auto/log.jsonl` (legacy: `autoresearch.jsonl`). Filter to **kept** experiments only.
2. Read `.auto/prompt.md` (legacy: `autoresearch.md`) for context.
3. Expand all short commit hashes to full hashes: `git rev-parse <short_hash>`
4. Get the merge-base: `git merge-base HEAD main`
5. For each kept commit, get the diff stat (use `$BASE..<commit>` for the first, `<prev_kept>..<commit>` for subsequent).
6. Group kept commits into logical changesets:
   - **Preserve application order.** Group N comes before Group N+1.
   - **No two groups may touch the same file.** Each branch is applied to merge-base independently — overlapping files would conflict. If two groups touch the same file, merge them into one group.
   - **Watch for cross-file dependencies.** Each branch is independent, so if group 1 adds an API in `api.js` and group 2 calls it in `parser.js`, group 2's branch won't work in isolation. When proposing groups, flag dependencies: "group 2 depends on group 1 — review together." If the dependency is tight, merge the groups.
   - **Keep each group small and focused.** One idea, one theme per group.
   - **Don't hardcode a count.** Could be 2, could be 15.

Present the proposed grouping to the user:

```
Proposed branches (each from merge-base, independent):

1. **Switch test runner to forks pool** (commits abc1234, def5678)
   Files: vitest.config.ts, package.json
   Metric: 42.3s → 38.1s (-9.9%)

2. **Tune worker count and timeouts** (commits ghi9012, jkl3456)
   Files: test/setup.ts
   Metric: 38.1s → 31.7s (-16.8%)
```

**Wait for approval before proceeding.**

## Step 2 — Write groups.json and Run

Write `groups.json`:

```json
{
  "base": "<full merge-base hash>",
  "trunk": "main",
  "final_tree": "<full hash of current HEAD>",
  "goal": "short-slug",
  "groups": [
    {
      "title": "Switch to forks pool",
      "body": "Why + what changed.\n\nExperiments: #3, #5\nMetric: total_time 42.3s → 38.1s (-9.9%)",
      "last_commit": "<full hash of last kept commit in this group>",
      "slug": "forks-pool"
    }
  ]
}
```

Key rules:
- **`last_commit` must be a full hash.** Expand from jsonl short hashes with `git rev-parse`.
- **No two groups may share a file.** The script validates this and fails if violated.

Then run:

```bash
bash <SKILL_DIR>/finalize.sh /tmp/groups.json
```

The script creates one branch per group from the merge-base, verifies the union matches the original branch, and prints a summary with all branches, cleanup commands, and any ideas from `.auto/ideas.md` (legacy: `autoresearch.ideas.md`).

On creation failure: rolls back (deletes branches, restores original branch, pops stash).
On verification failure: exits non-zero but leaves branches intact for inspection.

## Step 3 — Report

After the script finishes, report to the user:
- Branches created and what each contains
- Overall metric improvement (baseline → best)
- Show the cleanup commands from the script's summary output

## Edge Cases

- **Only 1 kept experiment**: One branch is fine — don't force splits.
- **Overlapping files between groups**: The script fails with an error naming the file. Merge the overlapping groups and retry.
- **Non-experiment commits** on the branch: Skip them — only process kept experiments from the jsonl.
Pliki w paczce (2)
  • SKILL.md 4 KB
  • finalize.sh 14 KB

Wersje

RepozytoriumWynikLicencja
Ta strona · davebcn87/pi-autoresearch100MIT
ethanolivertroy/public-skills100MIT

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

  • 95sa-finalize
    Finalizuje specyfikację w Neo4j: statystyki, glosariusz, ADR, macierz śledzenia i ocenę gotowości z zapytań do grafu.
  • 100autoresearch
    Uruchamia autonomiczne eksperymenty keep/discard na bazie kodu, optymalizując jedną metrykę w stałym czasie, w stylu karpathy/autoresearch, na przykład przez noc.
  • 100finalize
    Domyka implementację: commituje zmiany, tworzy pull request i przygotowuje pracę do wydania.
  • 95nacl-sa-finalize
    Finalizuje specyfikację w Neo4j: statystyki, słownik, ADR, macierz śledzenia i ocenę gotowości.
  • 100autoresearch-create
    Konfiguruje i uruchamia autonomiczną pętlę eksperymentów dla dowolnego celu optymalizacji: zbiera, co optymalizować, i od razu startuje pętlę.
  • 100autoresearch-create
    Konfiguruje i uruchamia autonomiczną pętlę eksperymentów dla dowolnego celu optymalizacji: zbiera, co optymalizować, i od razu startuje pętlę.

Uwagi i zgłoszenia

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