$npx -y skills add datarobot-oss/datarobot-agent-skills --skill datarobot-setupSets up DataRobot for local development including Python SDK, dr-cli, Agent Assist, and all required dependencies. Use when the user has not yet worked with DataRobot on this machine, OR when any DataRobot task fails due to missing or invalid credentials. Covers first-time setup,
| 1 | # DataRobot Local Development Setup |
| 2 | |
| 3 | You are helping set up DataRobot for local development. Before installing anything, audit what is already present and only install what is missing. Follow these steps in order. |
| 4 | |
| 5 | ## Step 1: Pre-Flight Check (Detect Existing Installation) |
| 6 | |
| 7 | Build a checklist of what is already installed before doing any installation work. Run each check and record the result. Skip any install step in Steps 3-7 whose check below already passes. |
| 8 | |
| 9 | ```bash |
| 10 | # Required tools — record version for each, or "missing" |
| 11 | command -v python3 && python3 --version |
| 12 | command -v git && git --version |
| 13 | command -v uv && uv --version |
| 14 | command -v dr && dr --version |
| 15 | command -v pulumi && pulumi version |
| 16 | command -v task && task --version |
| 17 | command -v node && node --version |
| 18 | command -v pip && pip --version |
| 19 | |
| 20 | # DataRobot CLI plugins (only meaningful if `dr` exists) |
| 21 | dr plugin list 2>/dev/null | grep -i assist |
| 22 | |
| 23 | # Python SDK (in the user's active environment) |
| 24 | python3 -c "import datarobot; print(datarobot.__version__)" 2>/dev/null |
| 25 | python3 -c "import datarobot_predict; print('datarobot-predict installed')" 2>/dev/null |
| 26 | |
| 27 | # Credential state |
| 28 | echo "DATAROBOT_API_TOKEN: ${DATAROBOT_API_TOKEN:+set (via env)}" |
| 29 | echo "DATAROBOT_ENDPOINT: ${DATAROBOT_ENDPOINT:-not set}" |
| 30 | test -f ~/.config/datarobot/drconfig.yaml && echo "drconfig: found" || echo "drconfig: missing" |
| 31 | |
| 32 | # If drconfig exists, verify credentials are actually valid |
| 33 | if test -f ~/.config/datarobot/drconfig.yaml; then |
| 34 | dr auth check 2>/dev/null && echo "auth: valid" || echo "auth: INVALID (re-authentication required)" |
| 35 | fi |
| 36 | ``` |
| 37 | |
| 38 | Compare each detected version to the minimums in the table in Step 3. Tell the user: |
| 39 | - What is already installed and at acceptable versions (skip) |
| 40 | - What is missing or below minimum version (install) |
| 41 | - Whether dr-cli is already authenticated (skip Step 6 if so, but confirm with user) |
| 42 | |
| 43 | Only proceed past this step after presenting the diff to the user so they can confirm. |
| 44 | |
| 45 | ## Step 2: Detect Operating System |
| 46 | |
| 47 | Detect the OS and tailor commands accordingly. |
| 48 | |
| 49 | ### Windows Users: WSL Required |
| 50 | |
| 51 | **IMPORTANT**: DataRobot Agent Assist does NOT support native Windows. You MUST use WSL (Windows Subsystem for Linux). |
| 52 | |
| 53 | #### Check if Running in WSL |
| 54 | |
| 55 | ```bash |
| 56 | uname -r | grep -i microsoft # Returns output if in WSL |
| 57 | cat /proc/version | grep -i microsoft # Alternative |
| 58 | echo $WSL_DISTRO_NAME # Empty if not in WSL |
| 59 | ``` |
| 60 | |
| 61 | #### If NOT in WSL |
| 62 | |
| 63 | 1. **Install WSL 2** (Windows 10/11). Open PowerShell as Administrator and run `wsl --install`, then restart when prompted. Default Ubuntu will be installed. |
| 64 | 2. **Alternative manual install**: `wsl --install -d Ubuntu-22.04` from elevated PowerShell. |
| 65 | 3. **Set up Ubuntu**: launch Ubuntu from the Start menu, create a username and password, then run `sudo apt update && sudo apt upgrade -y`. |
| 66 | 4. **Return here**: once in WSL, re-run this skill from the Ubuntu terminal. |
| 67 | |
| 68 | #### Supported Environments |
| 69 | |
| 70 | - macOS — Homebrew install path |
| 71 | - Linux — distribution-specific installers |
| 72 | - WSL — Linux installers |
| 73 | - Native Windows — NOT supported; use WSL |
| 74 | |
| 75 | ## Step 3: Install Missing Core Dependencies |
| 76 | |
| 77 | Only install the tools flagged as missing in Step 1. |
| 78 | |
| 79 | | Tool | Minimum Version | Purpose | |
| 80 | |------|-----------------|---------| |
| 81 | | Python | 3.10+ | DataRobot SDK and Agent Assist | |
| 82 | | git | 2.30.0+ | Version control | |
| 83 | | uv | 0.9.0+ | Python package manager | |
| 84 | | dr-cli | 0.2.50+ | DataRobot CLI | |
| 85 | | Pulumi | 3.163.0+ | Infrastructure as Code | |
| 86 | | go-task | 3.43.3+ | Task runner | |
| 87 | | Node.js | 24+ | JavaScript runtime | |
| 88 | |
| 89 | ### macOS (Homebrew) |
| 90 | |
| 91 | ```bash |
| 92 | brew install datarobot-oss/taps/dr-cli uv pulumi/tap/pulumi go-task node git python |
| 93 | ``` |
| 94 | |
| 95 | ### Linux / WSL |
| 96 | |
| 97 | Use the architecture-aware official installers below. These work on both x86_64 and ARM64. |
| 98 | |
| 99 | - **dr-cli** (universal installer — auto-detects architecture): |
| 100 | ```bash |
| 101 | curl -fsSL https://cli.datarobot.com/install | sh |
| 102 | ``` |
| 103 | |
| 104 | - **Python 3.10+** (uses whatever Python the distro ships; on Ubuntu 22.04 that's 3.10, on 24.04 it's 3.12 — both satisfy the minimum): |
| 105 | ```bash |
| 106 | sudo apt update |
| 107 | sudo apt install -y python3 python3-pip python3-venv |
| 108 | ``` |
| 109 | |
| 110 | - **git**: |
| 111 | ```bash |
| 112 | sudo apt install -y git |
| 113 | ``` |
| 114 | |
| 115 | - **uv** (Python package manager): |
| 116 | ```bash |
| 117 | curl -LsSf https://astral.sh/uv/install.sh | sh |
| 118 | ``` |
| 119 | |
| 120 | - **Node.js 24** (via nvm): |
| 121 | ```bash |
| 122 | curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash |
| 123 | source ~/.bashrc # or ~/.zshrc |
| 124 | nvm install 24 |
| 125 | nvm use 24 |
| 126 | ``` |
| 127 | |
| 128 | - **Pulumi**: |
| 129 | ```bash |
| 130 | curl -fsSL https://get.pulumi.com | sh |
| 131 | ``` |
| 132 | |
| 133 | - **go-task**: |
| 134 | ```bash |
| 135 | sh -c "$(curl --location htt |