Construiesc la vedere
Idei pe care le explorez sau le construiesc public. Fiecare intrare spune ce problemă rezolvă și cum. Se actualizează când se schimbă ceva, nu după un program.
Serverele MCP pot schimba descrierea sau schema unui tool după ce l-ai aprobat (tool poisoning, rug-pull). Nimic nu fixează ce are voie un agent să apeleze.
Un lockfile cu hash-urile descrierilor și schemelor, o verificare în CI care pică la orice schimbare și un proxy stdio care ascunde tool-urile modificate și le refuză apelurile cât timp rulează agentul. Versiunea 0.2 merge deja. Urmează lockfile-uri semnate.
AGENTS.md, skill-urile, hook-urile și mcp.json rulează cu permisiunile tale, dar nimeni nu le scanează sau semnează. Studii publice au găsit o treime din skill-uri cu defecte și unele malițioase.
Un CLI care găsește configurația agenților dintr-un repo și semnalează Unicode ascuns, formulări de prompt injection, cod de la distanță în hook-uri, servere MCP fără versiune fixată și setări de auto-aprobare, cu ieșire SARIF pentru code scanning. Semnează fiecare fișier de configurare într-un manifest ed25519, iar verificarea pică la orice schimbare sau semnatar nesigur. Versiunea 0.2 adaugă o poartă în VS Code: verifică workspace-ul la deschidere, iar dacă semnătura pică sau un repo nesemnat are o problemă gravă, oprește AGENTS.md, instrucțiunile, skill-urile, hook-urile și pornirea automată MCP pentru acel workspace până îl deblochezi. Cheile de încredere stau în setările tale de utilizator, deci un repository nu se poate declara singur de încredere.
Mai mulți agenți de cod în același repo se ciocnesc la build-uri, instalări, commit-uri și deploy-uri. Worktree-urile izolează fișierele, dar nimic nu coordonează resursele comune.
Coada FIFO pe care o folosesc deja pe mașina mea, extrasă ca daemon cross-platform cu CLI, server MCP și bibliotecă: tichete cu lease, înghețări cu motiv și un jurnal înlănțuit prin hash-uri. Protocolul e publicat ca draft deschis, ACP-Lock 0.1, ca să-l poată vorbi și alte unelte. Versiunea 0.2 adaugă hook-uri pre-tool pentru Claude Code, Codex, Copilot CLI și VS Code: un build, o instalare, un deploy sau un commit pe care agentul încearcă să-l ruleze e rescris într-un `agentq run` pus la coadă, iar o resursă înghețată e refuzată cu motivul ei.
Împerecherea telefon-desktop-TV se rescrie în fiecare aplicație pe care o construiesc.
Un singur crate Rust: un cod de 8 caractere valabil o singură dată, SPAKE2 legat de cheile ambelor dispozitive ca un atacator la mijloc să aibă o singură încercare, un SAS de 6 cifre, o listă de dispozitive împerecheate sigilată cu MAC și împerechere prin iroh. Un pachet TypeScript folosește aceeași logică pentru cod și SAS, testat pe aceiași vectori. Versiunea 0.2 adaugă binding-uri Kotlin prin UniFFI, testate pe JVM, și șiruri de domeniu per aplicație, ca o aplicație să-l poată adopta fără reîmperechere. dashy se împerechează acum prin crate: SPAKE2 e versiunea 2 a protocolului său de legătură, deci codul tastat nu mai trece prin rețea, iar dispozitivele mai vechi se împerechează în continuare prin v1. Urmează titi.
Fiecare developer din România reimplementează validarea UBL și CIUS-RO de la ANAF și învață aceleași cazuri-limită pe pielea lui.
Un builder și validator UBL open-source extras din Brivio, cu un validator găzduit pe care îl poate încerca oricine.
Watch Face Format e obligatoriu pe Wear OS din ianuarie 2026, iar cadranele se scriu de mână în XML.
Un DSL Kotlin tipizat care generează WFF valid, cu previzualizări și reguli de lint.
Vrei una dintre ele mai repede sau ai o idee mai bună? Scrie-mi.