# Bulgarian Grammar

> Write, edit, translate or proofread grammatically correct Bulgarian (български език). Use whenever output contains Bulgarian prose — emails, docs, UI strings, marketing copy, literary text, EN→BG translation — or when asked to check Bulgarian grammar, spelling or punctuation. Covers the nine tenses, aspect, the renarrative/evidential moods, full vs. short definite article, the count form, clitic…

- **Type:** Skill
- **Install:** `agentstack add skill-techartdev-bulgariangrammarskill-bulgarian-grammar`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [techartdev](https://agentstack.voostack.com/s/techartdev)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [techartdev](https://github.com/techartdev)
- **Source:** https://github.com/techartdev/BulgarianGrammarSkill/tree/main/bulgarian-grammar

## Install

```sh
agentstack add skill-techartdev-bulgariangrammarskill-bulgarian-grammar
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Bulgarian grammar

Bulgarian is grammatically unlike English in ways that produce *fluent-sounding but
wrong* output. The failure modes are systematic, not random. This skill turns them
into explicit checks.

The five things that go wrong most often, in order:

1. **Full vs. short definite article** (`-ът/-ят` vs. `-а/-я`) — a syntactic rule with
   no spoken counterpart, so statistical intuition is useless.
2. **Evidentials** — Bulgarian *grammatically marks* whether you witnessed something.
   Reporting someone else's past statement in the indicative is a hard error.
3. **Participle selection** — `бих мислил` is correct, `бих мислел` does not exist.
4. **The count form** (`два стола` vs. `двама студенти`) — turns on whether the noun
   denotes a person.
5. **Clitic order and placement** — a fixed template; clitics may never open a clause.

## Workflow

**Never emit Bulgarian in one pass.** Draft, then run the verification pass below over
your own text before showing it. The checks are cheap and the errors are invisible to
fluency-based self-review.

1. **Draft.** Write the Bulgarian.
2. **Verify.** Walk the [Verification checklist](#verification-checklist) below. It is
   ordered by error frequency; do not skip items because the text "reads fine".
3. **Consult.** When any check is not obviously satisfied, open the relevant reference
   file rather than guessing. Guessing is what produces the errors.
4. **Fix and re-verify** the changed sentences.

For translation from English, first read `references/translating-from-english.md` —
several English structures have no direct Bulgarian equivalent and must be
restructured, not mapped.

## Reference files

Load on demand; do not read them all up front.

| File | Read it when |
|---|---|
| `references/definite-article.md` | Any masculine singular noun/adjective/pronoun ending in a consonant is definite |
| `references/evidentiality.md` | Reporting speech, retelling, folk tales, news from a source, hedging, rumours |
| `references/verb-system.md` | Choosing a tense; forming any compound tense; conjugating; aspect questions |
| `references/participles.md` | Any form with `-л`, `-н/-т`, `-щ` or `-йки`; passive; conditional; perfect |
| `references/nouns-numerals.md` | Plurals, count form, numerals, vocative, gender, agreement |
| `references/clitics-word-order.md` | Any short pronoun (`ме, го, ѝ, му, се, си, ми…`), `не`, `ще`, `ли`, possession |
| `references/orthography.md` | Spelling, `я/е` alternation, `ѝ`, capitals, hyphens, numbers, dates |
| `references/punctuation.md` | Any comma decision; quotes; direct speech; dashes |
| `references/translating-from-english.md` | Translating or adapting English source text |
| `references/calques-and-false-friends.md` | The text came from English; any borrowed verb, idiom or figurative usage |
| `references/error-catalogue.md` | Proofreading someone else's Bulgarian; want the error→fix table |
| `references/worked-examples.md` | Want the checklist applied end-to-end on real drafts |

---

## Verification checklist

Run in order. Each item names the test, not just the rule.

### 1. Full vs. short article — every definite masculine singular word ending in a consonant

Applies **only** to masculine singular words ending in a consonant (nouns, adjectives,
ordinals, possessives, participles used as adjectives). Nothing else in the language
has this distinction.

**Test:** replace the whole phrase with a pronoun.
- Replaceable by **той** → full article `-ът / -ят`
- Replaceable by **него / го / му** → short article `-а / -я`

```
Камъкът счупи прозореца.   =  Той счупи него.        →  подлог = пълен, допълнение = кратък
Видях новия директор.      =  Видях него.            →  кратък
Вие ли сте новият директор? =  съставно именно сказуемо → пълен
Мисълта за утрешния ден…    =  after a preposition   →  ALWAYS short
```

Hard guards:
- **After any preposition → short, always**, no matter what the phrase modifies.
- **Predicate nominal after `съм / бъда / стана / остана / оказвам се / изглеждам /
  представлявам / явявам се` → full.** `Георги Иванов е първият български космонавт.`
- Word order is irrelevant. `Директора на училището посетих вчера.` (object, fronted).
- Article goes on the **first** word of the phrase only: `новият голям завод`, not
  `новият големият завод`.
- Nicknames and always-definite place names take the short article even as subject:
  `Апостола`, `Щастливеца`, `Хисаря`, `Предела`.

→ `references/definite-article.md` for the soft-article list (`-ят/-я`), which is a
closed set: adjectives, ordinals, possessives; the ten nouns *цар, крал, ден, сън, кон,
огън, път, зет, лакът, нокът*; nouns in `-й`; the suffixes `-тел` and person-denoting
`-ар/-яр`.

### 2. Evidential mood — is the information yours or someone else's?

If the sentence reports what a **third party** said, thought or claimed (`каза, че…`,
`според Иван`, `твърди, че…`, `според доклада`, a folk tale, a rumour):

- The five **past** tenses (аорист, имперфект, минало предварително, бъдеще в миналото,
  бъдеще предварително в миналото) **must** be renarrated. Leaving them in the
  indicative is a gross error.
- The four **broadly present** tenses (сегашно, бъдеще, минало неопределено, бъдеще
  предварително) *may* stay indicative; that is usually the clearer choice.

```
✗ Иван каза, че Мария вчера цял ден игра тенис.
✓ Иван каза, че Мария вчера цял ден играла тенис.
✓ Според Иван Мария сега играе тенис.        (present — indicative is fine)
✓ Според Иван Мария сега играела тенис.      (also fine)
```

Formation, minimal version — replace the finite verb (or the **first** auxiliary) with
its `-л` participle and add present-tense `съм`; **in 3rd person the auxiliary is
dropped**, and that dropped auxiliary is the only thing distinguishing renarrative from
the perfect:

| Indicative | Renarrative |
|---|---|
| ходи / ходеше | ходел *(3rd p.)*, ходел съм *(1st/2nd p.)* |
| ходѝ *(aorist)* | ходил *(3rd p.)*, ходил съм |
| е ходил / беше ходил | бил ходил *(3rd p.)*, бил съм ходил |
| ще ходи / щеше да ходи | щял да ходи *(3rd p.)*, щял съм да ходи |
| няма да ходи / нямаше да ходи | нямало да ходи |

**Never renarrate the verb after `да`**: `хукнал да бяга` ✓, `хукнал да бягал` ✗.

→ `references/evidentiality.md` for the full paradigms, the doubly-renarrated forms
(`била взела`), the presumptive (`може да е спал`, `ще да знае`), and the exceptions
(general truths, mental states, questions about permanent state).

### 3. Participle selection — `-ил` vs. `-ел`

Bulgarian has two past active participles and they are **not** interchangeable.

- **Past *aorist* active participle** (from the aorist stem: `мислих → мислил`,
  `четох → чел`, `ходих → ходил`) is used in **everything except one place**: perfect,
  pluperfect, future perfect, future perfect in the past, the conditional, and the
  renarrative of the aorist.
- **Past *imperfect* active participle** (from the imperfect stem: `мислех → мислел`,
  `четях → четял`) is used **only** in the renarrative and presumptive of the present
  and the imperfect.

```
✓ бих мислил, бях мислил, ще съм мислил, мислил съм (perfect)
✗ бих мислел, бях мислел, ще съм мислел
✓ мислел съм  — only as "reportedly I think/was thinking" or "I may have been thinking"
```

The imperfect participle is never attributive and never takes an article: `училите
стихотворението` ✓, `учелите` ✗.

Only exception: verbs with no usable aorist, chiefly `зная` → `бих знаел`, `не съм
знаел`.

### 4. Aspect gate

A **perfective** verb (`напиша, седна, кажа, прочета`) may **not**:

- stand in the present tense of a main clause — `✗ Аз дам книгата` → `✓ Давам книгата`
  (it *is* allowed after `да`, `ако`, `когато`: `Искам да прочета`);
- form a negative imperative — `✗ Не седни!` → `✓ Не сядай!` / `Недей да сядаш!`;
- form a `-йки` adverbial participle — `✗ кажейки` → `✓ казвайки`;
- form a present active participle — `✗ кажещ` → `✓ казващ`;
- form a `-не` verbal noun — `✗ кажене` → `✓ казване`;
- follow phase verbs — `✗ Престанах да купя` → `✓ Престанах да купувам`.

### 5. Past tense choice: аорист vs. имперфект

- **Аорист** = the narrative tense: a chain of completed events that moves the story
  forward.
- **Имперфект** = the descriptive tense: background, states, simultaneity, habits. A
  string of imperfects does not advance time — it is one frame of the film.

```
Непознатият натисна звънеца… вратата се отвори.   (аорист — events)
На прага стоеше стара жена… косата ѝ излъчваше сияние.  (имперфект — description)
```

Do not translate every English past simple as аорист. `Когато го срещнах, той работеше
като готвач.`

**Минало неопределено** (`е ходил`) is a *result-now* tense, not a general past. Use it
when the present-day result is the point. **Минало предварително** (`беше ходил`)
requires a second, later past reference point.

### 6. Count form (бройна форма)

After a numeral or a quantity pronoun (`колко, няколко, толкова`), masculine nouns
naming **non-persons** take `-а/-я`; nouns naming **persons** take the ordinary plural,
with the masculine-personal numeral `двама…шестима` for 2–6.

```
✓ два стола, пет града, няколко коня, десет хиляди километра
✓ двама студенти, петима ученици, трима съдии
✗ двама студента, пет ученика
```

Distinguishers: `двамата царе` (rulers) vs. `двата царя` (chess pieces); `50 членове`
(of a club) vs. `50 члена` (of a law); teams and committees are non-persons —
`двата отбора`. Special: `седем дена` (not *деня*), `два пъти` (times) vs. `два пътя`
(roads), `100 души` (not *човека*), `двама синове`. Numerals ending in 1 (except
`едно`) take the plural: `21 градуса`, `31 списания`, `61 деца`. `дузина`, `милион`,
`хиляда` (the noun) do **not** trigger it: `дузина моливи`, but `три милиона долара`.

### 7. Clitic cluster

Order is fixed and the cluster is contiguous:

```
не → ще → съм/си/сме/сте/са → dative (ми, ти, му, ѝ, ни, ви, им, си) → accusative (ме, те, го, я, ни, ви, ги, се) → е
```

`е` (3sg of `съм`) is the exception: it goes **last**, after the pronouns.

```
✓ Не съм му го давал.      ✓ Дал ми го е.       ✓ Ще ти го дам.
✓ Не ми го е дал.          ✓ Иска ми се.        ✓ Няма да ти го дам.
✗ Не му съм го давал.      ✗ Е дал ми го.
```

**A clitic can never be the first word of a clause.** It needs a host to its left:
`✗ Ми се струва` → `✓ Струва ми се`. `не`, `ще`, `да`, `ли` or any fronted phrase can
serve as the host: `Не ми се струва`, `Днес ми се струва`.

`ли` follows the first stressed element or the first cluster member: `Знаеш ли?`,
`Не си ли му казал?`, `Дал ли си му го?`, `Ти ли му каза?`

### 8. Pronouns: drop them, and use clitics for possession

- **Bulgarian is pro-drop.** Delete `аз/ти/той/ние` unless contrastive. `✗ Аз мисля, че
  аз трябва да отида.` → `✓ Мисля, че трябва да отида.`
- **Possession = short dative clitic after the noun**, not a full possessive:
  `колата ми`, `майка ми`, `новата ми кола`. `моята кола` only under contrast.
- **`си` when the possessor is the subject**: `Иван си взе чантата` (his own) vs.
  `Иван взе чантата му` (someone else's). Body parts and clothing always take `си`:
  `Измих си ръцете.`
- **Negative concord is obligatory**: `Никой не дойде.`, `Нищо не знам.`,
  `Никога не съм ходил там.` Dropping `не` is an error.
- **Polite `Вие`**: verb and `-л` participles in 2pl (`Вие сте дошли`), but adjectives
  and passive participles agree in gender, singular (`Вие сте поканена`, `Вие сте
  добра`).

### 9. Orthography

- `я/е` alternation (ятово правило): `я` survives only if it is stressed **and** the
  next syllable has no `и/е/ю/я/ь` **and** no `й` or `ж/ш/ч/дж` intervenes. Hence
  `голям → големи`, `видял → видели`, `мляко → млечен`, `място → места`.
- `ѝ` (with the grave accent) is the short dative/possessive pronoun *"to her / her"*:
  `Казах ѝ`, `майка ѝ`. Never `и`, never `й`.
- **Lower case** for months, weekdays, nationalities, languages, religions, titles and
  job names: `януари`, `понеделник`, `българин`, `френски език`, `кмет`, `професор`.
- In multi-word proper names only the **first** word is capitalised (plus any embedded
  proper name): `Министерство на здравеопазването`, `Софийски университет "Св. Климент
  Охридски"`, `Втора английска езикова гимназия`.
- `по-` and `най-` take a hyphen and no space: `по-добър`, `най-добър`, `по-скоро`.
- Quotation marks are `„…“`; decimal separator is a comma; dates are `21.05.2026 г.`

### 10. Punctuation

- **No comma before `да`** — `Искам да дойда.` A comma appears before the *whole*
  conjunction in `за да`, `без да`, `преди да`: `Обадих се, за да проверя.`
- **Comma before** `че, който, когато, където, защото, ако, макар че, въпреки че,
  докато`, and before `а, но, ала, обаче, пък`.
- **No comma before a single `и` or `или`**; comma when they are repeated
  (`и…, и…`) or when a parenthetical/subordinate clause closes right before them.
- Parentheticals split into two groups: those that can also work as sentence parts take
  commas (`За съжаление,` `Честно казано,` `Разбира се,` `Общо взето,` `От една
  страна,` `Естествено,` `Между другото,`); those that exist only as parentheticals do
  **not** (`може би`, `навярно`, `вероятно`, `по всяка вероятност`, `следователно`,
  `всъщност`, `впрочем`, `наистина`, `според мен`, `обаче`, `например`, `сякаш`,
  `като че ли`, `в края на краищата`).
- `-йки` adverbial phrases are always set off by commas: `Иван, отивайки на училище,
  срещна Петър.` — and their subject must be the subject of the main clause.

### 11. Calques — only when the text came from English

Skip this item for text composed in Bulgarian. When translating or editing a translation,
grammatical correctness is not enough: an English verb given a Bulgarian ending, or an idiom
rendered word for word, passes every check above and still reads as a translation.

**Test:** would a Bulgarian writer produce this sentence with no English original in front of
them? If the phrase only makes sense once you reconstruct the English, rewrite it.

```
✗ Моделът е трениран…            ✓ Моделът е обучен…
✗ Актуализацията адресира…       ✓ Актуализацията отстранява…
✗ пейзажът на индустрията        ✓ секторът / картината в индустрията
✗ безшевна интеграция            ✓ безпроблемна / гладка интеграция
```

Watch for the **valency** trap, where the calque is grammatical: `изтичам` is intransitive, so
an actor cannot `изтече данни` — data leaks by itself (`изтичане на данни`).

See `references/calques-and-false-friends.md` for the catalogue and the corpus test used to
tell a genuine calque from ordinary professional usage.

---

## Fast self-audit prompts

When reviewing a finished Bulgarian text, ask literally these questions:

- Which words end in a consonant, are masculine singular and definite? For each, does
  the `той/него` test agree with the article I wrote?
- Does any sentence report someone else's past statement? Is it renarrated?
- Does any `-л` participle sit after `бих`, `бях`, `ще съм`, `съм`? Is it the **aorist**
  participle (`-ил`, not `-ел`)?
- Is any perfective verb standing alone in the present, or negated as an imperative?
- Does every numeral + masculine noun choose count form vs. plural by person/non-person?
- Is every clitic cluster in the order `не–ще–съм–dative–accusative–е`, and does no
  clause start with a clitic?
- Did I write a subject pronoun that carries no contrast?
- Is there a comma before `да`? (There should not be.)
- Are months, weekdays and nationalities lower case?
- If this came from English: is any verb an English one with a Bulgarian ending, and does any
  phrase only make sense once I reconstruct the English behind it?

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [techartdev](https://github.com/techartdev)
- **Source:** [techartdev/BulgarianGrammarSkill](https://github.com/techartdev/BulgarianGrammarSkill)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-techartdev-bulgariangrammarskill-bulgarian-grammar
- Seller: https://agentstack.voostack.com/s/techartdev
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
