Documentation Index
Fetch the complete documentation index at: https://docs.herd.eco/llms.txt
Use this file to discover all available pages before exploring further.
Evaluation
Tools for simulating HAL expressions before publishing. Expressions run in a sandboxed Tevm fork — no real transactions are submitted.Evaluate Existing Action
Simulate a saved action by ID. Loads the action’s HAL expression, injects themain() call with provided inputs, and simulates the entire action.
Parameters
| Parameter | Required | Description |
|---|---|---|
actionId | Yes | Action ID to simulate |
inputs | Yes | Input values for the action’s parameters |
Returns
- Evaluation result — Final output of the expression
- Operation log (oplog) — Full trace of every function call during execution
- Simulated transaction hashes — Can be inspected with Query Transaction
Evaluate Arbitrary Expression
Evaluate a complete, self-contained HAL expression in a sandboxed Tevm fork. Use this for testing expressions that aren’t saved yet.Parameters
| Parameter | Required | Description |
|---|---|---|
expression | Yes | Complete HAL expression (JSON array) |
inputs | No | Input values if the expression has parameters |
Returns
- Evaluation result — Final output
- Operation log (oplog) — Full execution trace
Tevm Fork Behavior
- Forks are created lazily — only when the expression performs on-chain actions (
read-function,write-function,swap) - Pure expressions evaluate without any blockchain interaction
- Simulated transaction hashes can be queried with Query Transaction to inspect traces
Understanding Oplogs
Both evaluation tools return an operation log (oplog) — a detailed trace of every function call during execution. Each entry contains:| Field | Description |
|---|---|
operationId | Unique ID for this operation |
functionName | Function called (e.g., code, read-function, getPath, user-defined) |
status | success or error |
args | Arguments passed to the function |
result | Return value (or error message) |
timestamp | When the operation executed |
Debugging with Oplogs
- Trace execution flow — See which functions run and in what order
- Inspect inputs/outputs — Check what each function receives and returns
- Identify failures — Failed operations show
"status": "error"with error messages - Inspect transactions — Use simulated tx hashes with Query Transaction to discover missing approvals, encoding errors, etc.
Simulation Workflow
- Read docs — Fetch HAL documentation with the Documentation tool
- Search adapters — Find existing adapters with Actions & Adapters
- Build expression — Construct your HAL expression
- Simulate — Run with Evaluate Arbitrary or Evaluate Existing
- Inspect — Check oplog and use Query Transaction on simulated hashes
- Iterate — Fix issues and simulate again
- Publish — Once validated, publish via Actions & Adapters
Related Tools
- Create actions → Actions & Adapters
- Inspect simulated txs → Query Transaction
- Read HAL docs → Documentation
- HAL language reference → HAL Expression System
Next Steps
Query Transaction
Inspect simulated transactions
HAL Reference
Full HAL language documentation

