Obsah

pi-autoresearch

Vytvořeno: 25.4.2026 | Aktualizováno: 25.04.2026 12:36

pi-autoresearch je rozšíření a sada skills pro Pi Coding Agent. Přidává do Pi autonomní experimentální smyčku: agent navrhne změnu, spustí benchmark, změří metriku, ponechá zlepšení, zahodí regresi a pokračuje další iterací.

Rychlé shrnutí

K čemu je dobrý

pi-autoresearch je vhodný tam, kde existuje opakovatelný příkaz a objektivní metrika. Agent pak může dlouho běžet sám a zkoušet varianty, které by člověk ručně testoval pomalu nebo vůbec.

Typické cíle:

Základní pattern je:

1. definuj cíl a metriku
2. změř baseline
3. uprav kód nebo konfiguraci
4. spusť benchmark
5. výsledek zapiš do logu
6. zlepšení ponech, regresi revertuj
7. opakuj

Přidaná hodnota

1. Hotová experimentální infrastruktura pro Pi

Pi je záměrně minimalistický agentický harness. pi-autoresearch do něj doplňuje konkrétní workflow pro autonomní optimalizační smyčky.

Balíček obsahuje dvě části:

Tím se odděluje obecná infrastruktura od doménového know-how. Extension řeší běh experimentů, logování a UI. Skill určuje, co se optimalizuje, jaký příkaz se spouští a jak se výsledek vyhodnocuje.

2. Agentická smyčka s keep/revert logikou

Hlavní smyčka podle README běží autonomně:

edit → commit → run_experiment → log_experiment → keep/revert → repeat

Zlepšení se ponechá a typicky se commitne. Horší výsledek, crash nebo selhané kontrolní testy se zahodí a změny se revertují. To je praktické hlavně pro optimalizace, kde vzniká hodně slepých uliček.

3. Persistentní kontext přes soubory

Projekt používá soubory v repozitáři, takže session přežije restart nebo vyčerpání kontextového okna.

Důležité soubory:

Díky tomu může nový agent bez původní konverzační historie přečíst autoresearch.md a autoresearch.jsonl a pokračovat.

4. Dashboard a confidence score

Extension přidává stavový widget, rozšířený dashboard a fullscreen overlay. Widget ukazuje počet běhů, počet ponechaných změn, nejlepší metriku a confidence score.

Confidence score se počítá po třech a více bězích. Používá Median Absolute Deviation jako robustní odhad šumu a porovnává nejlepší zlepšení proti noise flooru.

Výklad podle README:

Důležité je, že score je jen poradní. Nástroj podle dokumentace sám nic automaticky nezahazuje jen kvůli nízké confidence.

5. Finalizace do reviewovatelných větví

Skill autoresearch-finalize řeší praktický problém: dlouhá experimentální větev bývá špinavá, plná pokusů a revertů. Finalizační skill přečte autoresearch.jsonl, najde ponechané experimenty, navrhne logické skupiny a po schválení vytvoří samostatné větve od merge-base.

Cíl je, aby každá větev obsahovala jednu reviewovatelnou změnu. Skupiny nesmí sdílet soubory, protože mají být aplikovatelné nezávisle.

Instalace

Rychlá instalace přes Pi package manager:

pi install https://github.com/davebcn87/pi-autoresearch

Ruční instalace podle README kopíruje extension a skill do uživatelské konfigurace Pi:

cp -r extensions/pi-autoresearch ~/.pi/agent/extensions/
cp -r skills/autoresearch-create ~/.pi/agent/skills/

Po ruční instalaci je potřeba v Pi použít /reload.

Použití

Založení experimentální session

Základní start probíhá přes skill:

/skill:autoresearch-create

Skill se zeptá nebo si odvodí:

Potom vytvoří větev, zapíše autoresearch.md a autoresearch.sh, změří baseline a začne iterovat.

Přímý autoresearch režim

Extension přidává i příkaz /autoresearch:

/autoresearch optimize unit test runtime, monitor correctness
/autoresearch model training, run 5 minutes of train.py and note the loss ratio as optimization target
/autoresearch export
/autoresearch off
/autoresearch clear

Význam:

Finalizace výsledků

Po doběhu nebo přerušení experimentů se dá použít:

/skill:autoresearch-finalize

Skill připraví změny do samostatných větví pro review. Podle instrukcí ve skillu nejprve navrhne grouping a čeká na schválení.

Konfigurace

Volitelný soubor autoresearch.config.json umožňuje nastavit například pracovní adresář a maximální počet iterací:

{
  "workingDir": "/path/to/project",
  "maxIterations": 50
}

maxIterations je důležité bezpečnostní a nákladové omezení. Autonomní smyčka může jinak běžet dlouho a spotřebovávat tokeny i výpočetní prostředky.

Backpressure checks

Pokud existuje autoresearch.checks.sh, spustí se po každém benchmarku, který skončí úspěšně. Typicky sem patří testy, typecheck nebo lint.

Příklad:

#!/bin/bash
set -euo pipefail
pnpm test --run
pnpm typecheck

Čas těchto kontrol se nezapočítává do primární metriky. Pokud kontroly selžou, experiment se zaloguje jako checks_failed a změnu nelze ponechat.

Hooks

Verze 1.1.0 přidala lifecycle hooks:

Hooky dostávají na stdin JSON s kontextem a stdout se doručí agentovi jako steer message. To umožňuje doplňkové automatizace, například:

README zdůrazňuje, že core autoresearch loop nemá o hookách přímé povědomí. Hooky běží vedle něj a jejich výstup se agentovi předá jako další signál.

Kdy dává smysl

pi-autoresearch dává smysl, když jsou splněné tři podmínky:

Dobré scénáře:

Slabší scénáře:

Limity a rizika

Vztah k původnímu autoresearch

Původní autoresearch od Andreje Karpathyho je konkrétní ML experiment loop nad trénovacím skriptem a metrikou val_bpb. pi-autoresearch převádí stejný princip do Pi ekosystému a dělá z něj obecný nástroj pro libovolné optimalizační cíle.

Stručně:

Závěr

pi-autoresearch je praktické rozšíření pro případy, kdy má agent optimalizovat něco měřitelného bez průběžného dohledu. Největší hodnota není v jedné konkrétní optimalizační technice, ale v infrastruktuře: benchmark skript, persistentní log, keep/revert workflow, dashboard, confidence score, backpressure checks a finalizace do čistých větví. Nejlépe funguje tam, kde je metrika rychlá, objektivní a dostatečně stabilní.

Zdroje