Troubleshooting
Troubleshooting
Section titled “Troubleshooting”Common issues and solutions for atlcli.
On this page
Section titled “On this page”- Authentication errors
- Connection errors
- Confluence issues
- Export jobs
- Jira issues
- Performance
- Debug mode
- Getting help
Authentication Errors
Section titled “Authentication Errors”401 Unauthorized
Section titled “401 Unauthorized”Error: Authentication failed (401)Causes:
- Invalid or expired API token
- Wrong email address
- Incorrect instance URL
Solutions:
- Regenerate API token at Atlassian Account
- Verify email matches your Atlassian account
- Check URL includes
https://
atlcli auth init # Re-initialize credentials403 Forbidden
Section titled “403 Forbidden”Error: You don't have permission (403)Causes:
- Account lacks required permissions
- Project/space access restricted
Solutions:
- Verify account has access to the project/space
- Contact your Atlassian admin for permissions
Connection Errors
Section titled “Connection Errors”Network Timeout
Section titled “Network Timeout”Error: Request timeoutSolutions:
- Check internet connection
- Verify Atlassian status at status.atlassian.com
- Try again with
--verbosefor details
SSL Certificate Error
Section titled “SSL Certificate Error”Error: self signed certificate in certificate chainError: unable to verify the first certificateError: Unable to verify certificateCauses:
- On-premises Jira/Confluence Data Center using a self-signed certificate
- Instance certificate issued by an internal / enterprise Certificate Authority not in the system trust store
- Corporate TLS-intercepting proxy
Solutions:
-
Point atlcli at your internal CA (recommended). Re-run login with
--ca-file:Terminal window atlcli auth login --bearer --site https://jira.company.internal \--token YOUR_PAT --ca-file /etc/ssl/certs/company-ca.pemThe CA file path is persisted on the profile and used for every subsequent request. See TLS and Self-Signed Certificates.
-
Install the CA into your system trust store (alternative) — appropriate when many tools on the machine need it, not just atlcli.
-
Check for a corporate TLS-intercepting proxy — if traffic is being MITM’d by a proxy, you’ll need its root CA from your IT team.
-
Last resort: skip verification with
--insecure— only appropriate for disposable test instances. Never use in production, as it disables protection against MITM attacks:Terminal window atlcli auth login --bearer --site https://jira.test.local --token YOUR_PAT --insecure
Confluence Issues
Section titled “Confluence Issues”Sync Conflicts
Section titled “Sync Conflicts”Conflict: file.md was modified both locally and on ConfluenceSolutions:
- Pull latest changes:
atlcli wiki docs pull - Merge manually
- Force push:
atlcli wiki docs push --force
Duplicate -2.md Files After Pulling
Section titled “Duplicate -2.md Files After Pulling”A page you pull repeatedly shows up twice: page.md and page-2.md, each with the
same id in its frontmatter, plus a second page-2.attachments/ directory.
Cause:
Older versions recorded a uniquified filename in .atlcli/sync.db for pages that had
not moved, so the next pull treated that alias as the page’s location.
Solutions:
- Upgrade and pull again —
atlcli wiki docs pullre-adopts the original file and corrects the recorded path, as long as only one of the two files exists. - If both files are already on disk, delete the
-2copy (and its-2.attachments/directory) after checking it holds no edits of yours, then pull again:Terminal window atlcli wiki docs diff page-2.md # confirm there is nothing to keeprm -r page-2.md page-2.attachmentsatlcli wiki docs pull
Note that a genuine -2 suffix is also how atlcli keeps two different pages with the
same title apart — check the id in the frontmatter before deleting anything.
Page Not Found
Section titled “Page Not Found”Error: Page not found (404)Causes:
- Page was deleted on Confluence
- Page ID changed
Solutions:
- Re-pull directory:
atlcli wiki docs pull - Remove stale local file
Export Jobs
Section titled “Export Jobs”An extension export stopped after Chrome quit
Section titled “An extension export stopped after Chrome quit”The extension queue is local to Chrome. It continues across tab changes, panel closure, service-worker suspension, and offscreen-document restart, but no code runs while Chrome itself is closed. Start Chrome again: queued or checkpointed work is reclaimed automatically. If the Confluence session expired, sign in to the same site and select Resume after sign-in in Activity.
A CLI export appears stuck or its terminal disappeared
Section titled “A CLI export appears stuck or its terminal disappeared”Open another terminal and inspect the durable job:
atlcli wiki export jobs list --status running,waitingatlcli wiki export jobs show <job-id>atlcli wiki export jobs watch <job-id>The ordinary CLI command is the runner; there is no detached daemon. If that
process ended, a stale lease is reconciled the next time an export-jobs command
opens the journal. Use retry for a resulting interrupted/failed job. If a
recoverable checkpoint was returned to queued, reclaim that same row and its
checkpoint explicitly:
atlcli wiki export jobs resume <queued-job-id>A job is waiting
Section titled “A job is waiting”Open its detail or run jobs show. The waiting reason distinguishes:
auth: in the extension, sign in and choose Resume after sign-in; for the CLI, refresh the profile before an explicit foreground Retry;backoff: a bounded automatic retry is waiting for its deadline;quotaorresource: free browser/disk space or narrow the export;host: the local browser runner is not currently available.
Do not repeatedly create new jobs for an automatic backoff. The existing row retains its queue position and protocol.
An export exceeds storage or memory limits
Section titled “An export exceeds storage or memory limits”Narrow the tree with --max-depth, labels, or a smaller scope; downscale large
attachments; then retry. The browser checks product caps and origin quota before
heavy rendering. It fails closed rather than leaving a partial download.
Current browser caps are 128 MiB per spool object, 256 MiB spool per job,
512 MiB common spool total, and 64 MiB for the final DOCX/PDF artifact.
A finished result is no longer downloadable
Section titled “A finished result is no longer downloadable”Succeeded-undelivered artifacts are protected. After download or dismissal,
artifact bytes are eligible for release after 24 hours. Full reports remain for
7 days; compact history may remain without the artifact. Use Run again in
the extension or jobs rerun in the CLI to create a new linked export.
See Export Jobs & Operations for the complete lifecycle and diagnostic procedure.
Jira Issues
Section titled “Jira Issues”Invalid JQL
Section titled “Invalid JQL”Error: Invalid JQL querySolutions:
- Check JQL syntax
- Verify field names exist
- Quote values with spaces
# Correctatlcli jira search --jql "status = 'In Progress'"
# Wrongatlcli jira search --jql "status = In Progress"Issue Type Not Found
Section titled “Issue Type Not Found”Error: Issue type 'Bug' not found in projectSolutions:
- List available types:
atlcli jira field list --type issuetype - Use correct type name for your project
Field Not Editable
Section titled “Field Not Editable”Error: Field 'status' cannot be set directlySolutions:
- Use transitions for status changes
- Some fields are read-only
atlcli jira issue transition --key PROJ-123 --to "Done"Performance
Section titled “Performance”Slow Commands
Section titled “Slow Commands”Solutions:
- Use
--limitto reduce results - Use more specific JQL
- Check network latency
High Memory Usage
Section titled “High Memory Usage”Solutions:
- Process results in batches
- Use
--jsonand pipe tojqfor large datasets
Debug Mode
Section titled “Debug Mode”Enable verbose output:
ATLCLI_LOG_LEVEL=debug atlcli jira search --assignee meGetting Help
Section titled “Getting Help”- Check this documentation
- Search GitHub Issues
- Open a new issue with:
- atlcli version
- Command that failed
- Full error message
- Steps to reproduce
Related Topics
Section titled “Related Topics”- Doctor - Automated health checks
- Logging - Debug with logs
- Authentication - Profile setup