# AiMessageRole enum

Namespace: [Grasshopper2.Components.Descriptive](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.components.descriptive.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public enum AiMessageRole
```

Role of a single message in an AI conversation. Mirrors the standard system/user/assistant/tool roles used by all major LLM provider APIs.

## Values

| Name | Value | Description |
| --- | --- | --- |
| System | 0 | The fixed instructions for the model (pre-prompt). |
| User | 1 | A message authored by the human user. |
| Assistant | 2 | A message authored by the model. Carries either text or a tool call. |
| Tool | 3 | The result of executing a tool the model invoked. |
