> ## 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.

# Channel Field • AI Agent SDK

> ChannelField: A single configuration field a channel plugin declares about itself.

# ChannelField

> Defined in the [**protocols**](../modules/protocols) module.

<Badge color="blue">AI Agent</Badge>

A single configuration field a channel plugin declares about itself.

A channel adapter attaches a list of these (via `ChannelDescriptor`) so
the gateway can wire its config schema, onboarding wizard, and env-var
fallbacks with zero core edits. Without this, a plugin channel's own keys
(e.g. IRC's `server` / `nickserv_password`) are silently dropped by the
fixed `ChannelConfigSchema` under Pydantic's `extra="ignore"` default.

Attributes:
name: Config key name (as it appears under `channels.&lt;platform&gt;`).
required: Whether the field must be provided.
secret: Whether the value is sensitive (masked in prompts/logs).
prompt: Human-friendly prompt shown by the onboarding wizard.
env: Optional environment-variable name used as a fallback source.

## Properties

<ResponseField name="name" type="str">
  No description available.
</ResponseField>

<ResponseField name="required" type="bool">
  No description available.
</ResponseField>

<ResponseField name="secret" type="bool">
  No description available.
</ResponseField>

<ResponseField name="prompt" type="str">
  No description available.
</ResponseField>

<ResponseField name="env" type="Optional[str]">
  No description available.
</ResponseField>

<Accordion title="Internal & Generic Methods">
  * **to\_dict**: Convert to dictionary.
</Accordion>

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/bots/protocols.py#L173">
  `praisonaiagents/bots/protocols.py` at line 173
</Card>
