Functions and testing
A function runs code with declared JSON input and output schemas. It can return artifacts and proposals for the host to process. Returning a proposed action does not grant permission to execute it.
Test a function locally
From an AgentKit source checkout, create the built-in Python starter:
make build
./dist/agentkit init --name my-agent /tmp/my-agent
./dist/agentkit test /tmp/my-agent
./dist/agentkit integration /tmp/my-agent
./dist/agentkit build /tmp/my-agent
Python must be installed. The starter needs no model key, SDK installation, or production credential. Its integration suite checks outputs, artifacts, admission rules, and replay behavior through the shared host contract.
After editing a file, refresh the lock and repeat the checks:
./dist/agentkit lock /tmp/my-agent
./dist/agentkit integration /tmp/my-agent
./dist/agentkit build /tmp/my-agent
Native execution is a development convenience with access to your machine. For the supported Python container profile, start Docker and obtain the image before running:
docker pull python:3.12-slim
./dist/agentkit integration --executor docker /tmp/my-agent
This checks a network-disabled container with bounded resources. It does not qualify or publish a hosted kit.
Adios Sandbox
Adios Sandbox is the separate local runtime project used to run applications in a Linux environment closer to Adios hosting. Native execution, a development Docker container, and Adios Sandbox are distinct test environments.
The AgentKit-specific Sandbox adapter is still to be connected. Until then,
adios up --local exercises supported application manifests; it does not by
itself provide an AgentKit function executor or hosted credential resolution.
The desired execution model lets agents and functions choose their locations independently while preserving the function request, response, and policy contract. Test actual runtime versions and enforced limits in each environment before claiming parity.
Verify in stages
| Stage | Evidence to collect |
|---|---|
| Recorded workflow | Step order, output schemas, approval waits, resume, and artifact contents |
| Native function | Input rejection, output validation, timeout, artifacts, and replay |
| Local isolation | Runtime version, environment filtering, network policy, and resource limits |
| Hosted test | Same kit version and fixtures, scoped connections, outputs, artifacts, and audit events |
Compare normalized results rather than run IDs or timestamps. Record which effects were simulated. Test a missing credential, a denied approval, a retry, and cancellation before enabling actions against real services.
For agent workflows, use the quickstart as the first local and hosted comparison. Expand it with your own fixtures before adding live effects.