supermemory/CLAUDE.md
Muskan 2711aeecd1 AGENTS.md: fact-checked against main and the live docs; CLAUDE.md imports it so Claude Code reads it
- CLAUDE.md now starts with `@AGENTS.md`. Claude Code reads only CLAUDE.md when a repo has both (code.claude.com/docs
  memory, "AGENTS.md"), so without the import it never saw this file.
- The opening line leads with memory: a memory graph that updates and forgets facts, user profiles, and retrieval over
  documents.
- Corrections from a line-by-line check (150 claims, all against sources):
  - Python 3.11+ for apps/sdk-playground
  - per-package SDK pins: agent-framework-python is already on v5; livekit is uncapped
  - the @supermemory/tools description (adds Claude's memory tool)
  - the two missing CI steps, and when each runs
  - dev:local rather than dev (portless binds :443)
  - CONTRIBUTING's format-lint/build advice
  - the Auto Fix CI Failures workflow
  - `pip install -U`
  - the readiness field names
  - plugin sign-in
  - livekit's package name
- Removed one claim that couldn't be verified (format-lint erroring on a clean main).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 06:43:06 +05:30

3.9 KiB

@AGENTS.md

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Repository Structure

This is a Turbo monorepo containing multiple applications and shared packages:

Applications (apps/)

  • web/ - Next.js web application
  • mcp/ - Model Context Protocol server

Development Commands

Root Level (Monorepo)

  • bun run dev - Start all applications in development mode
  • bun run build - Build all applications
  • bun run check-types - Run TypeScript checks across all apps
  • bun run format-lint - Format and lint code using Biome

Web Application (apps/web/)

  • bun run dev - Start Next.js development server
  • bun run build - Build Next.js application
  • bun run lint - Run Next.js linting

Architecture Overview

Core Technology Stack

  • Runtime: Next.js (web)
  • Framework: Next.js (web)
  • Language: TypeScript throughout
  • Package Manager: Bun
  • Monorepo: Turbo
  • Authentication: Better Auth
  • Monitoring: Sentry

API Application (Primary Backend)

The API serves as the core backend with these key features:

Key API Routes

  • /v3/documents - CRUD operations for documents/memories
  • /v3/search - Semantic search across indexed content
  • /v3/connections - External service integrations (Google Drive, Notion, OneDrive)
  • /v3/settings - Organization and user settings
  • /v3/analytics - Usage analytics and reporting
  • /api/auth/* - Authentication endpoints

Web Application

Next.js application providing user interface for:

Key Libraries & Dependencies

Shared Dependencies

  • better-auth - Authentication system with organization support
  • drizzle-orm - Database ORM
  • zod - Schema validation
  • hono - Web framework (API & MCP)
  • @sentry/* - Error monitoring
  • turbo - Monorepo build system

Web-Specific

  • next - React framework
  • @radix-ui/* - UI components
  • @tanstack/react-query - Data fetching
  • recharts - Analytics visualization

Development Workflow

Content Processing Pipeline

All content goes through the IngestContentWorkflow which handles:

  • Content type detection and extraction
  • AI-powered summarization and automatic tagging
  • Vector embedding generation using Cloudflare AI
  • Chunking for semantic search optimization
  • Space relationship management

Environment Configuration

  • Uses wrangler.jsonc for Cloudflare Workers configuration
  • Supports staging and production environments
  • Requires Cloudflare bindings: Hyperdrive (DB), AI, KV storage, Workflows
  • Cron triggers every 4 hours for connection imports

Error Handling & Monitoring

  • HTTPException for consistent API error responses
  • Sentry integration with user and organization context
  • Custom logging that filters analytics noise

Code Quality & Standards

Linting & Formatting

  • Biome used for linting and formatting across the monorepo
  • Run bun run format-lint to format and lint all code
  • Configuration in biome.json at repository root

TypeScript

  • Strict TypeScript configuration with @total-typescript/tsconfig
  • Type checking with bun run check-types
  • Cloudflare Workers type generation with cf-typegen

Database Management

  • Drizzle ORM with schema located in shared packages
  • Database migrations handled through Drizzle Kit
  • Schema types automatically generated and shared

Security & Best Practices

Authentication

  • Better Auth handles user authentication and organization management
  • API key authentication for external access
  • Role-based access control within organizations

Data Handling

  • Content hashing to prevent duplicate processing
  • Secure handling of external service credentials
  • Automatic content type detection and validation

Deployment

  • Cloudflare Workers for scalable serverless deployment
  • Source map uploads to Sentry for production debugging
  • Environment-specific configuration management