Node Focus [Experimental]
Node Focus lets you “study” specific nodes in your workflows by recording their inputs, outputs, execution time, and optional Reddit post context across executions.
What gets recorded
- Input values received by the node
- Output values produced by the node
- Execution timing (ms)
- Associated post data (optional)
- Timestamp per execution
Recording only applies to focused nodes and adds minimal overhead when enabled.
How it works
- You mark nodes as focused with a record limit.
- The engine records data for focused nodes during workflow execution.
- Data is stored on disk in a simple JSON structure for analysis.
Storage layout
node_focus_data/
├── focus_configs.json # Focus configurations
└── execution_records/ # Execution data by workflow
└── {workflow_id}/
└── {node_id}.json # Records for specific node
Using Node Focus
In the UI
- Open a workflow in the editor.
- Toggle Node Focus mode and click nodes to focus them.
- Set
max recordsand enable/disable as needed. - Analyze focused nodes on the Node Focus dashboard.
Via API
POST /api/node-focus
Content-Type: application/json
{
"workflow_id": "workflow-123",
"node_id": "node-456",
"max_records": 1000
}
GET /api/node-focus?workflow_id=workflow-123
GET /api/node-focus/node-456/records?workflow_id=workflow-123&days=7&limit=100
PUT /api/node-focus/node-456
Content-Type: application/json
{
"enabled": false,
"max_records": 500
}
DELETE /api/node-focus/node-456
Start by focusing a few critical nodes (e.g., threshold checks) to understand behavior before broadening coverage.
Data model
@dataclass class NodeFocusConfig: node_id: str workflow_id: str enabled: bool max_records: int created_at: str
=== NodeExecutionRecord
```python
@dataclass
class NodeExecutionRecord:
id: str
node_id: str
workflow_id: str
execution_id: str
timestamp: str
input_values: Dict
output_values: Dict
execution_time_ms: float
post_data: Dict
## Best practices
- Focus nodes critical to decision logic or with complex calculations
- Use appropriate record limits and time windows
- Monitor execution time for performance-sensitive nodes
- Periodically clean old data
## Troubleshooting
- No records? Ensure the node is focused and enabled, and that the workflow runs
- Missing files? Check permissions in `node_focus_data/` and verify workflow IDs
- Performance concerns? Reduce focused nodes or lower record limits
## Next steps
- Use the dashboard at `/node-focus` to analyze trends
- Combine Node Focus with execution trace data for deeper debugging
- Explore sample workflows to see typical focus points