ivy-interactive/ivy-framework/ivy-convert-retool

Claude Code and agent skill by ivy-interactive/ivy-framework

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Convert a Retool application to an Ivy project. Use when the user wants to migrate from Retool, convert a Retool app, or build an Ivy app from an exported Retool project (.zip file). Uses the ivy-inspector-retool CLI tool to inspect exported Retool projects.

Install

npx vskill@latest install ivy-interactive/ivy-framework/ivy-convert-retool

SKILL.md

ivy-convert-retool

Convert an exported Retool project to an Ivy project.

Pre-flight: Read Learnings

If the file .ivy/learnings/ivy-convert-retool.md exists in the project directory, read it first and apply any lessons learned from previous runs of this skill.

Reference Files

Read before implementing:

Reference Files

The references/ folder contains 134 reference files with Retool-to-Ivy component mappings (one .md per Retool widget). Read the relevant reference files before implementing the conversion to understand how to map Retool features to Ivy features.

Step 1: Locate the Retool Export

You need a path to a .zip file containing an exported Retool project. Check if a path was provided via $ARGUMENTS. If not, ask the user to provide one.

Verify the file exists using test -f "<path>".

Step 2: Research the Retool Application

Use the ivy-inspector-retool CLI tool to inspect the content of the zip file. This tool is already installed.

  1. Run ivy-inspector-retool docs to see all available commands and options.
  2. Use ivy-inspector-retool to inspect the zip file. Issue multiple Bash commands in parallel to gather information as fast as possible.

Your goal is to analyze the application built in Retool and compile a detailed report so that it can be converted to an Ivy application. Answer these questions:

  • What are the data sources used in the Retool application? For each data source, what type is it (e.g. REST API, SQL database, GraphQL, etc), what are the endpoints or tables used, and what queries are made?
  • What are the pages in the Retool application? What are their names and purposes? A page in Retool will be converted to an App in Ivy.
  • What are the modals (dialogs) and drawers (sheets)?

Step 3: Present the Conversion Plan

Given the research output, present the user with a plan using the following structure:

For each app, assign a Type:

  • CRUD -- When the app is backed by a database table containing entity records that users would create, edit, delete
  • Dashboard -- For summary, analytics, or reporting views
  • Ad-hoc -- For utility or custom apps that don't fit the above categories
markdown
# Retool to Ivy Conversion Plan
**File:** [path to zip file]
## Data Sources
### DataSource:MyRestApi
**Type:** REST API
**Base URL:** https://api.example.com/v1
**Authentication:** Bearer token
**Endpoints:**
-GET /customers -- list all customers
-GET /customers/:id -- get customer by ID
-POST /customers -- create customer
-...
### DataSource:MyDatabase
**Type:** SQL (PostgreSQL)
**Tables:** customers, orders, products
**Key Queries:**
-SELECT * FROM customers WHERE active = true
-...
## Pages
### Page:Customers -> App:Customers
**File:** /Apps/CustomersApp.cs
**Type:** CRUD
**Icon:** User
**Data Source:** MyRestApi (GET /customers, POST /customers)
**Description:**
Lists all customers with search and filtering. Allows creating and editing customer records.
### Page:Dashboard -> App:Dashboard
**File:** /Apps/DashboardApp.cs
**Type:** Dashboard
**Icon:** Dashboard
**Data Source:** MyDatabase (aggregation queries)
**Description:**
Summary view showing key metrics and charts.
### Page:ImportTool -> App:ImportTool
**File:** /Apps/ImportToolApp.cs
**Type:** Ad-hoc
**Icon:** Upload
**Description:**
Utility page for importing CSV data into the system.
## Modals and Drawers
### Modal:EditCustomer
**Triggered from:** Customers page
**Purpose:** Edit form for a single customer record
### Drawer:CustomerDetails
**Triggered from:** Customers page
**Purpose:** Side panel showing full customer details
## Connection Configuration
**Connection Name:** MyCompany
**Namespace:** MyCompany.Connections.MyCompany
**Secrets:**
-MyCompany:ApiKey
-MyCompany:BaseUrl
## Other Notes
...

Step 4: Implementation

Implement the plan approved by the user in the previous step.

Post-run: Evaluate and Improve

After completing the task:

  1. Evaluate: Did the build succeed? Were there compilation errors, unexpected behavior, or manual corrections needed during this run?
  2. Update learnings: If anything required correction or was surprising, append a concise entry to .ivy/learnings/ivy-convert-retool.md (create the file and .ivy/learnings/ directory if they don't exist). Each entry should note: the date, what went wrong, why, and what to do differently next time.
  3. Skip if clean: If everything succeeded without issues, do not update the learnings file.

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/ivy-interactive/ivy-framework/ivy-convert-retool/badge)](https://verified-skill.com/skills/ivy-interactive/ivy-framework/ivy-convert-retool)

Something wrong with this skill or its page? Tell us.