AI health coach for Claude. Tracks 20 metrics, scores your health coverage, coaches you through 14-day focused programs. Local-first, your data stays on your machine.
Project description
Kiso (基礎)
The backend platform for Kasane and Milo.
Kiso is a health intelligence server that powers two clients: the Kasane iOS app (habits, coaching, focus plans) and Milo (an AI coaching agent on WhatsApp). Both read and write the same person profiles, habits, check-ins, and health data through a shared API.
The name means "foundation" in Japanese. Kasane means "layers." Kiso is what the layers sit on.
What it does
For the iOS app: bidirectional sync of persons, habits, check-ins, focus plans, and health measurements via REST API.
For Milo: 40+ MCP tools for health coaching. Log weight, meals, labs, blood pressure. Pull data from Garmin, Apple Health, Oura, Whoop. Score 20 health metrics against NHANES population percentiles and clinical guidelines.
For both: a unified person context that merges Kasane data (SQLite) with health tracking data (CSVs) in one call.
Quick start
git clone https://github.com/a-deal/kiso.git
cd kiso
pip install -e ".[gateway,dev]"
# Run the gateway
python3 -m uvicorn engine.gateway.server:create_app --factory --port 18800
# Run tests
python3 -m pytest tests/ -v
MCP server (for Claude Desktop / Claude Code)
{
"mcpServers": {
"kiso": {
"command": "uvx",
"args": ["kiso"]
}
}
}
API surfaces
| Surface | Path | Client |
|---|---|---|
| Kasane sync | POST /api/v1/sync |
iOS app |
| Kasane CRUD | /api/v1/persons, /api/v1/habits, etc. |
iOS app |
| Person context | GET /api/v1/persons/:id/context |
Milo |
| Health tools | /api/{tool_name} |
Milo, iOS Shortcuts |
| Wearable auth | /auth/garmin, /auth/google |
Browser (OAuth) |
Full API reference: docs/API.md
Architecture
One Python process. Two storage systems. Three clients.
- SQLite (
data/kasane.db): persons, habits, check-ins, focus plans. Synced with iOS. - CSVs (
data/): weight, meals, labs, Garmin, supplements. Written by Milo's tools. - Bridge:
person.health_engine_user_idlinks a SQLite person to a CSV data directory.
Full architecture: docs/ARCHITECTURE.md
Health scoring
20 clinically validated metrics scored against NHANES population data (300K+ Americans) and clinical guidelines from AHA, ADA, and ESC. Covers cardiovascular, metabolic, body composition, recovery, and lifestyle dimensions.
Going from 0% to full coverage costs under $300.
Full methodology: docs/METHODOLOGY.md
Docs
| Doc | What's in it |
|---|---|
| ARCHITECTURE.md | System design, storage model, deploy model, project layout |
| API.md | v1 endpoints, sync protocol, data types |
| ROADMAP.md | Cloud adoption phases (JWT, Litestream, Supabase) |
| METHODOLOGY.md | Why each metric, evidence sources, clinical thresholds |
| SCORING.md | How the scoring engine works |
| METRICS.md | 20-metric catalog |
| DATA_FORMATS.md | CSV/JSON schemas |
| ONBOARDING.md | Setup walkthrough |
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file baseline_health-0.8.1.tar.gz.
File metadata
- Download URL: baseline_health-0.8.1.tar.gz
- Upload date:
- Size: 252.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c03571d0f8a54c7a322019c307396c766da558fe23172b6e321f5d87911f735
|
|
| MD5 |
6a10e0e615925045b6ab1b773e793d59
|
|
| BLAKE2b-256 |
7069bc2300a0d80742cab0f3b699efe26c4a6762b9e7a5dcb10e0910d3b48f22
|
File details
Details for the file baseline_health-0.8.1-py3-none-any.whl.
File metadata
- Download URL: baseline_health-0.8.1-py3-none-any.whl
- Upload date:
- Size: 236.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9bc8cba5bf8568e40e5ae744f3de83493499a459ee9a2f394879e7aa19d043b7
|
|
| MD5 |
d40e178a6fe203837a844b14d13b14d0
|
|
| BLAKE2b-256 |
91ffe8016a935353629b011795f0630bf58c9e9a772d159b698c0d78295341ae
|