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.
Iterative Generation
The Svantic terminal can orchestrate multi-step Forge workflows conversationally. Instead of running individual CLI commands, you describe what you want and the terminal reads your files, proposes tools, lets you refine, scans additional sources, and composes the final agent — all in one session. This page walks through a typical iterative session.The Workflow
Step 1: Propose Tools from Source Code
Start by telling the terminal what you have:src/monitoring/, analyzes the exports and JSDoc comments, then calls forge_propose_tools internally. You see a response like:
Step 2: Refine the Proposal
Tell the terminal what to change:Step 3: Generate the Tools
forge_generate_tools with the finalized proposal. It produces:
monitoring.tool-spec.yamlmonitoring.capabilities.ts
Step 4: Compose Everything
compose with both tool specs:
Step 5: Make Adjustments
You can keep iterating:Terminal Functions Reference
These are the Forge functions the terminal calls behind the scenes:| Terminal Function | What It Does |
|---|---|
forge_propose_tools | Reads source files or a prompt and proposes a tool list |
forge_generate_tools | Takes a proposal and generates Tool Spec + TypeScript |
forge_list_operations | Lists operations in an OpenAPI spec |
forge_compose | Merges multiple tool specs into a single agent |
forge_validate | Validates a Tool Spec YAML against the schema |
When to Use Iterative vs CLI
| Scenario | Recommended Approach |
|---|---|
| Exploring an unfamiliar codebase | Iterative (terminal reads and proposes) |
| One-off generation from a known spec | CLI (svantic forge tool --spec ...) |
| Building an agent from mixed sources | Iterative (scan, prompt, compose in sequence) |
| CI/CD pipeline | CLI or programmatic SDK |
| Prototyping and experimenting | Iterative |
Tips
- The terminal remembers context within a session. You can refer to “the monitoring tools” or “that Slack file” without repeating paths.
- Ask the terminal to explain a generated tool spec before generating code: “Show me what the tool spec looks like for list_active_alerts.”
- If you are unsure what functions a file exports, ask: “What functions are in src/monitoring/alerts.ts?”
- You can mix generation paths in one session: scan some files, generate from a prompt, pull from an OpenAPI spec, then compose everything together.
