Skip to content

Fix install.sh: use append (+=) for Claude skill dirs like other tools#272

Closed
CheeYuTan wants to merge 1 commit intodatabricks-solutions:mainfrom
CheeYuTan:fix/install-skill-dirs-append
Closed

Fix install.sh: use append (+=) for Claude skill dirs like other tools#272
CheeYuTan wants to merge 1 commit intodatabricks-solutions:mainfrom
CheeYuTan:fix/install-skill-dirs-append

Conversation

@CheeYuTan
Copy link
Contributor

Summary

  • Fixes a bug where the Claude case in install_skills() used dirs=(...) (assignment) instead of dirs+=(...) (append)
  • This would wipe previously added skill directories if Claude wasn't the first tool processed
  • Example: --tools copilot,claude would lose the .github/skills copilot directory because Claude's dirs= overwrites the array
  • All other tools (cursor, copilot, codex, gemini) already correctly use +=

Test proof

# Before fix (line 689):
claude) dirs=("$base_dir/.claude/skills") ;;   # = overwrites array

# After fix:
claude) dirs+=("$base_dir/.claude/skills") ;;  # += appends to array

# All other tools already use +=:
cursor)  ... dirs+=("$base_dir/.cursor/skills") ;;
copilot) dirs+=("$base_dir/.github/skills") ;;
codex)   dirs+=("$base_dir/.agents/skills") ;;
gemini)  dirs+=("$base_dir/.gemini/skills") ;;
Test Result
--tools claude (single tool) — behavior unchanged PASS
--tools copilot,claude — copilot dir preserved after Claude processes PASS (was broken before)
--tools claude,cursor,copilot — all 3 dirs in array PASS
Dedupe logic (line 697-702) still works correctly PASS

The Claude case used `dirs=(...)` (assignment) instead of `dirs+=(...)`
(append), which would wipe previously added directories if Claude wasn't
the first tool processed. For example, `--tools copilot,claude` would
lose the copilot skills directory.

All other tools (cursor, copilot, codex, gemini) already use `+=`.
CheeYuTan added a commit to CheeYuTan/ai-dev-kit that referenced this pull request Mar 10, 2026
…bs and UC skills

Consolidates PRs databricks-solutions#272, databricks-solutions#261, and databricks-solutions#259 into a single PR:

- install.sh: Fix Claude skill directory using = instead of +=, which
  overwrites directories from previously processed tools
- databricks-jobs: Add MCP Tool Integration section with manage_jobs
  and manage_job_runs usage examples
- databricks-unity-catalog: Expand MCP Tool Integration with 8 governance
  tool references (manage_uc_objects, grants, tags, storage, connections,
  security_policies, monitors, sharing)
- Fix pre-existing ruff format issues in auth.py and test_sql.py
@CheeYuTan
Copy link
Contributor Author

Consolidated into #284 along with #261 and #259.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant