Built-in Actions Reference#
Parent document: YAML Reference Related: Node Specification | Template Syntax Epic: DOC-002
Overview#
The Edge Agent provides 100+ built-in actions organized into 12 categories. Actions are the building blocks for YAML agent workflows, providing capabilities from LLM calls to file I/O, data processing, memory persistence, reasoning patterns, multi-agent coordination, and cloud production deployment.
Quick Reference#
Action |
Description |
Document |
|---|---|---|
|
Call LLM API |
|
|
Stream LLM response |
|
|
Function/tool calling |
|
|
HTTP GET request |
|
|
HTTP POST request |
|
|
Read file |
|
|
Write file |
|
|
Parse JSON string |
|
|
JMESPath/JSONPath transform |
|
|
Store in session memory |
|
|
Long-term memory store |
|
|
Semantic search |
|
|
Web scraping |
|
|
Retry with correction |
|
|
Rate limit any action |
|
|
Get secret value |
|
|
Check secret exists |
|
|
Chain-of-Thought reasoning |
|
|
ReAct reasoning loop |
|
|
Generate-critique-improve |
|
|
Problem decomposition |
|
|
Single agent task dispatch |
|
|
Parallel multi-agent execution |
|
|
Sequential agent chaining |
|
|
Leader-worker coordination |
|
|
CrewAI integration |
|
|
Send message to agent |
|
|
Receive messages |
|
|
Broadcast to namespace |
|
|
Request/response delegation |
|
|
Get shared state |
|
|
Set shared state |
|
|
Discover agents |
|
|
Generate-evaluate-correct loop |
|
|
Standalone evaluation |
|
|
Standalone correction |
|
|
Load session data |
|
|
Save session data |
|
|
Get Firestore document |
|
|
Set Firestore document |
|
|
Query Firestore |
|
|
Verify auth token |
|
|
Validate input data |
|
|
Custom HTTP response |
|
|
Check if error is retryable |
Action Categories#
LLM Actions (4 actions)#
Language model integration with multiple providers.
Action |
Description |
|---|---|
|
Call OpenAI-compatible LLM API |
|
Stream LLM responses with chunk aggregation |
|
LLM calls with exponential backoff retry |
|
Function/tool calling with action dispatch |
Providers: OpenAI, Azure OpenAI, Ollama, LiteLLM (100+ models)
I/O Actions (10 actions)#
HTTP requests, file operations, and cloud storage.
Action |
Description |
|---|---|
|
HTTP GET request |
|
HTTP POST request |
|
Read local or remote files |
|
Write local or remote files |
|
List files in directory |
|
Check if file exists |
|
Get file metadata |
|
Copy files (cross-cloud) |
|
Delete files |
|
Create directories |
Cloud Support: S3, GCS, Azure Blob via fsspec
Data Processing Actions (15 actions)#
JSON/CSV parsing, validation, transformation, and code execution.
Action |
Description |
|---|---|
|
Parse JSON string to object |
|
Transform with JMESPath/JSONPath |
|
Convert object to JSON string |
|
Parse CSV to list of dicts |
|
Convert list to CSV |
|
Validate against JSON Schema |
|
Deep merge dictionaries |
|
Filter list with predicates |
|
Execute sandboxed Python |
|
Manage persistent sandbox sessions |
|
Create tabular data table |
|
Insert rows into table |
|
Update rows by primary key |
|
Delete rows (tombstone) |
|
SQL query with LWW merge |
Memory Actions (20 actions)#
Session memory, long-term memory, caching, and graph storage.
Action |
Description |
|---|---|
|
Store in session memory |
|
Retrieve from session |
|
Summarize with LLM |
|
Store in long-term memory |
|
Retrieve from LTM |
|
Delete from LTM |
|
Search LTM by pattern |
|
Cache action results |
|
Get cached value |
|
Invalidate cache entries |
|
Firebase Agent Memory store |
|
Firebase retrieve |
|
Firebase list memories |
|
Text search with ranking |
|
SQL query via DuckDB |
|
Generate embeddings |
|
Vector similarity search |
|
Store graph entity |
|
Store graph relationship |
|
Query graph with Cypher/Datalog |
Backends: SQLite, DuckDB, Firebase, CozoDB, Kuzu
Integration Actions (15 actions)#
External services, web scraping, RAG, and observability.
Action |
Description |
|---|---|
|
Start trace span |
|
Log events/metrics |
|
End trace span |
|
Validate Opik connection |
|
Scrape single page (Firecrawl) |
|
Crawl multiple pages |
|
Web search (Perplexity) |
|
AI-powered extraction (ScrapeGraphAI) |
|
Generate embeddings |
|
Store with embeddings |
|
Semantic similarity search |
|
Execute CrewAI tools |
|
Execute MCP server tools |
|
Execute LangChain tools |
|
Discover available tools |
External APIs: Firecrawl, Perplexity, ScrapeGraphAI, Opik
Reasoning Actions (7 actions)#
AI reasoning patterns: Chain-of-Thought, ReAct, self-correction, and decomposition.
Action |
Description |
|---|---|
|
Chain-of-Thought structured reasoning |
|
ReAct thought-action-observation loop |
|
Generate-critique-improve cycle |
|
Problem decomposition and synthesis |
|
DSPy ChainOfThought wrapper |
|
DSPy ReAct wrapper |
|
Compile DSPy module |
Features: Multiple thinking formats, tool integration, multi-model support, Opik-compatible traces
Specialized Actions (15 actions)#
Checkpoints, schema manipulation, document extraction, validation, rate limiting, and secrets management.
Action |
Description |
|---|---|
|
Save workflow checkpoint |
|
Load checkpoint |
|
Deep merge JSON Schemas |
|
Extract structured data from documents |
|
Create LlamaExtract agent |
|
List extraction agents |
|
Get agent details |
|
Delete extraction agent |
|
3-layer extraction validation |
|
Generate extraction prompt |
|
Retry with correction node |
|
Rate limit any action (RPM/RPS) |
|
Get secret from cloud provider |
|
Check if secret exists |
Custom Actions |
Register Python functions |
Features: Prolog constraints, semantic probes, checkpoint persistence, rate limiting, cloud secrets (AWS, Azure, GCP)
Multi-Agent Actions (5 actions)#
Multi-agent collaboration primitives for orchestrating multiple AI agents.
Action |
Description |
|---|---|
|
Dispatch task to single named agent |
|
Parallel dispatch with aggregation strategies |
|
Chain agents where output feeds next |
|
Leader-worker coordination pattern |
|
CrewAI integration with native fallback |
Features: Agent registry, consensus/voting aggregation, sequential chaining, leader-worker coordination, CrewAI integration
Planning Actions (4 actions)#
Planning and decomposition primitives for complex task management.
Action |
Description |
|---|---|
|
Decompose goal into subtasks with dependencies |
|
Execute plan respecting dependency order |
|
Re-plan from current state preserving completed work |
|
Get plan execution status |
Features: DAG-based dependencies, parallel/sequential execution, failure handling strategies (replan/retry/skip/abort), checkpoint integration
A2A Communication Actions (10 actions)#
Inter-agent communication primitives for distributed agent systems.
Action |
Description |
|---|---|
|
Send message to specific agent |
|
Receive messages with filtering |
|
Broadcast to all agents in namespace |
|
Request/response with fallback |
|
Get shared state value |
|
Set shared state with optimistic locking |
|
Discover available agents |
|
Register agent for discovery |
|
Unregister agent |
|
Update agent last_seen timestamp |
Features: Namespace isolation, optimistic locking, capability-based discovery, timeout handling, delegation fallbacks
Reflection Actions (3 actions)#
Self-correcting agent patterns with generate-evaluate-correct loops.
Action |
Description |
|---|---|
|
Execute generate→evaluate→correct cycle |
|
Standalone evaluation (schema, LLM, custom) |
|
Standalone correction action |
Features: JSON Schema validation, LLM-as-judge evaluation, custom Python/Lua/Prolog evaluators, multiple failure strategies, iteration history tracking
Cloud Production Actions (20 actions)#
Enterprise-grade capabilities for production deployment.
Action |
Description |
|---|---|
|
Load session data by ID |
|
Persist state to session backend |
|
Delete session |
|
Check if session exists |
|
Get Firestore document |
|
Create/update document |
|
Query with filters |
|
Delete document |
|
Atomic batch operations |
|
Verify authentication token |
|
Get user profile by UID |
|
Validate data against schema |
|
Create reusable validator |
|
Custom HTTP response with early termination |
|
Check if error is retryable |
|
Clear error from state |
|
Get error info |
|
Check if error exists |
|
Get error type |
|
Retry last failed action |
Features: Session persistence, Firestore CRUD, Firebase/JWT auth, input validation, HTTP response transformation, structured error handling
Dual Namespace Convention#
All actions support two naming conventions:
# Dotted namespace (recommended)
- uses: llm.call
- uses: file.read
- uses: memory.store
# Underscore namespace (alternative)
- uses: actions.llm_call
- uses: actions.file_read
- uses: actions.memory_store
Both forms are functionally identical. The dotted namespace is preferred for readability.
Action Anatomy#
Every action follows a consistent structure:
- name: step_name # Unique identifier for this step
uses: category.action # Action to execute
with: # Parameters (action-specific)
param1: value1
param2: "{{ state.dynamic }}"
output: result_key # Where to store results in state
condition: "{{ state.should_run }}" # Optional: skip if false
Common Return Fields:
Field |
Type |
Description |
|---|---|---|
|
bool |
Whether action succeeded |
|
string |
Error message (on failure) |
|
string |
Error category for handling |
Error Handling#
Actions return structured errors for conditional handling:
- name: risky_operation
uses: http.get
with:
url: "{{ state.url }}"
output: result
- name: handle_error
condition: "{{ not result.success }}"
uses: llm.call
with:
model: gpt-4
messages:
- role: user
content: "Handle error: {{ result.error }}"
See Also#
Node Specification - Complete node structure
Template Syntax - Jinja2 expressions
Advanced Runtimes - Lua and Prolog nodes
YAML Reference - Complete reference