# --- SciDER --- # Provide any combination of provider keys. SciDER's unified model catalog # (model_settings/catalog.yaml) lets you mix-and-match providers per role — # e.g. ideation on Gemini, experiment_coding on GPT-5. Models whose key is # missing are simply marked unavailable in the frontend. OPENAI_API_KEY=... GEMINI_API_KEY=... ANTHROPIC_API_KEY=... # Optional: Semantic Scholar API key for better rate limits (https://www.semanticscholar.org/product/api) # S2_API_KEY=... ## User Approval # Set to true to enable interactive user approval at critical agent steps USER_APPROVAL_ENABLED=true ## HuggingFace Dataset Download # Set to true to allow using HuggingFace repo names as data paths HF_DATASET_DOWNLOAD_ENABLED=false # HF_DATASET_CACHE_DIR=tmp_hf_datasets # Maximum dataset size in MB (default 100) # HF_DATASET_MAX_SIZE_MB=100 ## Logging # LOGURU_LEVEL=INFO LOGURU_LEVEL=DEBUG LOG_SYSTEM_PROMPT=false ## Coding Agent Switch # choice: claude_sdk (default), native, openhands (requires SCIDER_ENABLE_OPENHANDS=1) # - claude_sdk: Claude Agent SDK (requires ANTHROPIC_API_KEY) # - native: SciDER's built-in coding agent (uses experiment_coding model, any LiteLLM provider) # - openhands: OpenHands sandbox (requires SCIDER_ENABLE_OPENHANDS=1) # legacy aliases: v3 = claude_sdk, v2 = openhands CODING_AGENT_VERSION=claude_sdk # choice: See https://platform.claude.com/docs/en/about-claude/models/overview CLAUDE_SDK_MODEL=claude-haiku-4-5 ## Openhands SCIDER_ENABLE_OPENHANDS=false OPENHANDS_MODEL=gemini/gemini-2.5-flash OPENHANDS_API_KEY=... ## Context Compression Pipeline (runs in query() before each LLM call) # Level 1: Persist oversized tool results to disk COMPACT_TOOL_RESULT_MAX_CHARS=50000 # COMPACT_TOOL_RESULT_PREVIEW_CHARS=2000 # Level 2: Snip old tool results (keep N most recent) COMPACT_SNIP_KEEP_RECENT=5 # Level 3: LLM-based autocompact (trigger threshold in tokens) COMPACT_AUTOCOMPACT_TOKEN_THRESHOLD=256000 COMPACT_AUTOCOMPACT_MODEL=history # COMPACT_AUTOCOMPACT_KEEP_RATIO=0.4 # COMPACT_AUTOCOMPACT_KEEP_FIRST_N=4 ## Permissions # Path to tool permission overrides (JSON file) # SCIDER_PERMISSIONS_FILE=.claude/permissions.json ## Memory System (file-based cross-session memory in .scider/memory/) # SCIDER_MEMORY_READ=true # Load memory index into agent context (default: true) # SCIDER_MEMORY_WRITE=true # Allow agents to write new memories (default: true)