Files
coder/docs/admin/templates/startup-coordination/troubleshooting.md
T
Sas Swart 45dcd7edfc docs: document coder exp sync list in startup coordination guides (#26454)
Follow-up to #26443. Documents the new `coder exp sync list` command in
the startup coordination guides.

**troubleshooting.md:**
- New "List All Units" section after "Check Unit Status" with example
output
- Added `coder exp sync list` to the "Workspace startup script hangs"
checklist, since users debugging hanging scripts may not know which unit
to query

**usage.md:**
- New "Inspect Unit State" section covering `list`, `status`, and `ping`
- Updated "Test your changes" checklist to reference `coder exp sync
list`

> Generated by Coder Agents on behalf of @SasSwart
2026-06-17 15:59:52 +02:00

2.9 KiB

Workspace Startup Coordination Troubleshooting

Note

This feature is experimental and may change without notice in future releases.

Test Sync Availability

From a workspace terminal, test if sync is working using coder exp sync ping:

coder exp sync ping
  • If sync is working, expect the output to be Success.
  • Otherwise, you will see an error message similar to the below:
error: connect to agent socket: connect to socket: dial unix /tmp/coder-agent.sock: connect: permission denied

Check Unit Status

You can check the status of a specific unit using coder exp sync status:

coder exp sync status git-clone

If the unit exists, you will see output similar to the below:

# coder exp sync status git-clone
Unit: git-clone
Status: completed
Ready: true

If the unit is not known to the agent, you will see output similar to the below:

# coder exp sync status doesnotexist
Unit: doesnotexist
Status: not registered
Ready: true

Dependencies:
No dependencies found

List All Units

If you are unsure which units are registered, or want a quick overview of every unit's state, use coder exp sync list:

coder exp sync list

This displays all registered units, their statuses, and whether they are ready to start:

UNIT           STATUS     READY
git-clone      completed  true
env-setup      started    true
ide-configure  pending    false

You can also get JSON output for scripting:

coder exp sync list --output json

Common Issues

Workspace startup script hangs

If the workspace startup scripts appear to 'hang', one or more of your startup scripts may be waiting for a dependency that never completes.

  • Inside the workspace, review /tmp/coder-script-*.log for more details on your script's execution.

    Tip: add set -x to the top of your script to enable debug mode and update/restart the workspace.

  • Review your template and verify that coder exp sync complete <unit> is called after the script completes e.g. with an exit trap.
  • List all units to identify which ones are blocked: coder exp sync list.
  • View the unit status using coder exp sync status <unit>.

Workspace startup scripts fail

If the workspace startup scripts fail:

  • Review /tmp/coder-script-*.log inside the workspace for script errors.

  • Verify the Coder CLI is available in $PATH inside the workspace:

    command -v coder
    

Cycle detected

If you see an error similar to the below in your startup script logs, you have defined a cyclic dependency:

error: declare dependency failed: cannot add dependency: adding edge for unit "bar": failed to add dependency
adding edge (bar -> foo): cycle detected

To fix this, review your dependency declarations and redesign them to remove the cycle. It may help to draw out the dependency graph to find the cycle.