Authenticate without exposing credentials
Use a user-scoped credential supplied through your CI secret manager. For an opaque personal access token, the current CLI also requires its owner’s UUID:Pin the inputs
Keep the exact task or dataset version, profile version or local profile bytes, judge selection and plan in the experiment record. A mutable name can resolve to a newer version on the next invocation. Inspect first:Give each submission a stable identity
For a new experiment, choose a unique idempotency key and retain it with the exact request:Read machine output, not a human table
Use--json where the command supports it. Check process exit status and the documented result fields. For example, a completed status --json inspection may report signed_in: false; a zero process exit is not a claim that authentication succeeded.
Run readers and Registry commands have different JSON shapes. Do not assume every object uses a top-level state or the same pagination envelope. The CLI reference identifies supported flags.
synth run events --follow --json emits one event per line. Preserve durable event identities; filtering can produce sequence gaps without missing data.