Flattened from stack.yaml in the repository examples; imports already merged.
TemplateFeaturedv1.0.0
Support Desk
Route support traffic to the cheapest capable model; anything with personal data stays on-prem.
by OpenSmartRoute(0) 0 installs
Free
Sign in to installFree account. Installing gives you the manifest plus copy-paste snippets.
See reviewsAbout
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
bash
osr stack plan registry://support-desk@1.0.0 --registry https://api.opensmartroute.ai
osr stack apply registry://support-desk@1.0.0 --registry https://api.opensmartroute.aiManifest
A declarative stack: models, rules and settings in one file. `osr stack apply` turns it into a running router.
support-desk.stack.jsonjson
{
"osr": "1",
"kind": "stack",
"name": "support-desk",
"description": "Route support traffic to the cheapest capable model; anything with personal data stays on-prem.",
"targets": [
{
"ocm": "1",
"id": "llm-small",
"kind": "llm",
"name": "Small fast model",
"description": "Cheap, fast generalist for simple chat, short answers, classification and extraction.",
"capabilities": {
"domains": [
"general",
"general_chat",
"customer_support"
],
"actions": [
"qa",
"classify",
"extract",
"summarize",
"generation",
"translate"
],
"languages": [
"en",
"ta",
"hi",
"es",
"fr"
],
"modalities": [
"text"
],
"max_complexity": 0.45,
"min_complexity": 0,
"supports_tools": true,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": false
},
"cost": {
"usd_per_1k_tokens": 0.0002
},
"latency_ms": 300,
"quality_prior": 0.55,
"examples": [
"Hi, how are you today?",
"What is the capital of France?",
"Is this email spam? 'Congratulations you won a prize'",
"Summarize this paragraph in one sentence."
],
"metadata": {
"model": "openai/gpt-4.1-nano"
}
},
{
"ocm": "1",
"id": "llm-mid",
"kind": "llm",
"name": "Mid-tier model",
"description": "Balanced model for moderate reasoning, drafting, data analysis and marketing copy.",
"capabilities": {
"domains": [
"general",
"marketing",
"data_analysis",
"hr",
"travel",
"creative"
],
"actions": [
"generation",
"summarize",
"reasoning",
"planning",
"extract",
"qa"
],
"languages": [
"*"
],
"modalities": [
"text"
],
"max_complexity": 0.75,
"min_complexity": 0.25,
"supports_tools": true,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": false
},
"cost": {
"usd_per_1k_tokens": 0.003
},
"latency_ms": 900,
"quality_prior": 0.75,
"examples": [
"Draft a newsletter announcing our new pricing tiers.",
"Analyze this CSV of monthly sales and describe the trend.",
"Write a short story about a lighthouse keeper."
],
"metadata": {
"model": "openai/gpt-4.1-mini"
}
},
{
"ocm": "1",
"id": "llm-frontier",
"kind": "llm",
"name": "Frontier reasoning model",
"description": "Most capable model for hard multi-step reasoning, math proofs, architecture design.",
"capabilities": {
"domains": [
"general",
"math",
"coding",
"legal",
"medical",
"finance",
"data_analysis"
],
"actions": [
"reasoning",
"planning",
"code_generation",
"code_review",
"generation"
],
"languages": [
"*"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0.5,
"context_window": 200000,
"supports_tools": true,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": false
},
"cost": {
"usd_per_1k_tokens": 0.015
},
"latency_ms": 2500,
"quality_prior": 0.93,
"examples": [
"Prove that the square root of two is irrational, step by step.",
"Design a multi-region event-driven architecture with exactly-once semantics and explain trade-offs.",
"Compare three approaches to consensus and analyze their failure modes."
],
"metadata": {
"model": "openai/gpt-4.1"
}
},
{
"ocm": "1",
"id": "llm-onprem",
"kind": "llm",
"name": "On-prem Llama",
"description": "Private model for regulated and personal data; never leaves the network",
"capabilities": {
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "on_prem",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.0004
},
"latency_ms": 900,
"quality_prior": 0.72
},
{
"ocm": "1",
"id": "coding-agent",
"kind": "agent",
"name": "Coding agent",
"description": "Autonomous agent with repo access; writes, refactors, tests and reviews code.",
"capabilities": {
"domains": [
"coding"
],
"actions": [
"code_generation",
"code_review",
"reasoning",
"action"
],
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0.3,
"supports_tools": true,
"supports_streaming": true,
"tags": [
"autonomous"
]
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.008
},
"latency_ms": 6000,
"quality_prior": 0.85,
"examples": [
"Write a Python function that parses ISO-8601 dates and add unit tests.",
"Refactor this class to remove the circular import and run the test suite.",
"Find the bug in this stack trace and fix it."
]
},
{
"ocm": "1",
"id": "research-agent",
"kind": "agent",
"name": "Research agent",
"description": "Web-search + synthesis agent for open-ended research and comparisons.",
"capabilities": {
"domains": [
"general",
"finance",
"marketing",
"travel",
"legal"
],
"actions": [
"reasoning",
"planning",
"summarize",
"qa"
],
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0.4,
"supports_tools": true,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": false
},
"cost": {
"usd_per_1k_tokens": 0.006
},
"latency_ms": 8000,
"quality_prior": 0.8,
"examples": [
"Research the latest papers on LLM routing and summarize the key approaches.",
"Compare the top three CRM vendors for a 50-person startup."
]
},
{
"ocm": "1",
"id": "support-agent",
"kind": "agent",
"name": "Customer support agent",
"description": "Handles orders, refunds, subscriptions and account issues via internal tools.",
"capabilities": {
"domains": [
"customer_support"
],
"actions": [
"action",
"qa",
"extract",
"escalate"
],
"languages": [
"*"
],
"modalities": [
"text"
],
"max_complexity": 0.7,
"min_complexity": 0,
"supports_tools": true,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.002
},
"latency_ms": 1500,
"quality_prior": 0.8,
"examples": [
"I want a refund for order #12345, it arrived damaged.",
"Cancel my subscription and confirm by email.",
"My account is locked, help me reset my password."
]
},
{
"ocm": "1",
"id": "skill-sql",
"kind": "skill",
"name": "SQL skill",
"description": "Generates and validates SQL against the warehouse schema.",
"capabilities": {
"domains": [
"data_analysis",
"coding"
],
"actions": [
"code_generation",
"extract",
"qa"
],
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.001
},
"latency_ms": 700,
"quality_prior": 0.8,
"examples": [
"Write a SQL query for monthly active users by region.",
"Aggregate revenue per product for Q3 from the orders table."
],
"instructions": "Write ANSI SQL for the analytics warehouse. Always qualify table names with\nthe schema, never SELECT *, and add a one-line comment above each CTE.\n"
},
{
"ocm": "1",
"id": "skill-translate",
"kind": "skill",
"name": "Translation skill",
"description": "High-quality translation with glossary enforcement.",
"capabilities": {
"domains": [
"general"
],
"actions": [
"translate"
],
"languages": [
"*"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.0005
},
"latency_ms": 400,
"quality_prior": 0.85,
"examples": [
"Translate this product description into French and German.",
"Translate to English: 'வணக்கம், எப்படி இருக்கிறீர்கள்?'"
],
"instructions": "Translate faithfully, preserve formatting and placeholders such as {name},\nand keep product names untranslated.\n"
},
{
"ocm": "1",
"id": "skill-summarize",
"kind": "skill",
"name": "Summarization skill",
"description": "Map-reduce summarizer for long documents.",
"capabilities": {
"domains": [
"general",
"legal",
"finance"
],
"actions": [
"summarize"
],
"languages": [
"*"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.0008
},
"latency_ms": 1200,
"quality_prior": 0.82,
"examples": [
"Summarize this 40-page contract into key obligations.",
"TL;DR of the attached quarterly report."
],
"instructions": "Summarise as bullet points grouped by theme, each with a source reference.\nLead with the three most decision-relevant facts.\n"
},
{
"ocm": "1",
"id": "persona-legal-counsel",
"kind": "persona",
"name": "Legal counsel persona",
"description": "Cautious, cites statutes, flags jurisdiction; never gives definitive legal advice.",
"capabilities": {
"domains": [
"legal"
],
"actions": [
"reasoning",
"summarize",
"qa",
"extract"
],
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {},
"latency_ms": 0,
"quality_prior": 0.8,
"examples": [
"Review this NDA clause for liability exposure under GDPR.",
"Is this indemnification clause enforceable in California?"
],
"instructions": "You are cautious in-house legal counsel. Cite the governing statute or\nclause, flag jurisdiction-specific risk, and recommend escalation to a\nqualified lawyer instead of giving definitive legal advice.\n",
"primary": false
},
{
"ocm": "1",
"id": "persona-friendly-support",
"kind": "persona",
"name": "Friendly support persona",
"description": "Warm, concise, de-escalating tone for customer conversations.",
"capabilities": {
"domains": [
"customer_support",
"general_chat"
],
"actions": [
"qa",
"action",
"generation"
],
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {},
"latency_ms": 0,
"quality_prior": 0.75,
"examples": [
"I'm frustrated, my order still hasn't arrived."
],
"instructions": "You are a warm, concise support agent. Acknowledge the customer's\nfrustration first, then give one clear next step. Never blame the customer.\n",
"primary": false
},
{
"ocm": "1",
"id": "persona-senior-engineer",
"kind": "persona",
"name": "Senior engineer persona",
"description": "Precise, opinionated about trade-offs, writes idiomatic code with tests.",
"capabilities": {
"domains": [
"coding",
"data_analysis"
],
"actions": [
"code_generation",
"code_review",
"reasoning",
"planning"
],
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {},
"latency_ms": 0,
"quality_prior": 0.85,
"examples": [
"Review this pull request for concurrency issues."
],
"instructions": "You are a senior engineer. State trade-offs explicitly, prefer idiomatic\ncode over clever code, and include tests with every non-trivial change.\n",
"primary": false
},
{
"ocm": "1",
"id": "tool-calculator",
"kind": "tool",
"name": "Calculator",
"description": "Deterministic arithmetic and unit conversion.",
"capabilities": {
"domains": [
"math",
"finance"
],
"actions": [
"qa"
],
"languages": [
"en"
],
"modalities": [
"text"
],
"max_complexity": 0.3,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {},
"latency_ms": 5,
"quality_prior": 0.99,
"examples": [
"What is 17% of 2,450?",
"Convert 5 miles to kilometers."
]
},
{
"ocm": "1",
"id": "tool-image-gen",
"kind": "tool",
"name": "Image generator",
"description": "Text-to-image generation.",
"capabilities": {
"domains": [
"creative",
"marketing"
],
"actions": [
"image"
],
"languages": [
"en"
],
"modalities": [
"text",
"image"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.04
},
"latency_ms": 9000,
"quality_prior": 0.85,
"examples": [
"Draw a picture of a fox reading a book in a forest.",
"Generate a hero image for our landing page."
]
},
{
"ocm": "1",
"id": "workflow-notify-customer",
"kind": "workflow",
"name": "Customer notification workflow",
"description": "Sends order, shipping and delivery status updates to the customer over email and SMS.",
"capabilities": {
"domains": [
"customer_support"
],
"actions": [
"action"
],
"languages": [
"*"
],
"modalities": [
"text"
],
"max_complexity": 0.5,
"min_complexity": 0,
"supports_tools": true,
"supports_streaming": true
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_call": 0.004
},
"latency_ms": 2000,
"quality_prior": 0.9,
"examples": [
"Notify the customer that order #4521 has shipped.",
"Send a delivery update for the delayed order.",
"Run the customer notification workflow."
]
},
{
"ocm": "1",
"id": "human-escalation",
"kind": "human",
"name": "Human escalation queue",
"description": "Live human agent for escalations, safety issues, or when confidence is low.",
"capabilities": {
"domains": [
"general",
"customer_support",
"legal",
"medical",
"finance"
],
"actions": [
"escalate",
"action",
"qa"
],
"languages": [
"*"
],
"modalities": [
"text"
],
"max_complexity": 1,
"min_complexity": 0,
"supports_tools": false,
"supports_streaming": true,
"tags": [
"safety"
]
},
"constraints": {
"data_boundary": "public",
"pii_allowed": true
},
"cost": {
"usd_per_1k_tokens": 0.5
},
"latency_ms": 300000,
"quality_prior": 0.9,
"examples": [
"I want to speak to a real person right now.",
"Let me talk to your manager."
]
}
],
"rules": [
{
"name": "pii-stays-onprem",
"prefer": [
"llm-onprem",
"support-agent",
"human-escalation"
],
"avoid": [
"llm-frontier",
"llm-mid",
"llm-small"
],
"when": {
"contains_pii": true
}
},
{
"name": "escalation-intent",
"prefer": [
"human-escalation"
],
"when": {
"actions": [
"escalate"
]
},
"pin": true
},
{
"name": "translation-goes-to-skill",
"prefer": [
"skill-translate"
],
"when": {
"actions": [
"translate"
]
},
"weight": 0.9,
"pin": true
},
{
"name": "images-to-image-tool",
"prefer": [
"tool-image-gen"
],
"when": {
"actions": [
"image"
]
},
"pin": true
},
{
"name": "trivial-math-to-calculator",
"prefer": [
"tool-calculator"
],
"when": {
"domains": [
"math"
],
"max_complexity": 0.3
},
"weight": 0.8
},
{
"name": "hard-coding-to-agent",
"prefer": [
"coding-agent"
],
"when": {
"domains": [
"coding"
],
"min_complexity": 0.45
},
"weight": 0.7
},
{
"name": "support-domain",
"prefer": [
"support-agent"
],
"when": {
"domains": [
"customer_support"
]
},
"weight": 0.6
},
{
"name": "legal-persona",
"prefer": [
"llm-frontier",
"skill-summarize"
],
"when": {
"domains": [
"legal"
]
},
"weight": 0.4
},
{
"name": "order-events-to-notification-workflow",
"prefer": [
"workflow-notify-customer"
],
"when": {
"event": [
"order.*",
"shipment.*"
]
},
"pin": true
},
{
"name": "named-workflows",
"prefer": [
"workflow-notify-customer"
],
"when": {
"workflow": true,
"domains": [
"customer_support"
]
},
"weight": 0.8
},
{
"name": "pii-stays-home",
"prefer": [
"llm-onprem"
],
"when": {
"contains_pii": true
},
"pin": true
}
],
"settings": {
"routing": {
"min_confidence": 0.35
},
"weights": {
"rules": 2.5
}
},
"objective": {
"quality": 1,
"cost": 0.4,
"latency": 0.1
},
"metadata": {
"owner": "support-platform-team",
"template": "registry://opensmartroute/support-desk"
}
}Fetch it by URL: GET /api/v1/registry/support-desk/manifest?version=1.0.0
Reviews
Star ratings from people who tried it. One review per account; edit yours any time.
No reviews yet. Install it, try it, and be the first to rate it.