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:

How nodes work

Every node follows the same pattern:
  1. Read inputs from the shared store or node parameters
  2. Execute its operation
  3. Write outputs to the shared store
  4. Return an action that determines the next node

Parameters vs shared store

Nodes receive data in two ways:
SourceWhen to useExample
ParametersFixed values set when building the workflow"model": "gpt-5.2"
Shared storeDynamic values from previous nodes"prompt": "${summarize.response}"
Template variables like ${node_id.key} pull data from the shared store at runtime. You can access nested fields and array elements directly: ${api.response.items[0].name}.

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 seamlessly 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
Check each node’s documentation for its complete interface.

Discovering nodes

Your agent uses these commands to find the right nodes:
# List all available nodes
pflow registry list

# Search by capability
pflow registry discover "read a JSON file"

# Get full interface details
pflow registry describe read-file

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:
# Add a GitHub MCP server
pflow mcp add github.mcp.json

# Sync to discover tools
pflow mcp sync github

# New nodes appear
pflow mcp tools github
# mcp-github-create_issue
# mcp-github-list_repos
# ...
See MCP tools for details on how this works.

Node categories

CategoryNodesPurpose
Fileread-file, write-file, copy-file, move-file, delete-fileLocal filesystem operations
LLMllmAI model calls via any provider
HTTPhttpWeb API requests
ShellshellSystem command execution
Claudeclaude-codeAI-assisted development
MCPmcp--External tool integration

Disabling nodes

You can disable any node (including core nodes) using the settings filter:
# Disable shell commands entirely
pflow settings deny shell

# Disable specific file operations
pflow settings deny delete-file

# Re-enable a node
pflow settings remove shell
Disabled nodes won’t appear in pflow registry list and can’t be used in workflows. See settings commands for details.