Oma Backend
Backend agent: vrstvení router/service/repository, explicitní transakce, ORM N+1 pravidla
Funguje s nastavením
Co umí
Dovednost pro implementaci backendu, která vynucuje rozdělení router na service na repository na models a spouští pevný protokol analyze/plan/implement/verify pro práci s API, autentizací a persistencí. Obsahuje ORM referenci (strategie načítání vztahů, hranice transakcí, životní cyklus session/klienta, projekce polí) a před-submit checklist pokrývající FK indexy, stránkování, validaci vstupu, parametrizované dotazy a konfiguraci založenou na prostředí. Spouští se na požadavky na vytváření REST nebo GraphQL endpointů, psaní migrací, přidávání JWT autentizace nebo opravu pomalých dotazů v serverové kódové základně.
Testovací report
Načteno SKILL.md plus všech pět resources/*.md (checklist, execution-protocol, orm-reference, examples, error-playbook) — každý vrátil HTTP 200 a ../_shared/core/* existuje ve stromu; žádné curl|sh, base64 bloby nebo injekční text uvnitř souborů dovednosti (vlastní instalátor README repozitáře je curl|bash, což je harness, nikoli dovednost). Odkazy v těle na stack/stack.yaml, stack/snippets.md a stack/api-template.* jsou po prostém zkopírování visící — ty se dodávají jako variants/{node,python,rust}/ — a execution-protocol.md Krok 3 říká "Use stack/api-template.*" bez volitelného zajištění. Spouštěcí fráze posouzeny: MĚLO by se spustit — "Add a POST /api/orders endpoint to our FastAPI service that creates an order and decrements stock", "Implement JWT login with refresh token rotation and rate limiting on the auth routes", "Our /api/posts list endpoint takes 2s, find the N+1 and fix the repository query" (všechny 3 správně); NEMĚLO by se spustit — "Fix the flexbox layout on the pricing page, cards overflow on mobile" (správně ignorováno), "Write API reference documentation for our existing REST endpoints in the README" (načetl bych to, protože popis doslova říká "Use for API, endpoint, REST ... work" — falešně pozitivní, tedy 4/5). Pro výstup jsem spustil jeden úkol oběma způsoby: základ cykloval session.get(Product) na řádek (N dotazů, žádný zámek řádku, závod na ztracenou aktualizaci na skladě), neměl eager loading na list endpointu (skutečné selhání MissingGreenlet pod async SQLAlchemy), žádné stránkování, žádnou validaci quantity>0 a obchodní logiku v route handleru; verze dovednosti vygenerovala jeden batched SELECT ... FOR UPDATE, selectinload na Order.items, kurzorové stránkování s limitním omezením, explicitní "async with session.begin()" jednotku práce, doménové výjimky za centrálním handlerem, migraci FK indexu a pojmenované zbytkové riziko (with_for_update je no-op na SQLite). Poznámka k upřímnosti: již jsem četl tělo dovednosti před napsáním základu, takže základ je můj skutečný výchozí vzor, ale nebyl napsán naslepo; artefakty jsou na /private/tmp/claude-501/-Users-afin-Desktop-Skill-Agregator/94648f54-e301-46fc-afd8-b98858a51ecf/scratchpad/omabk-baseline.md a omabk-skill.md.
Testováno: 2026-07-21 · Claude Code 2.x (agent harness)
Instalace
# clone the harness (the skill references ../_shared, so copy that too) git clone --depth 1 https://github.com/first-fluke/oh-my-agent /tmp/oma mkdir -p ~/.claude/skills cp -R /tmp/oma/.agents/skills/oma-backend ~/.claude/skills/ cp -R /tmp/oma/.agents/skills/_shared ~/.claude/skills/ # optional: materialize the stack/ folder the body references, from a variant cp -R ~/.claude/skills/oma-backend/variants/python ~/.claude/skills/oma-backend/stack # alternatives (whole suite): bunx oh-my-agent@latest # or: apm install first-fluke/oh-my-agent/.agents/skills/oma-backend
Příkazy a ukázkové prompty
/oma-backendBackend agent: vrstvení router/service/repository, explicitní transakce, ORM N+1 pravidla
Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):
Add a new REST endpoint following our clean architectureSet up database migrations for this featureImplement authentication in the service layer