Set the session's goal, replacing any existing one [write]
Changed onWork starts immediately — no separate message is needed, and sending one is not how a goal begins. Criteria are optional: omitted, they are derived from the objective so completion is always judged against an explicit list, which the response returns and PATCH can correct. A criterion given as { text, command } is decided by running the command in the session's workspace (exit 0 = met) instead of by the grader. A person's message always outranks the loop: while a turn is running the goal waits, and takes the turn after it. Grading is a model call billed to the session; with an empty wallet deriving criteria is refused with 402 insufficient_credits. Setting a goal stops the run the goal it replaces had started.
Request
- Base URLhttps://api.agentsky.dev/v1
- URLhttps://api.agentsky.dev/v1/sessions/{id}/goal
- AuthHTTP bearer
Path parameters
The session id
Headers
Dedupes a retry of this mutation. The same key with a different body is refused with 409 idempotency_conflict.
Request body
Response
Created
Changes
- breaking
added to the
/response propertyoneOflist for the response status - breaking
the
/response's property type changed fromobjectto no type for status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - info
added the new optional request property
- info
request property
list-of-types was widened by adding typesnullto media typeapplication/json - info
added the optional property
/to the response with the status - info
added to the
/response propertyallOflist for the response status - info
removed
subschema #1from the/response propertyoneOflist for the response status
- breaking