dataiku-headless7.99 KB
View saved version →
---
name: dataiku-headless
description: Use for Dataiku tasks including projects, flows, datasets, recipes, jobs, machine learning, agents, and Cobuild conversations. Choose the right reference guide, inspect state first, route project changes through Cobuild by default, and validate results after execution.
---
# Dataiku Headless
Use this for any Dataiku task. Choose the right reference guide first, inspect the current state before acting, route project changes through Cobuild by default, and validate by re-reading the resulting state.
## Shared Operating Rules
1. If the user asks to install, set up, connect, or repair Dataiku Headless, or its MCP tools are unavailable just after installation, read `../dataiku-headless-setup/SKILL.md`. Choose either local stdio or customer-managed HTTP setup and never enable both.
2. Ensure an instance is configured before instance operations. In local stdio mode, if `get_current_instance` errors or `list_instances` is empty, run `configure_instance` first. In HTTP mode, use `list_instances` then `switch_instance`; the instance catalog is platform-managed. Keep the reported `dataiku_version` in context for version-sensitive requests. Check the configured `instance_type` against the policy below before choosing a tool. It controls dispatch; Dataiku permissions and API availability still apply.
3. Discover project keys and object identifiers through tools; do not invent them.
4. Read before write. Inspect the current object, flow context, jobs, or run history before changing anything.
5. Treat the matching reference guide as the source of truth for object-specific concepts, inspection steps, and required references.
6. Route in-project asset creation and modification through `./references/cobuild.md` unless the matching guide documents a narrow direct exception.
7. Direct-write exceptions are allowed for operations that Cobuild cannot perform, especially bootstrap, cross-project, instance-level, or administrative actions. Treat them as narrow documented exceptions, not as the default mutation path.
8. Use visual recipes by default. A code recipe is appropriate only when the user explicitly requests a code-based transformation.
9. Preserve surrounding flow, storage, and operational context unless the user requests a change.
10. If MCP or Cobuild coverage is insufficient, stop and report the gap rather than falling back to raw Python, `dataikuapi`, or ad hoc REST calls. Attribute the gap to the Dataiku version only when that requirement is known; otherwise, do not guess.
## Instance Types
| Configured type | Available work |
| --- | --- |
| `design` | All tools |
| `automation` | Reads, execution of existing assets, instance administration, and all project-folder operations |
| `agent-management`, `govern`, `deployer` | Instance controls only: list, switch, configure, delete, and current profile |
Automation excludes all Cobuild tools, including conversation listing and polling,
and project creation, project settings/variables updates, container placement,
dataset/folder creation, file upload, and library writes. Builds, recipe/scenario
runs, and job aborts remain available and can change outputs. For project
construction or edits, ask which Design instance to use and
switch to it; do not bypass the policy through raw APIs.
Agent Management, Govern and Deployer report `connection_status=unsupported` without a DSS probe.
Explain that their API tools are not implemented, then switch to a supported
configured instance for Dataiku work. Local configuration actions remain subject
to the existing HTTP restrictions. The catalog stays visible across all types;
unsupported calls fail before execution.
## Default Workflow
1. Identify the target project and the user's main object of work.
2. Read the matching reference guide from the routing table below.
3. Follow that guide's inspection flow and read any references it explicitly requires.
4. If the task is read-only, answer from the inspected sta
Preview of the first 4,000 characters. Read full instructions →
Referenced files: 76 — file references are metadata, not package contents.
dataiku-headless-setup7.61 KB
View saved version →
---
name: dataiku-headless-setup
description: Set up Dataiku Headless after plugin installation. Use when the user asks to install, set up, connect, configure, or repair Dataiku Headless; when its MCP tools are unavailable; or when uv may be missing. Check the runtime, offer the official platform installer with explicit approval, then configure and verify a Dataiku instance.
---
# Set Up Dataiku Headless
Bring a new or broken plugin installation to a verified Dataiku connection. A request to set up Dataiku Headless is not approval to install software: obtain explicit approval immediately before running an installer.
## Workflow
1. First run `list_instances`. If it succeeds, the local plugin and runtime are already available; skip directly to instance configuration and verification below (step 8).
2. If the Dataiku MCP tools are unavailable, check the runtime. Run `uv --version` when local commands are available; ask the user to run it only when they are not. Dataiku Headless requires uv 0.12.0 or later.
3. If uv is missing or too old, explain briefly that it supplies the isolated Python runtime and pinned dependencies used by the local MCP server. Detect the operating system and offer the matching official Astral installer:
- macOS or Linux: `curl -LsSf https://astral.sh/uv/install.sh | sh`
- Windows PowerShell: `powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"`
4. Obtain explicit approval, run only the selected installer, and verify with `uv --version`. Do not substitute a third-party package manager or edit shell startup files unless the user asks.
5. If the current agent process cannot see the newly installed executable, use the installer's reported location to confirm it exists, then ask the user to fully restart or reload the agent. Stop and resume setup in the new session; the already-running MCP process cannot repair its own launch environment.
6. Once uv is suitable, warm the runtime by running the server once with stdin closed. Locate the absolute path of this `SKILL.md`; the plugin root is its ancestor containing both `skills/` and `runtime/` (this file is at `<plugin_root>/skills/dataiku-headless-setup/SKILL.md`). Do not assume the current working directory is the plugin root.
- macOS or Linux: `uv run --quiet --locked --script "<plugin_root>/runtime/run_mcp.py" --transport stdio < /dev/null`
- Windows PowerShell: `$null | uv run --quiet --locked --script "<plugin_root>\runtime\run_mcp.py" --transport stdio`
A startup line on stderr followed by exit status 0 is expected. This checks standalone runtime startup, not the agent's MCP registration or connection. Do not substitute `uv sync --locked --script`: it caches downloads but leaves environment creation for the first server launch.
7. Retry `list_instances`. If the tools are still unavailable, reload the plugin or restart the agent once, then retry. If they are still missing, inspect the agent's MCP registration and startup error; do not repeat the warm-up/restart loop. Check the executable, script path, working directory, and any organization policy error before diagnosing a Dataiku connection problem.
8. When `list_instances` succeeds, if no instance is configured, run `configure_instance` and have the user add an instance in the local browser manager, test it when supported, save it, and select **Done**. Design and Automation require a successful connection test. Agent Management, Govern and Deployer testing is unavailable; save their locally validated profiles directly. Select **Switch to this instance after saving** to make it active. The manager stays open across operations; saving alone does not complete URL elicitation. If multiple instances exist without an active one, ask which to use and run `switch_instance`.
9. Verify the active profile with `get_current_instance`. If its `connection_status` is `failed`, inspect the returned `error` before continuing. For SSL/TLS or certificate failures, follow [HTT
Preview of the first 4,000 characters. Read full instructions →