Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.svantic.com/llms.txt

Use this file to discover all available pages before exploring further.

No Code with Forge

The fastest way to create agents and tools. Forge generates production-ready code from API specs or plain English — in seconds. Forge Flow All paths go through the same intermediate format — the Tool Spec — which you can edit, validate, and combine before generating code.

Generate a Tool Spec

Pick any source. Forge produces a .tool-spec.yaml you can inspect, edit, and version control.

OpenAPI / Swagger

List available operations, then generate:
# See what's available
svantic forge tool --list zendesk-openapi.yaml

# Generate spec for selected operations
svantic forge tool --spec zendesk-openapi.yaml --pick create_ticket,list_tickets --out ./tools/
Forge reads securitySchemes and maps auth automatically:
SchemeGenerated env
HTTP bearerBearer token env
apiKey in headerapi_key + header name
HTTP basicUsername/password env pair
OAuth2Client ID, secret, and related envs
Override with --auth-type or --auth-env. Swagger 2.0 is supported and converted internally. Filter operations with --pick, --tag <name>, or --path-prefix /api/v2/tickets.

Natural Language

Describe what you need. Optionally point to API docs for accuracy:
# Basic prompt
svantic forge tool --prompt "Monitor Datadog alerts and query metrics" --out ./tools/

# With documentation for better accuracy
svantic forge tool --prompt "Monitor Datadog alerts" --docs https://docs.datadog.com/api --out ./tools/
Uses Gemini by default (GOOGLE_API_KEY). Override with --model gemini-2.5-pro. The CLI shows proposed tools for review: Y (accept) / n (reject) / edit.

Create an Agent

Combine one or more Tool Specs into a deployable agent.

Standalone project

Generates a complete project with server.ts, package.json, Dockerfile, and .env.template:
svantic forge agent --name ops-bot --tools zendesk.yaml,billing.yaml,slack.yaml --standalone

Embedded in existing app

Same command without --standalone writes capability modules into your existing codebase:
svantic forge agent --name ops-bot --tools zendesk.yaml --out ./src/agents/

Handling name collisions

If multiple specs define the same tool name, Forge fails fast. Resolve with:
  • --prefix domainzendesk_create_ticket, jira_create_ticket
  • --rename zendesk:create_ticket=create_zendesk_ticket
  • Edit the .tool-spec.yaml directly

Conversational Generation

The Svantic terminal runs the same workflow interactively:
> Read my source code in src/monitoring/ and propose tools
> Remove health_check, rename get_metrics to fetch_metrics
> Now generate the tools
> Compose these with my zendesk tools into monitoring-bot

Tool Spec Reference

The Tool Spec is a YAML file that describes your tools. Forge generates it, but you can edit it manually to customize before generating code.

Tool Spec Schema

domain
string
required
Namespace for your tools. Used as a prefix when combining multiple specs (e.g., zendesk_create_ticket).
version
string
Spec version for tracking changes. Default: 1.0
base_url
string
API base URL. All tool paths are relative to this. Example: https://your-subdomain.zendesk.com/api/v2
auth
object
Authentication configuration.
tools
array
required
The capabilities your agent will have.
triggers
array
Events that fire prompts into the mesh.

Example

domain: zendesk
version: "1.0"
base_url: https://your-subdomain.zendesk.com/api/v2

auth:
  type: bearer
  env: ZENDESK_API_TOKEN

tools:
  - name: create_ticket
    description: Create a new support ticket
    method: POST
    path: /tickets
    body:
      subject:
        type: string
        required: true
      priority:
        type: string
        enum: [low, normal, high, urgent]
        default: normal

triggers:
  - type: webhook
    event: ticket_created
    path: /webhooks/zendesk
    prompt: "New ticket: {{subject}}. Triage it."

Validate and regenerate

# Check for errors without generating
svantic forge tool --validate my-spec.yaml

# Regenerate code after editing the spec
svantic forge tool --spec my-spec.yaml --out ./tools/