Pomáhám týmům nasadit AI na reálné problémy: automatizuju ruční práci, která je zdržuje, dělám z jejich dokumentů něco, v čem se dá vyhledávat, a nasazuju systémy, které spolehlivě běží v produkci. Nadefinuju, postavím a dodám od začátku do konce.
veřejných zakázek zařazených do kategorií a zpřístupněných k vyhledávání, paralelně
200 tis.+
studentů využívá AI asistenta na 10 evropských univerzitách
Od začátku do konce
jeden člověk to nadefinuje, postaví, dodá a předá
Co dělám
24/7
běží samo, není třeba hlídat
Konec otravného kopírování dat
Automatizuju opakovanou ruční práci, která vašemu týmu ukusuje hodiny.
< 2 s
k odpovědi se zdrojem napříč miliony dokumentů
Z hromad dokumentů okamžité odpovědi
Zeptejte se běžnou řečí, dostanete odpověď s odkazem na přesný zdroj.
5 kroků
proběhne od začátku do konce bez dohledu
Agenti, kteří práci udělají, ne jen konverzují
Předejte celý proces: přečti, prozkoumej, ověř, shrň, jednej.
0
citlivých dat neopustí vaši budovu
Privátní AI, která nikdy neopustí vaši firmu
Síla AI bez toho, abyste posílali citlivá data do cizího cloudu.
AI automatizace
Jeden agent, napojený na vše, co používáte
Vaše zdroje proudí do orchestrovaného agenta, který nad nimi uvažuje a jedná, s člověkem ve smyčce tam, kde na tom záleží.
Dokumenty
Vaše databáze
Web a API
AI agentuvažuje · plánuje · jedná
Odpovědi se zdroji
Akce a e-maily
Spouštěče
Podívejte se, jak to běží
Úloha na porozumění dokumentům od začátku do konce: agent projde jednotlivé kroky a výsledky, které vytvoří, jsou přesně to, co dostanete zpět.
agent · běh
Čte 240 nahraných dokumentů
Staví vektorový index (VoyageAI)
Vyhledává relevantní klauzule
Porovnává je se zdrojem
Píše odpověď se zdroji
210
Dokumentů zaindexovaných v tomto běhu
1.2s
Medián času k odpovědi se zdrojem
88%
Odpovědí dohledatelných zpět ke zdroji
Zapadne do vašeho stacku
Propojeno s nástroji, které už používáte
Modely, datová úložiště, fakturace i infrastruktura, poskládané dohromady tak, aby automatizace fungovala s vašimi stávajícími systémy, ne aby je nahrazovala.
Proč pracovat se mnou
Reálné produkční systémy s platícími zákazníky (InzerPro, NasadClaw, KouzelnikNaAkci), ne dema, která po prezentaci zhasnou.
RAG v praxi: vektorové vyhledávání, BM25, MMR retrieval a přeřazování přes LLM, k tomu ověřování faktů, aby odpovědi vycházely ze zdroje.
Neefektní části jsou pořešené: naplánované úlohy, které se spustí včas, fakturace přes Stripe s trialy a řešením neúspěšných plateb, autentizace, rate limity, zabezpečení on-prem.
Jeden člověk, od začátku do konce. Žádné vrstvy agentury, žádné předávání, žádný account manažer mezi vámi a člověkem, který píše kód.
Jak to probíhá
01
Úvodní hovor
Krátký hovor, na kterém najdeme konkrétní úzké místo, koho pálí a kolik hodin nebo peněz doopravdy stojí dobrý výsledek.
02
Rozsah a pevná cena
Písemný rozsah s jedním jasným výstupem, harmonogramem a pevnou cenou. Přesně víte, co dostanete a kolik to stojí, ještě než začneme.
03
Stavím na očích
Stavím v krátkých cyklech a brzy ukazuju funkční software, takže korigujeme směr, dokud je změna ještě levná.
04
Nasazení a předání
Vše naběhne ve vašem prostředí, zdokumentované, s předáním, aby to váš tým uměl provozovat i beze mě na paušálu.
Pod kapotou
Jak doopravdy stavím
AI sama produkční software nedodá. Tohle jsou živé vizualizace reálné inženýrské práce s AI ve velkém, ukázka toho, jak vedu práci: spousta agentů paralelně, protivník, který loví každou chybu, a nic se nemergne, dokud to není všude zelené.
Protivnická revize
Jeden agent píše kód, druhý má za úkol ho zlomit. Takhle držím kód od AI poctivý, ještě než se vůbec dostane k vám.
✷ claude code · dynamic workflowadversarial review3 of the many bugs adversarial review caught before merge
bug 1 of 3 · the async close
✷claudeimplementer
its context: the .zig original, the port plan, its own reasoning
✷claudeadversarial reviewer
its context: only the diff. told to assume the code is wrong.
uv_close is asynchronous: libuv keeps the raw handle pointer until the next loop tick, then calls on_pipe_close, which frees the allocation. But `pipe` is a Box that drops at the end of this match arm libuv is left holding freed memory, and the close callback then frees it a second time. Use-after-free, then double-free.
✷
for stdio in [spawned_stdout, spawned_stderr] {
match stdio {
StdioResult::Buffer(pipe) => {
Box::leak(pipe).close(Subprocess::on_pipe_close)
}
StdioResult::Fd(fd) => fd.close(),
StdioResult::Unavailable => {}
}
}
f0a454376c14 · win-review: js_bun_spawn_bindings.rs leak Box<uv::Pipe> before async uv_close to avoid UAF/double-free in on_pipe_close
✷
src/runtime/node/node_fs.rs · compiles clean
// split f64 seconds into a timespec-style {sec, nsec}
let sec = t.trunc();
TimeLike {
sec: sec as i64,
nsec: ((t - sec) * 1e9) as i64,
}
✷
For a negative, non-integer time a file mtime before 1970 trunc rounds toward zero: -1.5 becomes {sec: -1, nsec: -500_000_000}. A negative nsec is an invalid timespec. floor keeps nsec in [0, 1e9): {sec: -2, nsec: 500_000_000}.
✷
// split f64 seconds into a timespec-style {sec, nsec}
let sec = t.floor();
TimeLike {
sec: sec as i64,
nsec: ((t - sec) * 1e9).round() as i64,
}
7cc88f00141 · crossplat review fixes: ... node_fs win to_sys_time_like floor() so nsec is in [0,1e9) for negative t ...
✷
src/css/values/color.rs · compiles clean
// each side of color-mix() may omit its percentage;
// a missing one defaults to the remainder of the other side
let p1 = first.percentage.unwrap_or(1.0 - second.percentage.unwrap());
✷
unwrap_or evaluates its argument eagerly second.percentage.unwrap() runs even when first.percentage is Some. So color-mix(in srgb, red 40%, blue), where only the second percentage is omitted, panics inside the argument expression before unwrap_or ever gets to ignore it. unwrap_or_else takes a closure and stays lazy.
Three bugs the adversarial reviewers actually caught. every cited commit carries its review attribution in the subject line. All three compiled; all three looked plausible. The reviewer is a second Claude in its own context window: it gets the diff and nothing else none of the implementer's reasoning, and is told to find the way it's wrong. Code is condensed from the cited commits; same bugs, same fixes.
Chyby, odstraněné paralelně
Tisíce chyb kompilátoru rozdělených mezi spoustu agentů a worktree, pak odbavených po dávkách. Takhle paralelizuju migraci, která by jednomu člověku zabrala měsíce.
✷ claude code · dynamic workflow
≈16,000 errors left
Wed, May 6, 12:40 AM PDT
Thousands of compiler errors, split across parallel agents in 4 worktrees, then fixed, reviewed, and applied, crate by crate.
1 · errors
errors.txt0 fix commits
✓ error: test_command.rs: wire coverage façade to bun_sourcemap_jsc::code
✓ error: bundler/ungate_support.rs: un-gate bun_css shim to real ::bun_cs
Máte proces, který stojí za automatizaci, dokumenty, ve kterých se má dát vyhledávat, nebo produkt, který potřebuje dotáhnout? Napište mi, co váš tým zdržuje.