- Modified `.env.example` to set default terminal environment to 'local' and updated Docker, Singularity, and Modal image references to use 'python:3.11-slim'. - Updated `package.json` to include Node.js engine requirements and modified post-install script for better user guidance. - Enhanced `pyproject.toml` to reflect new dependencies and optional dependencies for modal and development environments. - Improved `README.md` with additional setup instructions for Singularity and Node.js dependencies, along with clearer toolset documentation. - Refactored `model_tools.py` to include new tool definitions and ensure consistency across toolsets. - Updated architecture documentation to clarify tool structure and registration processes.
115 lines
4.4 KiB
Plaintext
115 lines
4.4 KiB
Plaintext
# Hermes Agent Environment Configuration
|
|
# Copy this file to .env and fill in your API keys
|
|
|
|
# =============================================================================
|
|
# LLM PROVIDER (OpenRouter)
|
|
# =============================================================================
|
|
# OpenRouter provides access to many models through one API
|
|
# All LLM calls go through OpenRouter - no direct provider keys needed
|
|
# Get your key at: https://openrouter.ai/keys
|
|
OPENROUTER_API_KEY=
|
|
|
|
# Default model to use (OpenRouter format: provider/model)
|
|
# Examples: anthropic/claude-sonnet-4, openai/gpt-4o, google/gemini-2.0-flash, zhipuai/glm-4-plus
|
|
LLM_MODEL=anthropic/claude-sonnet-4
|
|
|
|
# =============================================================================
|
|
# TOOL API KEYS
|
|
# =============================================================================
|
|
|
|
# Firecrawl API Key - Web search, extract, and crawl
|
|
# Get at: https://firecrawl.dev/
|
|
FIRECRAWL_API_KEY=
|
|
|
|
# Nous Research API Key - Vision analysis and multi-model reasoning
|
|
# Get at: https://inference-api.nousresearch.com/
|
|
NOUS_API_KEY=
|
|
|
|
# FAL.ai API Key - Image generation
|
|
# Get at: https://fal.ai/
|
|
FAL_KEY=
|
|
|
|
# =============================================================================
|
|
# TERMINAL TOOL CONFIGURATION (mini-swe-agent backend)
|
|
# =============================================================================
|
|
# Backend type: "local", "singularity", "docker", or "modal"
|
|
# - local: Runs directly on your machine (fastest, no isolation)
|
|
# - singularity: Runs in Apptainer/Singularity containers (HPC clusters, no root needed)
|
|
# - docker: Runs in Docker containers (isolated, requires Docker + docker group)
|
|
# - modal: Runs in Modal cloud sandboxes (scalable, requires Modal account)
|
|
TERMINAL_ENV=local
|
|
|
|
# Container images (for singularity/docker/modal backends)
|
|
TERMINAL_DOCKER_IMAGE=python:3.11-slim
|
|
TERMINAL_SINGULARITY_IMAGE=docker://python:3.11-slim
|
|
TERMINAL_MODAL_IMAGE=python:3.11-slim
|
|
|
|
# Working directory inside the container
|
|
TERMINAL_CWD=/tmp
|
|
|
|
# Default command timeout in seconds
|
|
TERMINAL_TIMEOUT=60
|
|
|
|
# Cleanup inactive environments after this many seconds
|
|
TERMINAL_LIFETIME_SECONDS=300
|
|
|
|
# Scratch directory for Singularity sandboxes (optional)
|
|
# If not set, uses /scratch (if available) or /tmp
|
|
# TERMINAL_SCRATCH_DIR=/scratch/myuser
|
|
|
|
# Disk usage warning threshold in GB (default: 500)
|
|
TERMINAL_DISK_WARNING_GB=500
|
|
|
|
# =============================================================================
|
|
# MODAL CLOUD BACKEND (Optional - for TERMINAL_ENV=modal)
|
|
# =============================================================================
|
|
# Modal uses CLI authentication, not environment variables.
|
|
# Run: pip install modal && modal setup
|
|
# This will authenticate via browser and store credentials locally.
|
|
|
|
# =============================================================================
|
|
# BROWSER TOOL CONFIGURATION (agent-browser + Browserbase)
|
|
# =============================================================================
|
|
# Browser automation requires Browserbase cloud service for remote browser execution.
|
|
# This allows the agent to navigate websites, fill forms, and extract information.
|
|
#
|
|
# STEALTH MODES:
|
|
# - Basic Stealth: ALWAYS active (random fingerprints, auto CAPTCHA solving)
|
|
# - Advanced Stealth: Requires BROWSERBASE_ADVANCED_STEALTH=true (Scale Plan only)
|
|
|
|
# Browserbase API Key - Cloud browser execution
|
|
# Get at: https://browserbase.com/
|
|
BROWSERBASE_API_KEY=
|
|
|
|
# Browserbase Project ID - From your Browserbase dashboard
|
|
BROWSERBASE_PROJECT_ID=
|
|
|
|
# Enable residential proxies for better CAPTCHA solving (default: true)
|
|
BROWSERBASE_PROXIES=true
|
|
|
|
# Enable advanced stealth mode (default: false, requires Scale Plan)
|
|
BROWSERBASE_ADVANCED_STEALTH=false
|
|
|
|
# Browser session timeout in seconds (default: 300)
|
|
BROWSER_SESSION_TIMEOUT=300
|
|
|
|
# =============================================================================
|
|
# LEGACY/OPTIONAL
|
|
# =============================================================================
|
|
|
|
# Morph API Key - For legacy Hecate terminal backend
|
|
# Get at: https://morph.so/
|
|
MORPH_API_KEY=
|
|
|
|
# Hecate VM Settings (only if using terminal-hecate tool)
|
|
HECATE_VM_LIFETIME_SECONDS=300
|
|
HECATE_DEFAULT_SNAPSHOT_ID=snapshot_p5294qxt
|
|
|
|
# =============================================================================
|
|
# DEBUG OPTIONS
|
|
# =============================================================================
|
|
WEB_TOOLS_DEBUG=false
|
|
VISION_TOOLS_DEBUG=false
|
|
MOA_TOOLS_DEBUG=false
|
|
IMAGE_TOOLS_DEBUG=false
|