mirror of
https://github.com/OpenRouterTeam/spawn.git
synced 2026-05-04 14:50:17 +00:00
Five rounds of autonomous AI agent team refactoring with security fixes, code consolidation, and expanded test coverage.
31 lines
1.3 KiB
Bash
Executable file
31 lines
1.3 KiB
Bash
Executable file
#!/bin/bash
|
|
set -euo pipefail
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)"
|
|
if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then source "$SCRIPT_DIR/lib/common.sh"
|
|
else eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/linode/lib/common.sh)"; fi
|
|
log_info "Open Interpreter on Linode"
|
|
echo ""
|
|
ensure_linode_token
|
|
ensure_ssh_key
|
|
SERVER_NAME=$(get_server_name)
|
|
create_server "$SERVER_NAME"
|
|
verify_server_connectivity "$LINODE_SERVER_IP"
|
|
wait_for_cloud_init "$LINODE_SERVER_IP"
|
|
log_warn "Installing Open Interpreter..."
|
|
run_server "$LINODE_SERVER_IP" "pip install open-interpreter 2>/dev/null || pip3 install open-interpreter"
|
|
log_info "Open Interpreter installed"
|
|
echo ""
|
|
if [[ -n "$OPENROUTER_API_KEY" ]]; then log_info "Using OpenRouter API key from environment"
|
|
else OPENROUTER_API_KEY=$(get_openrouter_api_key_oauth 5180); fi
|
|
log_warn "Setting up environment variables..."
|
|
inject_env_vars_ssh "$LINODE_SERVER_IP" upload_file run_server \
|
|
"OPENROUTER_API_KEY=$OPENROUTER_API_KEY" \
|
|
"OPENAI_API_KEY=$OPENROUTER_API_KEY" \
|
|
"OPENAI_BASE_URL="https://openrouter.ai/api/v1""
|
|
echo ""
|
|
log_info "Linode setup completed successfully!"
|
|
echo ""
|
|
log_warn "Starting Open Interpreter..."
|
|
sleep 1
|
|
clear
|
|
interactive_session "$LINODE_SERVER_IP" "source ~/.zshrc && interpreter"
|