kodus status shows the consolidated state (auth mode, org, repo, hook, version). --verbose prints the resolved API URL and per-request details.
Common Errors
Command not found: kodus
Command not found: kodus
The CLI isn’t on your
PATH. Reinstall with your package manager’s global flag, or use npx @kodus/cli <command> for one-off runs.npm install -g @kodus/cliyarn global add @kodus/clipnpm add -g @kodus/clibun add -g @kodus/cli
curl -fsSL https://review-skill.com/install | bash to fix PATH entries.AUTH_REQUIRED or 401 Unauthorized
AUTH_REQUIRED or 401 Unauthorized
NOT_IN_GIT_REPO
NOT_IN_GIT_REPO
kodus review requires a git working directory. cd into a repo or initialize one with git init. For kodus config repo commands, you can pass owner/repo explicitly instead of ..Review takes very long or seems to hang
Review takes very long or seems to hang
Large branches (hundreds of files, thousands of lines) can take several minutes. The default request timeout is 60 minutes — you should see progress in verbose mode.
- Use
--verboseto confirm the request is in flight. - For very large diffs, prefer
--branch <base>or--commit <sha>over working-tree mode: these let the backend clone the same commit instead of receiving inlined file contents. - Override the timeout with
KODUS_REQUEST_TIMEOUT_MIN=90 kodus reviewif needed. - Split work across smaller branches when practical.
Files are being skipped from the review
Files are being skipped from the review
Review honors the You can add or remove patterns:Binary files, images, and lockfiles are skipped by default.
ignore-files patterns configured in kodus config repo. List current settings with:Rate limit reached / Trial exhausted
Rate limit reached / Trial exhausted
Trial mode allows 5 reviews per day. Sign in with
kodus auth login or configure a team key via kodus auth team-key --key kodus_xxxxx to raise limits. kodus auth status prints your current usage.API returned invalid response (expected JSON, got HTML)
API returned invalid response (expected JSON, got HTML)
Your
KODUS_API_URL is hitting a reverse proxy or Cloudflare Access page instead of the API. Check:- The URL path (no stray
/api,/v1, etc.). - Cloudflare Access credentials (
CF_ACCESS_CLIENT_ID,CF_ACCESS_CLIENT_SECRET) if applicable. - That the proxy forwards
AuthorizationandCF-Access-*headers intact.
HTTPS required for API URL
HTTPS required for API URL
The CLI rejects non-HTTPS API URLs for everything except
localhost and 127.0.0.1. Provision a valid TLS certificate for your self-hosted instance, or use http://localhost:<port> for local development.Pre-push hook is not running
Pre-push hook is not running
- Confirm installation:
kodus hook status. - Make sure
.git/hooks/pre-pushis executable. - Other hook managers (Husky, Lefthook, pre-commit) may overwrite
.git/hooks/pre-push. Either chain them or reinstall withkodus hook install --force. - Skip the hook for a single push:
KODUS_SKIP_HOOK=1 git push.
Decisions (memory) hooks aren't capturing
Decisions (memory) hooks aren't capturing
- Run
kodus decisions statusto see which agents are wired up. - Re-run
kodus decisions enable --forceto reinstall integration files. - For Codex, ensure
~/.codex/config.tomlcontains thenotify = ["kodus", "decisions", "capture", ...]line, or pass--codex-config <path>. - Check the agent actually emits turn-complete events (some older Claude Code configurations don’t).
Device limit reached
Device limit reached
Self-hosted instances can enforce device limits per organization. Ask your admin to increase the limit or remove unused devices from the dashboard.
Exit Codes
Use these in scripts and CI pipelines.| Code | Meaning |
|---|---|
0 | Success. No issues found, or issues were found but below --fail-on. |
1 | Issues found at or above the --fail-on severity. |
2 | CLI usage error (invalid flag, missing argument). |
3 | Authentication or authorization failure. |
4 | Network or API error (timeout, 5xx, invalid response). |
5 | Not in a git repository, or no changes to review. |
Debugging Tips
--verboseon any command prints the resolved API URL, request IDs, and timings.kodus schemaoutputs the machine-readable command schema — useful when your agent reports a missing flag.--agentenforces deterministic, machine-readable output; combine with--format jsonwhen scripting.KODUS_VERBOSE=truepersists verbose mode across multiple commands in a session.
Getting Help
- Report bugs: github.com/kodustech/cli/issues
- Feature requests, configuration questions: your Kodus account manager, or
support@kodus.io. - For self-hosted deployments, include
kodus status --verboseoutput when filing an issue.