Skip to content
HN On Hacker News ↗

GitHub - itskie/friday: ⚡ The open-source persistent cognitive memory layer for AI coding agents. Stop your Cursor, Claude & Copilot from having amnesia.

▲ 9 points • 4 comments • by itskie • 4w ago • HN discussion ↗

Pangram verdict · v3.3

We believe that this entire text is AI.

100 %

AI likelihood · overall

AI
0% human-written 100% AI-generated
SEGMENTS · HUMAN 0 of 1
SEGMENTS · AI 1 of 1
WORD COUNT 1,245
PEAK AI % 100% · §1
Analyzed
Sep 16
backend: pangram/v3.3
Segments scanned
1 windows
avg 1245 words each
Distribution
0 / 100%
human / AI fraction
Verdict
AI
Pangram v3.3

Article text · 1,245 words · 1 segments analyzed

Human AI-generated
§1 AI · 100%

Every developer deserves a F.R.I.D.A.Y. The open-source, self-hosted persistent cognitive memory layer for AI coding agents. Cursor forgets. Claude forgets. Copilot forgets. Friday doesn't. Live Neural Studio — Obsidian-grade knowledge graph visualizer mapping real AI cognitive memory constellations. 🧠 The Problem — AI Amnesia You're deep in a session with Cursor. You've explained your entire auth architecture. Your JWT strategy. Your database schema. Your preferred patterns. You open a new chat. You: "Add a refresh token endpoint using our JWT pattern." Cursor: "Sure! What JWT library are you using? And how is your auth structured?" You: 😤 (again. for the 47th time this week.) Every AI coding assistant suffers from the same critical design flaw: no persistent memory. Each session starts at zero. Your AI gives you generic advice instead of deeply personalized, project-specific insight. You're repeating yourself constantly. The result? You're spending up to 40% of your time just rebuilding context — instead of building product. 💡 The Solution Friday is a persistent cognitive memory backbone that plugs into your existing AI tools via the Model Context Protocol (MCP). It runs fully self-hosted on your own infrastructure — your data never leaves your machine or your server. ┌──────────────────────────────────────────────────────────────────────┐ │ YOUR AI AGENT (Cursor / Claude / Antigravity / VS Code) │ └──────────────────────────────┬───────────────────────────────────────┘ │ 4 MCP Tools (stdio transport) ├── add_memory ├── add_fact ├── memory_search └── get_context │ ▼ ┌──────────────────────────────────────────────────────────────────────┐ │ FRIDAY BRAIN (FastAPI) │ │ │ │ Layer 2: Mem0 Layer 3: ChromaDB Layer 4: Neo4j │ │ ┌──────────────────┐ ┌─────────────────┐ ┌───────────────┐ │ │ │ Semantic Memory │ │ Vector Search │ │ Knowledge │ │ │ │ │ │ │ │ Graph │ │ │ │ • Cross-session │ │ • 90% fewer │ │ ────────── │ │ │ │ persistence │ │ tokens via │ │ ● WebApp │ │ │ │ • Contextual │ │ targeted │ │ ● Auth │ │ │ │ similarity │ │ retrieval │ │ ● Payments │ │ │ └──────────────────┘ └─────────────────┘ └───────────────┘ │ │ │ │ ⚡ Auto-Graph Engine │ │ ┌─────────────────────────────────────────────────────────────┐ │ │ │ Every memory → LLM extraction → Neo4j nodes + edges │ │ │ │ Zero manual linking. Your knowledge base wires itself. │ │ │ └─────────────────────────────────────────────────────────────┘ │ │ │ │ 🎨 Neural Studio │ │ ┌─────────────────────────────────────────────────────────────┐ │ │ │ Obsidian-grade live knowledge graph browser │ │ │ │ Spread slider • Filters • Inspector drawer • Full CRUD │ │ │ └─────────────────────────────────────────────────────────────┘ │ └──────────────────────────────────────────────────────────────────────┘ 📊 Why Friday? Capability Without Friday With Friday Remembers architecture decisions across sessions ❌ ✅ Recalls your exact coding preferences & style ❌ ✅ Knows your full project stack & dependencies ❌ ✅ Persists knowledge across chat resets ❌ ✅ Visual knowledge graph of your codebase ❌ ✅ Versioned facts ledger with full audit trail ❌ ✅ Self-hosted — data never leaves your infra ❌ ✅ Works with Cursor, Claude, VS Code, Antigravity ❌ ✅ Token cost per task ~8,000 tokens ~800 tokens Context recall accuracy ~30% ~94% 🚀 60-Second Quickstart Requirements: Docker + Docker Compose installed. That's literally it. No Python setup. No database config. No services to manage manually. Clone and configure git clone https://github.com/itskie/friday.git cd friday cp .env.example .env Fill in your .env — takes 60 seconds # Set your own master password to protect your self-hosted server FRIDAY_API_KEY=pick_any_secret_password_you_want # DeepSeek (ultra-affordable — $0.14/M tokens) # Get yours at: https://platform.deepseek.com DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # Mem0 — generous free tier available # Get yours at: https://mem0.ai MEM0_API_KEY=m0-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # Neo4j password — you choose this NEO4J_PASSWORD=change_to_something_strong Launch everything in one command docker compose up -d This starts: 🧠 Friday Brain on http://localhost 🕸 Neo4j on http://localhost:7474 🎨 Neural Studio at http://localhost Verify it's running curl http://localhost/health # {"status":"healthy","layers":{"neo4j":"ok","mem0":"ok","facts":"ok (0 entries)"}} Store your first memory curl -X POST http://localhost/add \ -H "X-Brain-Key: your_key" \ -H "Content-Type: application/json" \ -d '{ "content": "We use JWT with 15min access tokens + 7-day refresh. Implementation in gateway/auth.py. Never store tokens in localStorage — httpOnly cookies only.", "project": "MyApp" }' Your AI now remembers. Forever. ✅ 🔌 Connecting Your Agents (MCP Setup) Friday is designed to be the central cognitive memory for all your AI coding tools. Whether Friday runs locally on your machine or on a remote 24/7 cloud server (AWS EC2, VPS, Homelab), every agent connects to the same unified memory via the Model Context Protocol (MCP). ┌───────────────────────┐ │ Cursor (Desktop) │──┐ └───────────────────────┘ │ ┌───────────────────────┐ │ │ Claude Code CLI │──┼── MCP Protocol (stdio transport) └───────────────────────┘ │ FRIDAY_URL="http://your-server-ip:8000" ┌───────────────────────┐ │ BRAIN_API_KEY="your_secret_key" │ Antigravity IDE │──┤ └───────────────────────┘ │ ┌───────────────────────┐ │ │ Codex / Custom Agents │──┘ └───────────────────────┘ ▼ ┌──────────────────────────────┐ │ FRIDAY CENTRAL BRAIN │ │ (Self-Hosted on Cloud/EC2) │ │ FastAPI + Mem0 + Neo4j │ └──────────────────────────────┘ 💡 Shared Brain Superpower: An architectural rule or decision stored by Claude Code in your terminal is immediately accessible to Cursor, Antigravity IDE, or Codex on your desktop. Zero manual syncing. One brain across your entire toolchain. Step-by-Step Client Configurations Pick your client below, paste the configuration, and restart your agent: ⚡ Antigravity IDE Add Friday to your Antigravity global MCP configuration at ~/.gemini/config/mcp_config.json: { "mcpServers": { "friday": { "command": "python", "args": ["-m", "mcp.server"], "cwd": "/path/to/friday", "env": { "FRIDAY_URL": "http://localhost:8000", "BRAIN_API_KEY": "your_key_from_env" } } } } (If Friday runs on a remote server/EC2, change FRIDAY_URL to http://<your-server-ip>:8000) 🤖 Claude Code (CLI) Connect Claude Code to your Friday brain with one terminal command: claude mcp add friday -e FRIDAY_URL="http://localhost:8000" -e BRAIN_API_KEY="your_key_from_env" -- python -m mcp.server Or configure directly in ~/.claude.json under "mcpServers": { "mcpServers": { "friday": { "command": "python", "args": ["-m", "mcp.server"], "cwd": "/path/to/friday", "env": { "FRIDAY_URL": "http://localhost:8000", "BRAIN_API_KEY": "your_key_from_env" } } } } 🖱 Cursor Create or edit .cursor/mcp.json in your project root (or add globally in Cursor Settings → MCP → Add New Server): { "mcpServers": { "friday": { "command": "python", "args": ["-m", "mcp.server"], "cwd": "/path/to/friday", "env": { "FRIDAY_URL": "http://localhost:8000", "BRAIN_API_KEY": "your_key_from_env" } } } } (For a remote server, change FRIDAY_URL to http://<your-server-ip>:8000) 📟 Codex & Autonomous Agents (CLI / Scripts) Any custom agent, Codex script, or CI loop can interact with Friday in two ways: Option A: Via MCP stdio Run the MCP server directly as a subprocess using standard JSON-RPC 2.0. Option B: Direct HTTP REST API (zero client dependencies) # Store memory from any agent script curl -X POST http://<your-server-ip>:8000/add -H "X-Brain-Key: your_key" -H "Content-Type: application/json" -d '{"content": "Refactored payment gateway to Stripe SDK v2.", "project": "MyApp"}' # Retrieve relevant context before starting a prompt curl -X POST http://<your-server-ip>:8000/search -H "X-Brain-Key: your_key" -H "Content-Type: application/json" -d '{"query": "How is payments structured?", "project": "MyApp"}' 💻 VS Code (Cline / Roo Code) Add to your VS Code settings.json (or via Cline MCP settings): { "cline.mcpServers": { "friday": { "command": "python", "args": ["-m", "mcp.server"], "cwd": "/path/to/friday", "env": { "FRIDAY_URL": "http://localhost:8000", "BRAIN_API_KEY": "your_key_from_env" } } } } 🖥 Claude Desktop Edit your Claude Desktop configuration: macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json { "mcpServers": { "friday": { "command": "python", "args": ["-m", "mcp.server"], "cwd": "/path/to/friday", "env": { "FRIDAY_URL": "http://localhost:8000", "BRAIN_API_KEY": "your_key_from_env" } } } } 📁 Pre-built config templates for all clients are available in examples/. ✨ Features ⚡ Auto-Graph Engine — Zero Manual Linking Every memory you store is automatically analyzed by an LLM (DeepSeek Flash). Entities and relationships are extracted and wired into your Neo4j knowledge graph without any manual input from you. Input: "MyApp uses Stripe for subscriptions. Plans: Free ($0), Pro ($19/mo), Team ($49/mo). PayPal handles international. Webhooks at /api/payments/webhook." Auto-extracted graph: MyApp ────USES────────▶ Stripe MyApp ────USES────────▶ PayPal MyApp ────HAS_PLAN────▶ FreePlan [price: $0]