curl for AI: scriptable, composable, and ready for shell pipelines.
Installation
Quick Start
Commands
| Command | Description |
|---|---|
chat | Send a chat prompt (default) |
generate | Generate media (images, PDFs, CSVs) |
embed create | Create embeddings from documents |
embed search | Semantic search over embeddings |
models | List available models for a provider |
Global Options
Global options must be placed before the command name:| Option | Short | Type | Default | Description |
|---|---|---|---|---|
--agent | -a | string | Agent name or model string | |
--settings | -s | string | ~/.dartantic/settings.yaml | Path to settings file |
--cwd | -d | string | current directory | Working directory for relative paths |
--output-dir | -o | string | cwd | Output directory for generated files |
--verbose | -v | flag | false | Show token usage stats |
--no-thinking | flag | false | Disable extended thinking | |
--no-server-tool | multi | Disable server-side tools by name | ||
--no-color | flag | false | Disable colored output | |
--version | flag | Show CLI version | ||
--help | -h | flag | Show help text |
Chat Command
Send a prompt to an AI agent and receive a streaming response. This is the default command.Options
| Option | Short | Type | Description |
|---|---|---|---|
--prompt | -p | string | Prompt text or @filename |
--output-schema | string | JSON Schema for structured output | |
--temperature | -t | float | Model temperature (0.0-1.0) |
Examples
Generate Command
Generate media content (images, PDFs) based on a prompt.Options
| Option | Short | Type | Required | Description |
|---|---|---|---|---|
--prompt | -p | string | No | Prompt text or @filename |
--mime | multi | Yes | MIME type to generate (repeatable) |
Examples
Embeddings Commands
embed create
Create embeddings from text files.| Option | Type | Default | Description |
|---|---|---|---|
--chunk-size | int | 512 | Chunk size in characters |
--chunk-overlap | int | 100 | Overlap between chunks |
embed search
Semantic search over embeddings.| Option | Short | Type | Required | Description |
|---|---|---|---|---|
--query | -q | string | Yes | Search query |
Models Command
List available models for a provider.Settings File
Create~/.dartantic/settings.yaml to define custom agents and defaults.
Schema
Root level:| Field | Type | Default | Description |
|---|---|---|---|
default_agent | string | Default agent if none specified | |
thinking | boolean | false | Enable extended thinking globally |
server_tools | boolean | true | Enable server-side tools |
chunk_size | int | 512 | Default chunk size for embeddings |
chunk_overlap | int | 100 | Default overlap between chunks |
agents | map | Agent configurations |
| Field | Type | Required | Description |
|---|---|---|---|
model | string | Yes | Model string (e.g., openai:gpt-4o) |
system | string | No | System prompt |
thinking | boolean | No | Enable extended thinking |
server_tools | boolean | No | Enable server-side tools |
output_schema | object | No | JSON Schema for structured output |
api_key_name | string | No | Environment variable for API key |
base_url | string | No | Override provider’s base URL |
headers | map | No | Custom HTTP headers |
mcp_servers | list | No | MCP server configurations |
| Field | Type | Use | Description |
|---|---|---|---|
name | string | Both | Server identifier |
url | string | Remote | HTTP server URL |
headers | map | Remote | Custom HTTP headers |
command | string | Local | Command to execute |
args | list | Local | Command arguments |
environment | map | Local | Environment variables |
working_directory | string | Local | Working directory |
Full Example
Environment Variable Substitution
Use${VAR_NAME} syntax for environment variables:
Model String Formats
| Format | Example | Description |
|---|---|---|
| Provider only | openai | Uses provider’s default model |
| Provider:model | openai:gpt-4o | Legacy colon notation |
| Provider/model | openai/gpt-4o | Slash notation |
| URI params | openai?chat=gpt-4o&embeddings=text-embedding-3-small | Multiple models |
| Agent name | coder | Lookup in settings file |
DotPrompt Templates
Use.prompt files for reusable templates with variable substitution:
Template Features
- YAML frontmatter with
---delimiters model:field overrides the agent’s modelinput:section defines variable defaults{{variable}}placeholders use Mustache syntax- Variables passed via CLI:
name=value
Exit Codes
| Code | Name | Meaning |
|---|---|---|
| 0 | success | Command executed successfully |
| 1 | generalError | General execution error |
| 2 | invalidArguments | Invalid arguments or missing options |
| 3 | configurationError | Settings file error |
| 4 | apiError | Provider API error |
| 5 | networkError | Network connectivity error |
Environment Variables
Agent Resolution Order
- CLI
--agentflag (highest priority) - Environment variable
DARTANTIC_AGENT - Settings file
default_agentfield - Direct provider name (google, openai, etc.)
- ‘google’ (final default)

