Troubleshooting
The most common things that go wrong, and how to fix them. If you don't see your issue here, email support@gjalla.io with output from gjalla status.
Start here: gjalla status
Almost every problem is one of: not authenticated, not linked to a project, harness not installed, or stale local context. Run this first:
gjalla status
Every row should be green. Yellow or red rows tell you exactly which step is missing. The remaining sections cover the most common failure modes.
CLI / setup
”Command not found: gjalla”
Install with pipx install gjalla (preferred) or pip install gjalla. If pipx says the install succeeded but the command isn’t found, run pipx ensurepath and restart your shell.
API key not saving
The API key lives in ~/.gjalla/config.yaml. If gjalla status says “API Key: Not Configured” after running setup, check that the directory is writable and you’re not setting GJALLA_API_KEY in your shell to a stale value (env vars override the config file).
”Project not linked”
Run gjalla setup project <pid> to link explicitly, or re-run gjalla setup and pick the project from the list. The project ID is in the URL when you have the project open in the workspace.
Git hooks not running
Commits go through without an attestation check
The most common cause: another tool (husky, simple-git-hooks, pre-commit.org) is managing hooks and overwrote gjalla’s. Run:
gjalla setup --no-hooks
That writes the standalone scripts but doesn’t install hooks. Wire them into your hook manager:
# pre-commit
bash scripts/gjalla-attestation-check.sh
# post-commit
bash scripts/gjalla-post-commit-upload.sh
Commit says the attestation is stale
Your agent prepared the commit record, then staged files changed before the commit landed. Re-stage everything, run gjalla rules check, ask the agent to refresh the commit record, and commit again.
Need to bypass for a one-off commit
Human developers can skip the attestation check with SKIP_ATTESTATION=1 git commit .... Use sparingly; the whole point is the audit trail.
MCP / agent integration
Agent doesn’t see gjalla MCP tools
- Run
gjalla setup mcp: it auto-detects your editor and writes the right config file. - Restart your editor / agent. Most clients only load MCP servers at startup.
- Check the MCP config file (
.mcp.json,.cursor/mcp.json, etc.) was actually created and points togjalla mcp serve. - If you don’t have
gjalla[mcp]installed locally, the config falls back touvx. Make sureuvxis on your PATH.
Agent ignores gjalla guidance
gjalla installs into each agent’s native guidance surface. If an agent is not following project rules or process:
- Run
gjalla setupfrom the repo root to refresh installed guidance, hooks, MCP, and skills. - Some agents only read guidance at session start. Restart the session.
- Run
gjalla syncif you recently changed rules, skills, or memory in the web app.
Workspace / analysis
Overview is empty after analysis finishes
gjalla’s discovery runs on the default branch. Common causes:
- Repo is very small: small repos sometimes produce zero capabilities until you add code worth analyzing.
- Default branch is a vendor folder or a docs-only branch: change the analysis branch in Configuration.
- The analysis state is degraded. Look for the red banner at the top of the workspace and click “Re-run from settings."
"Analysis incomplete” banner won’t go away
Open Configuration and re-run analysis. If it consistently fails, check that the gjalla GitHub App still has access to the repo (it gets revoked sometimes when admins rotate permissions).
PR check runs aren’t appearing
- Confirm the GitHub App is installed on the repo and your branch matches the configured target.
- Check Automations → Change Review: if it’s set to Off, no checks will post.
- If only some checks appear, the missing evaluators are likely tier-locked or have Enabled turned off. Open Automations to confirm.
Sync / context freshness
Rules, skills, or memories aren’t updating
gjalla sync pulls the latest harness from the platform and installs it into supported agents. Run it after changing anything in Guardrails, then restart agents that only load guidance at session start.
Stale rules cache
The CLI caches rules locally for fast lookup. Run gjalla sync to refresh. gjalla rules show always reads from cache, so if you just changed a rule in the web app, sync first.
”Could not refresh context” during sync
If gjalla sync reports Could not refresh context (e.g. fetch_context failed), re-run with debug logging to see the underlying cause. GJALLA_DEBUG is an environment variable, not a CLI flag. Set it before the command (don’t pass it as --GJALLA_DEBUG or gjalla sync GJALLA_DEBUG=1):
GJALLA_DEBUG=1 gjalla sync
# Windows PowerShell:
$env:GJALLA_DEBUG=1; gjalla sync
This writes a full traceback to .gjalla/.platform/logs/sync.log. A 403/404 means an API-key access problem. Re-run gjalla auth login to get a fresh user-scoped key that inherits your team’s project access. A network error points to connectivity or a misconfigured API URL rather than access.
Working offline or away from your allowlisted network
gjalla commands that talk to the platform (sync, uploads) will queue or time out, but everything local still works: rules, gates, ledger, loops. Your queued attestations upload on the next successful gjalla sync.
GitHub App
Can’t install the GitHub App
If your org requires admin approval for app installations, gjalla tracks the pending request and activates automatically once an admin approves. No retry needed on your end: it’ll show up in the workspace when it’s active.
App installed but checks aren’t posting
The app needs Pull requests: read & write and Checks: write. If permissions were modified on the GitHub side, re-grant from the org’s GitHub Apps page.
Memories (alpha)
Memories from one agent aren’t reaching another
With the shared gjalla memory store, not only are all agents able to learn from each other, but your memory store is centralized, meaning it can be curated, scrubbed, and managed so that all agents will consistently operate with the same knowledge.
Memories is alpha. If something looks wrong, email support@gjalla.io with the output of gjalla sync and gjalla status.
Still stuck?
Email support@gjalla.io with:
- Output of
gjalla status - What you were trying to do
- What happened instead
- Whether this is local-only or connected mode, and which agent you’re using
We read every email. Most issues are resolved within a day.
