---
paths:
  - "**/Agents/**"
  - "**/agents/**"
  - "**/*Agent*.cs"
stacks:
  - dotnet
---

# Microsoft Agent Framework Standards

> **Layer 0/1 — auto-carregados.** São os standards core: aplicam-se a praticamente todo
> agente MAF. Carregue-os sempre que tocar código de agentes.

@.morph/framework/standards/ai-agents/setup.md
@.morph/framework/standards/ai-agents/sweet-spot.md
@.morph/framework/standards/ai-agents/providers/model-registry.md
@.morph/framework/standards/ai-agents/structured-output.md
@.morph/framework/standards/ai-agents/multi-agent-patterns.md
@.morph/framework/standards/ai-agents/prompt-sources.md
@.morph/framework/standards/ai-agents/rag-custom-pgvector.md
@.morph/framework/standards/ai-agents/middleware-patterns.md
@.morph/framework/standards/ai-agents/observability-patterns.md
@.morph/framework/standards/ai-agents/workflows.md
@.morph/framework/standards/ai-agents/production.md

---

> **Layer 2 — sob demanda (NÃO auto-carregados).** São standards de modalidade, otimização e
> MCP: relevantes apenas quando a feature usa especificamente esse recurso. Carregue via
> `morph-standards` quando uma keyword corresponder — manter fora do auto-load preserva o
> context window para o trabalho que importa.

| Standard | Carregue quando a feature envolve |
|----------|-----------------------------------|
| `ai-agents/modalities-vision.md` | imagem → texto (OCR, análise de documento, visão) |
| `ai-agents/modalities-image-gen.md` | gerar/editar imagem em runtime: catálogo, marketing, variação de produto — aliases pinados, custo por chamada, deprecações |
| `ai-agents/media-video.md` | gerar vídeo em runtime: Veo via `Google.GenAI`, provedores só-HTTP, custo por segundo, o arquivo que expira |
| `ai-agents/media-pipeline.md` | **qualquer** feature que gere mídia: a regra dura (nunca no turno de conversa), estados, revisão humana, proveniência, marcação (AI Act art. 50) |
| `ai-agents/modalities-speech-to-text.md` | áudio → texto (transcrição, legendagem) |
| `ai-agents/modalities-text-to-speech.md` | texto → áudio (síntese de voz) |
| `ai-agents/batching.md` | processar N prompts independentes em lote (Batch API) |
| `ai-agents/service-tier-flex.md` | otimização de custo em jobs assíncronos (tier flex) |
| `ai-agents/agent-session.md` | agentes conversacionais com histórico/reducers |
| `ai-agents/context-providers.md` | injeção dinâmica de contexto (`AIContextProvider`) |
| `ai-agents/mcp-tools.md` | agente MAF consome um MCP server externo |
| `ai-agents/mcp-server.md` | projeto expõe capacidades como MCP server |
| `ai-agents/agent-archetypes.md` | escolher a FORMA do agente na fase de plano (conversa com fases, one-shot em lote, visão + structured output) |
| `ai-agents/agent-spec.md` | o agente como DADO — um `AgentSpec` imutável por agente, catálogo e defaults |
| `ai-agents/conversational-agent-with-phases.md` | conversa com fases no turno — allow-list de tools, `ChatToolMode`, teto de tool calls |
| `ai-agents/guardrails.md` | regra proibida vira código — guard de tool, pertinência, argumento não confiável, fail-open |
| `ai-agents/testing-ai.md` | testar agente sem rede — `IChatClient` fake, harness de turno, golden de prompt |
| `ai-agents/evals-with-cache.md` | eval de modelo/prompt no CI **sem credencial e sem rede**: cache de respostas commitada, dataset versionado, o que entra na chave de cache, troca de modelo e regressão de prompt |
| `ai-agents/cost-and-budget.md` | custo em dinheiro — `UsageCostMiddleware`, tarifa por token, teto de orçamento |
| `ai-agents/llm-runtime-defaults.md` | knobs de runtime da chamada — timeout, retry, `strict` JSON schema, temperatura/reasoning |
| `ai-agents/durable-workflows-hitl.md` | workflow durável e human-in-the-loop — checkpoint, `RequestPort`, aprovação de tool |
| `ai-agents/vector-data-extensions.md` | abstração `Microsoft.Extensions.VectorData` e conectores (pgvector, ingestão) |
| `integration/mcp/mcp-tools.md` | integração MCP cross-domain (fora do escopo MAF) |
