Add create-tools skill for resource creation guidance#181
Add create-tools skill for resource creation guidance#181
Conversation
| To list all Genie spaces via CLI: | ||
|
|
||
| ```bash | ||
| databricks genie list-spaces --profile <profile> |
There was a problem hiding this comment.
is this a correct command in the CLI? not seeing it here: https://docs.databricks.com/aws/en/dev-tools/cli/reference/genie-commands
jennsun
left a comment
There was a problem hiding this comment.
I noticed some of the CLI commands are not consistent with the databricks docs - could you test these tool creation skills are able to get through all the flows for these resources?
Add a new SDK-independent skill that teaches AI coding assistants how to create the Databricks resources that agents connect to as tools: - Genie spaces (UI walkthrough + CLI to list) - Vector Search indexes (CLI with managed embeddings) - UC functions (SQL + Python examples with COMMENT best practices) - UC connections for external MCP servers (bearer token, OAuth M2M, managed OAuth) - Local Python function tools (@function_tool / @tool patterns) This fills the gap between discover-tools (find existing resources) and add-tools (wire them into the agent). The workflow is now: discover → create → add → deploy. Also updates: - sync-skills.py: add create-tools to shared skills list - discover-tools: add "Create resources" to Next Steps - add-tools (both SDKs): add cross-reference to create-tools - All 7 per-template AGENTS.md: add create-tools to skill directory table Co-authored-by: Isaac
The discover flow is for existing resources — "create" doesn't belong in the main Next Steps. Move to a one-line fallback at the bottom. Co-authored-by: Isaac
- vector-search-index.md: Fix all commands (vector-search-endpoints/indexes with positional args, --json for delta sync config) - uc-function.md: Replace nonexistent sql-statements execute with databricks api post /api/2.0/sql/statements - genie-space.md: Use databricks genie list-spaces instead of raw API All commands verified against databricks CLI --help output. All Python patterns verified against installed SDKs. Co-authored-by: Isaac
- genie-space.md: Fix table limit (25 → 30), add required warehouse config step, fix sharing instructions (enter name, click Add, set CAN RUN) - vector-search-index.md: Fix embedding model (bge → gte-large-en per docs recommendation), add missing prerequisites (UC enabled, serverless, Change Data Feed) - uc-connection.md: Update managed OAuth providers (add Glean, GitHub), add Marketplace installation note Co-authored-by: Isaac
- local-python-tools.md: Add error handling section with verified patterns for both SDKs (failure_error_function for OpenAI, ToolException + handle_tool_error for LangGraph) - add-tools-openai: Add MCP timeout/error handling note - add-tools-langgraph: Add handle_tool_error on DatabricksMCPServer note All patterns runtime-verified against installed SDK versions. Co-authored-by: Isaac
Update uc-connection.md OAuth M2M options to match the documented CREATE CONNECTION syntax: client_id, client_secret, token_endpoint instead of oauth_client_id, oauth_client_secret, oauth_token_url. Co-authored-by: Isaac
8c49149 to
cfe4414
Compare
Remove 4 deleted templates from registry: - agent-langgraph-short-term-memory - agent-langgraph-long-term-memory - agent-openai-agents-sdk-short-term-memory - agent-openai-agents-sdk-long-running-agent Add 2 new advanced templates: - agent-langgraph-advanced (has_memory: true) - agent-openai-advanced (has_memory: true) Re-synced all skills to match the updated registry. Co-authored-by: Isaac
- templates.py: Remove 4 deleted templates, add agent-langgraph-advanced and agent-openai-advanced - agent-langgraph-memory/SKILL.md: Update all references from deleted short-term/long-term templates to agent-langgraph-advanced - lakebase-setup/SKILL.md: Update all references from deleted templates to agent-langgraph-advanced and agent-openai-advanced - Re-synced all skills Co-authored-by: Isaac
| ) | ||
| ``` | ||
|
|
||
| For local function tools, see `create-tools` skill > `examples/local-python-tools.md` for `@tool(handle_tool_error=True)` patterns. |
There was a problem hiding this comment.
which framework is @tool(handle_tool_error) from? it is not mentioned later on
| > - `agent-langgraph-long-term-memory` - User facts that persist across sessions | ||
| > - `agent-openai-agents-sdk-short-term-memory` - Conversation history (OpenAI SDK) | ||
| > - `agent-openai-agents-sdk-long-running-agent` - Background tasks with Lakebase persistence | ||
| > - `agent-langgraph-advanced` - Short-term and long-term memory (LangGraph) |
There was a problem hiding this comment.
sorry once #179 gets merged in, hopefully all of these will be fixed (AI should be able to help you rebase)
bbqiu
left a comment
There was a problem hiding this comment.
lgtm, can we add to the descriptino some of the manual testing that we did?

Summary
Add a new
create-toolsskill that teaches AI coding assistants how to create Databricks resources (Genie spaces, Vector Search indexes, UC functions, UC connections, local Python tools) that agents connect to as MCP tools.Changes
.claude/skills/create-tools/with SKILL.md + 5 example filessync-skills.py,discover-tools,add-tools,.gitignore(root + 9 templates), and 7AGENTS.mdskill tables