Skip to content

Commit 9e034bf

Browse files
committed
refactor: content-ownership dedup pass + move gh CLI to Step 7
Step 7 now owns the full GitHub stack: gh binary (unconditional) + GitHub MCP (PAT-gated) + /gitfix skill. Moved from Step 3. - step-3: remove install_gh, drop gh from self-test loop, banner → 10 tools - step-7: add install_gh() for macOS+Linux, wire into main() before choose_tools, self-test always checks gh, summary shows INSTALLED_GH - uninstall.sh: gh removal moved to uninstall_github (backward-compat comment) - step-2: remove gh from the Step 3 preview line - README + step-ordering + mcp-setup: Step 7 row/bullet updated to show gh Cheatsheet dedup (design stack lives in creativity-maxxing, not here): - Removed rows: 21st.dev Magic, Figma, Excalidraw, Gamma, YouTube Transcripts, IG/Social Transcription from CHEATSHEET.md + README-SECTIONS/cheat-sheet.md - Add-on footnote now points to creativity-maxxing for Figma/Excalidraw/Gamma - README uninstall: remove false "Whisper models" claim, add creativity-maxxing cross-ref and correct gh uninstall bullet (Step 7)
1 parent fc89868 commit 9e034bf

9 files changed

Lines changed: 90 additions & 72 deletions

File tree

CHEATSHEET.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -152,10 +152,7 @@ These activate on their own when Claude detects a relevant task via natural lang
152152
|------|-------------|-----------------|----------------|
153153
| UI/UX Pro Max | creativity-maxxing | Natural language — asks about UI, design, layouts, interfaces | "Build me a dashboard with a sidebar" |
154154
| Taste Skill (8 variants) | creativity-maxxing | Natural language — anything frontend/design. Stops generic AI "slop" output. Name a variant to force it: "use minimalist-ui", "redesign this with high-end-visual-design" | "Build a premium landing page" · "Redesign this dashboard" |
155-
| 21st.dev Magic | creativity-maxxing | Natural language — building components, pulls from 21st.dev library | "Create a hero section with a CTA" |
156155
| Remotion | creativity-maxxing | Natural language — video, animation, motion graphics | "Make a 30-second intro video" |
157-
| YouTube Transcripts | creativity-maxxing | Natural language — paste a YouTube link and ask for the transcript | "Get the transcript of this video: https://youtube.com/..." |
158-
| IG/Social Transcription | creativity-maxxing | Natural language — paste an Instagram, TikTok, or social media link | "Transcribe this reel: https://instagram.com/reel/..." |
159156
| No-flicker mode | Step 3 | Automatic — fullscreen rendering, no screen jumping while Claude works | (always on — set via environment variable) |
160157
| Memory auto-save hook | Step 3 | Automatic on session end — saves context from the conversation to memory | (no prompt needed — runs automatically) |
161158
| Notion | Step 5 | Natural language — pages, databases, knowledge management | "Search my Notion for the meeting notes" |
@@ -172,13 +169,10 @@ These activate on their own when Claude detects a relevant task via natural lang
172169
| GitHub | Step 7 | Natural language — repos, issues, PRs, code search, branches, commits | "List open PRs on cli-maxxing" · "Search my repos for any file that uses MORGEN_API_KEY" |
173170
| Obsidian | 2ndBrain-mogging | Natural language — read/write/search a local Obsidian vault (set up via [lorecraft-io/2ndBrain-mogging](https://github.com/lorecraft-io/2ndBrain-mogging)) | "Search my vault for notes about machine learning" |
174171
| Canva | Add-on | Natural language — create or edit designs, social posts, presentations | "Design a social media post for our launch" |
175-
| Figma | Add-on | Natural language or paste a Figma URL — design-to-code, inspect designs | "Turn this Figma into React components" |
176-
| Excalidraw | Add-on | Natural language — diagrams, flowcharts, whiteboard sketches | "Draw a system architecture diagram" |
177-
| Gamma | Add-on | Natural language — presentations, documents, webpages | "Create a pitch deck for my startup" |
178172

179173
> **Key distinction:** Slash commands (`/fswarm`, `/fswarm1``/fswarmmax`, `/fmini`, `/fmini1``/fminimax`, `/fhive`, `/w4w`, `/safetycheck`, `/gitfix`, plus the 2ndBrain-mogging `/save`, `/wiki`, `/challenge`, `/emerge`, `/backfill`, `/aliases`, `/autoresearch`, `/canvas`, `/tether`, `/connect`) require you to type the command. Everything in this table works by just talking to Claude naturally.
180174
>
181-
> **Add-on tools** (Canva, Figma, Excalidraw, Gamma) are not part of the step-by-step setup — they're optional MCP servers you can connect separately. Claude auto-detects them when they're installed.
175+
> **Add-on tools** (Canva) are not part of the step-by-step setup — they're optional MCP servers you can connect separately. Claude auto-detects them when they're installed. Figma, Excalidraw, and Gamma live in [creativity-maxxing](https://github.com/lorecraft-io/creativity-maxxing).
182176
183177
---
184178

README-SECTIONS/cheat-sheet.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -120,10 +120,7 @@ These activate on their own when Claude detects a relevant task via natural lang
120120
|------|-------------|-----------------|----------------|
121121
| UI/UX Pro Max | creativity-maxxing | Natural language — asks about UI, design, layouts, interfaces | "Build me a dashboard with a sidebar" |
122122
| Taste Skill (8 variants) | creativity-maxxing | Natural language — anything frontend/design. Stops generic AI "slop" output. Name a variant to force it: "use minimalist-ui", "redesign this with industrial-brutalist-ui" | "Build a premium landing page" · "Redesign this dashboard" |
123-
| 21st.dev Magic | creativity-maxxing | Natural language — building components, pulls from 21st.dev library | "Create a hero section with a CTA" |
124123
| Remotion | creativity-maxxing | Natural language — video, animation, motion graphics | "Make a 30-second intro video" |
125-
| YouTube Transcripts | creativity-maxxing | Natural language — paste a YouTube link and ask for the transcript | "Get the transcript of this video: https://youtube.com/..." |
126-
| IG/Social Transcription | creativity-maxxing | Natural language — paste an Instagram, TikTok, or social media link | "Transcribe this reel: https://instagram.com/reel/..." |
127124
| Notion | Step 5 | Natural language — pages, databases, knowledge management | "Search my Notion for the meeting notes" |
128125
| Granola | Step 5 | Natural language — meeting transcripts and notes | "What did we cover in my last meeting?" |
129126
| n8n (your own) | Step 5 | Natural language — trigger and inspect your own n8n workflows | "Run my lead-qualification workflow on this email" |
@@ -140,13 +137,10 @@ These activate on their own when Claude detects a relevant task via natural lang
140137
| No-Flicker Mode | Step 3 | Automatic — fullscreen rendering, no screen jumping while Claude works | (always on — set via environment variable) |
141138
| Memory Hook | Step 3 | Automatic on session end — saves context from the conversation | (no prompt needed — runs automatically) |
142139
| Canva | Add-on | Natural language — create or edit designs, social posts, presentations | "Design a social media post for our launch" |
143-
| Figma | Add-on | Natural language or paste a Figma URL — design-to-code, inspect designs | "Turn this Figma into React components" |
144-
| Excalidraw | Add-on | Natural language — diagrams, flowcharts, whiteboard sketches | "Draw a system architecture diagram" |
145-
| Gamma | Add-on | Natural language — presentations, documents, webpages | "Create a pitch deck for my startup" |
146140

147141
> **Key distinction:** Slash commands (`/fswarm`, `/fswarm1``/fswarmmax`, `/fmini`, `/fmini1``/fminimax`, `/fhive`, `/w4w`, `/safetycheck`, `/gitfix`) require you to type the command. Everything in this table works by just talking to Claude naturally.
148142
>
149-
> **Add-on tools** (Canva, Figma, Excalidraw, Gamma) are not part of the step-by-step setup — they're optional MCP servers you can connect separately. Claude auto-detects them when they're installed.
143+
> **Add-on tools** (Canva) are not part of the step-by-step setup — they're optional MCP servers you can connect separately. Claude auto-detects them when they're installed. Figma, Excalidraw, and Gamma live in [creativity-maxxing](https://github.com/lorecraft-io/creativity-maxxing).
150144
151145
---
152146

README-SECTIONS/mcp-setup.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Claude Code connects to MCP (Model Context Protocol) servers for extended capabi
44

55
- **Step 4 (FidgetFlo)** — adds the FidgetFlo MCP server automatically. This gives Claude its multi-agent orchestration, swarm tools, and persistent memory.
66
- **Step 5 (Productivity Tools)** — interactive menu, pick what you use: Notion, Granola, n8n, Google Calendar, Morgen (recommended), Motion Calendar, Playwright, SwiftKit, Superhuman, Google Drive. All optional, all wired automatically when you select them.
7-
- **Step 7 (GitHub)** — adds the GitHub MCP server (requires a Personal Access Token). Gives Claude access to repos, issues, PRs, and code search. Also installs the `/gitfix` skill for full-repo doc sync.
7+
- **Step 7 (GitHub)**installs the GitHub CLI (`gh` terminal binary, no credentials required — run `gh auth login` once after install) and adds the GitHub MCP server (requires a Personal Access Token). Together they give Claude access to repos, issues, PRs, and code search via both the `gh` binary in Bash and direct tool calls. Also installs the `/gitfix` skill for full-repo doc sync.
88

99
For manual MCP setup or troubleshooting, see the [Claude Code MCP documentation](https://docs.anthropic.com/en/docs/claude-code/mcp-servers).
1010

README-SECTIONS/step-ordering.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Run the steps in this order:
1010
| 4 | FidgetFlo | Multi-agent orchestration — swarms, hives, persistent memory, Opus-locked |
1111
| 5 | Productivity Tools | Notion + Granola + n8n + Google Calendar + Morgen + Motion Calendar + Playwright + SwiftKit + Superhuman + Google Drive (all optional — pick what you use; Morgen recommended) |
1212
| 6 | Telegram | Telegram bot setup — message Claude from your phone. Press Enter to skip if you don't have a bot yet. |
13-
| 7 | GitHub | GitHub MCP (repos, issues, PRs, code search — requires PAT) + `/gitfix` skill for full-repo doc sync |
13+
| 7 | GitHub | GitHub CLI (`gh`) + GitHub MCP (repos, issues, PRs, code search — MCP requires PAT) + `/gitfix` skill for full-repo doc sync |
1414
| 8 | Safety Check | Security auditing — 8 API checks + 12 MCP checks for tool poisoning, DNS rebinding, supply chain attacks |
1515
| **Final** | **Status Line** | **Status indicators + system health check** |
1616

README.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,6 @@ Claude runs the install. If it asks you to restart your terminal, close the wind
322322
| pdftotext | Extracts text from PDFs. |
323323
| jq | Reads and edits JSON config files. |
324324
| ripgrep | Fast code search — Claude Code uses it internally. |
325-
| GitHub CLI | Manage GitHub from your terminal. |
326325
| tree | Shows your folder structure visually. |
327326
| fzf | Fuzzy-finder for files and commands. |
328327
| wget | Downloads files from the web. |
@@ -529,9 +528,10 @@ Open a new terminal and run `ctg` to launch Claude with Telegram connected. Insi
529528
530529
[Back to top](#quick-navigation)
531530
532-
The GitHub bundle — optional, for devs. Installs two things:
531+
The GitHub bundle — optional, for devs. Installs three things:
533532
534-
- **GitHub MCP** ([`@modelcontextprotocol/server-github`](https://github.com/modelcontextprotocol/servers/tree/main/src/github)) — Claude gets direct access to your repos: issues, PRs, files, code search, branches, commits. *"List open PRs on cli-maxxing"*, *"search my repos for any file that uses MORGEN_API_KEY"* — it just works.
533+
- **GitHub CLI (`gh`)** — the terminal binary. Claude shells out to it via Bash for everyday ops (`gh pr create`, `gh issue list`, `gh repo view`). Installs unconditionally — no credentials required. Run `gh auth login` once after install to sign in.
534+
- **GitHub MCP** ([`@modelcontextprotocol/server-github`](https://github.com/modelcontextprotocol/servers/tree/main/src/github)) — Claude gets direct tool-call access to your repos: issues, PRs, files, code search, branches, commits. *"List open PRs on cli-maxxing"*, *"search my repos for any file that uses MORGEN_API_KEY"* — it just works. Requires a Personal Access Token.
535535
- **`/gitfix` skill** — full-repo doc sync. Reads every install script, skill file, and doc, finds drift between code and docs, fixes it. Run it after any significant change so the README stops lying.
536536
537537
### Before You Run It
@@ -555,7 +555,8 @@ Script prompts for your PAT, registers the GitHub MCP (token stored in `~/.claud
555555
556556
| Component | What it does |
557557
|-----------|-------------|
558-
| GitHub MCP | Exposes GitHub API ops as Claude tools — read/write repos, issues, PRs, code search, branches, commits. |
558+
| GitHub CLI (`gh`) | Terminal binary. Claude uses it via Bash for PRs, issues, code search, branch ops. Run `gh auth login` once after install. |
559+
| GitHub MCP | Exposes GitHub API ops as Claude tools — read/write repos, issues, PRs, code search, branches, commits. Needs a Personal Access Token. |
559560
| `/gitfix` skill | Full-repo doc sync. Fixes drift between code and docs. Works on any repo, no token needed. |
560561
561562
### After Step 7
@@ -861,7 +862,7 @@ Run the steps in this order:
861862
| 4 | FidgetFlo | Multi-agent orchestration — swarms, hives, persistent memory, Opus-locked |
862863
| 5 | Productivity Tools | Notion + Granola + n8n + Google Calendar + Morgen + Motion Calendar + Playwright + SwiftKit + Superhuman + Google Drive (all optional — pick what you use; Morgen recommended) |
863864
| 6 | Telegram | Telegram bot setup — message Claude from your phone. Press Enter to skip if you don't have a bot yet. |
864-
| 7 | GitHub | GitHub MCP (repos, issues, PRs, code search — requires PAT) + `/gitfix` skill for full-repo doc sync |
865+
| 7 | GitHub | GitHub CLI (`gh`) + GitHub MCP (repos, issues, PRs, code search — MCP requires PAT) + `/gitfix` skill for full-repo doc sync |
865866
| 8 | Safety Check | Security auditing — 8 API checks + 12 MCP checks for tool poisoning, DNS rebinding, supply chain attacks |
866867
| **Final** | **Status Line** | **Status indicators + system health check** |
867868
@@ -897,7 +898,7 @@ One script reverses the whole stack. Your Obsidian vault, notes, and Claude acco
897898
> bash <(curl -fsSL https://raw.githubusercontent.com/lorecraft-io/cli-maxxing/main/uninstall.sh)
898899
> ```
899900
900-
Removes the cli-maxxing aliases (`cskip`, `cc`, `ccr`, `ccc`), the `ctg` script, all MCPs this setup installed, all FidgetFlo skills + `/w4w` + `/safetycheck` + `/gitfix`, dev tools, Whisper models, Arc Browser, and the Ghostty config. `cbrain` and `cbraintg` are managed by [2ndBrain-mogging](https://github.com/lorecraft-io/2ndBrain-mogging) and are not touched here.
901+
Removes the cli-maxxing aliases (`cskip`, `cc`, `ccr`, `ccc`), the `ctg` script, all MCPs this setup installed, all FidgetFlo skills + `/w4w` + `/safetycheck` + `/gitfix`, dev tools, Arc Browser, and the Ghostty config. `cbrain` and `cbraintg` are managed by [2ndBrain-mogging](https://github.com/lorecraft-io/2ndBrain-mogging) and are not touched here. The YouTube / Instagram transcription stack (yt-dlp, whisper-mcp, ffmpeg, Whisper models) lives in [creativity-maxxing](https://github.com/lorecraft-io/creativity-maxxing) — run its uninstaller separately if you installed it.
901902
902903
**Keeps:** Homebrew, Git, Node.js, Claude Code itself, your Obsidian vault + notes, your Claude account — general-purpose tools + your data. The script prints manual-removal commands at the end if you want a fully clean machine.
903904
@@ -907,8 +908,8 @@ Removes the cli-maxxing aliases (`cskip`, `cc`, `ccr`, `ccc`), the `ctg` script,
907908
- Claude Code shell aliases (`cskip`, `cc`, `ccr`, `ccc`) and the `ctg` script (`~/.local/bin/ctg`). `cbrain` and `cbraintg` are managed by 2ndBrain-mogging — not removed here.
908909
- All MCPs installed by this repo: FidgetFlo, Notion, Granola, n8n, Google Calendar, Morgen, Motion Calendar, Playwright, SwiftKit, Superhuman, Google Drive, GitHub — design + media MCPs are managed by [creativity-maxxing](https://github.com/lorecraft-io/creativity-maxxing); Obsidian is managed by [2ndBrain-mogging](https://github.com/lorecraft-io/2ndBrain-mogging)
909910
- All skills: `fswarm*`, `fmini*`, `fhive`, `w4w`, `gitfix`, `safetycheck` — UI/UX Pro Max + Taste Skill pack + Remotion are managed by creativity-maxxing
910-
- Dev tools: pandoc, jq, ripgrep, gh, tree, fzf, wget, weasyprint, ffmpeg, xlsx2csv, poppler
911-
- Whisper models (`~/.whisper/`)
911+
- Dev tools: pandoc, jq, ripgrep, tree, fzf, wget, weasyprint, ffmpeg, xlsx2csv, poppler
912+
- GitHub CLI (`gh` — installed by Step 7 alongside the GitHub MCP + /gitfix skill)
912913
- Motion Calendar config (`~/.motion-mcp/`)
913914
- Google Calendar config (`~/.google-calendar-mcp/`)
914915
- Arc Browser (if installed via Step 2)

step-2/step-2-install.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ echo -e "${YELLOW}━━━━━━━━━━━━━━━━━━━━
4141
echo -e "${YELLOW} NEXT: Continue to Step 3${NC}"
4242
echo -e "${YELLOW}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
4343
echo ""
44-
echo " Run Step 3 to install developer tools (Python, jq, ripgrep, gh, etc.):"
44+
echo " Run Step 3 to install developer tools (Python, jq, ripgrep, tree, fzf, etc.):"
4545
echo ""
4646
echo -e " ${GREEN}bash <(curl -fsSL https://raw.githubusercontent.com/lorecraft-io/cli-maxxing/main/step-3/step-3-install.sh)${NC}"
4747
echo ""

step-3/step-3-install.sh

Lines changed: 3 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ set -uo pipefail
33

44
# =============================================================================
55
# Step 3 — Developer & Utility Tools
6-
# Installs: Python, Pandoc, xlsx2csv, pdftotext, jq, ripgrep, gh, tree, fzf, wget, weasyprint
6+
# Installs: Python, Pandoc, xlsx2csv, pdftotext, jq, ripgrep, tree, fzf, wget, weasyprint
7+
# GitHub CLI (gh) is installed by Step 7 alongside the GitHub MCP + /gitfix skill.
78
# Run this in your terminal after completing Step 2
89
# Usage: curl -fsSL <hosted-url>/step-3/step-3-install.sh | bash
910
# =============================================================================
@@ -313,39 +314,6 @@ install_ripgrep() {
313314
command -v rg &>/dev/null && success "ripgrep installed ($(rg --version | head -1))"
314315
}
315316

316-
# -----------------------------------------------------------------------------
317-
# GitHub CLI
318-
# -----------------------------------------------------------------------------
319-
install_gh() {
320-
if command -v gh &>/dev/null; then
321-
success "GitHub CLI already installed ($(gh --version | head -1))"
322-
return
323-
fi
324-
325-
info "Installing GitHub CLI..."
326-
if [ "$OS" = "mac" ]; then
327-
brew install gh || { soft_fail "GitHub CLI installation failed"; return; }
328-
else
329-
if command -v apt-get &>/dev/null; then
330-
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg 2>/dev/null
331-
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
332-
if sudo apt-get update -qq && sudo apt-get install -y -qq gh; then
333-
:
334-
else
335-
soft_fail "GitHub CLI installation failed"
336-
return
337-
fi
338-
elif command -v dnf &>/dev/null; then
339-
sudo dnf install -y gh || { soft_fail "GitHub CLI installation failed"; return; }
340-
else
341-
soft_fail "Could not install GitHub CLI — install manually: https://cli.github.com"
342-
return
343-
fi
344-
fi
345-
346-
command -v gh &>/dev/null && success "GitHub CLI installed ($(gh --version | head -1))"
347-
}
348-
349317
# -----------------------------------------------------------------------------
350318
# tree
351319
# -----------------------------------------------------------------------------
@@ -473,7 +441,6 @@ run_self_test() {
473441
"pdftotext:pdftotext" \
474442
"jq:jq" \
475443
"rg:ripgrep" \
476-
"gh:GitHub CLI" \
477444
"tree:tree" \
478445
"fzf:fzf" \
479446
"wget:wget" \
@@ -638,7 +605,6 @@ print_summary() {
638605
echo " pdftotext $(command -v pdftotext &>/dev/null && echo 'installed' || echo '')"
639606
echo " jq $(jq --version 2>/dev/null || echo '')"
640607
echo " ripgrep $(rg --version 2>/dev/null | head -1 || echo '')"
641-
echo " GitHub CLI $(gh --version 2>/dev/null | head -1 || echo '')"
642608
echo " tree $(command -v tree &>/dev/null && echo 'installed' || echo '')"
643609
echo " fzf $(fzf --version 2>/dev/null | cut -d' ' -f1 || echo '')"
644610
echo " wget $(command -v wget &>/dev/null && echo 'installed' || echo '')"
@@ -679,7 +645,7 @@ main() {
679645
echo ""
680646
echo -e "${BLUE}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
681647
echo -e "${BLUE} Step 3 — Developer & Utility Tools${NC}"
682-
echo -e "${BLUE} 11 tools • macOS + Linux${NC}"
648+
echo -e "${BLUE} 10 tools • macOS + Linux${NC}"
683649
echo -e "${BLUE}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
684650
echo ""
685651

@@ -692,7 +658,6 @@ main() {
692658
install_pdftotext
693659
install_jq
694660
install_ripgrep
695-
install_gh
696661
install_tree
697662
install_fzf
698663
install_wget

0 commit comments

Comments
 (0)