Troubleshooting
Applies to the current released clients and Bridge. Check versions before applying guidance for a different platform or older release.
Start with a small check
forge --version
forge whoami --format json
forge doctor --format json
Inspect errors, failed checks and next_actions. A doctor success checks
workstation/login readiness, not a repair outcome on a remote machine.
For one target, use forge devices show --device <device-id>.
These responses can identify your workspace or devices. Review them before sharing; do not paste complete outputs into public discussions.
Installation and login
The login/installation steps below describe a personal technician client. Whisper is currently disabled: a missing navigation action or disabled saved-link notice is expected, not a reason to reinstall the CLI, rotate credentials or retry a personal login in shared chat. Its workspace configuration is retained; use your own local agent/client for ordinary access.
| Symptom | Next step |
|---|---|
forge not found, or the old version still runs |
Restart the terminal and coding agent after installation. On Windows, Get-Command forge shows the selected command; on Linux, command -v forge does the same. Check the launcher path from the platform install guide. |
| Missing bundled artifacts | Repair with the complete signed package. Do not copy an isolated executable from another version. |
| Invalid hash, signature or unexpected publisher | Stop. Obtain the expected verified release through the trusted download/software channel; never disable verification. |
| No workspace, wrong workspace or missing device | Confirm whoami, use forge tenant list, then select the intended profile or sign in with an explicit workspace. Names and email addresses are not membership proof. |
| Login expired | Run forge login for the affected profile and complete browser authorization. |
| Linux credential provider not ready | Run forge credentials status in the actual user/agent session. Restore the configured keyring/key access; do not silently switch provider or relax permissions. |
| A signed-in browser tab no longer has access | Reload, verify the selected workspace and current membership. An old page or bookmark does not preserve authorization. |
Installation details: Windows ยท Linux.
Device connection
Offline device: check the last-seen time, power and network with the customer. Offline is not proof of revocation or a failed update.
Device busy: coordinate with the technician holding control. One identity may use multiple channels; another identity cannot take over silently.
Stale local connection: use the supported disconnect, then reconnect:
forge device disconnect --device <device-id> forge device connect --device <device-id>This preserves profiles and persistent host-key pins.
Host-key mismatch: stop and investigate the device's identity or reinstall/transfer history through a trusted channel. Do not delete pins or disable SSH checks to force a connection.
Relay or Bridge interrupted: channel loss stops access. Check the remote outcome before repeating a command or transfer; there is no automatic replay guarantee.
Remote path or command fails: use the target OS's paths and shell. Windows commands run as LocalSystem through PowerShell; Linux commands run as root through
/bin/sh, not in the customer's desktop session.
No inbound firewall rule, Windows OpenSSH server or VPN installation is
needed on the target. forge device relay probe is migration-specific, not
a general connectivity repair command.
Enrollment and Rescue
An enrollment link may be expired, consumed, revoked or tied to a release that is no longer available. Inspect the share/enrollment status before issuing another package. A downloaded package does not prove installation; a consumed code does not prove authenticated online health.
Preserve the generated Windows filename and the whole Linux package with its signed sidecars. Keep bootstrap/code files private.
Current Windows enrollment can provide a copyable diagnostic report. Review its contents before sharing through a private support channel. Installed version, selected worker version, presence and fresh health are different observations; one reported version alone does not prove update success.
For Rescue, run forge rescue doctor and use the creating profile.
capsule_issuer_not_ready requires the approved matching Rescue
configuration, not a newly generated arbitrary key or an unsigned bypass.
See Rescue prerequisites.
Treat unconfirmed Rescue cleanup as unconfirmed. Keep recovery information and follow the returned next actions; local disconnect is not proof of remote process removal.
Diagnostics and customer records
- Partial snapshot: retain successful sections and inspect warnings. Choose only implemented sections for the target platform.
cleanup_required: the snapshot may be available locally, but remote cleanup failed or is unknown. Remove only the operation's reported temporary directory through authorized access.- Directory/case version conflict: read the latest record and reconcile edits. Case, note, draft and device-link versions are independent.
- Write timed out: completion is unknown. Inspect current records before retrying. Retry note creation with the same key and unchanged payload; other creates can duplicate records.
- Draft export unavailable: review the exact current revision on the website. Any content or recipient edit clears earlier review.
- Evidence unavailable: current authorization or retention may have changed. A case link never overrides those boundaries.
Service errors and support
The public guides are served separately from the Bridge application. During Bridge maintenance you can still consult them, but reading a guide does not restore login, device access or interrupted work. If an old documentation tab shows outdated guidance, return to the stable documentation home rather than refreshing a generation-specific snapshot link.
If the website shows maintenance or a service error, wait for it to recover and refresh. Confirm the state of interrupted work before retrying a mutation. An error notification is not proof that a task failed, completed or recovered. An operator may supply an approximate maintenance window. It is an estimate, not a promised completion time; an expired or unavailable estimate does not mean the service has recovered.
For a private support request, provide the approximate time with time zone, platform, CLI version, the operation name and bounded error code. Explain expected versus observed behavior. Include a narrowly scoped diagnostic snapshot only when requested and authorized.
Do not include passwords, tokens, private keys, enrollment links, generated secret-bearing filenames, raw command transcripts or unnecessary customer data. Report suspected vulnerabilities privately to Ready IT ApS rather than posting a reproduction against a real device.