Skip to main content

Configuration

OfficePlane is configured via environment variables. Set them in a .env file or export them directly.

Required

VariableDescriptionExample
DATABASE_URLPostgreSQL connection stringpostgresql://officeplane:officeplane@localhost:5433/officeplane
GOOGLE_API_KEYGemini API key for vision ingestionAIza...

API Keys

VariableDescriptionDefault
GOOGLE_API_KEYGemini API key (ingestion + planning)required
OPENAI_API_KEYOpenAI API key (content generation)optional

Document Processing

VariableDescriptionDefault
OFFICEPLANE_DRIVERDocument conversion driverlibreoffice
OFFICEPLANE_INGESTION_VISION_PROVIDERVision provider for ingestiongemini
OFFICEPLANE_INGESTION_VISION_MODELGemini model for vision extractiongemini-3-flash-preview
OFFICEPLANE_INGESTION_BATCH_SIZEPages per vision API batch call8
OFFICEPLANE_INGESTION_IMAGE_SIZE_KBTarget image size for compression75

Driver Options

DriverDescriptionPerformance
libreofficePython subprocess pool (unoserver) — Docker only~1.1s/doc
rustNative PyO3 module — highest performance~0.5s/doc
mockNo-op driver for testinginstant

Infrastructure

VariableDescriptionDefault
REDIS_URLRedis connection stringredis://localhost:6379/0
OFFICEPLANE_BROKERQueue backendredis

Broker Options

BrokerDescriptionUse Case
redisProduction Redis backendProduction, staging
memoryIn-memory queue (no persistence)Development, testing

Content Generation

VariableDescriptionDefault
CONTENT_AGENT_MODELLLM model for content generationgpt-4o
CONTENT_AGENT_TIMEOUTGeneration timeout in seconds600
CONTENT_AGENT_WORKSPACEWorkspace directory for agent artifacts/data/workspaces
OFFICEPLANE_PLAN_MODELLLM model for plan generationgemini-2.0-flash

Frontend

VariableDescriptionDefault
NEXT_PUBLIC_API_URLAPI base URL for the frontendhttp://localhost:8001
NEXT_PUBLIC_WS_URLWebSocket URL for real-time updatesws://localhost:8001

Example .env

# API Keys
GOOGLE_API_KEY=AIzaSy...
OPENAI_API_KEY=sk-...

# Database
DATABASE_URL=postgresql://officeplane:officeplane@localhost:5433/officeplane

# Redis
REDIS_URL=redis://localhost:6379/0

# Processing
OFFICEPLANE_DRIVER=libreoffice
OFFICEPLANE_INGESTION_VISION_PROVIDER=gemini
OFFICEPLANE_INGESTION_VISION_MODEL=gemini-3-flash-preview
OFFICEPLANE_INGESTION_BATCH_SIZE=8

# Frontend
NEXT_PUBLIC_API_URL=http://localhost:8001
NEXT_PUBLIC_WS_URL=ws://localhost:8001