Skip to main content
For reference, not memorization. Your AI agent knows which nodes to use and how to configure them. This reference is for understanding what’s possible.
Nodes are the building blocks of pflow workflows. Each node performs a single operation - reading a file, calling an API, running a shell command - and passes data to the next node through the shared store.

Core nodes

pflow includes these built-in nodes:

File operations

Read, write, copy, move, and delete files

LLM

Call AI models with prompts and images

HTTP

Make API requests to web services

Shell

Execute shell commands

Code

Execute Python for data transformation

Agent

Repository-aware tasks via Claude or Codex

MCP tools

Use tools from MCP servers

How nodes work

Every node follows the same pattern:
  1. Read inputs from node parameters
  2. Execute its operation
  3. Write outputs to the shared store
  4. Return an action that determines the next node
Because every node declares its inputs and outputs, pflow can validate the whole workflow before anything runs — catching bad template references, missing fields, and type mismatches at build time.

Parameters vs shared store

Nodes receive data through parameters. Parameters can be static values or template variables that pull from the shared store: Template variables like ${node_id.key} are resolved at runtime from the shared store and injected into node parameters. You can access nested fields and array elements directly: ${api.response.items[0].name}. Nodes write their outputs to the shared store, making them available for template variables in subsequent nodes. See Template variables for complete syntax and examples.

Automatic JSON parsing

When a node outputs a JSON string and the next node expects an object, pflow automatically parses it. This means shell commands that output JSON work directly with other nodes — no extra conversion steps needed.

Output keys

Each node writes specific keys to the shared store. For example:
  • read-file writes content, file_path, content_is_binary
  • llm writes response, llm_usage
  • http writes response, status_code, response_headers
  • code writes result, stdout, stderr
Check each node’s documentation for its complete interface.

Discovering nodes

Your agent uses these commands to find the right nodes:

Extending with MCP

Beyond core nodes, you can add capabilities from MCP servers. When you run pflow mcp sync, each MCP tool becomes a pflow node:
See MCP tools for details on how this works.

Node categories

Disabling nodes

You can disable any node (including core nodes) using the settings filter:
Disabled nodes won’t appear in pflow mcp list and can’t be used in workflows. See settings commands for details.