1.2 KiB
1.2 KiB
AGENTS.md — amduat-api
This repo hosts the API/daemon surface for Amduat.
Scope
vendor/amduat/is the core C substrate (ASL/PEL/TGK libs, codecs, adapters, reference CLIs).- This repo should keep
amduatdthin: HTTP transport, request parsing, auth, and mapping to core library calls. - Do not re-implement substrate semantics here; add features to the core repo and call into it.
Build
- Configure:
cmake -S . -B build - Build:
cmake --build build -j
Run (local Unix socket)
- Prepare store root (from core tools):
vendor/amduat/build/amduat-asl init --root .amduat-asl - Start daemon:
./build/amduatd --root .amduat-asl --sock amduatd.sock
Submodule workflow
- Update core to recorded commit:
git submodule update --init --recursive - Bump core commit:
git -C vendor/amduat fetchgit -C vendor/amduat checkout <commit-or-tag>git add vendor/amduat && git commit -m "Bump amduat core"
API principles
- Single daemon instance = single ASL store root.
- Local auth = filesystem permissions on the socket (no extra auth yet).
- Prefer streaming/batching endpoints (
missing/pack) before adding complex higher-level APIs. - Keep the on-wire contract versioned (
/v1/...) and additive.