Dacă i-ai cerut vreodată unui asistent AI un text în română, probabil ai observat: frazele par corecte, dar sună traduse din engleză, din când în când apare un cuvânt care nu există, iar când îi ceri să corecteze, „repară” și ce era bine. romana e unealta open source pe care am construit-o pentru asta. Agenții AI, ca Claude Code sau Codex, citesc regulile ei înainte să scrie, să corecteze sau să verifice un text în română și pot consulta un dicționar local. Fiecare regulă are o sursă: normele Academiei Române, un dicționar sau un ghid de redactare.
Pe scurt: skillul romana e gratuit și open source, la github.com/doITmagic/romana. Se instalează în Claude Code, Codex, claude.ai și ChatGPT. În Claude Code sau Codex e destul să-i ceri asistentului să-l instaleze de pe adresa de mai sus. Fără nicio instalare, îi poți folosi uneltele prin serverul MCP public:
https://mcp.doitmagic.ro/mcp. Conectorul romana e publicat în directorul Claude. Toate variantele sunt la Cum îl încerci.
Proiectul a pornit dintr-o nevoie. Lucrăm la dinlume, un proiect pe care îl lansăm în curând și despre care vom scrie pe larg aici. Pe scurt, agenți AI citesc presa germană, aleg subiectele, scriu știrile în română și le verifică afirmație cu afirmație, iar un om aprobă fiecare ediție înainte de publicare. Un agent AI e un model de limbaj1 care nu doar răspunde la întrebări: lucrează singur, citește surse, scrie fișiere, rulează comenzi și își verifică rezultatul.
Știrile aveau o problemă pe care nu o așteptam. Sursele erau în germană, iar româna suna tradusă: uneori păstra ordinea cuvintelor din fraza germană, dar cel mai des suna a engleză. Modelul „gândește” în engleză, probabil pentru că engleza domină textele din care a învățat, iar româna lui poartă urmele acestei limbi chiar și când scrie de la zero. Din când în când apărea și un cuvânt care nu există, scris cu toată siguranța. Agenții aveau acces la un dicționar, dar nu-l consultau întotdeauna, pentru că un model nu caută cuvintele de care nu se îndoiește. Am văzut același lucru în textele unui site și ale unui blog scrise cu AI, deci problema nu ținea de dinlume.
Când am început să testăm corectura, a apărut a doua problemă, mai greu de prins: un model greșește și când corectează, cu aceeași siguranță. Într-unul dintre testele noastre, Claude a primit fraza „Dați click pe pictogramă” și a schimbat-o în „Dați clic”, cu explicația că așa recomandă DOOM 32. DOOM 3 înregistrează „click”. Modelul a stricat o formă corectă și a inventat, pe deasupra, autoritatea care să-i dea dreptate. Fenomenul are un nume: halucinație3, adică un răspuns fals prezentat ca fapt. Codex, agentul de la OpenAI, a făcut aceeași corectură, fără nicio explicație.
Așa a apărut romana, cu un scop dublu: agentul să scrie ca un autor român atent și, la fel de important, să lase în pace ce e corect.
Prima tentație e să scrii în prompt, adică în instrucțiunile pe care i le dai modelului: „scrie corect în română”. Nu ajută, pentru că modelul crede deja că scrie corect. Nu-i lipsește bunăvoința, îi lipsesc regulile. Iar multe dintre regulile de pe internet amestecă norma cu preferințele și cu miturile de tipul „nu începe fraza cu «și»”.
Am ales forma de skill. Un skill e un dosar cu instrucțiuni și fișiere de referință, pe care agentul îl deschide singur când sarcina o cere. Formatul e deschis4, așa că același skill merge în Claude Code, în Codex5 și în alți agenți care citesc formatul. Am scris într-un articol anterior cum se mută tot mai multă experiență a unei echipe în astfel de fișiere text.
Apoi am deschis cărțile. DOOM 3 e dicționarul ortografic al Academiei Române, iar ÎOOP6 e îndreptarul ei de ortografie, ortoepie, morfologie și punctuație. Lângă ele am pus gramatica academică, gramatica lui Ion Coteanu și manualele școlare de română. Fiecare regulă din skill are exemple, nivelul, explicația și sursa. Am scris totul de la zero, fără să copiem text din aceste lucrări, pentru că licențele lor nu permit asta într-un proiect cu licența MIT.
Peste reguli am pus o scară, pentru că nu orice observație e o greșeală. O formă care contrazice DOOM 3 e o normă și se corectează. O preferință a surselor e o recomandare și doar se propune. Când sursele nu sunt de acord, forma e disputată: agentul pomenește ambele uzuri și nu alege. Iar aproape 100 de forme care par greșite, dar nu sunt, stau pe o listă separată, „ce nu e greșeală”, pe care agentul o citește înainte să corecteze ceva.
Am pus în scris și principiul care ne-a ghidat tot proiectul: o formă corectă stricată e la fel de gravă ca o greșeală scăpată. Lingviștii au un nume pentru greșeala celui care corectează prea mult: hipercorectitudine7.
Cele mai multe skilluri au câteva pagini de instrucțiuni. Skillul romana are 112.520 de cuvinte în 30 de fișiere, cam cât o carte de 400 de pagini. Cele 854 de reguli sunt împărțite pe familii:
| Familia | Reguli |
|---|---|
| Stil | 157 |
| Gramatică | 123 |
| Calcuri | 115 |
| Tipografie | 99 |
| Ce nu e greșeală | 93 |
| Sens (semantică) | 81 |
| Texte de interfață | 58 |
| Numere, date și unități | 38 |
| Împrumuturi | 32 |
| Coerență | 30 |
| Fidelitate față de sursă | 28 |
Calcurile sunt construcții străine traduse cuvânt cu cuvânt8, ca „a face sens”, după englezescul „to make sense”, în loc de „a avea sens”. Skillul le acoperă pe cele din engleză, dar și pe cele din germană și italiană, pentru că dinlume traduce din germană și, în curând, din italiană. Sursele se văd în cifre: 251 de reguli se sprijină pe DOOM 3, 65 pe ÎOOP și 332 pe sensurile din dicționarele explicative.
Skillul lucrează în trei moduri: scriere, corectură și verificare. Are și șase profiluri: presă, marketing, blog, e-mail, interfață și documentație. Normele sunt aceleași peste tot. Se schimbă registrul, adresarea și convențiile genului: într-un e-mail către o instituție scrii „dumneavoastră”, iar pe butoanele unei aplicații alegi o singură formă, „Salvează” sau „Salvare”, și o păstrezi peste tot.
Dacă agentul ar citi 400 de pagini la fiecare e-mail, skillul ar fi inutilizabil. Nu le citește. La pornire vede doar numele și descrierea skillului. Când primește un text în română, deschide fișierul principal, de vreo 6.000 de cuvinte, care îi spune ce să mai citească și când. Anthropic, care a creat formatul, numește mecanismul „progressive disclosure”, adică dezvăluire treptată9. Pentru un e-mail citește profilul de e-mail. Înainte de orice corectură citește lista „ce nu e greșeală”. Restul îl deschide doar când ajunge la tema lui.
Costul nu dispare. În testele noastre, cu skillul încărcat, Claude a citit la o sarcină, în medie, de aproape 18 ori mai mult text decât fără el. Pentru un text pe care îl vor citi mii de oameni, ni se pare un preț corect.
Înainte să scriem prima regulă, am citit tot ce am găsit public: 27 de proiecte, dintre care o parte erau skilluri pentru română. Cele mai multe aveau între 8 și 32 KB, de obicei într-un singur fișier, adică de 25 până la 100 de ori mai puțin decât romana. Cel mai mare avea cinci fișiere de instrucțiuni, cu vreo 1.600 de rânduri; romana are aproape 7.700. Majoritatea țintesc limbajul clar sau tiparele după care se recunoaște un text generat de AI.
Am luat la verificat, pe DOOM 3 și pe dicționare, 949 de afirmații din aceste proiecte. 62 erau greșite, iar alte 26 erau disputate de surse. Mai multe skilluri condamnau forme corecte: „a realiza” cu sensul „a-și da seama”, pluralul articulat „copiii”, verbul „a downloada”, linia de pauză. Câteva, făcute ca să „umanizeze” textul generat, aveau în exemplele lor cifre și declarații inventate, adică exact ce un corector n-are voie să facă. Niciunul dintre cele citite nu acoperea împreună gramatica, sensul, stilul și coerența. Iar un corector gramatical open source cunoscut, pus să citească un paragraf plin de calcuri din engleză, n-a semnalat nimic.
Pe scurt, romana face altfel cinci lucruri. Fiecare regulă are sursa și nivelul ei. Lista „ce nu e greșeală” se citește înaintea oricărei corecturi. O regulă de fidelitate îi interzice agentului să adauge fapte, cifre sau citate. Un protocol separat, „caută cuvântul, nu-l presupune”, îl obligă să verifice orice cuvânt rar sau nou. Și totul e măsurat cu teste.
Aceeași exigență am aplicat-o și regulilor noastre. Primele trimiteri la DOOM 3 le scriseserăm înainte să avem la îndemână textul normelor lui. Când l-am avut, am verificat 90 de citări: 67 erau exacte, 22 trebuiau corectate, iar una a coborât de la normă la recomandare. Pe ÎOOP, patru reguli au coborât de la normă la recomandare, iar una dintre ele condamna chiar o formă corectă. Am mai găsit 41 de trimiteri spre reguli care nu existau. Acum le prinde automat programul care validează skillul la fiecare modificare.
Cel mai instructiv exemplu l-a prins un agent pus să caute greșeli în regulile scrise de alt agent. Una dintre primele noastre reguli spunea că „altădată” înseamnă doar „odinioară” și trecea ca greșeală de normă fraza „Altădată vom discuta și asta”. DEX ’98 dă însă pentru „altădată” și sensul de viitor. Regula noastră era tocmai hipercorectitudinea pe care voiam s-o prevenim. Pentru un programator, lecția e cunoscută: ce n-a fost verificat pe sursă e o eroare care așteaptă să fie găsită.
Apoi am dat toate regulile și toate cazurile de test, 781 de elemente, la doi recenzenți: Codex și Claude. Fiecare le-a judecat separat. Unde cel puțin unul a obiectat, la 181 de elemente, a decis un al treilea model, cu dovada din surse. După două runde au rămas 128 de corecturi reale. Unele erau nuanțe. Altele erau greșeli adevărate: „au venit semnalări”, o construcție pe care DEX ’98 o atestă, figura la noi drept greșeală.
Proba cea mai convingătoare a venit din altă parte. Am dat skillului șapte texte scrise de oameni, de la redacții și edituri cunoscute, cam 6.600 de cuvinte în total. Nu le numim, pentru că, din motive de licență, textele stau într-un set privat. A semnalat opt încălcări de normă. Șapte erau greșeli reale de redactare sau de culegere, iar vocea și oralitatea autorilor au rămas neatinse.
Oricine a scris software știe că „pare mai bine” nu e o măsurătoare. În lumea AI, testele de felul acesta se numesc evals10: cazuri cu rezultat cunoscut, pe care le rulezi de fiecare dată când schimbi ceva. Am scris 146 de cazuri publice, apoi încă 20 pentru cuvinte, plus un set privat cu texte reale. Un program în Go11 le rulează pe două modele, Claude Sonnet, în Claude Code, și GPT-6.1 Sol, în Codex, o dată fără skill și o dată cu el. Cu alte modele, cifrele pot ieși altfel. Notarea e mecanică: câte forme corecte a stricat agentul și câte greșeli reale a lăsat în text.
Câteva rezultate din rularea completă de pe 22 octombrie, fără skill → cu skill12:
| Ce testăm | Claude | Codex |
|---|---|---|
| Forme corecte care par greșite: câte au fost „corectate” | 9 → 0 | 11 → 0 |
| Corectură: câte greșeli reale au rămas în text | 14 → 1 | 2 → 1 |
| Verificare, pe forme care depind de context („Casa sa” e corect, „Guvernul sa întrunit” nu): câte forme corecte au fost semnalate | 21 → 3 | 27 → 3 |
Cazul cu „Dați click” e chiar în acest set. Fără skill, ambele modele l-au „reparat”. Cu skill, amândouă au lăsat textul neschimbat.
Nu toate grupele arată la fel de bine. Pe șase texte reale din setul privat, verificate de la cap la coadă, Claude cu skill a ratat mai puține greșeli, una față de șase, dar a semnalat ca greșite patru forme corecte, față de două fără skill. Raportul complet le are pe toate, cu bune și cu rele.
Regulile rezolvă construcțiile, dar nu și cuvintele. Un model știe multă română, dar nu știe sigur dacă un cuvânt rar există, dacă un neologism a intrat în dicționar sau dacă o variantă e acceptată. Așa că ghicește, și ghicește convingător.
Am construit un dicționar pe care agentul îl poate întreba, pe baza exportului oficial dexonline13, publicat sub licența GPL. Nu facem cereri automate către site, pentru că termenii lui nu le permit. Programul descarcă exportul la prima folosire, îl transformă într-o bază de date locală și verifică cel mult o dată pe săptămână dacă a apărut unul nou. Altă cerere către site nu face. Agentul îl folosește prin MCP14, protocolul prin care asistenții AI cheamă unelte externe, despre care am scris și în studiul de caz RagCode MCP. Omul îl poate folosi direct din terminal. E scris în Go, un singur fișier pentru Linux, macOS și Windows, fără nimic altceva de instalat.
Un exemplu ne-a arătat cât contează forma răspunsului. Am întrebat agenții dacă „parbrizul a fost degivrat” e corect. Prima variantă a dicționarului le dădea doar definiția din DEX ’98, care trimite de la „degivra” la „dejivra”. Informația era acolo, dar ambii agenți au răspuns că forma e corectă. Când am adăugat o notă care spune în cuvinte ce înseamnă trimiterea, adică faptul că DOOM 3 înregistrează doar „dejivra”, ambii au răspuns „dejivrat”. Agentul citește ce îi dai, nu ce ai vrut să spui.
Aici vine partea pe care n-am anticipat-o. Am măsurat skillul cu dicționarul conectat și am primit un rezultat care nu avea sens: Claude rata mai multe probleme cu skillul și dicționarul decât cu skillul singur. Pe aceleași 42 de cazuri, 6 în loc de 0,5.
Când un rezultat nu are sens, primul suspect e o eroare în program, un bug, cum îi spun programatorii. Am citit răspunsurile salvate și am găsit cauza. Fără dicționar, skillul se încărca în toate cele 84 de rulări. Cu dicționarul, nu s-a încărcat în 19 dintre ele. Agentul vedea două unelte care „verifică un text în română”, părea să creadă că are deja tot ce-i trebuie, folosea doar dicționarul și răspundea „nicio problemă”. Dar dicționarul verifică ortografia, nu sensul, așa că frazele ambigue și formele disputate treceau neobservate.
Reparația a fost în două fraze. Descrierea skillului spune acum că se folosește și când agentul are unelte de dicționar. Instrucțiunile dicționarului îi cer agentului ca, dacă are un skill pentru texte în română, să-l încarce înainte de prima unealtă. După asta, Claude a încărcat skillul în toate rulările.
Pe 23 octombrie am refăcut măsurătoarea pe aceleași 42 de cazuri, de data asta în patru variante: fără nimic, doar cu dicționarul, doar cu skillul și cu amândouă. Cifrele sunt medii pe două rulări; mai puțin e mai bine. Rularea din 22 octombrie avea o singură trecere pe caz și toate grupele de teste, așa că cifrele celor două tabele nu se suprapun exact.
| Fără nimic | Doar dicționarul | Doar skillul | Skill și dicționar | |
|---|---|---|---|---|
| Claude: forme corecte tratate ca greșeli | 23 | 13,5 | 7,5 | 0 |
| Claude: greșeli reale scăpate | 14,5 | 12,5 | 1 | 1 |
| Codex: forme corecte tratate ca greșeli | 36 | 41 | 1,5 | 1,5 |
| Codex: greșeli reale scăpate | 6 | 6,5 | 2,5 | 3 |
Dicționarul singur ajută puțin, iar pe Codex chiar încurcă: modelul găsește mai multe probleme false. Skillul face aproape toată diferența. Pe Claude, combinația dă cel mai bun rezultat: nicio formă corectă stricată și o singură greșeală scăpată. Pe Codex, combinația e aproape la egalitate cu skillul singur, cu aceleași semnalări false și cu o jumătate de greșeală scăpată în plus, în medie.
Dicționarul își arată valoarea pe cele 20 de cazuri construite pentru cuvinte: variante, forme greșite ca „să continuie” și cuvinte pe care dicționarul nu le are, ca „onboardare”: agentul trebuie să le lase neschimbate și să le treacă pe lista celor neverificate. Aici, cu dicționarul, greșelile scăpate au scăzut la ambele modele: la Claude de la 3,5 la 1,5, la Codex de la 1 la 0, față de skillul singur.
Măsoară combinația, nu doar piesele. Skillul era bun. Dicționarul era bun. Împreună, la prima încercare, erau mai slabe decât skillul singur. O unealtă nouă schimbă felul în care agentul își împarte atenția, iar asta nu se vede decât într-un test.
Partea grea e să știi ce să nu atingi. Am petrecut mai mult timp pe lista „ce nu e greșeală” decât pe greșelile propriu-zise. Am căzut și noi în capcană: verificatorul automat care prinde grafia veche („cînd”, „sînt”) semnala, la primele versiuni, numele de familie care se scriu legal cu „î”, ca Cîndea sau Stîncu, și localități din Republica Moldova, ca Sîngerei. Le-am prins în recenzie și le-am acoperit cu teste, iar la fiecare schimbare comparăm rezultatele pe 207 texte reale.
Merită să pui un agent să-l contrazică pe altul. Codul a trecut prin șase runde în care un recenzent caută defecte și un al doilea încearcă să le infirme. E mai lent decât o recenzie obișnuită, dar prinde ce scapă unui singur cititor. În primele trei runde au rămas confirmate câte 10 sau 11 probleme, în ultimele trei între 2 și 5, iar acestea au fost doar detalii.
Textul pe care îl citești l-a scris un agent AI cu skillul romana încărcat, în modul scriere, pe profilul de blog. Fiecare cifră vine din registrul nostru de lucru și din rezultatele salvate ale testelor. Pe parcurs, agentul a căutat în dicționarul local cuvintele de care nu era sigur. „Click” e în DOOM 3, deci exemplul de la început rămâne valabil. Substantivul „bug” apare doar ca nume propriu, așa că l-am explicat, iar un adjectiv pe care dicționarul nu-l avea l-am înlocuit.
Apoi un al doilea agent, cu același skill, a citit articolul în modul verificare. N-a găsit nicio greșeală de normă, dar a făcut 18 observații, cele mai multe despre cifre care nu se legau între ele sau despre afirmații mai sigure decât le permiteau datele. Două exemple: 67 de citări exacte și 22 corectate nu făceau 90, iar o frază spunea că exportul dexonline se descarcă „o singură dată”, deși programul verifică săptămânal dacă a apărut unul nou. Le-am rezolvat pe toate.
La final, șapte agenți au recitit articolul: doi pe limbă, cu skillul, trei pe cifre, comparate cu datele din care provin, unul pe licențe și unul pe ce ceruserăm articolului. Fiecare obiecție a trecut apoi pe la alt agent, care a încercat s-o infirme. Din 26 de obiecții au rămas 9, toate reparate, iar la sfârșit verificatorul de dicționar a trecut prin fiecare cuvânt și n-a găsit nicio greșeală sigură. Cea mai serioasă: descrierea articolului spunea că toate cele 854 de reguli au sursa în DOOM 3 și ÎOOP, deși doar o parte trimit la ele, iar restul, la dicționare și la ghiduri de redactare. E exact lucrul pentru care am construit skillul: un al doilea cititor atent, pe care nu-l convinge un text doar pentru că sună bine.
Skillul și dicționarul se instalează pe calculator, iar asta îi descurajează pe mulți. De aceea am pus la dispoziția tuturor și un server MCP public, la adresa https://mcp.doitmagic.ro/mcp, pe care îl poți conecta la asistenții AI care acceptă servere MCP, de exemplu claude.ai sau ChatGPT, fără să instalezi nimic pe calculator. Pentru claude.ai, conectorul romana este publicat în directorul Claude, cu DO IT MAGIC SOFTWARE ca autor. Mai era și un motiv practic: în octombrie 2026, catalogul de pluginuri al OpenAI, cel din ChatGPT și Codex, nu mai primea pluginuri care au doar un skill.
Serverul are două unelte. Prima, verifica_greseli, găsește greșelile sigure, adică cele care nu depind de context: ș și ț scrise cu sedilă în loc de virgulă, grafia veche cu „î” în interiorul cuvântului și „sînt”, formele „vroiam, vroiai”, spațiul pus înaintea semnelor de punctuație. Pentru fiecare dă corectura, regula și sursa ei, iar când e cazul amintește excepțiile, de exemplu citatul redat exact. A doua, cauta_regula, caută în cele 854 de reguli, după cod („RO-TIP-027”) sau după câteva cuvinte („a face sens”), și întoarce regula întreagă, cu nivelul, exemplele și sursa.
Dicționarul nu e pe server. Unele dicționare din exportul dexonline au licențe care nu permit redistribuirea, așa că baza rămâne pe calculatorul fiecăruia, construită de program din exportul oficial. Pe server stă doar ce e al nostru: regulile și codul care verifică greșelile sigure, amândouă publice pe GitHub.
Textele trimise la verificare sunt ținute în memorie doar cât se calculează răspunsul, apoi dispar. Ca să vedem cum e folosit serverul și ce reguli trebuie îmbunătățite, înregistrăm la fiecare apel, în instanța noastră Umami de pe același server (stats.doitmagic.ro, fără terți), unealta folosită, aplicația din care vine, țara, cuvintele căutate cu cauta_regula și codurile regulilor găsite. Textele verificate nu ajung în statistici, iar adresa IP nu se păstrează acolo: servește doar la aflarea țării și, în memorie, la limitele de folosire. Proxy-ul web din fața serverului ține, ca la orice site, jurnalul obișnuit de acces (adresa IP, ora, adresa cerută), fără texte. Detaliile sunt în politica de confidențialitate a serverului, iar regulile de folosire în condițiile de utilizare. Textele de referință sunt și în depozitul proiectului (PRIVACY.md, TERMS.md), iar versiunile în engleză sunt la privacy și terms.
Serverul e gratuit și are limite, între care o cotă zilnică pe adresă, ca să rămână rapid pentru toți (limitele de folosire sunt în condițiile de utilizare, iar ce ține minte serverul ca să le aplice, în politica de confidențialitate). E scris în Go, ca restul proiectului.
Cel mai simplu e să-i ceri asistentului să instaleze pluginul de pe github.com/doITmagic/romana. Claude Code și Codex, care lucrează pe calculatorul tău, rulează singuri comenzile de mai jos.
Claude Code:
claude plugin marketplace add doITmagic/romana
claude plugin install romana@romana
Codex:
codex plugin marketplace add doITmagic/romana
codex plugin add romana@romana
Pluginul aduce skillul și, în Claude Code, verificarea automată a fișierelor scrise. Pentru dicționar mai instalezi programul romana. Pe Linux și macOS ajung două comenzi:
curl -fsSL https://raw.githubusercontent.com/doITmagic/romana/main/install.sh | sh
romana cauta casă
Prima pune programul în ~/.local/bin. A doua descarcă o singură dată exportul dexonline și construiește dicționarul, în aproximativ un minut. Pentru Windows și pentru legarea dicționarului în Codex, pașii sunt în README.
claude.ai, în browser sau în aplicația desktop: Customize → Plugins → Add → Add marketplace → Add from a repository, scrii doITmagic/romana, apeși Sync, apoi Add la Romana. Cu opțiunea Sync automatically activată, versiunile noi vin singure. Aici primești skillul, fără dicționar, pentru că programul romana rulează doar pe calculator.
ChatGPT: Pluginuri → Adaugă → Încarcă arhiva pluginului, cu fișierul romana-plugin.zip. Arhiva aduce skillul și serverul MCP public.
Fără să instalezi nimic, în Claude sau în ChatGPT. Conectezi o singură dată serverul MCP public, din setări. Nu ajunge să lipești adresa în conversație: asistentul nu se poate conecta singur la un server.
https://mcp.doitmagic.ro/mcp; apeși Continue, la autentificare alegi No sign in, apoi Add.După aceea scrii normal: „Verifică diacriticele din textul de mai jos”, „E corect «a face sens»?”, „Ce spune regula RO-TIP-027?”. Asistentul primește de la server descrierea uneltelor și le folosește singur. Serverul aduce verificarea greșelilor sigure și regulile; corectura completă a unui text o face skillul.
Dacă îl folosești, ne ajută o stea pe GitHub și, mai ales, greșelile pe care le găsești. Deschide o problemă pe GitHub (un issue) cu textul și cu ce a greșit agentul, sau cu o formă corectă pe care a „reparat-o” și care ar trebui să intre pe lista „ce nu e greșeală”.
Skillul romana nu e un corector complet și nu înlocuiește lectura umană a unui text important. Nu e făcut nici pentru poezie, proză literară sau traduceri din română. E făcut pentru textele de zi cu zi: pagini de site, articole, e-mailuri, documentație, texte de interfață.
La DO IT MAGIC SOFTWARE construim software la comandă și sisteme AI care rulează și pe infrastructura ta. Dacă ai o aplicație făcută cu AI care trebuie verificată și dusă în producție, vezi serviciul vibe code → producție sau scrie-ne.
Model lingvistic mare, Wikipedia. Modelul de limbaj e programul din spatele unui asistent AI, antrenat pe cantități foarte mari de text. ↩︎
DOOM 3, Dicționarul ortografic, ortoepic și morfologic al limbii române, ediția a III-a, Institutul de Lingvistică „Iorgu Iordan – Al. Rosetti” al Academiei Române, 2021. Versiunea online e publicată sub licența CC BY-NC-SA 4.0. ↩︎
Hallucination (artificial intelligence), Wikipedia. ↩︎
Agent Skills, formatul deschis pentru skillurile agenților AI, dezvoltat inițial de Anthropic. ↩︎
Claude Code, documentația Anthropic; Codex, agentul OpenAI pentru terminal, open source. ↩︎
ÎOOP6, Îndreptar ortografic, ortoepic, morfologic și de punctuație, ediția a VI-a, Academia Română, Institutul de Lingvistică „Iorgu Iordan – Alexandru Rosetti”, Univers Enciclopedic Gold, 2024. ↩︎
Hipercorectitudine, Wikipedia: greșeala care apare când cineva aplică mecanic o regulă valabilă în alte situații. ↩︎
Calc (lingvistică), Wikipedia. Pentru tipurile de calc, studiul clasic e Theodor Hristea, „Tipuri de calc lingvistic”, Studii și cercetări lingvistice, XVIII, nr. 5, 1967. ↩︎
Anthropic, „Equipping agents for the real world with Agent Skills”, 16 octombrie 2025. ↩︎
Anthropic, „Demystifying evals for AI agents”, 9 ianuarie 2026. ↩︎
Go, limbajul de programare în care sunt scrise dicționarul și programul de teste. ↩︎
Raportul complet, cu toate grupele de teste, pe pagina proiectului de pe GitHub. ↩︎
dexonline, dicționarele limbii române, online. Codul site-ului e public pe GitHub. ↩︎
Model Context Protocol, specificația oficială. ↩︎
Un skill open source pentru agenții AI (Claude Code, Codex și alții) care scriu, corectează și verifică texte în română. Are 854 de reguli, fiecare cu sursa ei, și o listă de forme care par greșite, dar sunt corecte. Opțional, vine cu un dicționar local, construit pe exportul oficial dexonline.
Prin mărime, surse și teste. Are peste 110.000 de cuvinte în 30 de fișiere, fiecare regulă își declară sursa (DOOM 3, ÎOOP, un dicționar sau un ghid de redactare), iar comportamentul agentului e măsurat pe 166 de cazuri de test publice, pe două modele.
Nimic. Proiectul e open source, sub licența MIT. Skillul nu are nevoie de internet, iar dicționarul rulează pe calculatorul tău.
Nu. În claude.ai îl adaugi din Customize → Plugins → Add marketplace, cu adresa doITmagic/romana. În Claude Code sau în Codex îi ceri asistentului să instaleze pluginul de pe github.com/doITmagic/romana, iar el rulează singur comenzile. Dicționarul local e un singur program, fără Go sau alte programe de instalat.
Se poate instala ca plugin: în ChatGPT, la Pluginuri → Adaugă → Încarcă arhiva pluginului, alegi fișierul romana-plugin.zip din pagina de versiuni de pe GitHub. Arhiva aduce skillul și serverul MCP public, fără dicționarul local, care rulează doar pe calculator.
Da, prin serverul MCP public de la adresa https://mcp.doitmagic.ro/mcp, cu două unelte: verificarea greșelilor sigure și căutarea în cele 854 de reguli. În claude.ai conectorul romana e publicat în directorul Claude (claude.ai/directory/romana): la Customize → Connectors cauți „romana” și apeși Connect; adresa o poți adăuga și manual, cu Add custom connector. În ChatGPT îl adaugi din pagina Plugins, cu Add custom MCP server. După aceea scrii normal, iar asistentul folosește singur uneltele. Serverul e gratuit și nu păstrează textele. Corectura completă, cu toate regulile aplicate, o face însă skillul.
Nu. Agentul aplică normele și semnalează ce nu poate hotărî singur: ambiguitățile, formele disputate, întrebările pentru autor. Textele importante merită în continuare o lectură umană.
Pentru că termenii site-ului nu permit cereri automate. Folosim exportul oficial al bazei de date: programul îl descarcă la prima folosire, îl transformă local într-un dicționar și verifică cel mult o dată pe săptămână dacă a apărut unul nou.