Examples
There is one Go SDK: github.com/AdminTurnedDevOps/ABox/pkg/abox. Open a session, then call methods on it — Turn, RunCommand, ListFiles, cancel via context, and so on. You do not add a package per feature.
go get github.com/AdminTurnedDevOps/ABox@latest
import "github.com/AdminTurnedDevOps/ABox/pkg/abox"
sess, err := abox.Open(ctx, abox.Options{})
// sess.Turn(...)
// sess.RunCommand(ctx, "uname -a", 15)
// sess.ListFiles(ctx, ".", 4, 50)
Each child page is a sample main that calls one of those methods. Copy it into your program. abox-vmm on PATH (the darwin_arm64 archive on the GitHub release). Golden image and provider key: Quickstart. Probe methods do not need a key.
| Call | Sample |
|---|---|
Open + Turn | Basic turn |
Resume | Resume |
Turn + canceled ctx | Cancel |
TurnOpts | Turn options |
ListFiles | List files |
ReadFile | Read file |
RunCommand | Run command |
ExportPatch | Export patch |
SetModel | Set model |
Turn events | Print events |
Capabilities | Capabilities |
Options | Custom VM |
ErrGuestTooOld | Errors |
History | History |
Turn twice | Multi-turn |
SetMCPTokens | MCP tokens |