Files
ajarbot/.env.example
Jordan Ramos 58de3e55dc Add SSH MCP server and Gmail attachment download
Features:
- SSH MCP server with two tools:
  * ssh_execute: Run commands on remote hosts via SSH
  * ssh_file_upload: Upload files via SFTP
- Support for both password and SSH key authentication
- Auto-accept SSH host keys (AutoAddPolicy) for homelab use
- Gmail attachment download functionality
- Added download_attachment tool for Gmail API

Technical changes:
- Created mcp_servers/mcp_ssh.py with MCP-compliant text output
- Updated llm_interface.py to load SSH MCP server
- Added paramiko>=3.4.0 to requirements.txt
- Updated .env.example with SSH configuration template
- Enhanced gmail_client.py with download_attachment() method
- Added download_attachment tool handler in tools.py

SSH credentials configured via environment variables:
- PROXMOX_SSH_HOST, PROXMOX_SSH_USER, PROXMOX_SSH_PORT
- PROXMOX_SSH_PASSWORD (or) PROXMOX_SSH_KEY_FILE

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-24 12:32:05 -07:00

96 lines
3.3 KiB
Plaintext

# ========================================
# Ajarbot Environment Configuration
# ========================================
# Copy this file to .env and configure for your setup
# ========================================
# LLM Configuration
# ========================================
# LLM Mode - Choose how to access Claude
# Options:
# - "agent-sdk" (default) - Use Claude Pro subscription via Agent SDK
# - "api" - Use pay-per-token API (requires ANTHROPIC_API_KEY)
#
# Agent SDK mode pros: Unlimited usage within Pro limits, no API key needed
# API mode pros: Works in any environment, predictable costs, better for production
AJARBOT_LLM_MODE=agent-sdk
# Anthropic API Key - ONLY required for "api" mode
# Get your key from: https://console.anthropic.com/settings/keys
# For agent-sdk mode, authenticate with: claude auth login
ANTHROPIC_API_KEY=your-api-key-here
# ========================================
# Messaging Platform Adapters
# ========================================
# Adapter credentials can also be stored in config/adapters.local.yaml
# Slack
# Get tokens from: https://api.slack.com/apps
AJARBOT_SLACK_BOT_TOKEN=xoxb-your-bot-token
AJARBOT_SLACK_APP_TOKEN=xapp-your-app-token
# Telegram
# Get token from: https://t.me/BotFather
AJARBOT_TELEGRAM_BOT_TOKEN=123456:ABC-your-bot-token
# ========================================
# SSH Access (Optional)
# ========================================
# Proxmox SSH credentials for remote management
PROXMOX_SSH_HOST=192.168.2.100
PROXMOX_SSH_USER=root
PROXMOX_SSH_PORT=22
# Authentication: Use EITHER password OR key (key is more secure)
# Option 1: Password-based (easier but less secure)
PROXMOX_SSH_PASSWORD=your-proxmox-password
# Option 2: Key-based (recommended for security)
# PROXMOX_SSH_KEY_FILE=C:/Users/YourName/.ssh/id_rsa
# Generate key: ssh-keygen -t rsa -b 4096
# Copy to Proxmox: ssh-copy-id root@192.168.2.100
# ========================================
# Obsidian MCP Integration (Optional)
# ========================================
# Obsidian MCP server provides advanced vault operations via Obsidian REST API
# See: OBSIDIAN_MCP_INTEGRATION.md for setup instructions
# Enable/disable Obsidian MCP integration
OBSIDIAN_MCP_ENABLED=false
# Obsidian Local REST API Key
# Install "Local REST API" plugin in Obsidian first, then generate key in settings
OBSIDIAN_API_KEY=your-obsidian-api-key-here
# Obsidian REST API endpoint (default: http://127.0.0.1:27123)
OBSIDIAN_BASE_URL=http://127.0.0.1:27123
# Path to your main Obsidian vault (overrides config/obsidian_mcp.yaml)
# OBSIDIAN_VAULT_PATH=C:/Users/YourName/Documents/MyVault
# Tool routing strategy (optional, overrides config/obsidian_mcp.yaml)
# Options: obsidian_preferred, custom_preferred, obsidian_only
# OBSIDIAN_ROUTING_STRATEGY=obsidian_preferred
# ========================================
# Alternative LLM Providers (Optional)
# ========================================
# GLM (z.ai) - Optional alternative to Claude
# GLM_API_KEY=your-glm-key-here
# ========================================
# Legacy/Deprecated Settings
# ========================================
# The following settings are deprecated and no longer needed:
#
# USE_CLAUDE_CODE_SERVER=true
# CLAUDE_CODE_SERVER_URL=http://localhost:8000
# USE_AGENT_SDK=true
# USE_DIRECT_API=true
#
# Use AJARBOT_LLM_MODE instead (see above)