> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# protocols • TypeScript AI Agent SDK

> * Protocols Module for PraisonAI TypeScript SDK

# protocols

<Badge color="green">TypeScript AI Agent</Badge>

* Protocols Module for PraisonAI TypeScript SDK
* Python parity with praisonaiagents protocols
* Provides:

- A2A (Agent-to-Agent) protocol types
- AGUI (Agent GUI) protocol types
- AutoRagAgent configuration
- Tools class
- Global singletons (config, memory, obs, workflows)
- Guardrail policy resolver

## Import

```typescript theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
import { protocols } from 'praisonai';
```

## Classes

<CardGroup cols={2}>
  <Card title="A2ATextPart" icon="brackets-curly" href="../classes/A2ATextPart">
    TypeScript A2ATextPart class
  </Card>

  <Card title="A2AFilePart" icon="brackets-curly" href="../classes/A2AFilePart">
    TypeScript A2AFilePart class
  </Card>

  <Card title="A2ADataPart" icon="brackets-curly" href="../classes/A2ADataPart">
    TypeScript A2ADataPart class
  </Card>

  <Card title="A2AMessage" icon="brackets-curly" href="../classes/A2AMessage">
    TypeScript A2AMessage class
  </Card>

  <Card title="A2ATaskStatus" icon="brackets-curly" href="../classes/A2ATaskStatus">
    TypeScript A2ATaskStatus class
  </Card>

  <Card title="A2ATask" icon="brackets-curly" href="../classes/A2ATask">
    TypeScript A2ATask class
  </Card>

  <Card title="A2AArtifact" icon="brackets-curly" href="../classes/A2AArtifact">
    TypeScript A2AArtifact class
  </Card>

  <Card title="A2AAgentSkill" icon="brackets-curly" href="../classes/A2AAgentSkill">
    TypeScript A2AAgentSkill class
  </Card>

  <Card title="A2AAgentCapabilities" icon="brackets-curly" href="../classes/A2AAgentCapabilities">
    TypeScript A2AAgentCapabilities class
  </Card>

  <Card title="A2AAgentCard" icon="brackets-curly" href="../classes/A2AAgentCard">
    TypeScript A2AAgentCard class
  </Card>

  <Card title="A2ASendMessageRequest" icon="brackets-curly" href="../classes/A2ASendMessageRequest">
    TypeScript A2ASendMessageRequest class
  </Card>

  <Card title="A2A" icon="brackets-curly" href="../classes/A2A">
    TypeScript A2A class
  </Card>

  <Card title="AGUI" icon="brackets-curly" href="../classes/AGUI">
    TypeScript AGUI class
  </Card>

  <Card title="AutoRagAgentConfig" icon="brackets-curly" href="../classes/AutoRagAgentConfig">
    TypeScript AutoRagAgentConfig class
  </Card>

  <Card title="AutoRagAgent" icon="brackets-curly" href="../classes/AutoRagAgent">
    TypeScript AutoRagAgent class
  </Card>

  <Card title="ToolDefinition" icon="brackets-curly" href="../classes/ToolDefinition">
    TypeScript ToolDefinition class
  </Card>

  <Card title="Tools" icon="brackets-curly" href="../classes/Tools">
    TypeScript Tools class
  </Card>

  <Card title="GuardrailPolicy" icon="brackets-curly" href="../classes/GuardrailPolicy">
    TypeScript GuardrailPolicy class
  </Card>
</CardGroup>

## Functions

<CardGroup cols={2}>
  <Card title="resolveGuardrailPolicies()" icon="function" href="../functions/resolveGuardrailPolicies">
    Function definition.
  </Card>
</CardGroup>
