untell.ai — reads your unspoken thoughts from digital footprints
Project description
untell.ai
Understands you better than Google does.
untell.ai analyzes your digital footprints to reveal patterns you didn't know you had. Not just what you search — why you search it, what you avoid, and what your behavior says when you're not paying attention.
What You Need
untell.ai uses two data sources to build your profile:
1. Chrome History (automatic)
Your Chrome browser stores every page visit, search term, and download in a local SQLite database. untell.ai reads it directly — no export needed.
What it captures:
- Every URL you visited + how long you stayed
- Every search term you typed in the address bar
- Pages you keep revisiting (obsession signals)
- Downloads (what you wanted to keep)
Note: Incognito/private browsing is not recorded by Chrome and cannot be analyzed.
2. YouTube Takeout (manual download, 5 min)
Google Takeout lets you export your full YouTube watch history as a JSON file.
How to get it:
- Go to takeout.google.com
- Click "Deselect all"
- Scroll down and select only "YouTube and YouTube Music"
- Click the YouTube section → change format from HTML to JSON
- Click "Next step" → "Create export"
- Wait for email → download the zip → unzip
Your Takeout folder will look like:
Takeout/
└── YouTube and YouTube Music/
└── history/
├── watch-history.json ← this is the key file
└── search-history.json
What it captures:
- Every video you've ever watched (title, channel, timestamp)
- Your YouTube search history
- Subscriptions and playlists
How It Works
untell.ai does not call any LLM API. It collects and structures your data. The analysis is done by whatever AI agent you're already using (Claude Code, Cursor, ChatGPT, etc.).
Step 1: untell collects Chrome + YouTube data
Step 2: Your AI agent reads the structured data
Step 3: AI generates a behavioral profile (facts, patterns, unconscious insights)
Step 4: untell serves the results as a web dashboard on localhost
Quick Start
Install
pip install untell-ai
Collect Chrome History
untell collect --source chrome --output events.json
This reads all Chrome profiles on your machine. No setup needed.
Add YouTube Takeout
untell collect --source youtube \
--input ~/Downloads/Takeout/YouTube\ and\ YouTube\ Music/history/ \
--merge events.json
Point --input to the history/ folder inside your Takeout download.
View Results
untell serve profile.json
Opens an interactive 4-tab dashboard on http://localhost:8765.
The Dashboard
| Tab | What's Inside |
|---|---|
| Summary | Identity layers, interest network graph, timeline, unconscious patterns |
| Facts | Who you are, active vs passive gap, hidden contradictions, predictions |
| Mood | Portrait, taste, passion, mission, drive |
| Google vs Me | How Google/YouTube see you vs who you actually are |
Analysis Techniques
| Technique | What It Reveals |
|---|---|
| Sequence Analysis | What you do after watching certain content — unconscious emotional patterns |
| Absence Analysis | What's missing from your data — things you avoid without realizing |
| Temporal Patterns | Time-of-day behavior shifts — different versions of yourself at different hours |
| Dwell Time | How long you spend on each page — true interest vs casual browsing |
| Cross-Source Gaps | What you search vs what you watch — conscious intent vs unconscious consumption |
Data Sources
| Source | How to Get It | What It Adds |
|---|---|---|
| Chrome History | Automatic (local SQLite) | Browsing, searches, downloads, dwell time, revisit patterns |
| YouTube Takeout | takeout.google.com → JSON format | Full watch history, channels, timestamps |
| Google Search Takeout | Same Takeout export | Raw search queries with timestamps |
Privacy
- 100% local. All data stays on your machine. Nothing is sent anywhere.
- No LLM API calls. untell.ai does not call OpenAI, Anthropic, or any external AI service. Your AI agent (Claude Code, Cursor, etc.) does the analysis locally in your session.
- No external data transmission. Chrome History is read locally. YouTube Takeout is parsed locally. The dashboard runs on
localhost— your browser talks to your own machine. - Chrome History is read with
immutable=1flag — doesn't lock the database. - No telemetry, no analytics, no tracking, no cloud uploads. Zero network calls.
License
Business Source License 1.1 — Free for personal use.
Commercial use requires a license. Contact: xodn348@gmail.com
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 untell_ai-0.1.0.tar.gz.
File metadata
- Download URL: untell_ai-0.1.0.tar.gz
- Upload date:
- Size: 65.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d4d0d743ac13ce689c568d3915bf851d05a53ef2753e25db514ecb76f7496ee2
|
|
| MD5 |
83d43deac0b01cc2cb485510a7793b66
|
|
| BLAKE2b-256 |
d209f7acc4bb956a55305c7288f15deb58de0325c294005ee70862d847d2d4b4
|
File details
Details for the file untell_ai-0.1.0-py3-none-any.whl.
File metadata
- Download URL: untell_ai-0.1.0-py3-none-any.whl
- Upload date:
- Size: 31.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f9c6d9eacd94411881ae2f193213ccbd380dbe0ef2b25a1d409491be4d7b9841
|
|
| MD5 |
80b68d25ca8637681e07b49a9863d5b2
|
|
| BLAKE2b-256 |
27af44b96b7a6afd8b16cf927677b80ed52f6ee0da56c52caeb5e3d4f82212a7
|