Troubleshooting & FAQ
Common issues and how to resolve them.
Connection Issues
Device can't find CLI / "No Projects Found"
Symptoms:
- App shows "No projects" or "Searching..."
- CLI says "Watching..." but the app doesn't see it
Solutions:
-
Check CLI is running and connected
codelayers statusShould show "Backend WebSocket connected"
-
Check internet connection
- Both devices need internet access to connect to the backend
- Try opening a website on both devices to verify
-
Verify same mnemonic
- Both CLI and your device must use the same 12-word phrase (synced automatically via iCloud Keychain)
- Check sync ID matches:
codelayers statusshows your sync ID
-
Restart the watch process
# Stop and restart CLI codelayers stop codelayers watch . -
Re-authenticate
codelayers logout codelayers login codelayers watch .
"Connection Lost" / Frequent Disconnects
Solutions:
-
Check internet stability
- The backend WebSocket needs a stable internet connection
- Try a speed test or ping test to verify connectivity
-
Check for sleep/lock
- Mac sleeping stops CLI
- Prevent sleep:
caffeinate -i codelayers watch .
-
Update CLI
codelayers --version # Check version brew upgrade codelayers -
Check backend status
- Rare, but backend may have maintenance windows
- Check https://status.codelayers.ai if issues persist
Backend connection issues
Solutions:
-
Check internet connection on Mac
-
Verify authentication
codelayers statusShould show "Logged in as..." and "WebSocket connected"
-
Re-login
codelayers logout codelayers login -
Check firewall
- Ensure outbound HTTPS (443) and WSS connections are allowed
Authentication Issues
"Mnemonic doesn't match" / "Unable to decrypt"
Symptoms:
- App shows "Decryption failed"
- Data appears as garbled text
Cause: The mnemonic on your device doesn't match the one used by CLI.
Solutions:
-
Verify mnemonic is identical
- Every word must match exactly
- Order matters
- Check for similar-looking words (e.g., "there/three")
-
Re-import on your device
- Settings → Privacy → Re-import Recovery Phrase
- Enter all 12 words carefully
-
Check CLI mnemonic
codelayers statusShows sync ID - compare with the sync ID shown in the app
"Invalid mnemonic" when logging in
Solutions:
- Check word count - Must be exactly 12 words
- Check for typos - All words must be from BIP-39 wordlist
- No extra spaces - Single space between words
- Case doesn't matter - "Apple" = "apple"
Can't generate new mnemonic
Solutions:
-
Force re-login
codelayers login --force -
Clear existing credentials
codelayers logout rm -rf ~/.codelayers/credentials.json codelayers login
Sync Issues
Initial sync takes forever
Normal times:
- 100 files: ~10 seconds
- 1000 files: ~1 minute
- 5000 files: ~5 minutes
If much slower:
- Large files - Check for binary files or huge JSON
- Many dependencies - Complex codebases take longer
- Network speed - Check upload bandwidth
- CPU load - Parsing is CPU-intensive
Speed up tips:
- Add large/binary files to
.gitignore - Create
.codelayersignoreto skip directories:node_modules/ target/ build/ .git/
"Sync failed" / Upload errors
Solutions:
- Check network - Stable internet connection?
- Check disk space - Cache needs space
- Retry
codelayers sync --clean - Check logs
codelayers watch -d # Debug mode
Changes not appearing on your device
Solutions:
- Check file is saved - Unsaved changes won't sync
- Check file type - Only supported languages are parsed
- Wait for debounce - 300ms delay before processing
- Force refresh in the app: Pull down gesture or tap refresh
Graph looks wrong / Missing connections
Solutions:
-
Clean re-sync
codelayers sync --clean -
Check language support - Is your language in the supported list?
-
Check import style - Some dynamic imports may not be detected
App Issues
App crashes on launch
Solutions:
- Force quit and relaunch
- Restart your device
- Reinstall app
- Clear app data: Settings → Apps → CodeLayers → Clear Data
Poor performance / Low frame rate
Solutions:
- Close other apps - Free up resources on your device
- Reduce visible nodes - Focus on a subdirectory rather than the entire codebase
- For very large codebases (5000+ files) - Consider syncing individual packages
Visualization is empty / All nodes at origin
Solutions:
- Wait for load - Large graphs take time to layout
- Check project has code - Empty or tiny repos may not visualize well
- Re-sync from CLI
Labels not showing / Text unreadable
Solutions:
- Zoom in - Labels appear when you're closer to nodes
- Adjust text size - Use visionOS Settings → Accessibility → Display → Text Size
AI Chat Issues
"AI chat unavailable"
Cause: CLI not running with --agent flag.
Solution:
codelayers watch --agent claude # or gemini/codex
AI not responding
Solutions:
-
Check agent is installed
claude --version # For Claude gemini --version # For Gemini codex --version # For Codex -
Check agent authentication - Each AI needs its own API key/login
-
Restart watch with agent
codelayers stop codelayers watch --agent claude
AI can't see my code
Note: AI agents run locally on your Mac and can see your plaintext code. This is required for them to answer questions.
If AI seems unaware of your code:
- Make sure the agent subprocess started correctly
- Check CLI logs for errors
- Try a simpler question first
CLI Issues
"Command not found: codelayers"
Solutions:
-
Check installation
which codelayers brew list codelayers -
Reinstall
brew install codelayers-ai/tap/codelayers
"Permission denied"
Solutions:
-
Check Homebrew permissions
brew doctor -
macOS Gatekeeper
- System Preferences → Security → "Allow anyway"
High CPU usage
Normal: Initial parsing uses significant CPU briefly.
If persistent:
- Check for loops - Is the same file changing repeatedly?
- Exclude directories - Add to
.codelayersignore - Check log output -
codelayers watch -d
High memory usage
Solutions:
- Large codebases use more memory - expected for 10k+ files
- Clear cache
rm ~/.codelayers/ast_cache.db
FAQ
General
Q: What happens if I lose my mnemonic? A: Your encrypted data cannot be recovered. You would need to start fresh with a new mnemonic and re-sync your repositories. Always backup your 12 words.
Q: Can multiple people view the same codebase? A: Yes, if they all have the same mnemonic. Share your 12-word phrase securely with team members who need access.
Q: Does CodeLayers work offline? A: Partially. Once synced, the app caches the graph locally. You can view cached data offline, but won't receive real-time updates until reconnected to the backend.
Q: Which files are ignored?
A: By default: .git/, node_modules/, target/, build/, .venv/, and files in .gitignore. Create .codelayersignore for custom exclusions.
Privacy
Q: Do you have access to my code? A: No. All code is encrypted with your mnemonic before leaving your machine. We only store encrypted blobs.
Q: Is the AI chat private? A: AI agents (Claude, Gemini, Codex) run locally on your Mac and see your plaintext code. Their providers' privacy policies apply. The messages you exchange are encrypted when stored on our backend.
Q: Can I self-host the backend? A: Not currently. The backend code is not open-source. However, all data is end-to-end encrypted with your mnemonic—the backend only sees encrypted blobs.
Compatibility
Q: Will you support more languages? A: Yes, we're adding more tree-sitter grammars. Kotlin, Scala, and Elixir are planned.
Q: What devices does CodeLayers support? A: CodeLayers is available on iPhone, iPad, and Apple Vision Pro. The CLI runs on macOS with Apple Silicon.
Q: Does it work with monorepos? A: Yes, but very large monorepos (50k+ files) may be slow. Consider syncing individual packages.
Pricing
Q: Is CodeLayers free? A: Check codelayers.ai/pricing for current pricing.
Q: Is there a free trial? A: Check codelayers.ai for trial information.
Getting Help
- Documentation: codelayers.ai/docs
- Email: [email protected]
When reporting issues, please include:
- CLI version (
codelayers --version) - Operating system and version
- Device model and OS version
- Steps to reproduce
- Error messages (with debug output:
codelayers watch -d)