2b77e15b36
Add pending-switch coordination to internal/activity (RequestSwitch/PendingSwitch/AckSwitch/CancelSwitch); AckSwitch atomically sets the active project and records switch-completed with Claude's summary. New MCP tools get_pending_switch and ack_switch (request is user-only via HTTP). HTTP GET/POST/DELETE /api/switch. New <handoff-bar> component (ask/waiting/cancel/completed) over SSE; activity-feed reflects switch-completed. Test covers request->ack->clear. Verified live: request/waiting/cancel over SSE. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
89 lines
3.5 KiB
HTML
89 lines
3.5 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>GitManager — Help</title>
|
|
<link rel="stylesheet" href="/static/app.css">
|
|
<style>
|
|
header {
|
|
display: flex; align-items: baseline; gap: 16px;
|
|
padding: 12px 20px; background: var(--surface-1);
|
|
border-bottom: 1px solid var(--border);
|
|
}
|
|
header h1 { margin: 0; font-size: 16px; }
|
|
header nav { margin-left: auto; }
|
|
main { max-width: 760px; padding: 20px; }
|
|
h2 { font-size: 15px; margin-top: 28px; }
|
|
code { background: var(--surface-2); padding: 1px 5px; border-radius: var(--radius-sm); }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<h1>GitManager</h1>
|
|
<nav><a href="/">← Dashboard</a></nav>
|
|
</header>
|
|
<main>
|
|
<h1>Using GitManager</h1>
|
|
<p>
|
|
GitManager scans the folders you configure and shows every Git repository
|
|
it finds, with each repo's current branch, whether it has uncommitted
|
|
changes, and how far ahead or behind its upstream it is.
|
|
</p>
|
|
|
|
<h2>Getting started</h2>
|
|
<ol>
|
|
<li>Copy <code>.env.example</code> to <code>.env</code>.</li>
|
|
<li>Set <code>GIT_REPO_ROOTS</code> to the folders that hold your repos.</li>
|
|
<li>Run <code>docker compose up</code> and open the dashboard.</li>
|
|
</ol>
|
|
|
|
<h2>Reading the dashboard</h2>
|
|
<ul>
|
|
<li><strong>Branch</strong> — the checked-out branch (or <code>HEAD</code> when detached).</li>
|
|
<li><strong>Dirty</strong> — the working tree has staged or unstaged changes.</li>
|
|
<li><strong>Ahead / behind</strong> — commits your branch leads or trails its upstream by.</li>
|
|
</ul>
|
|
|
|
<h2>Repository details</h2>
|
|
<p>
|
|
Click any repository in the list to open its details on the right: its
|
|
full path and current branch, its remotes and their URLs, every local
|
|
branch (with the one you're on marked and its upstream shown), and the 20
|
|
most recent commits.
|
|
</p>
|
|
|
|
<h2>Active project & activity</h2>
|
|
<p>
|
|
Clicking a repository also makes it your <strong>active project</strong> —
|
|
the one you're currently focused on — shown in the activity panel at the
|
|
bottom. That panel also lists recent actions by both you and Claude, updating
|
|
live. When GitManager is connected to Claude, Claude can see your active
|
|
project and this activity, so you stay on the same page.
|
|
</p>
|
|
|
|
<h2>Handing a project off to Claude</h2>
|
|
<p>
|
|
When GitManager is connected to Claude, you can hand the current project
|
|
off. Select the repository (that makes it your active project), then click
|
|
<strong>"Ask Claude to switch to …"</strong> in the handoff bar. Claude
|
|
won't drop what it's doing — it finishes to a safe stopping point (saving
|
|
any in-progress work) and then switches. You'll see a "waiting…" message
|
|
while it wraps up, and a confirmation with a short note of where it left the
|
|
previous project once it has switched. You can <strong>Cancel</strong> a
|
|
pending request any time before Claude completes it.
|
|
</p>
|
|
|
|
<h2>Background refresh</h2>
|
|
<p>
|
|
The dashboard refreshes on its own. By default it does <em>not</em> reach
|
|
the network — enable <code>SCAN_FETCH_ENABLED</code> if you want
|
|
ahead/behind counts kept current via <code>git fetch</code>.
|
|
</p>
|
|
|
|
<!-- Keep this page task-oriented and update it whenever a user-facing
|
|
feature changes, in the same change (AGENT.md §9.3). -->
|
|
</main>
|
|
</body>
|
|
</html>
|