GnothiGnothi
SeriesFieldsCommunity
Sign inGet started free

Track the habit. Find out what actually moved it.

Gnothi Fields is an AI habit tracker whose payoff isn't a streak badge - it's a causal graph over your own behavior, showing which of the things you track are moving the others.

Every link it finds carries a direction, an effect size and a lag: which field moved which, how hard, and how long it took.

Get started freeSee the causal graph

Five lanes, one system

A field's lane decides its game mechanics - when it scores, when it resets, and what happens when you ignore it.

Habit

Behaviors you want more or less of, scored the moment you log them. Pushups, or smoking.

Daily

Do it once per period. You earn on the check and take a penalty on a period you miss. Meditate, floss.

To-Do

One-and-done, or recurring on a schedule. Left undone it decays and goes redder. Groceries and taxes; rent every month.

Reward

Spend what the rest of it earned you, gold first. Ice cream, a night of games.

Custom

Data only - no scoring, no game. Weight, sleep, mood. This is the lane the analysis loves most.

Log it in about a second

Five input types, because the friction of logging is the whole game. Nothing to analyze if you never write it down.

Five-star - a 0–5 rating, for the things that are a feeling rather than a count

Checkbox - did it, or did not

Number - +/− buttons and a text input, for reps, hours, dollars, pounds

Option - your own list of choices

Notes - no value at all - this field exists only for its outline

Forgot yesterday? Step the day back and log it there - every field, every value, on any day you choose. And all of it is anchored to your local midnight, in your own timezone, rather than to a server day that rolls over mid-evening.

Your behavior, as a causal graph

Not a streak badge. A directed graph of which of your tracked fields actually move the others.

This is the part of an AI habit tracker that a wall of streaks can't do - a causal claim, not a correlation heatmap.
1

Pivot

Your logged entries become a time series - days down one axis, fields across the other.

2

Run PCMCI+

The tigramite implementation, on its own Python worker, hourly, looking for effects up to two days lagged.

3

Write it down

The strongest links get summarized in a few plain sentences and saved back into your journal as an entry - something to read, not a chart to interpret.

Before you sign up expecting this on day one

Causal analysis runs on AI credits - every account starts with a balance - and it needs at least two analysis-enabled fields and at least five entries before it can run at all. A field also needs roughly a week of its own history before it counts toward the graph. Tracking itself is free, and the graph gets sharper the longer you log. What comes out is a statistical read of the fields you tracked - not a medical finding or clinical guidance.

Ask your data anything

"Which days do I sleep worst, and what did I do the day before?"

Your fields and their values go to the model as tables, with each field's influencer score attached, and the answer comes back in plain language - citing the specific dates, values and trends it read, and naming the direction and size of what it found.

"What happened to my mood in the weeks I stopped lifting?"

"Which of my fields is pulling the most weight right now?"

"Is my sleep actually improving, or is that just noise?"

When there isn't enough data to answer, it says so. That is deliberate: a confident answer off nine days of logs would be the single easiest thing here to fake.

A Workflowy-grade outline under every field

The outliner and the tracker are the same object - which is the one thing a standalone outliner can't do.

Every field carries an infinitely nested node tree, driven from the keyboard. The notes field type exists purely for it, for the reference material and project notes that were never going to be a number.

Structure - Tab / Shift+Tab to indent and outdent · Alt+Shift+↑/↓ to move a node · Enter splits into a new sibling · Shift+Enter adds a note

Navigation - Alt+↓ zooms into a node and Alt+↑ zooms back out · Ctrl+↓/↑ expand and collapse · ↑/↓ walk the outline

In bulk - Shift+↑/↓ or Shift+click selects a range, then indent, outdent or delete the whole selection at once · Ctrl+O shows or hides completed nodes

Harvest - Ctrl+Enter checks a node off · Ctrl+Shift+Enter completes it and scores its parent field in the same keystroke

Nothing has to be retyped to get in here. Paste an indented block or a bulleted list from anywhere and it lands as a real tree with its nesting intact, and a node that turns out to belong under a different field moves there with everything underneath it.
Harvest is the seam. In an outliner, finishing a line is bookkeeping. Here it is a logged data point on the field above it - so the notes you were keeping anyway become the dataset the causal graph runs on.

Due dates and attachments

Table stakes, present and out of the way - but doing a little more work than usual.

A due date that triages itself

Put a date on a todo, or on any single node in an outline. Gnothi labels it in words - due today, due in 2d, 3d overdue - and colors it red once it lands, amber inside three days, green beyond that. Today's list sorts the overdue to the top, and a todo further than three days out stays off it entirely until it's close.

A file on any node

Attach a file to a node and download it again whenever you need it. The upload goes straight from your browser to storage over a signed URL, so the bytes never travel through the app, and the ceiling is 10MB on purpose: this is for the document a note is about, not a drive to fill.

Gamification, deliberately dialed down

The points exist to get you logging. The logging exists to feed the causal graph.

Gnothi comes from the creator of Habitica, so the restraint here is a choice rather than an oversight. Four of them, specifically:

Damage is flat. An overdue todo costs a small fixed amount of experience per day, with no scaling for how overdue it is - so the todo you forgot two months ago can't wipe you out.

Partial credit is proportional. Miss a quota and the penalty is the fraction you missed, capped at one per field. Three of six done is half a penalty, not three.

The loss multiplier is 1×. Losses are counted once, not amplified, and a todo with no due date costs you no experience at all - it just goes visibly redder.

Scoring is per-field, and off where it doesn't belong. The Custom lane ships with scoring off and the To-Do lane with analysis off, so you can track weight, sleep or mood with zero game attached to it.

Optimizing hard for streaks gets you a streak. We'd rather you end up with a dataset worth analyzing, so the penalties stay mild on purpose. There's a Habitica sync if you're keeping both, and a group to compare notes with if accountability is what keeps you logging.

Your fields write your Series

What you track becomes context the author of your Series can actually use.

Because that causal summary is saved as an entry, it rides along into chapter generation as a block of field analysis. A Series can know that your sleep collapsed the week you stopped writing, and write the chapter accordingly.
Field analysis reaches the author only for a whole-journal Series. A Series you've scoped to particular tags never sees it - that suppression is on purpose, so a narrow Series can't leak the parts of your journal you left out of it.

Start tracking. The graph comes later.

Fields, outlines and logging are free. Log for a week or two and there'll be something worth analyzing.

Get started free