Agent Sandbox Registry

agent-sandbox

.agents/ — engineering record of the cli repository

无中文版

.agents/README.md

.agents/ — engineering record of the cli repository

Maintainer and AI-agent facing records of why the CLI looks the way it does. Nothing here is published to npm (package.json#files is an allow-list). All new documents are written in English.

Ownership rule

A record lives in the repository that owns the code the decision changed. ADRs for the CLI (command surface, credential resolution, templates deploy flow, MCP integration, providers) live here; ADRs for the Python SDK, the server runtime and the template.yaml schema live in agent-sandbox/python-sdk. Records are never copied between repositories: link with an absolute URL (https://github.com/alibaba-agent-sandbox/<repo>/blob/main/<path>), never with ../python-sdk, never with a bare slug.

Layout

Path Contents
notes/ Architecture Decision Records (ADRs), dated and slugged: YYYY-MM-DD-<slug>.md
notes/proposed/<category>/ Under review (architecture, feature, process)
notes/implemented/<category>/ Accepted and shipped
notes/rejected/ Considered and rejected, with the reasoning (flat)
notes/superseded/ Replaced by a newer ADR (flat); carries a Superseded-by: line
design/ Long-form design documents (for example the final CLI design)
research/ Pre-design research owned by the CLI (MCP and agent integration)
evidence/ Point-in-time artifacts: evidence/cli/ (command input/output captures), evidence/research/ (audits), evidence/verify/ (E2E runs)

ADR states

Status: on the second line of an ADR must equal its state directory.

  1. proposed — open for review.
  2. implemented — accepted and merged; the code matches the text.
  3. rejected — not adopted; keep it so the question is not re-litigated.
  4. superseded — replaced; keep the file, add Superseded-by: <slug or URL>.

Move the file and edit Status: in the same commit. Required sections and the template are in notes/README.md.

Research and evidence

scripts/check-repo-health.sh enforces ADR naming, the Status:/directory match, and that no slug dangles.