Where is Digit heading?
There are no dates here intentionally. Everything below is done as the previous step becomes measurably complete, and not according to a calendar date – and promising deadlines would mean naming a number that cannot be substantiated.
The order of steps, on the contrary, is not arbitrary: each subsequent step builds upon the measurement of the previous one. Where a step has been taken, a number is indicated. Where it has not been taken, it is stated what is missing.
Step 1. Answer with Resolvable Origin
Status: standing and measured.
The content of the answer is not generated by the model. It comes from one of three sources: a deterministic utility, a literal quote with an anchor to a file, or a certificate over verified morphisms. The model selects the source, but does not write the content.
This is the first step because everything else makes sense only in relation to it. A fast agent that convincingly generates text is not a template for a good agent, but another product.
| bare model | here | |
|---|---|---|
| fabricated facts | 100 % | 0.0 % |
| false answers | 40 % | 3.0 % |
The residual error is identified and not hidden: a correct quote is given for the wrong question — the system finds the actual fragment, provides it verbatim, but it does not answer the question that was asked.
Step 2. Your own model instead of someone else’s cloud.
Status: stationary, operates without network connection.
The router is trained for this agent and published openly, along with the training data and unsuccessful variations. It is set up with a single command: Digit downloads the server and weights itself; no additional installation is required.
A metric to keep in mind: the data, not the model size, did the heavy lifting. The same dataset on a base that is one-third smaller yields a conscious rejection rate of 90.7% versus 91.3%. Russian-language bases performed worse than regular ones.
Step 3. Russian without a neural network
Status: It stands, and is activated where it is useful.
A walkthrough of the query using rules — morphology and lexicon on top of a catalog of utilities. Seven hundred times faster and more accurate than the model in routing.
| rules | model | |
|---|---|---|
| tool selection | 96.0 % | 85.0 % |
| argument accuracy | 100.0 % | 90.1 % |
| latency | 1 ms | ~1 s |
What kind of measurement is this: for the rules, it’s a run rules-only across the entire set of tasks; for the model, it’s a reference run of the 1.7B router in bf16 across its main part.
Both pairs of numbers are located next to each other in one place—in the cascade description (digit_cli/ruleparse/cascade.py)—and they are taken from there.
Up to 2026-08-08, the right column showed 87% and 93%. This is not a fabrication or a typo: it is a different measurement – a row from the quantized version of the same model from the degradation table in its card, the best row in the table. The card itself states that this difference is equal to five tasks on 250 tasks and should be interpreted as noise, not as “quantization improving the model.” Comparing the best quantized version with the baseline and calling it a comparison with the model means choosing a convenient row. A reference row has been selected.
And a fair boundary, beyond which the rules do not replace the model, but become the first cascade: in generation, composition of steps, and responses based on the corpus, they yield zero. Plus, a measured property of the link: the errors of the cascade accumulate, rather than being replaced, so it is impossible to include rules behind a strong model – they spoil the main metric. Behind a local one – they improve it.
Step 4. Checking Arguments
Status: standing, available to the team.
A person writes a rule in words — the system builds a specification from it, runs it through a compiler and a fallacy detector, and responds with what is verified. The response distinguishes three outcomes, not two: verified and correct, verified and incorrect with an indication of the failed check, and an honest “failed to formalize.”
With 1,161 measurements, there are zero silent fallacies: not a single case where a rule is constructed, the compiler accepts it, but it does not mean what it says in words. The detector catches 1,698 false positives out of 1,698 with zero false negatives.
The limitation that is printed in every answer, including the green one: checks the construction of the rule, not the truth of the premise. “Apply 20% VAT to exports” will also receive the same green check – the system has no world model.
Step 5. A model that writes specifications
Status: trained and published, embedding is next.
A trained model with 1.7 billion parameters writes correct specifications without a reference in the query — and outperforms a model eight times larger, which was given a reference.
| passes the compiler | |
|---|---|
| the same model without training | 0 out of 150 |
| a model 8 times larger, with a reference guide | 79 out of 150 |
| trained, without a reference guide | 150 out of 150 |
A known weakness is mentioned in the card: 127 out of 1,491 documents passed the compiler but were left without a theorem. The reason has been measured and lies in the data: none of the training documents contained both a utility and a theorem simultaneously. The model honestly inherited the gap.
Step 6. Memory That Grows
Status: it stands.
Previously, all the memory went into the system prompt of each request, so its limit was 2,200 characters – a cheat sheet, not an archive. Now, notes live separately, and only what is relevant goes into the request.
| was | became | |
|---|---|---|
| accommodates notes | 22 | 1,229 |
| request weight with 800 notes | 33,719 tokens | 1,344 |
| search | — | 0.1 ms, offline |
Notes are linked to each other using wiki links in both directions and organized into sectors, so it is already a network, not a list.
Step 7. Digital Portrait
Status: under construction.
Accumulation of how the owner formulates and what they solve. Inside, there is a strict boundary, and it is more important than the possibility itself.
- how do you formulate — measurable and reproducible;
- what did you solve — a fact with a source, such an answer can be shown to people;
- what would you answer — a guess, marked as a guess, and only for you.
The third layer will not become an answer on your behalf to the outside world. The reason is not caution, but the structure: the entire Digit is based on the fact that the content is not composed, but the duplicate, by definition, composes it.
What you won’t find here: psychological typologies. They lack proven predictive power, and a system built on them would convincingly lie — precisely the opposite of what everything else is about.
What remains unresolved
This is not a “someday later” list, but an honest list of what is hindering us right now.
Composition of steps. Tasks involving multiple actions are equally poorly handled by both rules and models. Neither side has a measured solution.
Truth of premises. A formal system checks the inference from premises, not the premises themselves. A specification that is formally impeccable but factually false will pass all green checks. This is a limitation of the method, not a flaw.
Living formulations. All walkthrough measurements were performed on machine-generated phrase sets. “Zero silent fallacies” is a statement about two dictionaries, not about how people write. The first thing to do after integration is to collect real queries and remeasure.
The legacy of the fork. Digit evolved from Hermes Agent, and some of its teams and skills come from there. The split is happening: what users see is already ours, but the work is not finished.
What from the list has already been verified and with what numbers — on the measurements page. Where are the limits of the guarantee — on the limitations page.