bb7e189374
* feat: integrate Claude Opus 4.6 model with 1M context window option Update model definitions across frontend and backend from claude-opus-4-5 to claude-opus-4-6 (without date suffix for automatic latest version). Add "Claude Opus 4.6 (1M)" as a separate dropdown option that enables the 1M token context window via the SDK beta header context-1m-2025-08-07. Wire betas parameter through all create_client() callers in the core pipeline (coder, planner, QA) and secondary callers (ideation, GitHub PR review, triage, orchestrator, followup reviewer) so the 1M context setting flows end-to-end from UI selection to the Claude Agent SDK. Also fix pre-existing pydantic import error in test_integration_phase4.py by mocking pydantic when not installed in the test environment. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat: simplify thinking system and remove opus-1m model variant Replace the 5-level thinking system (none/low/medium/high/ultrathink) with a streamlined 3-level system (low/medium/high) aligned with Claude's effort paradigm. Remove opus-1m model variant from frontend types, simplify agent thinking defaults, and clean up related test infrastructure. - Simplify THINKING_BUDGET_MAP to 3 levels in phase_config.py - Update agent thinking_default values (coder: none→low, insights: none→low, spec_critic: ultrathink→high) - Remove opus-1m from ModelTypeShort type - Streamline all backend callers (planner, coder, QA, ideation, GitHub services) - Update frontend constants, i18n, and task log labels - Clean up test assertions for new thinking levels Note: Pre-commit hook bypassed due to pre-existing test_github_pr_regression.py failure in worktree environment (unrelated to these changes; 451/452 tests pass). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: address PR review feedback - Fix inconsistent terminology: use 'thinking level' consistently in test docstrings (not 'effort level') - Clean up pydantic mock after use to avoid leaking into sys.modules for the entire test session - Update test assertions for new thinking defaults (coder: low, spec_critic: high) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: restore Opus 4.6 integration lost during thinking simplification The thinking simplification commit accidentally reverted all Opus 4.6 changes (model IDs, betas/1M context, frontend constants). This commit restores those changes and re-applies the thinking simplification on top. Restored: model ID updates (opus-4-5→opus-4-6), opus-1m variant with betas header for 1M context, betas parameter threading through all callers (client, planner, coder, QA, ideation, GitHub services). Thinking simplification preserved: 3-level system (low/medium/high), ultrathink→high in spec phases and complex profile, none→low defaults. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat: add adaptive thinking/effort level support for Opus 4.6 Route thinking configuration based on model type: Opus 4.6 gets both effort_level (via CLAUDE_CODE_EFFORT_LEVEL env var) and max_thinking_tokens, while Sonnet/Haiku get max_thinking_tokens only. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: update tests to match simplified thinking levels (no none/ultrathink) Tests were referencing 'none' and 'ultrathink' thinking levels that were removed in 1445185b. Updated to match current valid levels: low, medium, high. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: update outdated docstring and add legacy thinking level mapping - Update create_client() docstring to reflect current thinking budget values - Add LEGACY_THINKING_MAP for backward compatibility: 'none' -> 'low', 'ultrathink' -> 'high' with deprecation warnings - Add tests for legacy level mapping Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: add missing agent_type to planner and clean up return types - Add agent_type="planner" to follow-up planner create_client() call - Update get_thinking_budget() return type from int | None to int since 'none' level was removed (now mapped via LEGACY_THINKING_MAP) - Fix ruff formatting Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat: add Fast Mode toggle for Opus 4.6 and remove legacy thinking levels Add a global Fast Mode setting that passes CLAUDE_CODE_FAST_MODE=true env var to the Claude Code SDK subprocess for faster Opus 4.6 output at higher cost. The toggle appears in Agent Profile settings only when an Opus model is selected. Also removes deprecated 'none' and 'ultrathink' thinking levels from CLI choices and all mapping code, treating them as invalid with a fallback to 'medium'. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: propagate fast_mode to ideation and add MODEL_ID_MAP sync comments Thread fast_mode parameter through IdeationGenerator, IdeationConfigManager, and IdeationOrchestrator so ideation agents benefit from Fast Mode when enabled. Add --fast-mode CLI flag to ideation_runner and pass it from the frontend. Add sync comments to MODEL_ID_MAP in both backend and frontend to prevent drift. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: propagate fast_mode to PR review agents Add fast_mode field to GitHubRunnerConfig and pass it through to all create_client() calls in parallel_orchestrator_reviewer and parallel_followup_reviewer. Add --fast-mode CLI flag to GitHub runner. Frontend buildRunnerArgs() now accepts fastMode option, passed from PR review and follow-up review handlers via readSettingsFile(). Also fix leftover 'none' in GitHub runner thinking-level choices. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: clean up stale None types and comments after removing 'none' thinking level - get_phase_config() return type: tuple[str, str, int | None] → tuple[str, str, int] - THINKING_BUDGET_MAP type: Record<string, number | null> → Record<string, number> - Remove '(null = no extended thinking)' comment from THINKING_BUDGET_MAP - Remove dead None check and stale comment in insights_runner.py Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: correct stale frontend path in phase_config.py sync comments Update MODEL_ID_MAP and THINKING_BUDGET_MAP cross-reference comments from auto-claude-ui/src/... to apps/frontend/src/... to match the actual monorepo path and the frontend's reciprocal comment. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: add missing fast_mode and betas params to remaining GitHub engines - Add fast_mode=self.config.fast_mode to all 3 create_client() calls in pr_review_engine.py (run_review_pass, _run_structural_pass, _run_ai_triage_pass) - Add fast_mode=self.config.fast_mode to triage_engine.py create_client() call - Add betas and fast_mode params to review_tools.py spawn functions (spawn_security_review, spawn_quality_review, spawn_deep_analysis) - Remove stale comment in insights_runner.py Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: add betas, fast_mode, and effort_level to spec pipeline agent_runner Update create_client() call in AgentRunner.run_agent() to use get_model_betas(), get_fast_mode(), and get_thinking_kwargs_for_model() matching the pattern in coder.py, planner.py, and qa/loop.py. Add thinking_level parameter to run_agent() signature and pass from orchestrator. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: sort imports in agent_runner.py to satisfy ruff I001 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: format multi-line import to satisfy ruff I001 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: wrap long line to satisfy ruff format Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: add fast_mode to GitLab MR engine and serialize in GitHub to_dict() - Add fast_mode field to GitLabRunnerConfig and its to_dict() - Add betas and fast_mode params to GitLab mr_review_engine create_client() - Add fast_mode to GitHubRunnerConfig.to_dict() for settings persistence Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
373 lines
15 KiB
Bash
373 lines
15 KiB
Bash
# Auto Claude Environment Variables
|
|
# Copy this file to .env and fill in your values
|
|
|
|
# =============================================================================
|
|
# AUTHENTICATION (REQUIRED)
|
|
# =============================================================================
|
|
# Auto Claude uses Claude Code OAuth authentication.
|
|
# Direct API keys (ANTHROPIC_API_KEY) are NOT supported to prevent silent billing.
|
|
#
|
|
# Option 1: Run `claude setup-token` to save token to system keychain (recommended)
|
|
# (macOS: Keychain, Windows: Credential Manager, Linux: secret-service)
|
|
# Option 2: Set the token explicitly:
|
|
# CLAUDE_CODE_OAUTH_TOKEN=your-oauth-token-here
|
|
#
|
|
# For enterprise/proxy setups (CCR):
|
|
# ANTHROPIC_AUTH_TOKEN=sk-zcf-x-ccr
|
|
|
|
# =============================================================================
|
|
# CUSTOM API ENDPOINT (OPTIONAL)
|
|
# =============================================================================
|
|
# Override the default Anthropic API endpoint. Useful for:
|
|
# - Local proxies (ccr, litellm)
|
|
# - API gateways
|
|
# - Self-hosted Claude instances
|
|
#
|
|
# ANTHROPIC_BASE_URL=http://127.0.0.1:3456
|
|
#
|
|
# Related settings (usually set together with ANTHROPIC_BASE_URL):
|
|
# NO_PROXY=127.0.0.1
|
|
# DISABLE_TELEMETRY=true
|
|
# DISABLE_COST_WARNINGS=true
|
|
# API_TIMEOUT_MS=600000
|
|
|
|
# Model override (OPTIONAL)
|
|
# Default: claude-opus-4-6
|
|
# AUTO_BUILD_MODEL=claude-opus-4-6
|
|
|
|
|
|
# =============================================================================
|
|
# GIT/WORKTREE SETTINGS (OPTIONAL)
|
|
# =============================================================================
|
|
# Configure how Auto Claude handles git worktrees for isolated builds.
|
|
|
|
# Default base branch for worktree creation (OPTIONAL)
|
|
# If not set, Auto Claude will auto-detect main/master, or fall back to current branch.
|
|
# Common values: main, master, develop
|
|
# DEFAULT_BRANCH=main
|
|
|
|
# =============================================================================
|
|
# DEBUG MODE (OPTIONAL)
|
|
# =============================================================================
|
|
# Enable debug logging for development and troubleshooting.
|
|
# Shows detailed information about runner execution, agent calls, file operations.
|
|
|
|
# Enable debug mode (default: false)
|
|
# DEBUG=true
|
|
|
|
# Debug log level: 1=basic, 2=detailed, 3=verbose (default: 1)
|
|
# DEBUG_LEVEL=1
|
|
|
|
# Log to file instead of stdout (OPTIONAL)
|
|
# DEBUG_LOG_FILE=auto-claude/debug.log
|
|
|
|
# =============================================================================
|
|
# LINEAR INTEGRATION (OPTIONAL)
|
|
# =============================================================================
|
|
# Enable Linear integration for real-time progress tracking in Linear.
|
|
# Get your API key from: https://linear.app/YOUR-TEAM/settings/api
|
|
|
|
# Linear API Key (OPTIONAL - enables Linear integration)
|
|
# LINEAR_API_KEY=lin_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
|
|
# Pre-configured Team ID (OPTIONAL - will auto-detect if not set)
|
|
# LINEAR_TEAM_ID=
|
|
|
|
# Pre-configured Project ID (OPTIONAL - will create project if not set)
|
|
# LINEAR_PROJECT_ID=
|
|
|
|
# =============================================================================
|
|
# GITLAB INTEGRATION (OPTIONAL)
|
|
# =============================================================================
|
|
# Enable GitLab integration for issue tracking and merge requests.
|
|
# Supports both GitLab.com and self-hosted GitLab instances.
|
|
#
|
|
# Authentication Options (choose one):
|
|
#
|
|
# Option 1: glab CLI OAuth (Recommended)
|
|
# Install glab CLI: https://gitlab.com/gitlab-org/cli#installation
|
|
# Then run: glab auth login
|
|
# This opens your browser for OAuth authentication. Once complete,
|
|
# Auto Claude will automatically use your glab credentials (no env vars needed).
|
|
# For self-hosted: glab auth login --hostname gitlab.example.com
|
|
#
|
|
# Option 2: Personal Access Token
|
|
# Set GITLAB_TOKEN below. Token auth is used if set, otherwise falls back to glab CLI.
|
|
|
|
# GitLab Instance URL (OPTIONAL - defaults to gitlab.com)
|
|
# For self-hosted: GITLAB_INSTANCE_URL=https://gitlab.example.com
|
|
# GITLAB_INSTANCE_URL=https://gitlab.com
|
|
|
|
# GitLab Personal Access Token (OPTIONAL - only needed if not using glab CLI)
|
|
# Required scope: api (covers issues, merge requests, releases, project info)
|
|
# Optional scope: write_repository (only if creating new GitLab projects from local repos)
|
|
# Get from: https://gitlab.com/-/user_settings/personal_access_tokens
|
|
# GITLAB_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx
|
|
|
|
# GitLab Project (OPTIONAL - format: group/project or numeric ID)
|
|
# If not set, will auto-detect from git remote
|
|
# GITLAB_PROJECT=mygroup/myproject
|
|
|
|
# =============================================================================
|
|
# UI SETTINGS (OPTIONAL)
|
|
# =============================================================================
|
|
# Enable fancy terminal UI with icons, colors, and interactive menus.
|
|
# Set to "false" to use plain text output (useful for CI/CD or log files).
|
|
|
|
# Enable fancy UI (default: true)
|
|
# ENABLE_FANCY_UI=true
|
|
|
|
# =============================================================================
|
|
# ELECTRON MCP SERVER (OPTIONAL)
|
|
# =============================================================================
|
|
# Enable Electron MCP server for AI agents to interact with and validate
|
|
# Electron desktop applications. This allows QA agents to capture screenshots,
|
|
# inspect windows, and validate Electron apps during the review process.
|
|
#
|
|
# The electron-mcp-server connects via Chrome DevTools Protocol to an Electron
|
|
# app running with remote debugging enabled.
|
|
#
|
|
# Prerequisites:
|
|
# 1. Start your Electron app with remote debugging:
|
|
# ./YourElectronApp --remote-debugging-port=9222
|
|
#
|
|
# 2. For auto-claude-ui specifically (use the MCP-enabled scripts):
|
|
# cd auto-claude-ui
|
|
# pnpm run dev:mcp # Development mode with MCP debugging
|
|
# # OR for production build:
|
|
# pnpm run start:mcp # Production mode with MCP debugging
|
|
#
|
|
# Note: Only QA agents (qa_reviewer, qa_fixer) receive Electron MCP tools.
|
|
# Coder and Planner agents do NOT have access to these tools to minimize
|
|
# context token usage and keep agents focused on their roles.
|
|
#
|
|
# See: https://github.com/anthropics/anthropic-quickstarts/tree/main/mcp-electron-demo
|
|
|
|
# Enable Electron MCP integration (default: false)
|
|
# ELECTRON_MCP_ENABLED=true
|
|
|
|
# Chrome DevTools debugging port for Electron connection (default: 9222)
|
|
# ELECTRON_DEBUG_PORT=9222
|
|
|
|
# =============================================================================
|
|
# GRAPHITI MEMORY INTEGRATION (REQUIRED)
|
|
# =============================================================================
|
|
# Graphiti-based persistent memory layer for cross-session context
|
|
# retention. Uses LadybugDB as the embedded graph database.
|
|
#
|
|
# REQUIREMENTS:
|
|
# - Python 3.12 or higher
|
|
# - Install: pip install real_ladybug graphiti-core
|
|
#
|
|
# Supports multiple LLM and embedder providers:
|
|
# - OpenAI (default)
|
|
# - Anthropic (LLM only, use with Voyage for embeddings)
|
|
# - Azure OpenAI
|
|
# - Ollama (local, fully offline)
|
|
# - Google AI (Gemini)
|
|
|
|
# Graphiti is enabled by default. Set to false to disable memory features.
|
|
GRAPHITI_ENABLED=true
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Database Settings
|
|
# =============================================================================
|
|
# LadybugDB stores data in a local directory (no Docker required).
|
|
|
|
# Database name (default: auto_claude_memory)
|
|
# GRAPHITI_DATABASE=auto_claude_memory
|
|
|
|
# Database storage path (default: ~/.auto-claude/memories)
|
|
# GRAPHITI_DB_PATH=~/.auto-claude/memories
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Provider Selection
|
|
# =============================================================================
|
|
# Choose which providers to use for LLM and embeddings.
|
|
# Default is "openai" for both.
|
|
|
|
# LLM provider: openai | anthropic | azure_openai | ollama | google | openrouter
|
|
# GRAPHITI_LLM_PROVIDER=openai
|
|
|
|
# Embedder provider: openai | voyage | azure_openai | ollama | google | openrouter
|
|
# GRAPHITI_EMBEDDER_PROVIDER=openai
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: OpenAI Provider (Default)
|
|
# =============================================================================
|
|
# Use OpenAI for both LLM and embeddings. This is the simplest setup.
|
|
# Required: OPENAI_API_KEY
|
|
|
|
# OpenAI API Key
|
|
# OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
|
|
# OpenAI Model for LLM (default: gpt-4o-mini)
|
|
# OPENAI_MODEL=gpt-4o-mini
|
|
|
|
# OpenAI Model for embeddings (default: text-embedding-3-small)
|
|
# Available: text-embedding-3-small (1536 dim), text-embedding-3-large (3072 dim)
|
|
# OPENAI_EMBEDDING_MODEL=text-embedding-3-small
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Anthropic Provider (LLM only)
|
|
# =============================================================================
|
|
# Use Anthropic for LLM. Requires separate embedder (use Voyage or OpenAI).
|
|
# Example: GRAPHITI_LLM_PROVIDER=anthropic, GRAPHITI_EMBEDDER_PROVIDER=voyage
|
|
#
|
|
# Required: ANTHROPIC_API_KEY
|
|
|
|
# Anthropic API Key
|
|
# ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
|
|
# Anthropic Model (default: claude-sonnet-4-5-latest)
|
|
# GRAPHITI_ANTHROPIC_MODEL=claude-sonnet-4-5-latest
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Voyage AI Provider (Embeddings only)
|
|
# =============================================================================
|
|
# Use Voyage AI for embeddings. Commonly paired with Anthropic LLM.
|
|
# Get API key from: https://www.voyageai.com/
|
|
#
|
|
# Required: VOYAGE_API_KEY
|
|
|
|
# Voyage AI API Key
|
|
# VOYAGE_API_KEY=pa-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
|
|
# Voyage Embedding Model (default: voyage-3)
|
|
# Available: voyage-3 (1024 dim), voyage-3-lite (512 dim)
|
|
# VOYAGE_EMBEDDING_MODEL=voyage-3
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Google AI Provider
|
|
# =============================================================================
|
|
# Use Google AI (Gemini) for both LLM and embeddings.
|
|
# Get API key from: https://aistudio.google.com/apikey
|
|
#
|
|
# Required: GOOGLE_API_KEY
|
|
|
|
# Google AI API Key
|
|
# GOOGLE_API_KEY=AIzaSyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
|
|
# Google LLM Model (default: gemini-2.0-flash)
|
|
# GOOGLE_LLM_MODEL=gemini-2.0-flash
|
|
|
|
# Google Embedding Model (default: text-embedding-004)
|
|
# GOOGLE_EMBEDDING_MODEL=text-embedding-004
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: OpenRouter Provider (Multi-provider aggregator)
|
|
# =============================================================================
|
|
# Use OpenRouter to access multiple LLM providers through a single API.
|
|
# OpenRouter provides access to Anthropic, OpenAI, Google, and many other models.
|
|
# Get API key from: https://openrouter.ai/keys
|
|
#
|
|
# Required: OPENROUTER_API_KEY
|
|
|
|
# OpenRouter API Key
|
|
# OPENROUTER_API_KEY=sk-or-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
|
|
# OpenRouter Base URL (default: https://openrouter.ai/api/v1)
|
|
# OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
|
|
|
|
# OpenRouter LLM Model (default: anthropic/claude-sonnet-4)
|
|
# Popular choices: anthropic/claude-sonnet-4, openai/gpt-4o, google/gemini-2.0-flash
|
|
# OPENROUTER_LLM_MODEL=anthropic/claude-sonnet-4
|
|
|
|
# OpenRouter Embedding Model (default: openai/text-embedding-3-small)
|
|
# OPENROUTER_EMBEDDING_MODEL=openai/text-embedding-3-small
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Azure OpenAI Provider
|
|
# =============================================================================
|
|
# Use Azure OpenAI for both LLM and embeddings.
|
|
# Requires Azure OpenAI deployment with appropriate models.
|
|
#
|
|
# Required: AZURE_OPENAI_API_KEY, AZURE_OPENAI_BASE_URL
|
|
|
|
# Azure OpenAI API Key
|
|
# AZURE_OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
|
|
# Azure OpenAI Base URL (your Azure endpoint)
|
|
# AZURE_OPENAI_BASE_URL=https://your-resource.openai.azure.com/openai/deployments/your-deployment
|
|
|
|
# Azure OpenAI Deployment Names
|
|
# AZURE_OPENAI_LLM_DEPLOYMENT=gpt-4
|
|
# AZURE_OPENAI_EMBEDDING_DEPLOYMENT=text-embedding-3-small
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Ollama Provider (Local/Offline)
|
|
# =============================================================================
|
|
# Use Ollama for fully offline operation. No API keys required.
|
|
# Requires Ollama running locally with appropriate models pulled.
|
|
#
|
|
# Prerequisites:
|
|
# 1. Install Ollama: https://ollama.ai/
|
|
# 2. Pull models: ollama pull deepseek-r1:7b && ollama pull nomic-embed-text
|
|
# 3. Start Ollama server (usually auto-starts)
|
|
#
|
|
# Required: OLLAMA_LLM_MODEL, OLLAMA_EMBEDDING_MODEL, OLLAMA_EMBEDDING_DIM
|
|
|
|
# Ollama Server URL (default: http://localhost:11434)
|
|
# OLLAMA_BASE_URL=http://localhost:11434
|
|
|
|
# Ollama LLM Model
|
|
# Popular choices: deepseek-r1:7b, llama3.2:3b, mistral:7b, phi3:medium
|
|
# OLLAMA_LLM_MODEL=deepseek-r1:7b
|
|
|
|
# Ollama Embedding Model
|
|
# Popular choices: nomic-embed-text (768 dim), mxbai-embed-large (1024 dim)
|
|
# OLLAMA_EMBEDDING_MODEL=nomic-embed-text
|
|
|
|
# Ollama Embedding Dimension (REQUIRED for Ollama embeddings)
|
|
# Must match your embedding model's output dimension
|
|
# Common values: nomic-embed-text=768, mxbai-embed-large=1024, all-minilm=384
|
|
# OLLAMA_EMBEDDING_DIM=768
|
|
|
|
# =============================================================================
|
|
# GRAPHITI: Example Configurations
|
|
# =============================================================================
|
|
#
|
|
# --- Example 1: OpenAI (simplest) ---
|
|
# GRAPHITI_ENABLED=true
|
|
# GRAPHITI_LLM_PROVIDER=openai
|
|
# GRAPHITI_EMBEDDER_PROVIDER=openai
|
|
# OPENAI_API_KEY=sk-xxxxxxxx
|
|
#
|
|
# --- Example 2: Anthropic + Voyage (high quality) ---
|
|
# GRAPHITI_ENABLED=true
|
|
# GRAPHITI_LLM_PROVIDER=anthropic
|
|
# GRAPHITI_EMBEDDER_PROVIDER=voyage
|
|
# ANTHROPIC_API_KEY=sk-ant-xxxxxxxx
|
|
# VOYAGE_API_KEY=pa-xxxxxxxx
|
|
#
|
|
# --- Example 3: Ollama (fully offline) ---
|
|
# GRAPHITI_ENABLED=true
|
|
# GRAPHITI_LLM_PROVIDER=ollama
|
|
# GRAPHITI_EMBEDDER_PROVIDER=ollama
|
|
# OLLAMA_LLM_MODEL=deepseek-r1:7b
|
|
# OLLAMA_EMBEDDING_MODEL=nomic-embed-text
|
|
# OLLAMA_EMBEDDING_DIM=768
|
|
#
|
|
# --- Example 4: Azure OpenAI (enterprise) ---
|
|
# GRAPHITI_ENABLED=true
|
|
# GRAPHITI_LLM_PROVIDER=azure_openai
|
|
# GRAPHITI_EMBEDDER_PROVIDER=azure_openai
|
|
# AZURE_OPENAI_API_KEY=xxxxxxxx
|
|
# AZURE_OPENAI_BASE_URL=https://your-resource.openai.azure.com/...
|
|
# AZURE_OPENAI_LLM_DEPLOYMENT=gpt-4
|
|
# AZURE_OPENAI_EMBEDDING_DEPLOYMENT=text-embedding-3-small
|
|
#
|
|
# --- Example 5: Google AI (Gemini) ---
|
|
# GRAPHITI_ENABLED=true
|
|
# GRAPHITI_LLM_PROVIDER=google
|
|
# GRAPHITI_EMBEDDER_PROVIDER=google
|
|
# GOOGLE_API_KEY=AIzaSyxxxxxxxx
|
|
#
|
|
# --- Example 6: OpenRouter (multi-provider aggregator) ---
|
|
# GRAPHITI_ENABLED=true
|
|
# GRAPHITI_LLM_PROVIDER=openrouter
|
|
# GRAPHITI_EMBEDDER_PROVIDER=openrouter
|
|
# OPENROUTER_API_KEY=sk-or-xxxxxxxx
|
|
# OPENROUTER_LLM_MODEL=anthropic/claude-sonnet-4
|
|
# OPENROUTER_EMBEDDING_MODEL=openai/text-embedding-3-small
|