DEV Community

Mr.Pan
Mr.Pan

Posted on

Stop Memorizing Commands — Run Scripts in Plain English with `yeero do`, Zero Token Cost

I recently added a yeero do subcommand to the YeeroAI CLI — describe a task in natural language, and it auto-matches or generates a Python script to execute.

The motivation comes from everyday terminal work. There are always small tasks — checking the IP, viewing a file tree, killing a process on a port, listing directory files. None of them are complicated individually, but commands differ across platforms, and you end up looking them up every time you switch systems. yeero do collapses all of that into one sentence — you say what you want, it runs it for you.

Here's how it works.


What is yeero do?

yeero do is a subcommand of the YeeroAI CLI. The idea is simple: describe your intent in natural language, and the CLI will:

  1. Search through your locally synced Python apps for the best match.
  2. Run it directly if the match is strong.
  3. Create a new Python app generated by AI if no good match exists.

Under the hood, it still executes a Python app via yeero app. The difference is that you don't need to remember app IDs or subcommands.


Installation

macOS / Linux

curl -fsSL https://yeero.ai/cli/install.sh | sh
Enter fullscreen mode Exit fullscreen mode

The installer detects your platform, downloads the binary, and sets up PATH automatically.

Windows (PowerShell)

irm https://yeero.ai/cli/install.ps1 | iex
Enter fullscreen mode Exit fullscreen mode

Default install path: %LOCALAPPDATA%\yeero.

Verify

yeero --version
Enter fullscreen mode Exit fullscreen mode

Log In

yeero login
Enter fullscreen mode Exit fullscreen mode

It uses email verification code login. Non-interactive login is also supported:

yeero login --email you@example.com --code 123456
Enter fullscreen mode Exit fullscreen mode

Check login status:

yeero whoami
Enter fullscreen mode Exit fullscreen mode

Your token is stored securely in the system keychain.


Basic Syntax

yeero do [INTENT] [OPTIONS]
Enter fullscreen mode Exit fullscreen mode

Options:

Option Description
--dry-run Preview the routing result without executing
--name <NAME> Name for the newly created app
--no-create Fail if no matching app is found
--model <MODEL> Model to use when generating a new app

How It Works

When you run yeero do "...", the CLI first sends a dry-run probe:

  • Strong match: runs the app directly.
  • Multiple candidates: shows a list for you to pick from.
  • No / weak match: asks you to confirm the model, then generates, installs, and runs the app.

Stage messages like creating, generating, installing, and running are printed in real time.


Practical Examples

System info

# Show IP address — no need to remember ipconfig / ip addr / ifconfig
yeero do "local IP"
Enter fullscreen mode Exit fullscreen mode

Output:

IPv4: 192.168.1.100
IPv6: fe80::1
Enter fullscreen mode Exit fullscreen mode
yeero do "system info"
Enter fullscreen mode Exit fullscreen mode

Output:

OS: macOS 14.5
CPU: Apple M3
Memory: 16 GB
Uptime: 3d 12h
Enter fullscreen mode Exit fullscreen mode

Files and directories

yeero do "file tree"
Enter fullscreen mode Exit fullscreen mode

Output:

.
├── src
│   ├── main.py
│   └── utils.py
├── README.md
└── requirements.txt
Enter fullscreen mode Exit fullscreen mode
yeero do "get all files in directory"
Enter fullscreen mode Exit fullscreen mode

Output:

README.md
package.json
src/
public/
Enter fullscreen mode Exit fullscreen mode
yeero do "list subdirectories by size"
Enter fullscreen mode Exit fullscreen mode

Output:

node_modules/    1.2 GB
dist/            45 MB
src/             3 MB
Enter fullscreen mode Exit fullscreen mode

Equivalent: du -sh * | sort -rh.

File batch processing

# Convert images
yeero do "batch convert png to webp"
Enter fullscreen mode Exit fullscreen mode

Output:

image1.png -> image1.webp
image2.png -> image2.webp
Enter fullscreen mode Exit fullscreen mode
# CSV deduplication and export
yeero do "deduplicate CSV, sort by amount, export to Excel"
Enter fullscreen mode Exit fullscreen mode

Output:

Removed 12 duplicate rows
Sorted by amount descending
Exported to output.xlsx
Enter fullscreen mode Exit fullscreen mode

Traditional approach: pandas read, groupby, sort, to_excel.

# Sort files by date
yeero do "sort images into folders by date"
Enter fullscreen mode Exit fullscreen mode

Output:

2024-01-01/IMG_001.jpg
2024-01-02/IMG_002.jpg
Enter fullscreen mode Exit fullscreen mode

Dev / ops tasks

# Generate a QR code
yeero do "generate QR code for example.com"
Enter fullscreen mode Exit fullscreen mode

Output:

Saved QR code to example_com_qr.png
Enter fullscreen mode Exit fullscreen mode

Traditional approach: pip install qrcode plus five lines of code.

# Kill process on port 8080
yeero do "stop process occupying port: 8080"
Enter fullscreen mode Exit fullscreen mode

Output:

Found process node (PID 12345) on port 8080
Process 12345 terminated
Enter fullscreen mode Exit fullscreen mode

Traditional approach: lsof -i:8080 to find the PID, then kill -9. Two steps.

Dry-run mode

yeero do "generate QR code for example.com" --dry-run
Enter fullscreen mode Exit fullscreen mode

No-create mode

yeero do "just testing" --no-create
Enter fullscreen mode Exit fullscreen mode

yeero do vs yeero app run

yeero do yeero app run
Input Natural language intent App ID / name
Routing Auto-match, creates app if needed Runs specified app directly
Use case "I want to do X" "I want to run this app"
Essence Both ultimately execute a yeero app Python script

Cost Advantage

Using AI agents for these small tasks was like ordering a bowl of white rice on a food delivery app — it works, but the delivery fee costs more than the food. Running a script for three seconds, but the token cost takes longer to tally up than the script takes to run.

yeero do takes a different approach: it only calls the LLM once when creating the app. Every subsequent run executes the local Python script directly — zero additional token cost. It's like having a key cut — a one-time cost, then you can open the door yourself every time without calling a locksmith.

For high-frequency utility tasks like log analysis, file cleanup, or report generation, this adds up to real savings over time.


Notes

  1. yeero do needs the daemon running. It will be started automatically on demand.
  2. The first creation may take a while because AI generates the code and installs dependencies.
  3. If generation fails, the CLI prints the app ID so you can iterate with yeero app discuss <app-id>.
  4. Created apps are synced to your account and can be edited from the web or desktop app.

Top comments (0)