flowx

Installation

Install flowx in Databricks Genie Code or a local agent harness.

flowx is a set of agent skills that run from an AI coding assistant. How you install them depends on where your agent runs:

  • Databricks Genie Code runs the phases as a hosted MCP server (a Databricks App). No local Python environment is involved — the app vendors flowx's code and dependencies.
  • A local agent harness (Claude Code, or any Agent Skills tool) runs the phases from a local Python virtual environment, optionally exposing them over a local MCP server too.

Pick the matching section below and follow it end to end.

Installing flowx for Databricks Genie Code

In Genie Code the phases run as the single flowx tool on a Databricks App you deploy and then register as a custom MCP server.

Clone flowx into a shared workspace location

Clone the repo into your workspace using a Git folder, under /Workspace/Shared (e.g. /Workspace/Shared/flowx).

Use a shared location, not your user home

The MCP app's service principal cannot read private /Workspace/Users/<you> folders by default. Cloning into /Workspace/Shared keeps the repo, the deployed app source, and team access all in a location every user and the app's service principal can reach. If your workspace restricts /Workspace/Shared, use any other all-users location and pass it to the deployer.

Copy the skills into your skills folder

Genie Code picks up skills from your .assistant/skills folder automatically. Copy skills/ into a user-level folder:

databricks workspace import-dir skills /Users/<your-email>/.assistant/skills

Or make flowx available to all workspace users with a workspace-level folder:

databricks workspace import-dir skills /Workspace/.assistant/skills

Skills fire automatically when their description matches your request. To invoke one explicitly, use the @ prefix (e.g. @flowx-migrate translate the ADF pipelines I exported to /Volumes/main/default/adf_export). See the Genie Code Skills docs for more.

Run the setup skill

Ask your agent to "set up the flowx environment" (or run @flowx-setup). On Databricks, setup detects the environment and prepares the MCP path — it does not create a virtual environment, because the phases run through the deployed app rather than a local interpreter.

Deploy the MCP server

Deploy the mcp-flowx Databricks App from the flowx checkout. The recommended way runs entirely in the workspace, including on serverless compute:

Open and run the app/deploy_app.py notebook. Set its repo_root widget to your checkout (e.g. /Workspace/Shared/flowx); it uses the Databricks SDK to stage a self-contained source bundle (app entrypoint plus a vendored copy of the flowx package) to /Workspace/Shared/mcp-flowx and create/deploy the app. The notebook prints the app URL; the MCP endpoint is <app-url>/mcp.

CLI alternative

You can instead run bash app/deploy.sh from a workspace web terminal or a local machine. The databricks apps deploy / databricks sync commands it uses require a CLI session and are not available from serverless notebook Python — which is why deploy_app.py (SDK-based) is preferred inside Genie Code.

Grant access

  • App access: grant Can use on the mcp-flowx app to the users or service principals that will call it (Apps UI → Permissions, or databricks apps set-permissions).
  • Data access: grant the app's own service principal access to the catalogs, schemas, and Unity Catalog volumes the migration reads from and writes to, plus any SQL warehouse used by the reporting commands (flowx(command="record_results") / flowx(command="install_dashboard")).

Register the MCP server in Genie Code

MCP servers are available in Genie Code Agent mode:

  1. In the Genie Code panel, click ⚙ Settings.
  2. Under MCP Servers, click + Add Server.
  3. Choose Custom MCP server and select the mcp-flowx Databricks App.
  4. Click Save.

The single flowx tool is available when you use Genie Code in Agent mode.

Genie Code custom MCP requirements

A custom MCP app must be deployed in the same workspace and reachable at https://<app-url>/mcp. If Genie Code cannot connect, set the app's FLOWX_ALLOWED_ORIGINS environment variable to your workspace URL and redeploy. See Connect Genie Code to MCP servers.

Verify

Open the health endpoint <app-url>/ (returns {"status":"ok"}), or ask Genie Code "what flowx MCP tools are available?". You should see the single flowx tool. You can now run @flowx-migrate (or the individual phase skills).

Installing flowx for a local agent harness (Claude Code)

Locally, flowx installs as a Claude Code plugin and runs its phases from a Python virtual environment.

Install the plugin

flowx is distributed through its Claude Code marketplace. From a Claude Code session:

/plugin marketplace add databricks-solutions/flowx
/plugin install flowx@flowx

Then run /reload-plugins to activate it.

Manual install alternative

You can also copy the skill folders straight into your local skills directory:

cp -R skills/{flowx-setup,flowx-discover,flowx-convert,flowx-package,flowx-migrate} ~/.claude/skills/

Run the setup skill

Run /flowx:flowx-setup (or ask "set up the flowx environment") once before any phase. flowx's Python modules depend on third-party packages (pyyaml, databricks-sdk, sqlglot), so setup provisions an isolated virtual environment via scripts/bootstrap.sh. It will:

  1. Check that python3, pip, and the venv module are available.
  2. Create the virtual environment at <plugin_dir>/.venv.
  3. Install requirements.txt into it with pip.
  4. Write the resolved interpreter path to the marker file <plugin_dir>/.migration-venv, which the phase skills read.

The environment is created once and reused. No uv is required for plugin users.

Python not found

If python3, pip, or the venv module are missing, the script prints a warning and exits without creating anything. Install Python, then re-run setup:

  • macOS: brew install python
  • Debian/Ubuntu: sudo apt-get install python3 python3-venv python3-pip
  • Windows: python.org/downloads (enable "Add python.exe to PATH")

(Optional) Run the phases over a local MCP server

The phase skills call the venv CLI directly, so this step is optional. To instead drive the phases through MCP tools locally, install the MCP server stack into the venv and register the stdio server with your MCP client:

PY="$(cat <plugin_dir>/.migration-venv)"
"$PY" -m pip install "mcp>=1.12" "uvicorn>=0.30" "starlette>=0.40"
PYTHONPATH="<plugin_dir>/src" "$PY" -m flowx.mcp
{
  "mcpServers": {
    "flowx": {
      "command": "<plugin_dir>/.venv/bin/python",
      "args": ["-m", "flowx.mcp"],
      "env": { "PYTHONPATH": "<plugin_dir>/src" }
    }
  }
}

Editable install alternative

If you prefer an installed package over PYTHONPATH, run pip install -e ".[mcp]" from the plugin root; then python -m flowx.mcp works without setting PYTHONPATH.

Verify

Open Claude Code and ask "What flowx skills do you have available?". You should see all five skills (flowx-setup, flowx-discover, flowx-convert, flowx-package, flowx-migrate). Invoke them with /flowx:flowx-migrate, /flowx:flowx-discover, etc.

If you hit a ModuleNotFoundError while running a phase, the venv is missing or incomplete — re-run /flowx:flowx-setup. Every Python command the skills run uses the interpreter recorded in <plugin_dir>/.migration-venv, with src/ on PYTHONPATH:

export PYTHONPATH="<plugin_dir>/src"
PY="$(cat <plugin_dir>/.migration-venv)"
"$PY" -m flowx.adapter inputs discover

Other AI tools

Any tool that supports the Agent Skills open standard can install the flowx skills:

  1. Copy each skill folder (skills/flowx-setup, skills/flowx-discover, skills/flowx-convert, skills/flowx-package, skills/flowx-migrate) into the tool's configured skills directory, so the path contains SKILL.md directly.
  2. Restart the tool if it caches skill metadata at startup.
  3. Follow the local agent harness setup above to provision the Python environment (scripts/bootstrap.sh).

Flattening skills files

If your tool expects a single Markdown file instead of a directory tree, concatenate the skills:

cat skills/*/SKILL.md > flowx-skills.md

On this page