Local Machine Automation

Tensorify's CLI runner executes workflows directly on your machine, giving AI agents and workflows access to your local filesystem, shell, and system resources. This is something cloud-only platforms like Zapier and Make can never do.

Local machine plugins (File Ops, Shell, System Info) only work in CLI mode — run tensorify runner start on the target machine.

What Makes This Unique

When you run tensorify runner start, the workflow engine runs on YOUR machine. This means plugins can:

  • Read and write files on your filesystem
  • Execute shell commands (git, docker, npm, etc.)
  • Monitor system resources (CPU, memory, disk)
  • Access local services (databases, Docker containers)

The Three Local Plugins

File Ops

Read, write, modify, and manage files. Operations: read, write, append, find-and-replace, list, copy, move, delete.

Shell

Execute commands and manage processes. Operations: exec (sync), start (background), status, output, wait, kill.

System Info

Query system resources. Queries: cpu, memory, disk, processes, network, ports, uptime.

Example: AI DevOps Assistant

Deploy the DevOps Bot template

This template creates a Slack bot that can:

  • Run deployments (git pull && docker compose up -d)
  • Check server health (CPU, memory, disk)
  • Restart services
  • Read and tail log files

Setting Up CLI Mode

Install the CLI

curl -fsSL https://cli.tensorify.io/install | sh

Initialize

tensorify init

Follow the prompts to configure your runner.

Start the Runner

tensorify runner start

Or install as a system service: tensorify runner install

Deploy with CLI mode

In the canvas, select "Self-Hosted" from the execution target dropdown, then Deploy.

Security: Restricting Agent Access

When connecting File Ops or Shell to an AI Agent, use allowed_operations to limit what the agent can do:

  • Read-only monitoring: File Ops with ["read", "list"], Shell with ["exec"] (readonly commands only)
  • Full automation: All operations enabled
  • No deletion: File Ops with ["read", "write", "append", "replace", "list", "copy", "move"]

Configure this in the plugin's "Agent Permissions" settings group — it's excluded from the tool schema the agent sees.

Use Cases

| Use Case | Plugins | Trigger | |----------|---------|---------| | Deploy on Slack mention | Shell + System Info | Slack Trigger | | Monitor disk space, alert on low | System Info + Slack Send | Manual (scheduled) | | Auto-fix config files | File Ops + AI Agent | Webhook | | Run test suites on PR | Shell + GitHub | Webhook (GitHub) | | Backup database daily | Shell + S3 | Manual (scheduled) |

Tips

  • Working directory: Set working_directory in Shell to scope commands to your project
  • Timeouts: Set reasonable timeouts (default 30s) to prevent hanging processes
  • Background processes: Use start/wait/kill for long-running commands (builds, migrations)
  • Process limits: max_concurrent_processes prevents runaway background tasks (default: 5)
On this page