Skip to content

Commit da47f53

Browse files
dcramerclaude
andcommitted
docs: Add GitHub sync section to guide
Covers sync workflows: manual sync, importing issues, and sync-on-push behavior. Also adds anchor ID to config page for cross-linking. Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 2987151 commit da47f53

2 files changed

Lines changed: 70 additions & 1 deletion

File tree

docs/src/pages/config.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ dex list --storage-path /custom/path/.dex`}
8383
/>
8484
</Terminal>
8585

86-
<h2>GitHub Sync</h2>
86+
<h2 id="github-sync">GitHub Sync</h2>
8787

8888
<p>Sync tasks to GitHub Issues. Owner/repo are auto-detected from your git remote.</p>
8989

docs/src/pages/guide.astro

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,75 @@ All 24 tests passing."</pre>
265265
<span class="cli-yellow">[ ]</span> <span class="cli-bold">def456</span> <span class="cli-red">[B: abc123]</span>: Deploy to production</pre>
266266
</Terminal>
267267

268+
<h2>Syncing with GitHub</h2>
269+
270+
<p>Dex can sync tasks to GitHub Issues, giving your team visibility into AI-assisted work without requiring everyone to use Claude Code.</p>
271+
272+
<h3>Why Sync?</h3>
273+
274+
<ul>
275+
<li>Share progress with team members who don't use Claude Code</li>
276+
<li>Create a paper trail for completed work</li>
277+
<li>Get GitHub's notification system for task updates</li>
278+
<li>Back up task context outside your local machine</li>
279+
</ul>
280+
281+
<h3>Enabling Sync</h3>
282+
283+
<p>Configure your repository in <a href="/config#github-sync">config</a>. Dex authenticates via the <code>gh</code> CLI or <code>GITHUB_TOKEN</code> environment variable.</p>
284+
285+
<h3>Manual Sync</h3>
286+
287+
<p>Push local tasks to GitHub Issues:</p>
288+
289+
<Terminal>
290+
<pre class="cli-output"><span class="cli-dim">$</span> dex sync
291+
Syncing 3 task(s) to owner/repo...
292+
<span class="cli-dim">[1/3]</span> <span class="cli-green">+</span> abc123: Add JWT authentication
293+
<span class="cli-dim">[2/3]</span> <span class="cli-yellow">↻</span> def456: Fix login redirect
294+
<span class="cli-dim">[3/3]</span> <span class="cli-dim">∙</span> ghi789: Add rate limiting
295+
Synced 3 task(s) to owner/repo
296+
<span class="cli-dim">(1 created, 1 updated, 1 unchanged)</span></pre>
297+
</Terminal>
298+
299+
<p>Use <code>--dry-run</code> to preview what would sync without making changes.</p>
300+
301+
<h3>Importing from GitHub</h3>
302+
303+
<p>Pull GitHub Issues into local tasks:</p>
304+
305+
<Terminal>
306+
<pre class="cli-output"><span class="cli-dim">$</span> dex import #42
307+
Imported issue #42 as task xyz789: "Add password reset flow"
308+
<span class="cli-dim">Created 3 subtask(s)</span></pre>
309+
</Terminal>
310+
311+
<p>Use <code>--all</code> to import all open issues at once.</p>
312+
313+
<h3>Sync-on-Push</h3>
314+
315+
<p>Completed tasks only close their GitHub Issues when the completion has been pushed to the remote. This prevents issues from closing before the actual code lands.</p>
316+
317+
<p class="example-label">Why this matters:</p>
318+
<blockquote>
319+
You complete a task locally, but your branch isn't merged yet. Without sync-on-push, the issue would close immediately—confusing teammates who see a "closed" issue with no merged PR. With sync-on-push, the issue stays open until your work is actually in the repository.
320+
</blockquote>
321+
322+
<Terminal>
323+
<pre class="cli-output"><span class="cli-dim">$</span> dex complete abc123 -r "Added JWT middleware. All tests passing."
324+
<span class="cli-green">[x]</span> abc123: Add JWT authentication
325+
326+
<span class="cli-dim">$</span> dex sync
327+
<span class="cli-dim">[1/1]</span> <span class="cli-yellow">↻</span> abc123: Add JWT authentication
328+
Synced 1 task(s) <span class="cli-dim">(issue stays open until pushed)</span>
329+
330+
<span class="cli-dim">$</span> git push && dex sync
331+
<span class="cli-dim">[1/1]</span> <span class="cli-yellow">↻</span> abc123: Add JWT authentication
332+
Synced 1 task(s) <span class="cli-dim">(issue now closed)</span></pre>
333+
</Terminal>
334+
335+
<p><strong>Note:</strong> If <code>.dex/</code> is in your <code>.gitignore</code>, sync-on-push detection is disabled since dex can't determine push status.</p>
336+
268337
<h2>Important: Tasks are Ephemeral</h2>
269338

270339
<p>Dex tasks are coordination tools, not permanent records. <strong>Never put task IDs in:</strong></p>

0 commit comments

Comments
 (0)