Skip to content

Ask AI

Ask anything about Destesi — setup, products, APIs.

Powered by Claude. Answers may be wrong — always verify against the docs.

Troubleshooting

Most issues come down to a missing connection or a capability that isn’t wired for your workspace. Here’s how to recognize each one.

Symptom What to check
Chat answers in text but never generates images, audio, or videos The suite tools aren’t enabled for this deployment. On a self-hosted setup, confirm SUITE_TOOL_SECRET is set (without it, Chat runs text-only and the model is given no tools). On hosted Destesi this is on by default.
“Generate an image” does nothing or errors Image generation must be reachable (IMAGEGEN_API_URL) and the worker that renders images must be running. Confirm Image generation is healthy from the launcher.
Asking for a voiceover doesn’t produce audio generate_audio only appears when Text-to-Speech is wired (TTS_API_URL). If it’s down, Chat will tell you it couldn’t synthesize rather than inventing a file.
GitHub requests come back with github_not_connected Your workspace hasn’t connected a GitHub account. Open Connect and connect GitHub, then retry. Chat fetches the token from Connect at call time — it never stores one.
Chat won’t search or read your email The Gmail tools only light up when Connect is wired and your Gmail account is connected. Connect it in Connect.
Chat says it “drafted” an email or issue but it never sent That’s by design. Sending email and posting to GitHub require your approval. Look for the review card, edit if needed, and click Send / Approve. Nothing leaves Chat until you do.
The approval card shows “expired” A pending approval lasts 30 minutes. After that it’s dropped and nothing was sent. Just ask Chat to draft it again. Approvals are stored, so a reload or a service restart does not expire one early.
Chat doesn’t quote the text of an image, video, audio file, or PDF you attached It won’t — those types are announced to the agent as a presence block (name, type, and a download link) rather than having their text extracted. The agent knows the file is there and can hand it to a tool, but it isn’t reading the contents. Only text, JSON, and XML have their contents extracted. For a PDF you want quoted, convert it to text first.
An attached file is marked “skipped” The file couldn’t be fetched at all, or its type isn’t recognised. Re-attach it from Drive; media files should show as attached, not skipped.
An attached file is marked “truncated” The file exceeded the per-attachment cap (~50 KiB of text) or the request hit the total cap (~200 KiB across all attachments). Split it up or attach the most relevant section.
An upload is rejected Composer uploads are capped at 50 MiB per file. Larger files need to go into Drive another way and be attached from there.
Your conversation history is empty on a new device History is stored server-side, so it should follow you. If the list is empty everywhere and the history endpoints answer 503 persistence_disabled, this deployment has no conversation store configured — chat still works, it just isn’t saving threads. Self-hosters: set CHAT_DATABASE_URL.
A conversation id returns 404 Conversations are scoped to your (workspace, user) pair. A conversation from another workspace is indistinguishable from one that doesn’t exist. Check the active workspace in the launcher.
“file not found” on an attachment The drive_file_id doesn’t resolve in your workspace — it may belong to a different workspace or have been deleted. Re-attach it from Drive.
Every request returns 401 Your session expired or the chat_session cookie was cleared. Sign in again at account.destesi.io and reopen Chat.
Chat returns 503 agent_not_configured No AI provider is wired. Self-hosters: set either AWS_REGION (with AWS credentials, for Bedrock) or ANTHROPIC_API_KEY. The /readyz endpoint reports degraded until one is present.
Workspace data looks wrong / you see another workspace’s files Confirm the active workspace in the launcher is the one you expect — every action is scoped to it. See Workspaces.

produce_promo runs an agent that builds a video end to end, which takes minutes and streams its progress (detecting → dogfooding → authoring → narrating → validating → rendering → inspecting → finalizing). A few things to know:

  • It only works on connected repos or a live, reachable URL. For a private repo, that repo’s GitHub must be connected in Connect.
  • It will not fake a result. If it can’t exercise the real product, it returns an honest, explicit error rather than filming something unrelated.
  • The finished MP4 lands in Drive with a re-renderable promo id. To revise it, ask Chat for the change in the same conversation (e.g. “make the intro shorter”) and it edits the existing promo instead of starting over.

Operators can probe the service directly:

Terminal window
curl -s https://api.chat.destesi.io/healthz # -> ok
curl -s https://api.chat.destesi.io/readyz # -> {"status":"ok",...} or 503 {"status":"degraded",...}

/readyz returns 503 degraded whenever no AI provider is configured, so a load balancer routes around an under-configured instance instead of serving broken chats.

Hosted users: contact support with the request id from the X-Request-Id response header. Self-hosters: check the Chat service logs (structured JSON, one line per request, keyed by request_id) and confirm the dependency for the failing capability is healthy.