Skip to main content
An agent is an AI-driven alternative to a workflow. Where a workflow is a fixed graph of typed steps you wire by hand, an agent is a coding agent that runs in a sandbox, reads your documents, and produces structured output by writing and running code against a Git-backed source package you train over time. Reach for an agent when the task is open-ended or changes shape per document, and for a workflow when the steps are known and you want them deterministic.

Workflow or agent

WorkflowAgent
ShapeFixed DAG of typed stepsAutonomous coding agent in a sandbox
AuthoringYAML you edit (or the builder generates)Git-backed source package, trained via chat
DeterminismDeterministic, same path every runModel-driven, adapts per input
Best forKnown pipelines, strict reproducibilityOpen-ended extraction, per-document variation
Both run from the same places, are evaluated against datasets the same way, and are inspected with the same eigenpal runs commands.

Two ways an agent runs

  • Inference run is one-shot and autonomous: provision a sandbox, mount the agent’s source, send one prompt, collect results, tear the sandbox down. This is what the Run button, the API, and eval batches use. Each run starts fresh, with no conversation history, and its output is validated against the agent’s output schema.
  • Builder session is interactive: a persistent sandbox with a live coding agent you chat with in the training UI. You describe what you want, the agent edits the Git-backed source, and you commit and push those changes through the eigenpal agents commands. Use it to teach the agent, then run it via inference.

Source lives in Git

An agent’s source is a package in your organization’s Git repository, not a single file. The eigenpal agents commands are the safe editing loop for it, for both humans and builder sessions:
eigenpal agents clone --out tmp/org-repos/acme-prod   # clone the org repo
eigenpal agents validate                              # check source locally
eigenpal agents commit -m "teach invoice totals"      # commit changes
eigenpal agents push                                  # push to the org remote
eigenpal agents release                               # cut a release tag
eigenpal agents sync                                  # apply the release to the platform
See the eigenpal agents reference for the full command surface.

Running an agent

Start a run from the dashboard Run button, the CLI, or the API. The API takes the agent target in the path as agents.<slug> and the inputs in the body:
curl -X POST https://studio.eigenpal.com/api/v1/run/agents.extract-invoice \
  -H "Authorization: Bearer eig_..." \
  -F 'document=@invoice.pdf' \
  -F '_json={"language":"en","vendor":"Acme"}'
File field names become input names; use the _json field for scalar inputs alongside uploads. See the API reference for run status, feedback, and expected-artifact endpoints.

Inspecting and improving runs

Every run produces output, a trace of what the agent did, and a place to attach feedback and expected artifacts. Inspect them with the same commands you use for workflow runs:
eigenpal runs list
eigenpal runs get <run-id>
eigenpal runs trace <run-id>
eigenpal runs feedback <run-id> ...
Feedback and expected artifacts feed back into training: the builder session reads past runs and their issues to realign the agent on the next pass.