Skip to content

Pratiikpy/Knole

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

258 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Knole — a mirror, not an assistant

A private AI journal that acts as a mirror, not an assistant

Anonymized before the model · encrypted under your key · recoverable from 0G · minted to your wallet

Live demo Demo Proof deck Notion X

0G Anonymized iNFT Evals CI License

📖 Start here → the full product overview on Notion — the complete story: visuals, architecture, PMF research, the privacy model, and the build journey. If you open one link, make it this one. Everything below is a summary.


Today — a reflection from your past

The 14-Day Mirror — patterns, dated

Ask My Life — quoted with receipts

The Index — editable, ⬡ 0G-stamped

Crisis-safe — real help, not a bot

Night — a full dark theme

The Problem

AI has quietly become where people process their decisions, relationships, and emotions. Yet every AI journal asks you to trust a company with your most private writing — and that trust is a policy, not a mechanism. A court recently forced OpenAI to produce 20M "deleted" ChatGPT logs.

The missing piece isn't demand. It's privacy, trust, and true ownership. That is Knole.

Proven demand — not a bet

The behaviour Knole productises already exists at scale. This is a validated market, researched end to end — not a hope.

  • Therapy & companionship is the #1 generative-AI use case — ~31% of all usage, up from 17% the year before (HBR, 2025); ~1 in 4 Americans would rather talk to an AI than a therapist. The center of consumer AI, not a wellness niche.
  • People already hand-build this. "I fed 14 years of journals into Claude — it found a 4-month burnout cycle I never noticed" (2k+ upvotes) · "AI sees the patterns I refuse to accept; it's not sugarcoating." The demand is here; the private, owned version isn't.
  • The category is funded, so the bet is de-riskedRosebud $6M (Bessemer, Tim Ferriss) on ~10k payers · Mindsera 80k users · PIN AI $10M (a16z) on private, user-owned AI. Knole's edge is sharper differentiation and real privacy, not first-mover risk.
  • Retention is what the category lives or dies on — AI apps retain 21% vs 30.7% for non-AI (RevenueCat, 2026); Knole's 30-second daily check-in is the on-ramp built to beat that.

Every single feature maps to a demand people already voice. The feature-by-feature demand table on Notion ties each one to real evidence — Rosebud · Stoic · Daylio · Day One · Reddit · a court record · a16z. Nothing here is speculative.

What Knole Does

One private memory engine behind ~30 features across 25 routes — the full product, not a demo.

  • Daily Reflection — reflects through four lenses (Gentle Mirror · Pattern Finder · Blunt Friend · Decision Coach), grounded in your own history and built to challenge, not flatter. Reflections stream token-by-token, and each one leaves a tamper-evident on-chain receipt.
  • The 14-Day Mirror — every two weeks, a private letter from your past self: recurring patterns, contradictions, and avoided decisions, each tied to a dated entry.
  • Life Canvas — your whole life on one private page: a mood arc, a theme constellation, your cast of characters, and the journey grid — every panel drawn from your own entries. The artifact only your own data can make (/canvas) — plus a shareable card of your mood arc + themes, no words or names, made to post (/card).
  • Ask My Life · Ask Knole · Chat · Private Research — answers drawn from your journal (quoted back by date with receipts), a private general assistant, a day-to-day thinking partner that remembers (anonymized every turn), and private web research (Qwen-Max on 0G).
  • The Index — every memory with source quotes, edit/forget controls, append-only history, and a ⬡ 0G badge; plus "what the model saw" (the anonymized text) and tamper-evident recall (memory history anchored on-chain).
  • Structure & momentum — Guided Programs · evidence-quoted Intentions · Therapy-prep session briefs · Correlations and Decision Replay over your own words · Themes · in-the-moment deepening.
  • Voice · Image · Capturevoice journaling (Whisper on 0G) · reflective image generation (Z-Image) · Chrome capture from anywhere · ChatGPT/journal import.
  • On your phone — a real installable app: Add-to-Home-Screen on iOS, one-tap install on Android, an offline shell, app shortcuts, and web push. Voice-first — open, speak, done.
  • Ownership & moneyMemory iNFT (a genuine ERC-7857 Agentic ID, minted to your own wallet — yours to carry across wallets or grant a 0G agent scoped access) · client-side wallet encryption · portable memory identity (revocable grants) · proof-of-journaling streaks on-chain · pay-with-0G credits · a signature-verified Stripe subscription · full export and restore-from-chain.
  • And more — Future-Self · AI Wrapped · Year Review · On-This-Day · Remembered (a past entry resurfaces to answer your past self) · Mood Timeline · Omission Radar · retention loop (digest + push) · Night theme · Crisis Safety (SB243).

Privacy by Architecture

Trust is minimized at every layer:

  1. Local MiniLM embeddings — the vectors never leave the machine
  2. Local anonymization before any prompt
  3. Reflection and live chat inside a 0G TEE — sealed inference, attestation-verified per response
  4. AES-256-GCM encryption under user-controlled keys
  5. Encrypted storage on 0G Storage
  6. Memory roots anchored on 0G Chain
  7. Deterministic restore from 0G
  8. ERC-7857 Memory iNFT — owned by the user's own wallet, portable and grantable

Even if the enclave were compromised, the model would still only ever see anonymized text.

Why 0G

Layer How Knole uses it
0G Compute Sealed AI inference inside a TEE
0G Storage Encrypted journal entries
0G Chain Integrity roots + memory ownership (iNFT)

The sealed 0G TEE is the primary inference path, verified by hardware attestation on every response. If the enclave is ever unreachable, Knole falls back to the plain 0G model — honestly marked not sealed, never dressed up as the enclave — so an outage costs the seal, never your privacy (the text is already anonymized before any model) or capability.

Proof, Not Promises

Every major claim is verifiable — and here's the on-chain proof, live on the 0G explorer:

The memory token is a genuine ERC-7857 Agentic ID — not an ERC-721 wearing the name. Don't take our word for it; call the deployed contract yourself. Every value below is read from KnoleAgenticID on 0G Aristotle mainnet and is live on the /verify page, re-checked on each load:

On-chain check (contract 0x6A3200…6B813) Result
supportsInterface(0x4b396f04)ERC-7857 (iNFT) true
supportsInterface(0x35d39512) — ERC-7857 Authorize true
supportsInterface(0xd79f01c7) — ERC-7857 Cloneable true
supportsInterface(0x80ac58cd) — ERC-721 (compatible) true
supportsInterface(0xdeadbeef) — unknown id (control) false

The control id returning false is the point: this is a real interface registry, not a stub that answers true to everything. Mints go to the user, not a central wallettoken #2 is owned by 0x45d6431D…, a user's own embedded wallet, minted gas-free by the server. The encrypted memory snapshot lives on 0G Storage; the token records only its hash.

  • Sealed inference is real, not a fallback — reflection and live chat run through the 0G Compute serving broker inside a TEE (TeeML), and every response is gated on processResponse(), which verifies the enclave attestation before the "sealed" badge is ever shown
  • 21 automated evaluation suites in CI — retrieval, groundedness, privacy-leak, crypto, isolation
  • Restore-from-chain verification with real mainnet roots
  • A real-wallet end-to-end run — inbox → Privy OTP → wallet-signed encryption → on-chain mint
  • A public Proof Deck documenting every feature with screenshots and commands

Built entirely by a solo developer — every commit public.

Built With

TanStack Start · React 19 · Neon Postgres + pgvector · Drizzle · local all-MiniLM embeddings · transformers.js NER · 0G Sealed Inference via the 0G Compute serving broker (TeeML, attestation-verified) → plain 0G model fallback (fully on 0G, no external LLM) · AES-256-GCM + wallet-derived keys · ERC-7857 Agentic ID (KnoleAgenticID) · Privy · 0G Aristotle mainnet via ethers


Run it locally
npm install
cp .env.example .env          # fill in the values (comments in the file)
npx drizzle-kit migrate       # apply migrations to your Neon database
npm run dev                    # http://localhost:3000
npm run evals                  # the 21-suite memory gate

You'll need a Neon Postgres URL (with the vector extension), an LLM key, and — for the on-chain features — a funded 0G mainnet wallet. Enable the TEE with OG_SEALED_INFERENCE=on (inference then runs through the 0G Compute broker; set OG_TEE_PROVIDER to pick the TeeML provider); enable minting by deploying the iNFT (node scripts/deploy-agentic-id.mjs) and setting KNOLE_NFT_ADDRESS_MAINNET.

Scripts & structure
Command Purpose
npm run dev / npm run build dev server / production build (client + SSR)
npm run evals memory-engine release gate → eval_runs
npm run test:e2e Playwright — full-product sweep + real-wallet journey
npm run worker overnight Dreaming consolidation

src/routes file-based routes · src/components/knole app shell · src/server the engine (embed · anonymise · sealed inference via ogCompute.ts · 0G storage · restore · reflect · mirror · ask · iNFT) · src/db Drizzle schema + pgvector · contracts/KnoleAgenticID.sol the ERC-7857 Agentic ID.

Current Status

Live on 0G Aristotle mainnetknole.me: local anonymization before the model · encryption under your key · restore-from-chain · Memory iNFT (genuine ERC-7857, minted to your own wallet) · the memory engine · 14-Day Mirror · Life Canvas · a shareable "shape of my month" card · an installable mobile app (iOS + Android PWA) · reflection lenses · Ask My Life · private web research · voice journaling · the Index · reflection receipts · tamper-evident recall · proof-of-journaling · pay-with-0G · portable memory identity · retention loop · Crisis Safety (SB243) · 0G sealed inference — all served fully on 0G.

Before high-volume production: an external security audit and KMS-backed key custody are recommended (the signing-key seam and rotation runbook are in place — see HUMAN.md).


A journal should belong to the person who wrote it. Knole makes that a technical guarantee, not a legal promise.

About

A private AI journal that acts as a mirror, not an assistant — anonymized before inference, encrypted under your key, and owned by you on 0G. Live at knole.me

Topics

Resources

License

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors