Skip to content

Simplify aitools install output and default the confirm to yes#5916

Open
lennartkats-db wants to merge 2 commits into
mainfrom
aitools-install-output
Open

Simplify aitools install output and default the confirm to yes#5916
lennartkats-db wants to merge 2 commits into
mainfrom
aitools-install-output

Conversation

@lennartkats-db

Copy link
Copy Markdown
Contributor

Changes

databricks aitools install was a bit of a wall of text with, and its confirmation defaulted to no. This trims it down.

Before (~60 lines):

Proceed? [y/N]: y
Installing Databricks skills for Cursor, OpenCode...
Using skills version 0.2.9
Fetching skills manifest...
Found skills installed before state tracking was added. Run 'databricks aitools install' to refresh.
Downloading databricks-agent-bricks...
Exposing databricks-agent-bricks to 2 agents...
Downloading databricks-ai-functions...
Exposing databricks-ai-functions to 2 agents...
... (26 more skills, two lines each) ...
Installed 28 skills.

After:

Proceed? [Y/n]:
Installing Databricks skills for Cursor, OpenCode...
Using skills version 0.2.9
Fetching skills manifest...
⣽ Installing databricks-unity-catalog...
Installed 28 skills.

Tests

Unit + acceptance tests updated; verified over a real terminal (Enter proceeds, n cancels, output collapses to one spinner).

The `databricks aitools install` output was intimidating: a `Proceed? [y/N]`
prompt that defaulted to no, followed by ~57 lines of per-skill
`Downloading X` / `Exposing X to N agents` progress plus a self-contradictory
"run 'databricks aitools install' to refresh" legacy message.

- Confirm now uses a huh confirm defaulting to yes (matching the huh agent
  picker shown right above it), so Enter proceeds.
- Collapse the per-skill download/expose lines into a single cmdio spinner,
  scoped to the install loop so earlier warnings still print as plain lines.
  The same spinner is used in the update path.
- Drop the contradictory legacy-refresh message during a full install; legacy
  detection still blocks targeted installs and rebuilds state on a full run.
- Remove the now-unused checkLegacyInstall and agentNoun helpers.

Co-authored-by: Isaac
Drop the redundant doc comment on defaultPromptProceed (the code is
self-explanatory) and add a one-line pointer to where hasLegacyInstall lives.

Co-authored-by: Isaac

// checkLegacyInstall prints a message if skills exist on disk but no state file was found.
// Returns true if a legacy install was detected.
func checkLegacyInstall(ctx context.Context, globalDir string) bool {

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYA, this function was removed in favor of reusing the one at

func hasLegacyInstall(ctx context.Context, globalDir string) bool {
. The error message here was deemed a 'scary legacy warning' by Claude.

Comment thread cmd/aitools/install.go
}
}

func defaultPromptProceed(_ context.Context) (bool, error) {

@renaudhartert-db renaudhartert-db Jul 14, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we remove the context given that it is ignored? It does not seem this function needs to comply with a specific signature.

Suggested change
func defaultPromptProceed(_ context.Context) (bool, error) {
func defaultPromptProceed() (bool, error) {

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.

2 participants