$npx -y skills add datarobot-oss/datarobot-agent-skills --skill datarobot-agent-assistUse when the user wants to design, build, code, simulate, or deploy an AI agent (not a predictive model) to DataRobot; mentions agent_spec.md, dr-assist, datarobot-agent-assist, dress rehearsal, or the DataRobot agent template; wants to scaffold a LangGraph, CrewAI, LlamaIndex, N
| 1 | # DataRobot Agent Assist |
| 2 | |
| 3 | This skill merges **agent design, coding, and deployment** with an optional **dress-rehearsal simulation** — a try-before-you-build session that lets you chat with your agent design before writing any code. |
| 4 | |
| 5 | Assistance falls into three categories: |
| 6 | |
| 7 | 1. **Designing an AI agent** → Clarify requirements, build `agent_spec.md`, optionally simulate the agent before coding |
| 8 | 2. **Coding an AI agent** → Adapt the DataRobot agent application template to the spec |
| 9 | 3. **Deploying an AI agent** → Follow `AGENTS.md` deployment instructions |
| 10 | |
| 11 | If the user's first message is simply `1`, `2`, or `3`, treat it as selecting one of these categories. |
| 12 | |
| 13 | --- |
| 14 | |
| 15 | ## On Activation |
| 16 | |
| 17 | Present the three options clearly: |
| 18 | |
| 19 | ``` |
| 20 | Welcome! I help you design, code, and deploy AI agents. |
| 21 | |
| 22 | What would you like to do? |
| 23 | 1. Design an AI agent → Describe your idea (optional dress rehearsal before coding) |
| 24 | 2. Code an AI agent → Load and implement an existing agent_spec.md |
| 25 | 3. Deploy an AI agent → Deploy an implemented agent to DataRobot |
| 26 | ``` |
| 27 | |
| 28 | Show this menu first. After the user selects an option (`1`, `2`, or `3`), run the **[Pre-requisite Check](#pre-requisite-check)** and then the **[Script Path Resolution](#script-path-resolution)**. |
| 29 | |
| 30 | - Options **1** and **2** — read and follow [references/workspace-resolution.md](references/workspace-resolution.md), then proceed to the selected workflow. |
| 31 | - Option **3** — skip Workspace Resolution; `<target_dir>` is resolved in the [Pre-deployment Checklist](references/pre-deployment-checklist.md) when unset. |
| 32 | |
| 33 | --- |
| 34 | |
| 35 | ## Script Path Resolution |
| 36 | |
| 37 | Before invoking any helper script, resolve `<skill_scripts_dir>` once for the session: |
| 38 | |
| 39 | - `<skill_scripts_dir>` is the `scripts/` subdirectory of the directory containing this `SKILL.md` file. |
| 40 | - Confirm it exists with `ls <path_to_this_skill_dir>/scripts/`. If the directory is missing, tell the user the skill installation is incomplete and stop. |
| 41 | - Use the resolved absolute path for every `<skill_scripts_dir>/...` reference in this skill. |
| 42 | |
| 43 | --- |
| 44 | |
| 45 | ## Session State |
| 46 | |
| 47 | Track these for the conversation: |
| 48 | |
| 49 | - `<target_dir>` — project root for design, coding, and deployment. Set during [Workspace Resolution](references/workspace-resolution.md) or the [Pre-deployment Checklist](references/pre-deployment-checklist.md). Reuse across phases in the same session. Only change when the user explicitly asks, during [pre-coding subdir recovery](references/pre-coding-checklist.md), or in a new session. |
| 50 | - `<dependency_check_passed>` — `false` until a passing `dr dependency check` in `<target_dir>`. |
| 51 | - `<dependency_check_target_dir>` — the `<target_dir>` value when the last check passed. |
| 52 | |
| 53 | ### Dependency check session rule |
| 54 | |
| 55 | Before running `dr dependency check`: |
| 56 | |
| 57 | - If `<dependency_check_passed>` is true and `<target_dir>` equals `<dependency_check_target_dir>`, skip the check. |
| 58 | - Otherwise, run `dr dependency check` in `<target_dir>`. On zero exit: set `<dependency_check_passed>` = true and `<dependency_check_target_dir>` = `<target_dir>`. On non-zero exit: hard stop — return full output; do not attempt to resolve automatically. |
| 59 | |
| 60 | Invalidate `<dependency_check_passed>` (set to false) when: |
| 61 | |
| 62 | - `<target_dir>` changes |
| 63 | - `clone_template.py`, `select_framework.py`, or `setup_template.py` runs in `<target_dir>` |
| 64 | |
| 65 | --- |
| 66 | |
| 67 | ## Workspace Resolution |
| 68 | |
| 69 | Read and follow [references/workspace-resolution.md](references/workspace-resolution.md) after menu options **1** or **2**. |
| 70 | |
| 71 | --- |
| 72 | |
| 73 | ## Pre-requisite Check |
| 74 | |
| 75 | Run in order before proceeding: |
| 76 | |
| 77 | 1. **Git** — run `git --version`. If missing, tell the user to install from https://git-scm.com and stop. |
| 78 | 2. **Python** — run `python --version`. If missing or below 3.11, tell the user to install Python 3.11+ from https://python.org and stop. |
| 79 | 3. **DataRobot CLI** — follow **DataRobot CLI Setup** at the bottom: |
| 80 | - If missing, **ALWAYS RUN** the install command before proceeding |
| 81 | - **ALWAYS RUN** the upgrade command before proceeding |
| 82 | - If not authenticated, **ALWAYS RUN** the auth command before proceeding |
| 83 | 4. **Codespace** — run `python <skill_scripts_dir>/check_codespace.py` (no-op outside a Codespace). On non-zero exit, relay its message and stop; otherwise relay any exposed-ports warning it prints. |
| 84 | |
| 85 | --- |
| 86 | |
| 87 | ## 1. Designing an AI Agent |
| 88 | |
| 89 | ### Cla |