Skip to content

Wire up Update button for installed tools in frontend #85

Description

@cmac86

Summary

The installed tools view compares versions and has an Update button UI, but the onUpdate callback is never passed to the tool card/row components, so the button never renders.

What's already implemented

  • Version comparisongetWorkflowStatus() in installed-tools-view.tsx compares caal_registry_version to registry version
  • Update button UI — Both InstalledToolCard and InstalledToolRow render an orange "Update" button when onUpdate is provided and version mismatch exists
  • Install/update API/api/tools/install already handles re-installing over existing workflows
  • Tool detail modal — Update button in the modal IS wired up via onInstall() and works correctly

What's missing

In installed-tools-view.tsx, onUpdate is not passed to InstalledToolRow or InstalledToolCard:

<InstalledToolRow
  key={workflow.id}
  workflow={workflow}
  status={getWorkflowStatus(workflow)}
  onShare={handleShare}
  onClick={handleRowClick}
  // onUpdate is NOT passed — button never renders
/>

Implementation

  1. Add a handleUpdate callback in installed-tools-view.tsx that finds the matching registry tool and opens the tool detail modal (or install modal directly) with that tool
  2. Pass onUpdate={handleUpdate} to both InstalledToolRow and InstalledToolCard
  3. The existing install modal flow handles the rest (substitutes variables, creates workflow in n8n, activates, caches registry info, reloads tools)

Files

  • frontend/components/tools/installed-tools-view.tsx — wire up onUpdate
  • frontend/components/tools/installed-tool-card.tsx — button exists, needs callback
  • frontend/components/tools/installed-tool-row.tsx — button exists, needs callback

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions