Skip to main content

AI agent that turns natural language into executable automation. 412 batteries included.

Project description

Flyto2 AI

flyto-ai

Natural language → executable automation workflows

aider writes code. open-interpreter runs code. flyto-ai builds workflows.

PyPI Python License


What is flyto-ai?

An AI agent that turns natural language into reusable, structured automation workflows — not throwaway scripts, not chat responses.

You describe what you want. The agent calls tools, validates parameters, and produces a YAML workflow you can save, share, schedule, and run again.

"scrape the title from example.com"
         ↓
┌─────────────────────────────────────┐
│ name: Scrape Title                  │
│ steps:                              │
│   - id: launch                      │
│     module: browser.launch          │
│   - id: goto                        │
│     module: browser.goto            │
│     params:                         │
│       url: "https://example.com"    │
│   - id: extract                     │
│     module: browser.extract         │
│     params:                         │
│       selector: "h1"               │
└─────────────────────────────────────┘

Quick Start

pip install flyto-ai
export OPENAI_API_KEY=sk-...
flyto-ai

That's it. One install, one command — interactive chat with 412 automation modules, browser automation, and self-learning blueprints.

flyto-ai demo

Why flyto-ai?

aider open-interpreter flyto-ai
Output Code changes (git diff) One-time code execution Reusable YAML workflows
Tools Your codebase Raw Python/JS/Shell 412 pre-built modules
Learns No No Yes — self-learning blueprints
Reusable Yes (code) No (ephemeral) Yes (save, share, schedule)
Webhook/API No No Yes
For Developers Power users Anyone
License Apache-2.0 AGPL-3.0 Apache-2.0

412 Batteries Included

Powered by flyto-core — 412 automation modules across 78 categories:

Category Modules Examples
Browser 38 launch, goto, click, type, extract, screenshot, wait
HTTP / API 15 GET, POST, download, upload, GraphQL
String 12 split, replace, template, regex, slugify
Image 10 resize, crop, convert, watermark, compress
File 9 read, write, copy, zip, CSV, JSON
Database 6 query, insert, SQLite, PostgreSQL
Notification 5 email, Slack, Telegram, webhook
+ 71 more categories 317 array, math, crypto, convert, flow, ...

Self-Learning Blueprints

The agent remembers what works. Good workflows are automatically saved as blueprints — reusable patterns that make future tasks faster.

First time:  "screenshot example.com" → 15s (discover modules, build from scratch)
Second time: "screenshot another.com" → 3s  (reuse learned blueprint)

Blueprints are stored locally (~/.flyto/blueprints.db) and scored by success rate. Export and share your best ones:

flyto-ai blueprints                             # View learned blueprints
flyto-ai blueprints --export > blueprints.yaml  # Export for sharing

CLI

flyto-ai                                     # Interactive chat (default)
flyto-ai chat "scrape example.com"           # One-shot mode
flyto-ai chat "take screenshot" -p ollama    # Use Ollama (no API key)
flyto-ai chat "..." --webhook https://...    # POST result to webhook
flyto-ai serve --port 8080                   # HTTP server for triggers
flyto-ai blueprints                          # List learned blueprints
flyto-ai version                             # Version + dependency status

Interactive Mode

Just run flyto-ai — enter an interactive session with multi-turn conversation:

$ flyto-ai

  _____ _       _        ____       _    ___
 |  ___| |_   _| |_ ___ |___ \     / \  |_ _|
 | |_  | | | | | __/ _ \  __) |   / _ \  | |
 |  _| | | |_| | || (_) |/ __/   / ___ \ | |
 |_|   |_|\__, |\__\___/|_____|  /_/   \_\___|
           |___/

  v0.2.0  Interactive Mode

 > scrape the title from example.com
 (generates YAML workflow)

 > now also take a screenshot
 (builds on previous context)

 > /clear
 Conversation cleared.

 > /exit

Commands: /clear, /history, /version, /help, /exit

Webhook & HTTP Server

Send results anywhere:

flyto-ai chat "scrape example.com" --webhook https://hook.site/xxx

Accept triggers from anywhere:

flyto-ai serve --port 8080

# Then from Slack, n8n, Make, or any HTTP client:
curl -X POST http://localhost:8080/chat \
  -H "Content-Type: application/json" \
  -d '{"message": "take a screenshot of example.com"}'

Python API

from flyto_ai import Agent, AgentConfig

# Auto-detects API keys from environment
agent = Agent(config=AgentConfig.from_env())
result = await agent.chat("extract all links from https://example.com")
print(result.message)    # YAML workflow
print(result.tool_calls) # Tool call log

Multi-Provider

Works with any LLM:

export OPENAI_API_KEY=sk-...          # GPT-4o, GPT-4o-mini
export ANTHROPIC_API_KEY=sk-ant-...   # Claude Sonnet, Opus
flyto-ai chat "..." -p ollama         # Llama, Mistral, local models
flyto-ai chat "..." -p openai --model gpt-4o

Architecture

User message
  → LLM (OpenAI / Anthropic / Ollama)
    → Function calling: search_modules, get_module_info, validate_params, ...
      → 412 flyto-core modules
      → Self-learning blueprints
      → Browser page inspection
    → YAML validation loop (auto-retry on errors)
  → Structured workflow output

Environment Variables

Variable Description
FLYTO_AI_PROVIDER openai, anthropic, or ollama
FLYTO_AI_API_KEY API key (or use provider-specific vars below)
FLYTO_AI_MODEL Model name override
OPENAI_API_KEY Fallback for OpenAI provider
ANTHROPIC_API_KEY Fallback for Anthropic provider
FLYTO_AI_BASE_URL Custom API endpoint (OpenAI-compatible)

License

Apache-2.0 — use it commercially, fork it, build on it.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flyto_ai-0.4.0.tar.gz (80.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flyto_ai-0.4.0-py3-none-any.whl (37.3 kB view details)

Uploaded Python 3

File details

Details for the file flyto_ai-0.4.0.tar.gz.

File metadata

  • Download URL: flyto_ai-0.4.0.tar.gz
  • Upload date:
  • Size: 80.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.6

File hashes

Hashes for flyto_ai-0.4.0.tar.gz
Algorithm Hash digest
SHA256 f8a25f99a0422963ce9c2951987e531705c1ef909ad2dc6069886020dfdbe5ee
MD5 5a9b2ee2fd138b875b29d24eeb67e3e5
BLAKE2b-256 246887dddcef76b1025e467f03c8f91eb552f524e9c50f3e6e3e363e479ebd80

See more details on using hashes here.

File details

Details for the file flyto_ai-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: flyto_ai-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 37.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.6

File hashes

Hashes for flyto_ai-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4df03c7223d475ade87c740df9e9695b19875b879cab98a5bc5a1c8cc7bb4833
MD5 fb2ed25a6d58480656d61de9903acbc8
BLAKE2b-256 e06e868a7e84ca9190e3b638d1b3178d42511ea8f4442c2d2c69f7561b4b17e8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page