Skip to main content
R1 context configuration supports the following strict YAML. budget resolves through the existing explicit extensions factory boundary. No callable, client or credential value is persisted. Without loss opt-in, ordinary lossless requests still run; requests requiring loss fail before provider dispatch.
Continue with the same notes project. By default the script validates configuration only; --live explicitly opts into credential resolution and model requests. Documentation qualification never executes that option. Complete Quickstart installation first; to start independently, create an empty directory and save every file on this page.

Dependencies and configuration

Replace example-model and https://provider.example/v1 in real_agent.yaml with your model and endpoint; the reserved domain is not a service. These trusted pure-function tools need no Docker. Before adding file/command tools, follow the sandbox lesson and configure Docker rather than extending this unsafe_host authority. Budgets are 6 model requests, at most 512 output tokens per response, 6 steps and 30 seconds runtime; provider timeout is 30 seconds with retries 0. Budgets do not guarantee task success, and timeout is not hard cancellation. Check text protocol, tool round trips, continuation and loss policy compatibility individually.

Private credential file

Use a local editor to write the following structure in that file. It must be a regular, non-symlink file owned by the current user, with a 0700 parent directory and 0600 file mode. Keep it outside the project, Git, command history and screenshots.
model.credential.ref matches notes-provider; configuration stores a CredentialRef only. LocalCredentialFileResolver explicitly resolves it at composition. Environment variables are not the default path. The generated scaffold credential example can omit the required root key; use this complete structure.

Validate first, then explicitly run

The next command sends real model requests; run it only after configuring your provider. Assertions check actual tool results, not a model claiming completion.
This project registers summarize_note in Python, so launch it through this file. qit run --config does not automatically import application extensions; built-in-tool configurations can use the CLI documented in the CLI reference.

Errors, boundaries and exercise

Preserve typed failures for unknown keys, unsafe permissions, missing references and provider/codec incompatibility. Do not put keys in agent YAML or relax loss checks. Repeated launches create new Sessions; restore requires matching configuration and resolvers. Exercise: change request.max_tokens in YAML, then load and inspect it without credentials.

Complete files: save in the project root

agent.yaml
notes.py
real_agent.yaml
real_notes.py
Composition API · Sandbox · CLI · Next: extensions Source file