Asten for AI tinkerers

If you use models every day, you know where they are unreliable. Asten’s checks are deterministic rules. The assistant is optional: bring your own key or run a local model, read the exact request before it is sent, and know that it never writes your prose and your manuscript is never used for training.

Two small steam tugs moored at the bank of a dark green river, red stripes on their hulls, trees behind.

In short

Asten is a local-first writing environment with a deterministic canon engine: Rust, SQLite, a loopback HTTP API on 127.0.0.1:4317, and stable diagnostic codes. The checks run no model: perception is deterministic. The optional assistant in the desktop app (bring your own key, or a local model) only explains, searches and proposes; it never writes prose and never trains on manuscripts.

Common problems

Voice flattening

Every AI draft sounds like every other AI draft.

Confident nonsense

A model “remembers” a plot point that never happened.

Opaque data flows

Where did your chapter go when you pasted it in?

How the assistant fits

  1. You finish a chapter and ask the assistant what the draft implies. It reads what you attach and proposes three facts: “Mira · hair_color · black?”
  2. Each proposal cites the sentence it came from. None of them is canon yet.
  3. You confirm one, reject one, and mark one as a lie Mira tells. Only the confirmed one joins canon.
  4. The compiler, still deterministic, does the checking. The model never touches your prose.
  • ScribeCore canon check. Always on.
    CANON-E013
  • LifecycleLife after a settled death.
    CANON-E101
  • ClocksStory time against reading order.
    CANON-E201
  • Diction watchOptional filter-word notes.
    CRAFT-H001

Mira pushed her black hair back as the bell rang. Oren poured the tea, which was very strong. Three days earlier, the harbor had burned.

3 packs on · the page itself never changes

Limits

  • The assistant is new in 0.0.1b and has only been tested against mock providers that speak each vendor’s wire format; live providers need your key and are untested by Verne. The checks that judge contradictions stay rule-based.
  • Asten is open source under the MIT License; the source is on GitHub.
  • The local API binds to loopback by default and answers only to paired clients. Don’t expose it to a network without TLS and an owner passphrase.

Asten for ai tinkerers

Does Asten run a local LLM?
Asten does not bundle one. Its checks are deterministic rules. The optional assistant can call a local model through Ollama (or any OpenAI-compatible endpoint on your machine), or a cloud provider with your own key and consent, and everything AI-related switches off in one place.
Does Asten have an API?
Asten runs a local HTTP API on 127.0.0.1:4317 that its desk and add-ins use. It is a loopback API on your own machine, not a public cloud API.
Is Asten open source?
Yes. Asten is released under the MIT License, and the source is on GitHub (ArefinAlter/asten). Its rules and diagnostic codes are documented on this site.

Try the pre-alpha

Open the workbench in your browser on a sample novel, or download release 0.0.1b for Windows or Linux.