Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@
"pages": [
"introduction",
"quickstart",
"guides/dashboard",
"ai-providers"
]
},
Expand Down Expand Up @@ -96,7 +97,7 @@
]
},
{
"group": "Light & Sun",
"group": "Light",
"pages": [
"guides/sun-sessions",
"guides/light-environment",
Expand All @@ -107,6 +108,7 @@
"group": "Insight & AI",
"pages": [
"guides/ai-chat",
"guides/recommendations",
"guides/interpretive-lens",
"guides/knowledge-base",
"guides/context-cards"
Expand Down
8 changes: 4 additions & 4 deletions guides/agent-access.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ The gateway is content-blind: it stores ciphertext and forwards it. It contains

<Steps>
<Step title="Enable Agent Access">
1. Open **Settings → Data → Agent Access**
1. Open **Settings → Agent Access**
2. Toggle it **on**
3. A read-only token appears — click **Copy** to put it on your clipboard (the clipboard is cleared after 60 seconds)

Expand Down Expand Up @@ -94,7 +94,7 @@ mcp_servers:
GETBASED_TOKEN: your-token-here
```

Replace `your-token-here` with the token from **Settings → Data → Agent Access**.
Replace `your-token-here` with the token from **Settings → Agent Access**.

## Multi-profile support

Expand All @@ -117,7 +117,7 @@ getbased_section('wearables', profile='Main')

### 30-day daily series (opt-in)

For time-series reasoning — "did my HRV drop the week before I got sick?" — the always-on summary is not enough. Open **Settings → Data → Agent Access** and turn on **"Push 30-day wearable series"**. getbased then writes a pivoted daily matrix into a separate section (~400 tokens):
For time-series reasoning — "did my HRV drop the week before I got sick?" — the always-on summary is not enough. Open **Settings → Agent Access** and turn on **Push wearable daily series**. getbased then writes a pivoted daily matrix into a separate section:

```
getbased_section('wearables-series-30d', profile='Main')
Expand Down Expand Up @@ -172,7 +172,7 @@ Agent Access is designed to share the minimum needed for an agent to be useful:
<Accordion title="Agent returns stale data">
The gateway is updated whenever you save changes in getbased. If answers seem outdated:

1. Confirm **Agent Access** is still toggled on in **Settings → Data**.
1. Confirm **Agent Access** is still toggled on in **Settings → Agent Access**.
2. Open getbased in your browser — the push happens from the browser, so it needs to be open at least once after your latest changes.
3. Check your network connection — the push requires internet access to reach the gateway.
</Accordion>
Expand Down
18 changes: 10 additions & 8 deletions guides/ai-chat.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@ title: "AI chat for lab result interpretation"
description: "Ask anything about your labs. The AI holds your full health history — biomarkers, lifestyle context, supplements, and wearables — no pasting required."
---

The AI chat panel is a streaming conversation window built into every page of getbased. Every message you send automatically includes a full snapshot of your data — you ask the question, the AI already has the context.
The AI chat panel is a streaming conversation window built into getbased. It is also the main guided path for fresh profiles: after the first-visit tour, chat helps you decide what to add first and routes you to import, setup, or profile context only when needed. Every message you send automatically includes a snapshot of the current profile data.

## Open the chat

Click the **chat bubble** floating in the bottom-right corner of the screen. The panel slides open alongside the dashboard, which shifts left to stay fully visible. Every chart, card, and section remains scrollable and interactive while the chat is open.
Click the **chat bubble** on desktop or the mobile chat button on smaller screens. On a fresh profile, the first-visit tour opens guided chat when it finishes. Returning desktop users with an empty profile may also see chat open automatically beside the welcome screen.

On desktop, the panel slides open beside the current view so charts, cards, and lenses remain usable while chat is open.

To expand the chat to full screen, click the **⛶** button in the chat header. Click it again to return to side-by-side mode. Your preference is saved between sessions.

Expand All @@ -34,12 +36,12 @@ Every message includes your complete health context. You never need to paste res
| Notes | Your freeform marker and profile notes |
| Cycle data | Menstrual phase context for female profiles |

## Focus card
## Current Focus

At the top of the chat, a **Focus Card** shows a one-to-three sentence AI-generated insight drawn from your recent lab trends, health goals, and wearable signals. It gives you an orientation before you start typing and updates automatically when your data changes.
The **Current Focus** card appears on the dashboard and in the Insight lens. It shows a one-to-three sentence AI-generated insight drawn from your recent lab trends, health goals, wearable signals, and profile context. It gives you an orientation before you start typing and updates when your data changes.

<Tip>
Use the Focus Card as a starting point. Click **Ask AI** next to any finding it surfaces to open a pre-populated chat question about that specific marker.
Use Current Focus as a starting point. Click **Ask AI** next to a finding or open chat from any view to ask a follow-up about that specific marker or recommendation.
</Tip>

## AI personalities
Expand All @@ -64,7 +66,7 @@ The **Enforce evidence-based accuracy** toggle (off by default) adds a strict in

## Conversation threads

The chat panel has a **thread rail** on the left side listing all your past conversations. Each thread is named automatically from your first message, and you can rename any thread by clicking its name.
The chat panel has a **thread rail** listing past conversations. Each thread is named automatically from your first message, and you can rename any thread by clicking its name.

- Start a new conversation at any time with **New Chat**
- Switch between threads without losing history
Expand Down Expand Up @@ -133,7 +135,7 @@ Not everything you see in getbased is AI-generated. Understanding the distinctio
### What the AI generates

- Chat responses and interpretations
- Focus Card insights
- Current Focus insights
- Per-card health dots and tips
- PDF lab import parsing
- Custom personality profiles
Expand All @@ -146,7 +148,7 @@ Not everything you see in getbased is AI-generated. Understanding the distinctio
| Trend alerts ("dropped 25%") | Linear regression and slope thresholds in deterministic code |
| PhenoAge biological age | Levine 2018 closed-form formula over 9 biomarkers |
| Calculated markers (HOMA-IR, BUN/Creatinine, Free Water Deficit) | Published mathematical formulas |
| Channel doses in Light & Sun | Bird-Riordan spectrum reconstruction — reproducible photobiology math |
| Channel doses in Light | Bird-Riordan spectrum reconstruction — reproducible photobiology math |

## Knowledge base grounding

Expand Down
4 changes: 2 additions & 2 deletions guides/backup.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ Folder backup files are standard getbased JSON exports. Restore one the same way
Open getbased in any Chromium-based browser (or Firefox/Safari if restoring a single-profile export).
</Step>
<Step title="Import the file">
Drop the `.json` file onto the import drop zone on the dashboard. getbased detects it automatically and merges it into your current data.
Drop the `.json` file onto the app or select it with the header import button. getbased detects it automatically and merges it into your current data.
</Step>
</Steps>

Expand All @@ -101,6 +101,6 @@ If you have not configured folder backup and have not manually exported in over

## Manual JSON export as a backup strategy

In addition to automatic backups, you can download a plaintext JSON copy of your data at any time from **Settings → Data → Export** or from the **Data & Notes** section at the bottom of the dashboard. This is your most portable backup — it is a plain file you can store anywhere: a password manager, an encrypted USB drive, or an offline backup.
In addition to automatic backups, you can download a plaintext JSON copy of your data at any time from **Settings → Data → Export**. This is your most portable backup — it is a plain file you can store anywhere: a password manager, an encrypted USB drive, or an offline backup.

See [Export and import your data](/guides/export-import) for the full export and import workflow.
12 changes: 6 additions & 6 deletions guides/biomarker-charts.mdx
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
title: "Read biomarker trend charts in getbased"
description: "Understand how getbased charts 300+ biomarkers across 17 categories — reference bands, optimal ranges, chart overlays, date comparison, and correlations."
description: "Understand how getbased charts 287+ biomarkers across 17 categories — reference bands, optimal ranges, chart overlays, date comparison, and correlations."
---

Every biomarker you import gets its own trend chart, organized by category on the dashboard. Charts plot values over time with reference range bands, optional overlays for context, and tools for comparing dates and exploring correlations between markers.
Every biomarker you import gets its own trend chart in the Labs lens and marker detail views. Charts plot values over time with reference range bands, optional overlays for context, and tools for comparing dates and exploring correlations between markers.

## The 17 biomarker categories

getbased tracks 300+ biomarkers organized into 17 categories:
getbased tracks 287+ built-in biomarkers organized into standard categories:

- **Biochemistry** — glucose, liver enzymes (ALT, AST, ALP, GGT), kidney markers, electrolytes
- **Hormones** — testosterone, estradiol, cortisol, DHEA, insulin, progesterone
Expand All @@ -21,7 +21,7 @@ getbased tracks 300+ biomarkers organized into 17 categories:
- **Urinalysis** — pH, specific gravity
- **Metabolomics**, **Fatty Acids**, **Neurotransmitters**, **Amino Acids**, and more (from specialty panels)

Category headers show how many markers have data versus how many are available ("4 of 12 biomarkers with data"). Markers with no data are hidden — only charts with at least one value are shown.
Category headers show how many markers have data versus how many are available. Markers with no data are hidden from the chart list until you import or enter a value.

## How charts work

Expand Down Expand Up @@ -72,7 +72,7 @@ Click any chart card to open the detail modal for that marker. The modal shows:

The **Compare** view lets you select any two lab dates and see how every marker changed between them. This is useful for measuring the effect of a diet change, a new supplement protocol, a medication, or any other intervention.

Open the Compare view from the sidebar and use the two date pickers to choose your dates. Every marker with a value on either date appears in the comparison table, showing:
Open **Compare dates** from Analysis tools and use the two date pickers to choose your dates. Every marker with a value on either date appears in the comparison table, showing:

- The value on the first (earlier) date
- The value on the second (later) date
Expand All @@ -89,7 +89,7 @@ Status colors follow the same convention as the rest of the app: green for norma

The **Correlations** view plots two biomarkers against each other as a scatter chart. Each point represents a single lab date, positioned by the values of both markers on that date. This reveals whether two markers tend to rise and fall together — or move in opposite directions.

Select **Correlations** in the sidebar, then choose a marker for the horizontal (X) axis and one for the vertical (Y) axis. The chart updates immediately.
Select **Correlations** from Analysis tools, then choose a marker for the horizontal (X) axis and one for the vertical (Y) axis. The chart updates immediately.

Values on both axes are shown as a **percentage of the reference range** — 0% is the lower limit, 100% is the upper limit. This normalizes markers with different units so they land on the same grid. Values outside the reference range appear below 0% or above 100%.

Expand Down
12 changes: 6 additions & 6 deletions guides/context-cards.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ title: "Fill in lifestyle context cards in getbased"
description: "Nine lifestyle panels capture diet, sleep, environment, and history — giving the AI context that shapes your labs and a typical GP visit never explores."
---

Context cards are nine lifestyle panels grouped under the heading **"What your GP won't ask you"** on your dashboard. They capture the health context that shapes your lab results — information a typical appointment rarely has time to explore. The more cards you fill in, the more precise the AI's interpretations become.
Context cards are nine lifestyle panels that capture the health context behind your lab results — information a typical appointment rarely has time to explore. They live in the **Profile Context** widget and in the **Insight** lens. Add the widget to your dashboard if you want those cards in your overview.

The dashboard shows how many cards you have filled (for example, **5/9 filled**) and lets you open any card with a single click.
New users do not need to fill every card before using getbased. Guided chat can route you to the relevant context only when it helps.

## The nine cards

Expand Down Expand Up @@ -35,12 +35,12 @@ Each card shows a small colored dot and a brief AI-generated tip (up to 12 words
The dots and tips are cached and only refresh when your data or card content changes, so they do not burn API calls on every page load.

<Tip>
Fill in as many cards as you can. The AI uses all nine cards when interpreting your lab results in chat and in the Focus Card. Each filled card adds meaningful context that the AI cannot infer from numbers alone.
Fill in the cards that are relevant now. The AI uses all nine cards when interpreting your lab results in chat and in Current Focus. Each filled card adds meaningful context that the AI cannot infer from numbers alone.
</Tip>

## How to fill in a card

Click any card on the dashboard to open its editor. Each editor uses pill-button selectors and tag chips for multi-select options — no dropdowns to dig through. Click **Save** to apply your changes.
Open **Insight** or the **Profile Context** dashboard widget, then click any card to edit it. Each editor uses pill-button selectors and tag chips for multi-select options. Click **Save** to apply your changes.

## Medical history card

Expand Down Expand Up @@ -78,13 +78,13 @@ EMF data is included in the AI chat context and in your JSON export.

## Supplement and medication timeline

Supplements are managed from the **Supplements** section on the dashboard (not inside a context card). Each supplement entry has a start date and optional end date, forming a timeline that the AI can use to correlate supplementation periods with biomarker trends. The same timeline approach applies to medications you log.
Supplements are managed from the **Supplements & Meds** widget and the Body lens, not inside a context card. Each supplement entry has a start date and optional end date, forming a timeline that the AI can use to correlate supplementation periods with biomarker trends. The same timeline approach applies to medications you log.

When you chat with the AI, it can reason about whether a supplement you started three months ago might explain a shift in a marker from your most recent draw.

## How context reaches the AI

When you send a chat message or the Focus Card refreshes, all nine cards plus the **Additional Notes** textarea below the card grid are included in the context. The Additional Notes field is free-form — use it for anything that does not fit neatly into a structured card: recent travel, a new medication, unusual stress, or anything else relevant. It auto-saves as you type.
When you send a chat message or Current Focus refreshes, all nine cards plus the freeform notes attached to profile context are included in the context. Use freeform notes for anything that does not fit neatly into a structured card: recent travel, a new medication, unusual stress, or anything else relevant.

The AI uses this context to give you interpretations that go beyond numbers — flagging when your sleep schedule, diet, or environment might explain a result, or surfacing a pattern that connects something you mentioned in a card to a trend in your labs.

Expand Down
2 changes: 1 addition & 1 deletion guides/cross-device-sync.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ If you lose your mnemonic, there is no recovery. You can still access your local

When you delete a profile, getbased marks it as deleted on the relay (a tombstone). On the next pull, every other paired device sees the tombstone and wipes its local copy automatically — single-profile deletes propagate without prompting.

For batched deletes (two or more profiles deleted at once), the receiving device quarantines the wipe and shows a confirmation UI in **Settings → Sync**. Each pending delete has **Apply delete** and **Restore** buttons. This protects against a leaked mnemonic: an attacker publishing tombstones for all your profiles would otherwise silently wipe every paired device on the next pull.
For batched deletes (two or more profiles deleted at once), the receiving device quarantines the wipe and shows a confirmation UI in **Settings → Data**. Each pending delete has **Apply delete** and **Restore** buttons. This protects against a leaked mnemonic: an attacker publishing tombstones for all your profiles would otherwise silently wipe every paired device on the next pull.

To reject a quarantined delete, click **Restore** — getbased re-publishes the local profile data, which beats the tombstone on the next sync. To accept, click **Apply delete** — the local wipe runs and the entry clears.

Expand Down
Loading