Common issues and how to resolve them. Can't find your answer? Contact support.
The QR code contains a provisioning token for secure pairing. If scanning fails:
During pairing, your phone generates its own encryption keys locally. The private key never leaves your device.
If issues persist, click "Reset All Certificates" in the plugin settings to clear all stored certificates and start fresh. You'll need to re-pair all devices afterward.
The tunnel uses a persistent WebSocket connection from your desktop to our server. Disconnections can be caused by:
Your phone connects to {subdomain}.tunnel.kibbler.dev where the subdomain is derived from your certificate. Both ends will automatically reconnect.
This error typically means the proxy server isn't reachable:
Kibbler uses mTLS certificates for secure authentication. Certificate issues may occur if:
To re-pair: open the Devices tab in the iOS app, remove the old desktop, and scan a new QR code from the plugin.
Plugin installation issues are often version-related:
The Kibbler tool window should appear in your IDE's sidebar:
If the plugin is causing IDE instability:
Please report crashes with your IDE logs (Help > Collect Logs and Diagnostic Data).
The proxy server runs locally and may fail to start if:
Certificates are stored in the plugin's data directory and are cleaned up when you uninstall the plugin.
The plugin needs to register with the tunnel server before showing a QR code:
tunnel.kibbler.devThe plugin generates a local Certificate Authority (CA) to sign certificates for E2E encryption. This happens automatically on first setup.
Windows Defender SmartScreen or antivirus software may block the Kibbler proxy binary:
%APPDATA%\JetBrains\<IDE>\plugins\kibblerThird-party antivirus (Norton, McAfee, Kaspersky, etc.) may also flag the proxy - check your AV quarantine and add similar exclusions.
macOS may prevent the proxy binary from running due to security restrictions:
You only need to allow the binary once. macOS remembers your choice for future launches.
Local or corporate firewalls may block Kibbler's network connections:
kibbler-proxy.*.tunnel.kibbler.dev and allow WebSocket connections.The default proxy port is 31415 (configurable). The tunnel uses WebSocket over TLS which some corporate proxies may block.
VPN software can interfere with Kibbler's tunnel connection:
tunnel.kibbler.dev from the VPN tunnel8.8.8.8 or 1.1.1.1 manuallyThe tunnel connection is already encrypted with TLS 1.3, so a VPN provides no additional security benefit for Kibbler traffic.
If the app crashes immediately after opening:
Kibbler uses OAuth sign-in via your phone (you only need to sign in once):
Your auth token is stored securely in the iOS Keychain and lasts 30 days.
If sessions aren't appearing in the app:
Desktop sessions show conversations from ~/.claude/projects/ - you can continue any desktop Claude conversation from your phone.
Camera access is required for pairing and vision features:
If you can't see pending changes to approve:
Kibbler requires Claude Code CLI to be installed:
npm install -g @anthropic-ai/claude-codeclaude --versionclaude in standard locationsYou can also set a custom Claude CLI path in the plugin settings.
Response times depend on multiple factors:
The app shows a streaming indicator while Claude is working. Timeout is set to 5 minutes by default.
Kibbler uses your existing Claude Code authentication:
claude in terminalclaude --logout then log in againKibbler doesn't store or manage your API key - it uses Claude Code's existing auth.
If Claude seems to "forget" previous conversation:
~/.claude/projects/ as JSONL files - don't clear this directoryKibbler uses the --resume flag to continue existing Claude conversations. Desktop sessions sync automatically.
You can browse and continue Claude CLI conversations from VS Code, terminal, or JetBrains:
Desktop sessions are ephemeral on mobile - they stay on your desktop, and the phone just continues the conversation.
Our support team is here to help you get up and running.