AI isn't responding
Symptom: No reply at all#
After you send a message, there's no typing indicator, no reply, nothing in the chat header about generation.
Possible causes:
- No AI engaged in the room. Even with
@<ai-name>, the AI must be a member. Type/engage <ai-name>once to bring them in. - Engagement mode is
mentionbut no@mentionin your message. Either add a mention or/engagefirst. - AI is disabled at the tenant level. Admin: check
GET /v1/admin/ai-config → enabled_models.
Symptom: Typing indicator, then nothing#
The AI says it's typing, then the indicator disappears with no
reply. Causes (visible in the error message that should appear in
chat — swp.model.error event):
SW_AI_NO_TOKEN— no valid ScaiGrid token. Often a misconfigured ScaiGrid URL or expired service token. Admin: checkSCAIWAVE_SCAIGRID_URLand runscripts/scaigrid_service_token_smoke.py.MODEL_NOT_FOUND— the AI's model id isn't registered with this tenant on ScaiGrid. Re-enable in Admin → Models.SW_AI_BUDGET_EXCEEDED— monthly token cap hit. Either wait for the cap to roll, or admin raises it.SW_AI_BUSY— another generation is in flight for this AI in this room. Click Stop or wait.
Symptom: AI starts streaming, then stops mid-sentence#
Three common causes:
- You sent another message. Engagement cancels in-flight generation when a new user message arrives.
- Tool call took too long. Plugin timeout is 30s. The AI usually reports this and either falls back or finishes its reply.
- ScaiGrid stream disconnect. Transient; the AI catches the error and replies "I lost connection to ScaiGrid mid-generation."
Symptom: AI calls the wrong tool / gives weird answers#
Not strictly an error; check:
- System prompt override. Studio → see what's actually being injected. A stale override can confuse the model.
- Plugin loadout. Maybe the right plugin is disabled per-room. Admin: Room settings → Plugins.
- Temperature too high. Default is 0.7; try 0.3 for more deterministic behaviour.
Symptom: Sidekick "spawning…" forever#
Sidekick task status sticks at spawning. Causes:
- No sidekick worker running. Admin: check
make workeris alive in prod; check ARQ queue depth. - Concurrency cap hit.
SW_SIDEKICK_CAP_REACHEDshould have been returned at spawn time, but if you're using a script that ignores response codes, this can happen. CheckGET /v1/rooms/{id}/sidekicks.
Symptom: Plan stuck on a step#
Plan in running state, current step in_progress, but no
visible progress. Possible:
- Auto-step budget exhausted. Plan card shows
pausedwith a message. Just click Resume (or send any message in the room). - Step's tool call is hung. 30s plugin timeout should rescue this; if it doesn't, Cancel the plan and start fresh.
- AI gave up silently. Plan stays
runningbecause nothing calledstep_failed. Cancel + restart.
Where to look (admin)#
- WebSocket log:
swp.model.errorevents for this room. - ARQ worker logs: any
index.embedding_failed,scaigrid.request_failed, or unhandled exceptions. - ScaiGrid request logs (their side) with the
request_idfrom the error message.