Blog
Guides and recipes for turning Python scripts into tools your team can run.
Introducing Callables
Add @deploy to a Python function and push. Your team gets a form, schedules and run history, with no front end to build.
Build automations with Claude Code, Cursor and other AI agents
One command teaches your coding agent how to write Callables functions, check them and run them locally. Then you push.
Everything
Deploy from a monorepo or subfolder, with system packages
Build just one folder of a bigger repo, choose the Python version, install dependencies and add tools like ffmpeg with apt.txt.
Control who can run your automations
Roles for your team, sharing for each function, and run history that only the right people see. How access works in Callables.
Build an internal admin panel in Python
Search for a record, then act on it from buttons on each row. Chain Python functions into step-by-step tools your support and ops teams can use.
Organize lots of automations with groups
Group related functions into sections, share secrets across them, and run them as subcommands. Keeps a growing repo of automations easy to find.
Callables vs Windmill and Airplane: a repo-first alternative
How Callables compares to Windmill, and where Airplane users can go now. Same goal, different starting point: your repo, your editor, your agent.
Test your automations locally before you push
Check for deploy problems and run functions on your own machine, with the same input validation as the platform, before anything goes live.
Let teammates upload a file and get a result back
Turn a Python function into a tool where someone uploads a CSV, spreadsheet or PDF and downloads the result, with no front end to build.
Callables vs Power Automate: running Python automations for your team
Power Automate is built for Microsoft 365 workflows. Callables runs the Python you already have. How they compare, and when to use each.
How to run a Python script on a schedule
Run a Python function every hour, every weekday at 9am or on any cron schedule, with logs for every run and no server to keep alive.