AI Coach
Overview
The AI Coach does not engage in NSFW or sexually explicit conversations. It is designed to provide structured guidance, session management, and accountability-focused interactions only.
It can also assist with practical needs during a session, such as granting a hygienic unlock when necessary (if enabled), helping you stay consistent while still supporting your wellbeing.
Both Personality and AI Instructions influence how the bot responds, but they are intended for different kinds of customization.
- Use Personality for the character itself: tone, attitude, behavior, speaking style, and roleplay flavor.
- Use AI Instructions for specific rules, limits, preferences, and operational behavior.
For example, a description such as "strict but caring keyholder" belongs in Personality. More concrete guidance, such as "assign no more than 3 tasks per day" or "tasks should take around 10 minutes", belongs in AI Instructions.
You do not need to copy Chastify's built-in prompts or command instructions into your own AI Instructions. Those are already added automatically. Repeating them can make responses worse because the model has to process duplicate or conflicting guidance.
Capabilities
| Capability | Description |
|---|---|
| Chat | Natural conversation with persona-based responses |
| Time and Lock Control | Add or remove time, freeze or unfreeze the timer, and change visibility settings |
| Card Game | Add or remove cards, change card-game settings, and resolve green-card choices |
| Tasks | Assign saved tasks, create custom tasks, cancel active tasks, and grant hygienic unlocks |
| Photo Verification | Request verification photos when the selected model supports vision |
| Device Commands | Execute shock, vibration, randomshock, or berserk commands on supported devices |
| Scheduled Device Actions | Create, edit, and remove scheduled shock or vibration actions |
| Device Control | Manage parental-control features such as app blocking, site blocking, daily limits, and self-control locks |
| Rules and Settings | Update lock rules, verification settings, module edit permissions, pillory state, and other lock options |
Supported Actions
The AI Coach receives built-in instructions for the actions available on your lock. You do not need to write command syntax, legacy command formats, or examples such as manual shock commands in your own instructions. If a feature is enabled and permitted, the AI can use the correct internal action format automatically.
Advanced: JSON Action Format
Internally, actions use a structured JSON format. This is mainly useful for understanding how the AI thinks about actions or for writing precise AI Instructions. You normally should not paste long lists of action examples into your instructions, because the active feature list is already supplied to the AI automatically.
The response format is:
{
"text": "User-facing reply.",
"actions": [
{
"type": "action_name",
"args": {}
}
]
}
If no real action is being taken, actions must be empty:
{
"text": "I can help you stay on track.",
"actions": []
}
Example action objects:
{ "type": "add_time", "args": { "amount": 1, "unit": "h" } }
{ "type": "remove_time", "args": { "amount": 30, "unit": "m" } }
{ "type": "freeze", "args": { "amount": 1, "unit": "h" } }
{ "type": "unfreeze", "args": {} }
{ "type": "shock", "args": { "seconds": 15, "intensity": 70 } }
{ "type": "vibrate", "args": { "seconds": 120, "intensity": 60 } }
{ "type": "set_display_remaining_time", "args": { "enabled": false } }
The important rule is that the text and actions must agree. If the AI says it added time, changed a setting, assigned a task, or used a device command, the matching action must be present in actions. If actions is empty, no real lock action happened.
Avoid older command examples such as {shock:SECONDS:INTENSITY} or colon-based command strings. Those belonged to an older command system and can confuse the model.
| Action | Effect |
|---|---|
| Add or Remove Time | Add time to the lock or remove time when allowed |
| Freeze / Unfreeze | Freeze or unfreeze the timer |
| Manage Cards | Add or remove card-game cards and resolve green-card choices |
| Assign Tasks | Assign saved tasks, create ad-hoc tasks, or cancel the active task run |
| Grant Hygienic Unlocks | Grant a hygienic unlock override when allowed |
| Request Verification | Request a verification photo when the selected model supports vision |
| Device Commands | Execute shock, vibration, random shock, berserk, or stop commands on supported devices |
| Scheduled Device Actions | Create, edit, or remove scheduled shock and vibration actions |
| Device Control | Manage parental-control features such as app blocking, site blocking, daily limits, and self-control locks |
| Visibility Settings | Hide or show lock status, history, and card-game information |
| Hygienic Settings | Update hygienic unlock settings when permitted |
| Pillory | Start or manage pillory mode |
| Module Edit Rules | Adjust task, wheel, verification, rules, and related module settings |
| Emergency and Keyholder Controls | Request supported emergency-release or keyholder-control changes |
| Hardcore Mode Setup | Open the Hardcore Mode setup UI |
Image Generation
AI Coach and Bot Coaches can generate images when the separate image generation service is online. This feature currently uses a dedicated backend, so availability can vary.
The image gallery icon is the best availability indicator. If the icon is green, image generation is online and available. If it is not green, the image generation service is offline, and asking the AI to generate images will not work until the service is available again.
Model Setup
OpenRouter (Recommended)
You need your own OpenRouter API key. It is encrypted and stored securely in the database.
- Supports many models including GPT, Claude, Gemini, and open-source alternatives
- Vision support available on many models for photo verification and for sending images to the AI
AI Plan
Supporter users can use the AI Plan to get some included credits for trying different hosted models without needing to bring their own API key.
Supported models currently include:
| Model | Notes |
|---|---|
| MiniMax M2.7 | Recommended. Unlimited usage during the current promotion. |
| OpenAI: gpt-oss-120b | Cheapest model, highest message limits, simpler replies. |
| Grok 4.1 Fast | Fast and balanced, good quality with moderate usage. |
| DeepSeek V3.2 | High quality model, balanced performance and usage. |
| xiaomi/mimo-v2-flash | Very fast and efficient, lower cost with decent quality. |
MiniMax M2.7 is currently promoted with unlimited usage, but this promotion may change later.
Demo AI Mode
There is also a temporary DEMO AI mode for bot chats that is available to all users during the promotion.
This mode may cease to exist at any time. Rate limits may be applied later, and the underlying demo model may change at any point without notice.
Self-Hosted (LM Studio / Ollama)
Run models locally for privacy and cost savings.
Supporter users can also use a custom OpenAI Chat Completions compatible URL. That means you can point AI Coach at LM Studio's chat endpoint, Ollama-compatible bridges, vLLM, your own hosted service, or a third-party provider that exposes an OpenAI-compatible chat API.
- Start your model in LM Studio or Ollama
- Use a tunnel service to expose it without port forwarding:
- Cloudflare Tunnel:
cloudflare tunnel --url http://localhost:1234 - ms.devtools: Alternative tunneling solution
- Cloudflare Tunnel:
- Enter the custom endpoint URL in the AI Coach setup
If you use LM Studio, use its OpenAI-compatible /chat/completions endpoint or the configured local server endpoint exposed through your tunnel.
AI Tasks
AI Coach can assign tasks in multiple ways depending on which task features are enabled:
| Task Type | Description |
|---|---|
| Task Module Task | The AI picks an existing task from your lock's task module by title |
| Ad-Hoc Task | The AI generates a one-off task on its own and assigns it immediately |
| Ad-Hoc Writing Task | The AI creates a typing task with a title, line to type, and repetition count |
This lets the AI mix fixed task templates with generated tasks or writing exercises, depending on the bot configuration and enabled features.
When Hardcore Mode is enabled for AI Coach or a bot, you will not be able to remove it for a set duration or until the lock session ends.
It also prevents editing the bot's instructions, persona, enabled features, or switching to another bot while the lock is active.
Hardcore Mode can be configured with different durations such as 24 hours, 7 days, or permanent.
Command Limits
These limits are enforced by the command parser. AI Coach now uses the safety profiles easy, medium, and unlimited. Bots use the safety profile the user selects before activation.
| Action | Easy | Medium | Unlimited |
|---|---|---|---|
| Add Time | 12 hours per day, up to 1 day per action | 24 hours per day, up to 1 day per action | Unlimited daily add budget, up to 31 days per action |
| Remove Time | Up to 12 hours per action | Up to 12 hours per action | Up to 31 days per action |
| Add / Remove Cards | Up to 3 cards per action | Up to 3 cards per action | Up to 3 cards per action |
| Freeze | Up to 1 day per action | Up to 1 day per action | Larger freezes are allowed |
| Verification | No fixed parser daily cap | No fixed parser daily cap | No fixed parser daily cap |
| Task Assignment | No fixed parser daily cap | No fixed parser daily cap | No fixed parser daily cap |
| Shock / Vibration | Device support and consent required | Device support and consent required | Device support and consent required |
The parser also prevents removing more time than currently remains on the lock.