From 01995392dab8321390a402ac75a01cdc9e4a8d87 Mon Sep 17 00:00:00 2001
From: rob
# Install SmartTools
pip install smarttools
-# Create your first tool interactively
-smarttools create
+# Create your first tool (choose your style)
+smarttools ui # Visual builder with menus
+smarttools create # CLI wizard
# Or install a tool from the registry
smarttools registry install official/summarize
@@ -36,6 +37,12 @@ smarttools registry install official/summarize
# Use it!
cat article.txt | summarize
+Two Ways to Build
+smarttools ui launches a visual builder with menus and forms.
+ smarttools create uses a command-line wizard. Both create the same YAML config files.
Each tool is a YAML file that defines:
Not everyone wants to write YAML by hand. SmartTools includes a full-featured +terminal UI that lets you create, edit, and test tools with menus and formsβno text editor required.
+ +What You'll Learn
+Start the UI with a single command:
+ +smarttools ui
+
+You'll see a menu-driven interface that works in any terminal:
+ +βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ +β SmartTools Manager β +βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€ +β β +β [ List all tools ] β +β [ Create new tool ] β +β [ Edit existing tool ] β +β [ Delete tool ] β +β [ Test tool ] β +β [ Manage providers ] β +β [ Exit ] β +β β +β Use ββ to navigate, Enter to select β +β β +βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ+
Pro Tip: Mouse Support
+If you have urwid installed (pip install urwid),
+ the UI supports mouse clicks! Just click on menu items instead of using arrow keys.
Select "Create new tool" to open the tool builder. It has two main sections:
+ +1. Info & Arguments
+2. Processing Steps
+smarttools uisummarize--length, default to 100{input} and {length}The UI makes it easy to add, edit, and delete AI providers without touching config files:
+ +βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ +β Manage Providers β +βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€ +β β +β claude claude -p β +β opencode opencode β +β mock echo '[MOCK RESPONSE]' β +β ββββββββββββββββββββββββββββββββββββββββ β +β [ + Add New Provider ] β +β [ β Back to Main Menu ] β +β β +βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ+
Select a provider to edit or delete it. Adding a new provider shows a form:
+ +claude)claude -p)Before deploying a tool, test it with the built-in mock provider:
+ +This lets you verify your prompts and variable substitution without making real API calls.
+ +| Key | +Action | +
|---|---|
β / β |
+ Navigate menu items | +
Enter |
+ Select / confirm | +
Esc |
+ Cancel / go back | +
Tab |
+ Move to next field (in forms) | +
q |
+ Quit the application | +
SmartTools automatically uses the best available terminal UI library:
+ +urwid (Best)
+Mouse support, smooth
+pip install urwid
snack
+BIOS-style dialogs
+apt install python3-newt
dialog/whiptail
+Fallback option
+apt install dialog
When should you use each?
+ +| Use the UI when... | +Use YAML when... | +
|---|---|
| You're new to SmartTools | +You're comfortable with YAML | +
| Building your first few tools | +Making quick edits | +
| Managing providers | +Copying tools between machines | +
| Testing interactively | +Version control integration | +
Now that you know both ways to build tools:
+ +