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

# Use Deepline Agent in Deepline

> A managed AI system for agentic tasks and plain LLM inference, with configurable access to Deepline tools, supporting any modern model, with Deepline-managed.

[Human guide: work with your agent →](https://deepline.com/docs/human/providers/deeplineagent/guide.md)
Inspect one Deepline Agent action before starting provider-backed work. Your first result is a verified input and output contract.

## Provider-specific requirements

Use `ai_inference` for plain text or structured-output model calls with no tool use.

Model IDs are case-sensitive. Use the exact `id` string from the live
[AI Gateway model catalog](https://ai-gateway.vercel.sh/v1/models). The current
Deepline default is `openai/gpt-5.6-luna`. The `describe` CLI also shows
the selected model metadata and provider option schema:
`deepline tools describe ai_inference --model openai/gpt-5.6-luna`.

Use `jsonSchema` for a structured result. It is a strict subset of JSON
Schema: the root is `"type": "object"`, and every field is always returned.
Omit `required` (Deepline then requires every property) or list every
property. A partial `required` list is rejected. Make a field optional with a
nullable type such as `"type": ["string", "null"]`. Deepline guides the model
to emit complete, compact JSON while preserving an explicit `maxOutputTokens`
limit.
Do not apply a small token cap indiscriminately to research or long free-text
fields. For a small budget, ask for brief values. leave enough headroom for
every required field and any model reasoning. Inspect `describe` for
the current model and operation contract. Incomplete JSON remains a failure,
not a partial successful result.

For inference and `deeplineagent`, read `toolResponse.rawV2.result.text` for
text, `toolResponse.rawV2.result.object` for optional structured data, and
`toolResponse.rawV2.extracted_json` for the compatibility JSON field. For
`ai_evaluate`, use `toolResponse.rawV2.result.answers` and
`toolResponse.rawV2.extracted_json`.

Use `deeplineagent` when the task benefits from streaming output and tool use across the current whitelist: `serper_google_search`, `exa_search`, `firecrawl_scrape`, `firecrawl_map`, `firecrawl_crawl`, and `bash`.

For research tasks, prefer an adaptive loop: cheap Serper search first, synthesize, then only run targeted Exa follow-up searches if key gaps remain.

When using `exa_search`, prefer `type: "auto"` with `contents.highlights` and no `contents.summary`. highlights are token-efficient snippets, while summaries add an extra AI pass.

Use Firecrawl only after you know the target site or section. Prefer `firecrawl_scrape` for one known URL, `firecrawl_map` for URL inventory before crawling, and keep `firecrawl_crawl` tightly scoped with explicit low `limit`, `includePaths`/`excludePaths`, or `maxDiscoveryDepth`. Firecrawl work scales with discovered pages, crawled pages, and requested modifiers, so do not run broad speculative crawls.

When `bash` is enabled, `/refs/prompts.json` is available as a lazily loaded reference file for GTM prompt-template lookup.

Prefer Deepline-native tools over freeform bash when structured provider actions already exist.

## Find an applicable action

Confirm your effective workspace, then search the live catalog:

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline auth status --json
deepline search "Deepline Agent" --type tools --json
```

Search returns candidates. Check the returned provider and operation rather than selecting a similar title automatically.

## Inspect the selected contract

Replace `<returned-tool-id>` with the identifier returned by discovery:

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline describe <returned-tool-id> --json
```

These commands do not execute the selected provider action. Read its required inputs, supported access mode, pricing unit, outputs, and limits.

A connection does not establish that every action supports BYOK. Follow the provider-specific requirements above and the live action contract.

## Prepare one reviewed input

Use one authorized record that matches the inspected schema. Preserve its source identity and define the result you will accept.

Open the action reference for its payload and response shape. Provider-backed execution can incur usage or external effects.

For reusable logic, follow [Write Plays](https://deepline.com/docs/sdk-v2/plays.md). For direct-call recovery, use [Tool execution recovery](https://deepline.com/docs/sdk-v2/tool-execution-recovery.md).

> [!TIP]
>
> Continue only when the workspace, provider, required fields, acceptance rule, and applicable price are understood. Keep unavailable access separate from no-result evidence.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.