Skip to main content

Runner Targets Overview

Overview

Connect your agent code to FluxLoop by configuring the runner section in configs/simulation.yaml. Multiple integration patterns support different languages, frameworks, and execution environments.

Pattern Categories

🟢 P0: Production-Ready

PatternWhen to UseDocumentation
Python Function/MethodDirect sync/async function callspython-function
Python ClassClass instance methods (with factory support)Coming soon
Python Async GeneratorStreaming responses (OpenAI/Anthropic SDKs)Coming soon
HTTP REST/SSERemote APIs or local servers (with streaming)http-sse
WebSocketBidirectional streaming (real-time chat)Coming soon
Subprocess (JSONL)Cross-language runtimes (Node/Go/etc)subprocess-jsonl
Step LoopMulti-turn conversations (step() iterations)Coming soon
Resource GuardsTimeout/output limits safety netComing soon

🟡 P1: Beta Features

PatternWhen to UseDocumentation
Batch ExecutionParallel evaluation on JSONL/CSV datasetsComing soon
Advanced StreamingCustom event paths for tool/function callsComing soon
Input/Output AdaptersSignature transformations between frameworksComing soon

🔴 P2: Experimental (Roadmap)

PatternWhen to UseDocumentation
Docker ContainerIsolated, reproducible executionComing soon
Redis/SQS QueueProduction-scale async workersComing soon
Multi-Target CompositeSequential/parallel/ensemble agentsComing soon

Quick Start

1) Python Function (Simplest)

runner:
target: "app.agent:run"
working_directory: .

2) HTTP API (Remote Service)

runner:
http:
method: POST
url: "http://localhost:8000/chat"
stream: sse

3) Subprocess (Node.js Agent)

runner:
process:
command: ["node", "agent.mjs"]
protocol: jsonl

Common Options

Available across all runners:

runner:
# ... pattern-specific config ...

# Common options
working_directory: .
python_path: ["src", "lib"] # Python patterns only
stream_output_path: "message.delta" # Streaming runners

# Resource guards (optional)
guards:
max_duration: 120s
output_char_limit: 20000

Argument Replay (Optional)

Reuse complex kwargs:

runner:
target: "app.agent:run"

replay_args:
enabled: true
recording_file: recordings/args_recording.jsonl
# override_param_path: "item.content.0.text"

See simulation configuration for details.

Next Steps

MCP Server Integration

These docs serve as FluxLoop MCP server's knowledge base:

  • analyze_repository → framework detection → pattern recommendations
  • generate_integration_steps → pattern-specific checklists
  • faq → troubleshooting/example search across all patterns

MCP Server Plan: docs/prd/mcp_server_plan.md