# How Supastro Is Built: Inside a Computational Vedic Astrology Engine

A founder's tour of Supastro's architecture: a deterministic astronomy core, a structured fact layer, a governed reasoning layer, proof validation, and agents.

Author: Sandesh · Published: 2026-07-21 · Updated: 2026-10-01 · Section: Founder Notes · Category: Behind the Build · Reading time: 8 min · Publisher: Supastro (Quantum Karma), Bangalore, India

I get one question more than any other from engineers who try Supastro: so it's a chatbot with an astrology prompt on top, right? It's a fair guess, because that's what most of the category ships. It's also completely wrong for us, and that gap is the whole reason I'm writing this.

[Supastro](https://supastro.com) is a computational system first and a writing system a distant second. The words you read at the end of a report are the last five percent of the work. Underneath sits a stack that behaves less like a content generator and more like a scientific instrument: it measures, it derives, it checks its own answers, and only then does it speak. This is the first entry in a series where I open the hood in public. Today: the whole machine at a glance.

> **The one-sentence version**
>
> A deterministic astronomy core produces exact numbers. A structured layer turns those numbers into typed facts. A governed reasoning layer turns facts into language. A proof validator rejects anything that contradicts the math. An agentic layer plans and acts on top. Five layers, one direction of travel.

---

## The shape of the system

Everything is arranged as a one-way pipeline. Data only moves forward: raw birth details become precise positions, positions become facts, facts become reasoning, reasoning gets validated, and validated output becomes a reading or an action. Each layer is independent and separately testable, which is exactly what lets me rework one without cracking the others.

| Layer | What it produces | Why it earns its place |
| --- | --- | --- |
| Astronomy core | Exact positions and timing | Reproducible truth, zero guessing |
| Fact layer | Typed strengths, combinations, periods | A machine-readable chart |
| Reasoning layer | Human language and synthesis | Explanation, not calculation |
| Proof validator | A pass or fail on every claim | Kills contradictions before you see them |
| Agentic layer | Plans, timing, check-ins | It acts, not just describes |

## Layer one: the deterministic core

The foundation is pure mathematics with no intelligence in it at all, and that is deliberate. Given a date, a time, and a place, it computes sidereal positions, the rising sign, the divisional charts, planetary strengths, and the full ladder of planetary periods. The same inputs always produce the same output, to the last decimal, on every run and every machine.

That reproducibility is not a nice-to-have. It is the property that everything above it depends on. Here is the sequence for a single chart:

1. Normalize the birth moment. Date order, twelve or twenty-four hour time, and time zone are resolved with hard guards against the classic off-by-a-century and midnight mistakes.
2. Convert to a precise astronomical instant and compute sidereal longitudes for every body.
3. Derive the rising sign and build the divisional charts on top of it.
4. Score planetary strength through a multi-part classical model.
5. Lay out the planetary-period timeline across a lifetime.

> **Why determinism carries the whole product**
>
> If two runs of the same birth can disagree, nothing above can be trusted. So I test it directly: identical inputs must return a bit-identical chart, and that check runs before any code is allowed to ship.

## Layer two: structured facts, not vibes

Raw longitudes are useless to a reader and, honestly, dangerous to a model. So the second layer compiles them into a typed fact sheet: a compact, machine-readable description of the chart. Think of the difference between a pile of sensor readings and a labelled dashboard.

| Fact category | What it captures |
| --- | --- |
| Placement | Which sign and house every body occupies |
| Strength | A bounded score and a tier for each planet |
| Combinations | Named yogas and doshas, with the exact evidence that triggered them |
| Timing | The active major, sub, and sub-sub period right now |

A lot of the real intellectual property lives here, because turning classical rules into deterministic detectors - this combination is present because these precise conditions hold - is slow, careful work. The payoff is that the next layer never has to _know_ astrology. It is handed the facts and asked to explain them.

## Layer three: the reasoning layer

Only now does language enter. The reasoning layer takes the fact sheet and produces the synthesis you actually read. Three design choices define it:

- **A router** sits in front of the language models and picks the right one for each job, so the rest of the system never depends on any single provider or model.
- **A retrieval step** pulls the relevant passages from a searchable library of classical texts, so interpretations are grounded in source material instead of being invented on the spot.
- **Structured output** is requested wherever possible, so results can be parsed, validated, and rendered cleanly rather than dumped as a wall of prose.

> **A deliberate wall**
>
> The reasoning layer is never asked to calculate. It explains what the core already computed. Keeping calculation and explanation on opposite sides of a wall is the single most important decision in the product.

## Layer four: the proof validator

This is the layer I am proudest of, and the one almost nobody else builds. After the reasoning layer writes something, a validator reads it back and checks every checkable claim against the computed facts. If the text cites a strength value, a period lord, or a house number that does not match the math, the claim is flagged and corrected before it ever reaches you.

> The model is allowed to be eloquent. It is not allowed to be wrong about the numbers.

That inversion - treating generated text as a suspect to be cross-examined rather than an oracle to be trusted - is why the readings hold up when a serious practitioner checks them line by line. It is also why I sleep at night shipping this to real people who are making real decisions.

## The agentic layer

On top of the readings sits a set of agents. These are not chat replies. They are goal-driven planners that take a real objective, pull the native's chart and history, reason across timing, and hand back a structured, executable plan. You can feel the difference the moment you use one inside the [Supastro app](https://supastro.com).

| Agent | What you bring it | What it returns |
| --- | --- | --- |
| Timing planner | When should I do this? | Ranked windows, with reasons |
| Council | Help me judge this | A multi-voice verdict |
| Decision room | Option A or option B? | A scored, side-by-side comparison |
| Daily briefing | Nothing — it is proactive | Today, read against your chart |

The agents share memory - your confirmed life events, your recent mood from journalling - can call real tools like live weather for an outdoor date or nearby temples for a remedy, and write every run to a ledger so cost and usage stay transparent. They plan and they act. They do not just chat back.

## The design patterns holding it together

For the engineers reading this, here are the patterns I would point to first:

- **Deterministic-first.** Anything that can be computed exactly is, and the model is kept well away from it.
- **One-way data flow.** Five independent layers, each testable in isolation, each replaceable on its own.
- **A single choke-point on the way out** that strips internal detail from every response, so the browser only ever receives the reading itself.
- **Aggressive caching** of the expensive-but-stable pieces, like charts and positions, so cost stays flat as usage climbs.
- **Quality gates in the pipeline.** A battery of accuracy suites runs before anything ships, and a single red result blocks the release outright.

> **The through-line**
>
> Every one of these choices trades a little short-term convenience for long-term trust. That trade is the brand.

## Why I built it this way

Because I wanted a product that could survive scrutiny. Anyone can put a pretty front-end over a prompt in a weekend. Very few can hand a reading to a sceptic and watch it hold. Reproducibility, grounding, and validation are what make that possible, and they happen to be the same properties that make a system worth citing rather than dismissing.

In the next entry I go one level deeper into layer one: how a deterministic astrology engine actually works, and why _deterministic_ is doing so much heavy lifting in that sentence. The rest of the series lives under [Founder Notes](https://supastro.com/founder-notes).

---

## FAQ

#### Is Supastro just a chatbot with an astrology prompt?

No. Language is the final, thin layer. Underneath it sits a deterministic astronomy core, a structured fact layer, and a validation step that checks the words against the math before you ever see them.

#### What makes the readings reproducible?

The calculation layer is pure math with fixed inputs and outputs. The same birth details produce the same chart every single time, and that is enforced by tests that run before every release.

#### How do you keep the language accurate?

A proof validator cross-examines the generated text against the computed facts. Any claim that contradicts a strength score, a planetary period, or a placement is flagged and fixed automatically.

#### What is the agentic layer, in plain terms?

A set of goal-driven agents that plan and act - timing, decisions, daily briefings - using your chart, your history, and real-world tools, rather than only answering questions. Compatibility works the same computational way over [two charts](https://supastro.com/compare).

### Keep reading

- [See the engine in the app](https://supastro.com/dashboard) — Watch the layers work end to end
- [More Founder Notes](https://supastro.com/founder-notes) — The rest of this build-in-public series
- [Compatibility, computed](https://supastro.com/compare) — Two charts, one analysis
- [Guides and Knowledge Base](https://supastro.com/guides) — Core concepts in plain language

**See the engine, not the horoscope** Build your chart and run a reading that can survive a second opinion. [Open Supastro](https://supastro.com/dashboard)

---

Canonical: https://supastro.com/founder-notes/how-supastro-is-built · Supastro is an AI astrology platform for Vedic astrology (Jyotish), built as Vedic Super Intelligence (SI), by Quantum Karma, Bangalore, India. Chart positions are computed from NASA JPL ephemeris data on the Lahiri (Chitrapaksha) ayanamsa. 40 instruments are free to use.