mcpField
C
caira

caira

github.com/microsoftDevelopment22948 installsUpdated 17w ago
Repository

About caira

CAIRA is a reference library for developers building generative AI solutions, not an application generator. It guides repository inspection and selective adaptation of architecture components, favoring focused reuse and passwordless identity patterns.

Key features

  1. 01Select relevant reference architecture components
  2. 02Inspect full component source code
  3. 03Adapt references to an existing stack
  4. 04Use managed identity and passwordless patterns
  5. 05Validate IaC, app, and container builds

Use cases

  1. 01Choose infrastructure components for a generative AI project
  2. 02Extend an API or frontend from reference code
  3. 03Tailor a deployment architecture to existing resources
  4. 04Define identity and network boundaries for an implementation

MCP support

CAIRA suggests using a GitHub MCP server to inspect reference architectures; GitHub raw URLs or a temporary repository clone are alternatives.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/microsoft/caira --skill caira

After installing, type/cairain Claude Code to confirm it loaded.

Details

From the project README

CAIRA

Use this skill when a user wants to build or extend a generative AI solution. CAIRA is a reference library, not an application generator: inspect the repository, select the smallest relevant reference components, and adapt them into the user's workspace.

Intake before generating changes

Ask only what is needed to choose components:

  1. What outcome is the user trying to build?
  2. Do they already have Foundry/OpenAI endpoints, hosting, identity, observability, or frontend/API code?
  3. What kind of networking isolation or security boundaries are needed?
  4. Which programming languages or frameworks does the user prefer? If the user prefers something that's not directly in the CAIRA references, try to follow the same architectural patterns and design principles shown in the CAIRA reference components, but adapt them to the user's preferred languages or frameworks.
  5. Which components are needed now: Foundry, Container Apps, API, frontend, or only app code? If the answer shows the user only needs one component, use only that component.

Core rules

  • Use the reference-architectures directory in the github.com/microsoft/caira/ repository as the canonical source of truth. Inspect it either with the GitHub MCP server if available, through GitHub raw URLs, or clone the repository temporarily to inspect reference-architectures/ locally.
  • When reviewing the reference architectures, read the full code of the desired component. Do not limit the investigation to the README or docs. The source of truth is the code.
  • Prefer small component references over full-stack copying.
  • For scenarios that need OpenAI-compatible endpoints, prefer the Foundry IaC reference unless the user already has endpoints or asks for a different approach.
  • Determine what the user already has before proposing new infrastructure.
  • Always use managed identities or other passwordless identity patterns. NEVER USE API keys, static credentials, or secrets, unless the user explicitly asks for an API-key- or secret-based approach.
  • When implementing IaC for Foundry, use the Azure Verified Module, as shown in the reference architectures. Don't use standalone Terraform resources related to Foundry unless explicitly requested.
  • If an API that communicates with Foundry needs to be implemented, ALWAYS prefer using Foundry resources instead of Azure OpenAI resources, unless the user explicitly asks for Azure OpenAI. Even with the OpenAI Agents SDK.
  • Before proposing repository security scans, check whether the target repository already uses or has configured Gitleaks, Trivy, or similar tools for secret, dependency, container, or IaC scanning. If similar scanning is missing, ask whether the user wants to add Gitleaks and/or Trivy scans before implementing them.
  • Keep recommendations focused on the current reference components listed below.
  • Explain which CAIRA paths influenced the recommendation or generated files.
  • Always ask follow-up questions to narrow down the user's needs and avoid unnecessary copying of reference code.
  • Before start implementing, confirm the user's scenario, needs, and which CAIRA reference components, configuration, networking, and security boundaries will be used.

Current reference components

NeedCAIRA reference path
Foundry foundationreference-architectures/iac/foundry/
Container Apps hosting for API + frontendreference-architectures/iac/container-apps/
TypeScript API using OpenAI Agents SDKreference-architectures/app/api/typescript/openai-agents-sdk/
TypeScript API using Foundry Agent Servicereference-architectures/app/api/typescript/foundry-agent-service/
C# API using Microsoft Agent Frameworkreference-architectures/app/api/csharp/microsoft-agent-framework/
React frontendreference-architectures/app/frontend/typescript/react/
Frontend/API contractreference-architectures/app/API_CONTRACT.md

How to use CAIRA references

  1. Inspect the relevant component source files.
  2. Copy or adapt only the files needed for the user's stack.
  3. Remove sample text, model names, env vars, or Terraform variables that do not apply to the user's scenario.
  4. Preserve the component's validation style: npm scripts for TypeScript, .NET build for C#, Terraform validation for IaC, Docker builds for containers.
  5. Mention the exact CAIRA paths used and what was intentionally left out.

Comments

Markdown supported