For Coding Agents
AGNT Assistants
AI assistants without personality are just autocomplete. AGNT Assistants let you define distinct personalities, writing styles, and behavioral profiles — then assign them to users so every interaction feels intentional.
Why AGNT Assistants
Most platforms give you one global system prompt and call it a day. That falls apart fast. Different users need different tones. Your support agent shouldn't sound like your sales agent. Your CEO's assistant shouldn't write like an intern's.
AGNT Assistants solve this by treating personality as structured data — professionalism, humor, emoji use, signature style — not a freeform prompt you hope the model follows. You configure it once, assign it to users, and it stays consistent across every interaction.
System templates give you a starting point. Custom assistants let you dial in exactly what you need.
Quick Start
Create an assistant and assign it to a user in two calls.
1. Create an Assistant
curl -X POST https://api.agnt.ai/assistants \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Professional Scheduler",
"email": "admin@yourcompany.com",
"personality": "Efficient, warm, and direct. Gets to the point without being curt.",
"signature": "Best regards",
"writingStyle": {
"professionalism": 8,
"humor": 3,
"emojiUse": 1
}
}'Response:
{
"success": true,
"data": {
"id": "asst_7kx9m2nq",
"account": "acc_abc123",
"name": "Professional Scheduler",
"email": "admin@yourcompany.com",
"personality": "Efficient, warm, and direct. Gets to the point without being curt.",
"signature": "Best regards",
"writingStyle": {
"professionalism": 8,
"humor": 3,
"emojiUse": 1
},
"status": "active",
"isSystemTemplate": false,
"metadata": {},
"tags": [],
"createdAt": "2026-02-15T10:30:00.000Z"
}
}2. Assign to a User
curl -X POST https://api.agnt.ai/users/usr_abc123/assistant \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"assistantId": "asst_7kx9m2nq"
}'That user's interactions now carry the assistant's personality, writing style, and signature.
Core Concepts
Assistants
An assistant is a personality profile — a structured definition of how an AI agent should communicate. It's not a model, not a prompt, not a conversation thread. It's the behavioral layer that sits on top of all of those.
Every assistant has:
- Personality — free-text description of tone and approach
- Signature — how the assistant signs off on messages
- Writing Style — numeric scales for professionalism, humor, and emoji use
- Avatar — optional visual identity
Writing Style
Writing style uses numeric scales (0-10) instead of vague descriptors. This makes behavior reproducible and adjustable.
| Field | Range | What it controls |
|---|---|---|
professionalism | 0-10 | Formal (10) to casual (0) |
humor | 0-10 | Dry/serious (0) to playful (10) |
emojiUse | 0-10 | None (0) to frequent (10) |
You can also provide charactersOrCelebrities — a list of reference personas to guide the model's tone. Think "writes like David Ogilvy" or "tone of a calm airline pilot."
System Templates
AGNT ships system template assistants — pre-built personalities you can use directly or clone and customize. These are available to all accounts via the /assistants/system endpoint.
Per-User Assignment
Every user can have one assistant assigned. When assigned, that assistant's configuration applies to all agent interactions for that user. No assistant assigned? The system defaults apply.
Bulk Sync
If you're managing assistants externally (syncing from your own user database, for example), the /assistants/bulk-sync endpoint lets you upsert multiple assistants in a single call, matched by email.
API Reference
Endpoints
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /assistants | List account assistants | Management |
POST | /assistants | Create an assistant | Management |
GET | /assistants/system | List system template assistants | Management |
POST | /assistants/bulk-sync | Bulk upsert assistants by email | Management |
GET | /assistants/:assistantId | Get assistant by ID | Management |
PUT | /assistants/:assistantId | Update an assistant | Management |
DELETE | /assistants/:assistantId | Delete an assistant | Management |
GET | /users/:userId/assistant | Get user's assigned assistant | Management |
POST | /users/:userId/assistant | Assign assistant to user | Management |
PUT | /users/:userId/assistant | Update user's assistant assignment | Management |
DELETE | /users/:userId/assistant | Remove user's assistant | Management |
Assistant Object
{
"id": "asst_7kx9m2nq",
"account": "acc_abc123",
"user": "usr_abc123",
"name": "Professional Scheduler",
"email": "admin@yourcompany.com",
"avatar": "https://cdn.agnt.ai/avatars/asst_7kx9m2nq.png",
"personality": "Efficient, warm, and direct. Gets to the point without being curt.",
"signature": "Best regards",
"writingStyle": {
"professionalism": 8,
"humor": 3,
"emojiUse": 1,
"charactersOrCelebrities": ["David Ogilvy"]
},
"status": "active",
"isSystemTemplate": false,
"metadata": {},
"tags": ["scheduling", "enterprise"],
"createdAt": "2026-02-15T10:30:00.000Z"
}| Field | Type | Description |
|---|---|---|
id | string | Unique assistant identifier |
account | string | Account ID the assistant belongs to |
user | string | User ID if assigned to a specific user |
name | string | Display name |
email | string | Email associated with the assistant |
avatar | string | URL to avatar image |
personality | string | Free-text personality description |
signature | string | Sign-off text for messages |
writingStyle | object | Numeric style scales |
writingStyle.professionalism | number | 0-10 scale |
writingStyle.humor | number | 0-10 scale |
writingStyle.emojiUse | number | 0-10 scale |
writingStyle.charactersOrCelebrities | string[] | Reference personas for tone |
status | string | active or inactive |
isSystemTemplate | boolean | Whether this is a system-provided template |
metadata | object | Arbitrary key-value pairs |
tags | string[] | Categorization tags |
createdAt | string | ISO 8601 timestamp |
List Account Assistants
curl https://api.agnt.ai/assistants?email=admin@yourcompany.com \
-H "Authorization: Bearer $TOKEN"{
"success": true,
"data": [
{
"id": "asst_7kx9m2nq",
"name": "Professional Scheduler",
"email": "admin@yourcompany.com",
"personality": "Efficient, warm, and direct.",
"writingStyle": {
"professionalism": 8,
"humor": 3,
"emojiUse": 1
},
"status": "active",
"isSystemTemplate": false,
"createdAt": "2026-02-15T10:30:00.000Z"
}
]
}List System Templates
curl https://api.agnt.ai/assistants/system \
-H "Authorization: Bearer $TOKEN"{
"success": true,
"data": [
{
"id": "asst_sys_friendly",
"name": "Friendly Default",
"personality": "Warm, approachable, and helpful. Uses conversational language.",
"writingStyle": {
"professionalism": 5,
"humor": 6,
"emojiUse": 4
},
"status": "active",
"isSystemTemplate": true
},
{
"id": "asst_sys_executive",
"name": "Executive Brief",
"personality": "Concise, authoritative, data-driven. No fluff.",
"writingStyle": {
"professionalism": 10,
"humor": 0,
"emojiUse": 0
},
"status": "active",
"isSystemTemplate": true
}
]
}Create an Assistant
curl -X POST https://api.agnt.ai/assistants \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Casual Helper",
"email": "admin@yourcompany.com",
"personality": "Relaxed and conversational. Explains things like a smart friend would.",
"signature": "Cheers",
"writingStyle": {
"professionalism": 3,
"humor": 7,
"emojiUse": 5,
"charactersOrCelebrities": ["Paul Graham"]
},
"avatar": "https://yourcdn.com/avatars/casual.png",
"metadata": {
"department": "engineering"
}
}'| Field | Required | Type | Description |
|---|---|---|---|
name | Yes | string | Display name for the assistant |
email | Yes | string | Email to associate with the assistant |
personality | No | string | Free-text personality description |
signature | No | string | Message sign-off text |
writingStyle | No | object | Numeric style configuration |
avatar | No | string | Avatar image URL |
metadata | No | object | Arbitrary key-value pairs |
Bulk Sync Assistants
Upsert multiple assistants in one call. Assistants are matched by email — existing ones are updated, new ones are created.
curl -X POST https://api.agnt.ai/assistants/bulk-sync \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"assistants": [
{
"name": "Sales Rep",
"email": "sales@yourcompany.com",
"personality": "Enthusiastic and solution-oriented.",
"writingStyle": { "professionalism": 7, "humor": 5, "emojiUse": 3 }
},
{
"name": "Support Agent",
"email": "support@yourcompany.com",
"personality": "Patient, thorough, empathetic.",
"writingStyle": { "professionalism": 8, "humor": 2, "emojiUse": 1 }
}
]
}'Get User's Assistant
curl https://api.agnt.ai/users/usr_abc123/assistant \
-H "Authorization: Bearer $TOKEN"{
"success": true,
"data": {
"id": "asst_7kx9m2nq",
"name": "Professional Scheduler",
"personality": "Efficient, warm, and direct.",
"writingStyle": {
"professionalism": 8,
"humor": 3,
"emojiUse": 1
},
"status": "active"
}
}Assign Assistant to User
curl -X POST https://api.agnt.ai/users/usr_abc123/assistant \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "assistantId": "asst_7kx9m2nq" }'Remove User's Assistant
curl -X DELETE https://api.agnt.ai/users/usr_abc123/assistant \
-H "Authorization: Bearer $TOKEN"Returns the user to default system behavior.
For Coding Agents
If you're building an agent that interacts with AGNT Assistants:
- Fetch the user's assistant before generating responses. Call
GET /users/:userId/assistantto get the active personality config. Use it to shape system prompts, tone, and formatting. - Treat
writingStyleas hard constraints, not suggestions. Aprofessionalismof 10 means formal language, full sentences, no slang. Ahumorof 0 means no jokes, no wordplay. - Use
personalityas the system prompt modifier. Inject it into your prompt chain as a behavioral directive. - Respect
signature. If a signature is set, append it to outbound messages. charactersOrCelebritiesis a tone hint. Use it for few-shot style matching, not literal impersonation.- System templates are read-only. If you need to modify one, create a custom assistant based on it.
- Bulk sync is idempotent. Safe to call repeatedly — it matches on email and updates in place.
For Product Teams
- Assistants are your brand voice layer. Define them during onboarding and assign by role or team. Sales gets one personality, support gets another, executives get a third.
- Writing style scales make A/B testing trivial. Change
humorfrom 3 to 7, measure the impact on user engagement. No prompt engineering required. - System templates accelerate setup. Browse templates with
GET /assistants/system, pick one that's close, clone and customize it for your needs. - Per-user assignment means personalization at scale. Every user can have a distinct experience without managing separate agent instances.
- Bulk sync integrates with your user management. Sync assistant assignments from your HR system, CRM, or user database. One API call keeps everything in sync.