Spaces:
Running
Troubleshooting
“Token data is not available.” (Codex CLI)
Common causes:
- The container wasn’t restarted after setting Secrets.
- The auth file wasn’t written to
~/.codex/.auth.json.
In the terminal, check:
ls -la ~/.codexcat ~/.codex/.auth.json
If you use env-based token auth, set one of:
CODEX_ID_TOKENorID_TOKENCODEX_ACCESS_TOKENorACCESS_TOKENCODEX_REFRESH_TOKENorREFRESH_TOKEN- optional
CODEX_ACCOUNT_IDorACCOUNT_ID
Notes:
- You do not need to provide
last_refreshas a Secret; it is written automatically.
Gemini / Claude CLI authentication
This repo prefers env-based auth for provider CLIs (keep tokens out of git and UI):
- Gemini:
GEMINI_API_KEY - Claude:
ANTHROPIC_API_KEY
RAG endpoints return 403 (“Indexing is disabled”)
Set ENABLE_INDEXING=1 in your environment and restart the container.
Website indexing fails (“Host is not allowed”)
Website indexing blocks private/localhost targets to reduce SSRF risk.
Use a public http(s) URL and keep indexing within the same origin.
GitHub indexing fails for private repos
Set GITHUB_TOKEN (or GITHUB_PAT) as an environment variable / HF Secret, then retry.
Terminal shows vertical/1-column text
This usually means the terminal “fit” ran while the terminal view was hidden or at size 0.
Mitigations:
- Switch to the Terminal view after the page fully loads.
- Resize the browser window once to trigger a refit.
MCP “Test” fails even though the server is up
The Settings → MCP “Test” button runs from your browser, so it is subject to CORS and network access from the client.
Also note:
mcp.jsonimport only acceptshttp:///https://URLs.- If MCP tool calls are blocked, check Settings → MCP → Tool Policy (server-enforced allow/deny list).
API errors are shown as JSON
The backend returns a consistent error payload like:
{"detail":"...","error":{"code":"...","message":"...","status":...,"details":...}}.
PTY allocation failed
If the backend prints PTY allocation failed, the runtime likely lacks /dev/pts or has exhausted PTYs.
HF Spaces generally supports PTYs, but custom runtimes may not.
Rooms returns 403 (“Rooms are disabled”)
Set ENABLE_ROOMS=1 in your environment and restart the container.
Admins can also toggle feature overrides from Settings → Admin.
P2P isn’t connecting in Rooms
The Rooms view uses WebRTC DataChannels (optional, behind “Prefer P2P”). Some networks block UDP/WebRTC. If P2P fails, keep “Prefer P2P” off and it will use server WebSockets for messaging.
Password reset emails aren’t arriving
Supabase email delivery depends on your project auth settings and SMTP configuration.
Check:
- Supabase → Authentication → Providers → Email is enabled
- Supabase → Authentication → URL Configuration:
- Site URL points to your deployment
- Redirect URLs includes your
/loginURL
- Supabase → Authentication → SMTP Settings: configure a real SMTP provider for reliable delivery
Also check Supabase Auth logs for send failures and your inbox spam/quarantine.
Password recovery link opens but “Update password” fails
Supabase recovery links can be either:
- hash tokens (
#access_token=...&refresh_token=...&type=recovery) - PKCE code (
?code=...)
This app calls supabase.auth.getSessionFromUrl({ storeSession: true }) to consume either format, then calls updateUser().
If it still fails:
- Verify the link points to your deployed
/loginURL. - Verify Supabase Auth → URL Configuration includes your
/loginredirect URL.
Vault is disabled
Set ENABLE_VAULT=1 and restart the container (admins can also toggle the Vault feature override).