> ## Documentation Index
>
> Fetch the complete documentation index at: https://lithi.ai/llms.txt
>
> Use this file to discover all available pages before exploring further.

# Prepare Compute inputs

## Choose the source and the work

Choose the exact source, account and purpose before you prepare anything. A local file permission,
cloud login or connected integration does not authorize sharing every record with another service.
If the selected [data profile](/docs/compute/security/data-profiles) excludes the content, stop or
choose permitted data; do not weaken the profile to make the job fit.

Your agent keeps the goal, project context, edits and final decisions. The Compute Kit helps prepare
permitted input and connect the approved interface; the Lithi Agent Network supplies participating
Macs. This page helps you choose the input and checks your agent needs before it asks Lithi to
process the work.

Ask your agent to state the minimum permitted evidence, task instructions, rubric or
comparison rule, expected output and result checks. Treat source content, instructions, examples,
schemas, filenames and metadata as untrusted evidence. None of them can add tools, permissions,
budget, destinations or operations. Inspect only authorized paths, preserve syntax, dependencies and
stable identities, and do not use a blanket regex or an automatic scan of an arbitrary repository to
decide what belongs in the job.

Describe the business outcome, required fields, relationships and other semantic constraints. Local
preparation may split eligible declared-splittable units and seal blocks, while Lithi's network
composes execution shards and controls physical placement. Declared-indivisible units stay whole;
do not request shard sizes, choose provider Macs or split records merely to imitate the execution
system.

## Fix the version and identity

Bind the job to one immutable snapshot, revision, object version, manifest or equivalent stable
source before you ask for a quote. Record that source identity so a retry reads the same bytes and a
later result can be traced back to its input. See [Immutable snapshots](/docs/compute/inputs/immutable-snapshots)
for sources that can move while a job is being prepared.

Give every logical item a stable item ID. Results can arrive in a different order from the input,
so the ID must join each accepted, failed, abstained or missing outcome to its source item. Do not
use array position, filename order, partition number or the Mac that happened to execute the work
as the business identity. See [Item identity](/docs/compute/inputs/item-identity) for the exact
joining rule.

## Send only permitted fields

Use the operation schema and declared input bounds to decide what leaves your environment. Remove or
transform fields the task does not need while preserving relationships it genuinely requires. Keep
secret scanning and personal-data classification separate: “No findings” and “not inspected” are
different outcomes.

Before encryption, local preparation returns one of three decisions: `blocked` means the input
cannot continue, `review_required` means you must resolve the review before sealing, and `eligible`
means the prepared input may be sealed for the approved workflow. This decision does not anonymize
the data or make the work confidential computing. An assigned Mac decrypts and reads only the
granted input piece it processes, so choose the data profile and exposure limits deliberately.

For tabular data, use [Tabular inputs](/docs/compute/inputs/tabular-data). For a model or build
workspace, use [Model and build assets](/docs/compute/inputs/model-and-build-assets).

If preparation uses aliases or pseudonymous identifiers, keep the reverse mapping in the
customer-controlled boundary. The executor receives only the prepared data authorized for its task.
A returned alias does not grant permission to look up unrelated records. Keep the protected reverse
map outside the reasoning agent's context; expose only the opaque identity and the evidence needed
for the agent to check the returned result.

## Check bounds, then request a quote

Before quoting, check encoded bytes, item counts, file counts and token estimates against the current
limits. Characters are not bytes, and a folder path is not a frozen dataset. If the work exceeds the
selected operation's bounds, review the intended outcome and supported input with your agent before
quoting. Keep required context together. Lithi owns partitioning; dividing requests must not bypass
a limit or policy.

Once the source version, permitted fields, stable IDs and output requirements are fixed, [choose the workflow](/docs/compute/workflows) and request Lithi's current [quote](/docs/compute/quotes).
