Docs

Daita agents / guide

Artifacts

Create, inspect, convert, recover, and deliver verified Daita-owned outputs.

#Committed Outputs

An artifact is a complete immutable payload committed through Daita's artifact store. It carries an ID, checksum, media type, byte size, sensitivity, authorship, run and conversation identity, and exact provenance.

Artifact creation and local delivery are separate. A document or export can commit successfully even when a later copy to a user-owned directory fails. No partial artifact or partial local copy is published.

#Creation Tools

ToolOutput
artifact_create_documentBounded plain-text or Markdown document authored by the model
data_export_sqliteExact catalog-validated SQLite CSV or XLSX
data_export_postgresqlExact catalog-validated PostgreSQL CSV or XLSX
artifact_snapshot_resultCanonical JSON of one earlier successful current-run tool result
artifact_edit_textComplete replacement derived from a current-run workspace-file binding

Exact tabular exports execute their own validated source query. The model cannot pass arbitrary rows, bytes, checksums, or provenance into an export tool. CSV and XLSX artifacts record the source/resource revisions, SQL and parameter fingerprints, columns, row count, and exact-source-data authorship.

A result snapshot accepts a call ID, not model-supplied result bytes. Daita verifies the original result, schema, digest, provenance, sensitivity, and current-run identity before committing canonical JSON.

#Conversation Continuity

artifact_list returns bounded safe metadata for the current conversation, newest first. It is not a public agent-wide inventory. artifact_read previews one exact known ID owned by the current agent; supported text is byte-bounded and XLSX previews are row-bounded.

artifact_convert supports one conversion: a verified Daita-generated XLSX Data snapshot to CSV. The child records its parent artifact and preserves exact-source provenance.

A model can read an exact artifact ID returned by job_read_results even in another conversation. Durable job results and retained logical deliveries keep their referenced artifacts available after ordinary conversation transcripts are cleared.

#Python Recovery and Delivery

Known IDs can be recovered without a model run:

python
from pathlib import Path
 
payload = await agent.read_artifact("artifact-0123456789abcdef0123456789abcdef")
 
receipt = await agent.save_artifact(
    payload.ref.artifact_id,
    Path("/absolute/path/exports"),
    filename="revenue.csv",
)

Omit destination to use the authorized default export location. Inspect or change that default explicitly:

python
current = await agent.export_destination()
updated = await agent.set_export_destination(Path("/absolute/path/exports"))
reset = await agent.reset_export_destination()

The equivalent headless commands are:

bash
daita artifacts save atlas <artifact-id> \
  --destination /absolute/path/exports \
  --filename revenue.csv
 
daita export-location get atlas
daita export-location set atlas /absolute/path/exports
daita export-location reset atlas

Daita never overwrites an unrelated existing file. A name collision selects the first available parenthesized suffix and reports the verified final path in the delivery receipt.

#Workspace Text Edits

The supported replacement path is file_readartifact_edit_textartifact_save_local. The edit tool accepts only an authenticated opaque binding from the current run. Preparing the artifact does not alter the workspace.

Before replacement, Daita requests exact approval and rechecks the target's identity, original revision, content hash, metadata, ownership, link count, and parent directory. A changed target requires a fresh read and edit. Daita does not merge, rebase, redirect, or retry the mutation.

#Scheduled Artifacts

Scheduled routines can create only four certified artifact classes:

  • model-authored text or Markdown documents;
  • exact SQLite CSV/XLSX exports;
  • exact PostgreSQL CSV/XLSX exports; and
  • validated canonical JSON result snapshots.

Scheduled runs cannot inventory, read, convert, edit, or publish local artifacts. They place immutable references in the originating conversation's inbox.