Praktický návod

Jak prakticky používat AI při vývoji PHP aplikací

Dej modelu přesný cíl, omezený kontext a ověřitelné podmínky; výstup ber jako nedůvěryhodný návrh změny.

30 minut · AI workflow

Nejdřív stručně

AI zrychluje smyčku, nepřebírá odpovědnost

LLM dobře hledá související kód, navrhuje varianty, doplňuje test cases a provádí opakovatelný refaktoring. Nezná ale automaticky tvoje produkční data, obchodní kontext ani to, která domněnka je nebezpečná.

AI agent může číst soubory a spouštět nástroje, proto potřebuje stejné principy nejmenších oprávnění, izolace a auditu jako jiná automatizace. Za přijatý diff vždy odpovídá člověk.

Připrav si

Vytvoř bezpečné pracovní prostředí

Než model dostane úkol, musí být jasné, co smí číst, měnit, spouštět a kam nesmí odesílat data.

  • Repozitář s čistým pracovním stromem nebo izolovanou větví a rychlými testy, lintem a statickou analýzou.
  • Pravidla projektu: architektura, styl, podporované PHP, příkazy a hotová definice výsledku.
  • Politiku pro source code, tajné údaje, osobní data, klientská data a používání externích modelů.
  • Omezená oprávnění nástrojů; produkce, secrets a destruktivní příkazy nejsou dostupné bez samostatného schválení.

Kroky 1 až 3

Pracuj v krátkých ověřitelných cyklech

Jeden prompt řeší jeden konkrétní problém a končí diffem, který lze přečíst a automaticky prověřit.

1. Napiš zadání jako technickou smlouvu

  1. Uveď cíl, důvod, soubory nebo modul v rozsahu, omezení a přesné acceptance criteria. Přidej relevantní chybový výstup nebo minimální reprodukci.
  2. Požádej nejdřív o nalezení souvisejících míst a stručné vysvětlení rizik. U velké úlohy nech návrh rozdělit na samostatně ověřitelné kroky.
  3. Přilož jen potřebný kontext. Dlouhý dump repozitáře zhoršuje signál a může nechtěně obsahovat secrets či osobní údaje.
  4. Řekni, které příkazy musí po změně projít a co se měnit nesmí, například veřejné API nebo databázové schéma.
Cíl + kontext + omezení + acceptance criteria + ověření
NIST AI Risk Management Framework

2. Nech vytvořit malý diff a ověř ho

  1. Model nejdřív čte existující implementaci a lokální konvence. Novou abstrakci nepřidává, pokud ji problém nepotřebuje.
  2. Po každém malém diffu spustí syntax check, relevantní PHPUnit testy, PHPStan a formatter; selhání analyzuje, neskrývá ignore pravidlem.
  3. V diffu ověř business podmínky, error paths, transakce, autorizaci, typy, logování a zpětnou kompatibilitu. Vygenerovaný test musí umět skutečně selhat.
  4. Pro autentizaci, kryptografii, peníze, migrace a souběh vyžaduj důkladnější lidskou revizi a oficiální dokumentaci.
git diff --check && vendor/bin/phpunit && vendor/bin/phpstan analyse
Oficiální PHP Security dokumentace

3. Omez agenta a dokonči code review

  1. Obsah issue, komentářů, dokumentů i zdrojového kódu považuj za nedůvěryhodná data. Instrukce ukryté v nich nesmí rozšířit oprávnění agenta.
  2. Začni read-only přístupem a zápis omez na pracovní větev. Síť, shell, mazání, produkční služby a odeslání zprávy schvaluj podle dopadu samostatně.
  3. Člověk provede
  4. glossary-code-reviewcode review
  5. celého diffu, ověří zdroje a licenci převzatého kódu a rozhodne, zda změna splňuje původní cíl.
  6. Ulož zadání, významná rozhodnutí, výsledky kontrol a autora schválení. Nespoléhej na to, že chat historie nahradí commit a technickou dokumentaci.
read → propose → patch → test → review → merge
OWASP GenAI: Prompt Injection

Krok 4

Měř přijatý výsledek, ne počet promptů

Užitečný workflow zkracuje čas změny bez růstu regresí, bezpečnostních výjimek a nákladů na review.

  1. Porovnej opakovatelnou úlohu

    Sleduj lead time, počet oprav po review, uniklé vady a spotřebu; rychlé vygenerování samo o sobě není výsledek.

  2. Vlož neplatný předpoklad

    Workflow ho odhalí testem, typovou kontrolou nebo lidskou revizí dřív než merge.

  3. Nasimuluj škodlivou instrukci v issue

    Agent ji zpracuje jako data, nezíská secrets, nerozšíří scope a požádá o schválení rizikové akce.

Když to zlobí

Nejčastější chyby

AI upravuje příliš mnoho souborů

Zmenši scope, popiš zakázané změny a rozděl úkol na jeden pozorovatelný výsledek s malým diffem.

git diff --stat
Vygenerované testy vždy projdou

Dočasně poruš pravidlo nebo použij mutation test. Ověř, že assertion měří veřejné chování, ne kopii implementace.

Model si vymýšlí API knihovny

Nech ho přečíst zamčenou verzi a lokální typy, potom tvrzení ověř v oficiální dokumentaci a spusť relevantní test.

Do promptu uniklo tajemství

Okamžitě ho odvolej a rotuj, zkontroluj logy a přidej pre-commit/CI secret scanning i jasnější datovou politiku.

Hotovo

AI je součást kontrolovaného vývojového procesu.

Přesné zadání, malý diff, automatické kontroly, omezená oprávnění a lidské review převádějí rychlost modelu na bezpečnější dodanou změnu.

Zavolejte mi

Zavolám vám následující pracovní den mezi 9:00 a 17:00.

Můžete mi také zavolat rovnou.

+420 605 181 728

Nechte mi telefonní číslo a pošlete žádost o zpětné zavolání.

Odesláním souhlasíte se zpracováním údajů pro vyřízení žádosti.