Običnim rečima napišeš šta kamera treba da prati, na primer „javi mi ako neko uđe u sobu noću“. Kad se to desi, za oko dve sekunde dobiješ sliku na Telegramu. Sve radi na običnom računaru, bez skupe opreme.
Sajt proizvoda, od vrha do dna.Pravilo, zona, alarm, dashboard. Pravi ekrani iz testa na besplatnom snimku magacina (Pexels).
Pravi alarm: osoba u prolazu za viljuškar. Claude je dodao: „A person in a pink shirt stands in the marked lane beside the rolls, handling a strap, directly ahead of an approaching forklift’s raised forks.“
Prolaz u magacinu: „Javi mi kad je neko u prolazu pored paleta“
Parking noću: „Javi mi kad auto stane u vatrogasnu traku ispred radnje“
Stovarište: „Javi mi kad osoba uđe na deo gde voze viljuškari“
Skladište građe: „Javi mi kad su u kadru dve ili više osoba odjednom“
Jedna rečenica postaje pravilo: traži osobu, u označenoj zoni, uvek, najviše jedan alarm u minutu
Klijent na slici kamere označi prolaz za viljuškar
Dashboard: povezan Telegram, svaki alarm sa slikom i AI opisom u jednoj rečenici
Detekcija radi u objektu, bez otvorenih portova
Početna strana
Ideja
Većina firmi već ima kamere. Niko ih ne gleda. Snimak se otvara tek kad se nešto loše desi. Hteo sam da kamere jave istog trenutka, i to baš ono što je klijentu bitno, a da se to podesi jednom rečenicom umesto klikanja kroz podešavanja.
Očigledna verzija je skupa: svaki kadar poslati vision modelu. Na 20 kadrova u sekundi sa par kamera to su milioni poziva dnevno. Zato ceo dizajn prati jedno pravilo: jeftin lokalni model odlučuje kada, a veliki model samo objašnjava šta. Prvo tržište su firme (magacini i gradilišta: ljudi u zoni viljuškara, blokiran izlaz), ne kuće.
Vremenska linija
Pravila običnim rečima, prvo firme, tri sloja da veliki model nikad ne bude u petlji videa.
YOLO uživo na laptopu: oko 50 ms po kadru na Ryzen procesoru, bez interneta.
iPhone kao kamera preko WiFi-ja. Zona nacrtana preko žive slike i alarm prema tome gde su stopala.
Od lokalne skripte do veb proizvoda: registracija, agent za preuzimanje, pravila kao prompt.
Agent ↔ sajt: kod za uparivanje, javljanje da je živ, spisak kamera, slike u privatnom skladištu.
Prompt → pravilo preko Claude-a i stroge šeme. Klijent potvrđuje pre nego što išta radi.
Agent izvršava pravila: zone, raspored, minimalno trajanje, pauza između alarma. Događaji idu na sajt i na Telegram.
Ceo lanac radi uživo: iPhone → detektor → sajt → Telegram za oko 2 sekunde, pa Claude-ov opis.
Sve funkcije
01
Pravila kao rečenice
„Javi mi ako ima više od 3 osobe ispred kase radnim danima 9–17“ postaje: traži osobu, u označenoj zoni, 4 ili više odjednom, ponedeljak–petak, 09:00–17:00, alarm posle 1 sekunde, najviše jednom u minuti. Klijent vidi baš to i potvrđuje.
02
Pošteno odbijanje
„Javi kad dođe komšija Petar“ se odbija, uz razlog: sistem ne prepoznaje ko je ko. Pravilo koje tiho nikad ne okine gore je od jasnog „ne“. Isto važi za lica, tablice, padove, vatru i kacige, dok ti detektori ne postoje.
03
Zone na pravoj slici
Klijent sa par klikova obeleži deo slike sa same kamere. Za ljude sistem gleda tačku na dnu okvira (stopala), pa prolazak pored vrata ne računa kao ulazak kroz njih.
04
Fotografija, pa opis
Fotografija sa nacrtanom zonom i okvirom oko objekta ide odmah. Par sekundi kasnije Claude pogleda tu jednu sliku i dopiše rečenicu ispod. Ako liči na lažnu uzbunu (poster, odraz), to i kaže.
05
Uživo na zahtev
Dok je stranica kamere otvorena, agent šalje oko jedan kadar u sekundi sa okvirima koje AI vidi. Kad se stranica zatvori, prestaje. Podrazumevano ništa ne ide u oblak.
06
Stanje koje se razume
Dashboard razlikuje dva kvara: „Agent offline“ (računar je ugašen) i „Camera offline“ (agent radi, ali ova kamera ne daje sliku). Prvi pravi test je uhvatio baš to: telefon se zaključao, a kartica je pokazala NO SIGNAL.
07
Telegram jednim dodirom
Pritisneš Start u botu i stranica se sama poveže za par sekundi. Bez webhook-a i javne adrese, pa radi i lokalno.
AI arhitektura
Lokalni detektor, svaki kadar. YOLO11n na računaru klijenta, 8 kadrova u sekundi po kameri, besplatno i bez interneta.
Pravila u kodu. Zona, broj, raspored, minimalno trajanje i pauza su običan kod u agentu. To odlučuje o alarmu, za par milisekundi.
Veliki model, jednom po događaju. Claude vidi jednu sliku i pravilo koje je okinulo. Radi tek pošto je alarm već poslat, pa fotografija nikad ne čeka model.
Isti model se koristi i kad se pravilo pravi: ulazi prompt, a izlazi strukturisano pravilo koje mora da odgovara šemi. Može da bira samo objekte koje detektor stvarno vidi.
Privatnost od početka
Video ostaje u objektu. Van objekta ide samo trenutak događaja, jedna slika.
Nema otvorenih vrata. Agent samo šalje odlazne HTTPS zahteve, pa se na ruteru klijenta ništa ne otvara.
Lozinke kamera nikad ne stižu na server. Adrese kamera ostaju u fajlu na računaru klijenta; server zna samo imena kamera.
Token agenta se prikaže jednom i čuva samo kao SHA-256 otisak, u tabeli koju pregledač nikad ne može da pročita. Svaka druga tabela je zaključana za vlasnika preko row-level security.
Šta su testovi uhvatili
Greška u šemi mog prvog dizajna. U prvom testu Claude je u sopstvenom opisu pravila napisao da brojanje ljudi ne može zajedno sa zonom. Promenio sam šemu u use_zone + min_count, i „4 ili više osoba ispred kase“ sad radi tačno.
Kamera okrenuta bočno. Prvi pravi alarm je stigao sa opisom „…the camera image is rotated sideways“. Telefon je stajao uspravno, a slao položenu sliku. Dodao sam rotaciju po kameri. Ista osoba je pre popravke prepoznata sa 74%, a posle sa 91%.
Korak koji niko ne radi. Pritisnuo sam Start u Telegram botu i ništa se nije desilo, jer je sajt čekao da se vratim i kliknem „I pressed Start“. Sad stranica proverava na 3 sekunde i poveže se sama.
Sledeće
Objava veb aplikacije, pravi agent za preuzimanje (.exe, bez instaliranja Python-a), video klip posle fotografije i paket za magacine: kaciga i prsluk, viljuškar u zoni za pešake, blokiran izlaz.
Šta sam ja odlučio
Prvo firme; prvi paket su magacini i gradilišta.
Klijent preuzima agenta na svoj računar. Ne šaljemo kutiju.
Cena i brzina dolaze iz dizajna: veliki model nikad ne gleda video.
Kvalitet pre brzine: pravi veb proizvod, ne lokalni demo.
Šta je uradio AI
Predložio tri sloja i podelu lokalno + oblak.
Napravio agenta, Next.js aplikaciju, bazu sa row-level security i Telegram tok.
Napisao prevodilac prompta u pravilo sa strogom šemom.
Gde sam ga ispravio
Izbacio „pad u domu za stare“ zbog privatnosti. Pojasnio sam da se misli na hodnik, ne sobe, i vraćeno je na listu.
Terao me da kliknem „I pressed Start“ posle Telegrama. Tražio sam da se poveže samo.
Napravio prvu početnu stranu koju sam nazvao mrtvom. Tražio sam crni izgled kontrolne sobe.