Agent Template · data privacy · two models in one run · guardrail (rule)
Private SQL analyst: Data Privacy by Construction
A data-privacy pattern: the API model sees ONLY the database schema and your question — never a single row — and writes a SELECT statement; a deterministic guardrail refuses any statement that does not start with SELECT; the query then runs on a local SQLite MCP server and a LOCAL model reads the rows and answers. The row data never leaves this machine.
How It Works
The API model only ever sees the database schema and your question; it writes one SQLite SELECT. A deterministic guardrail refuses anything that does not start with SELECT, and the query then runs on a local SQLite MCP server against a demo CRM database the installer seeds. A local model reads the rows and answers.
The rows never leave your machine. The read-only MCP tool is a second gate: it accepts nothing but SELECT statements.
Try It
- In TheYgent, open Settings → Samples.
- Fill the model slots below with models from your registry, then click Install on Private SQL analyst.
- Open the installed agent and run it with the example input.
Which three customers spent the most overall, and how much did each spend?
The Graph
Every node in the agent and where its output goes, read from the template itself.
sample-private-sql-analyst
| Node | Type | Sends its output to |
|---|---|---|
| Question | input |
Write SQL (API, schema only); Pack question + SQL (into question) |
| Write SQL (API, schema only) | llm |
Pack question + SQL (into sql) |
| Pack question + SQL | transform |
SELECT-only gate |
| SELECT-only gate | guardrail |
Run query (local SQLite) (on pass); Answer from rows (local) (on pass, into req); Refused (on block) |
| Run query (local SQLite) | mcp_tool |
Answer from rows (local) (into rows) |
| Answer from rows (local) | llm |
Answer |
| Answer | output |
— |
| Refused | output |
— |
More Templates
Hybrid reasoner
Two Models in One Run — Two models in one run: a local triage model classifies every request and a router sends easy ones to your local model and hard ones (coding, analysis, long-form) to an API model.
See the template → human in the loopExpense approver
Human in the Loop — Human in the loop with a real approve/reject: a local model assesses the risk of an expense request, the run then WAITS durably for a human decision, and a router either executes the (placeholder) payment step or refuses.
See the template → MCP from OpenAPI (REST)Tool belt
Step Tools vs. LLM-Driven Tools — The two ways to use a tool, in one agent: a GraphQL API turned into an MCP server runs as a flow STEP (it always executes), while a REST API turned into an MCP server is WIRED TO the local model as a capability the model decides to call.
See the template → multi-model consensusSecond opinion
Multi-Model Consensus — Ask a local model AND an API model the same question independently, then a local judge reconciles the two answers into one — flagging any disagreement.
See the template → PII firewallPII firewall
Privacy as a Router — A privacy router: a deterministic PII guardrail inspects every request BEFORE any model runs.
See the template → vision in a pipelineVisual inspector
Vision in a Pipeline — Vision inside a pipeline, not a chat window: a local vision model inspects an image against your acceptance criteria, emits a structured pass/fail verdict, and a router sends the run down the matching branch — the skeleton of a visual QC line.
See the template → speech-to-textVoice desk
Voice In, Voice Out — Voice in, voice out: speech-to-text transcribes the audio, a model answers in spoken prose, text-to-speech reads it back.
See the template → local image generationArt department
Local Image Generation — Local image generation in a pipeline: a local model turns your rough brief into one vivid, concrete image prompt, and a local diffusion model paints it.
See the template → local RAG (pgvector)Handbook Q&A
Retrieval as a Model Capability — Retrieval as a model capability, fully local: the installer creates a retrieval source in your own Postgres (pgvector), seeds it with a fictional TheYgent company handbook, and wires it to a local model as a search tool the model decides to call — answers cite the handbook section they came from.
See the template → self-correcting loopEditorial loop
A Self-Correcting Agent — A self-correcting agent: a bounded LOOP re-runs a writer-critic child agent — draft, harsh self-critique, rewrite — until the child approves its own draft or three rounds are up.
See the template → parallel fan-out (map)Batch briefing
Durable Fan-Out with a Cost Ceiling — Durable parallel fan-out with a cost ceiling: a MAP node fans one child agent out per topic (two at a time), collecting a brief for each — a crashed worker resumes only the unfinished branches.
See the template →