### Install Git LFS System Hooks Source: https://context7.com/posquit0/dotfiles/llms.txt Installs Git LFS hooks into the system-level git configuration. This script should be run once after dotfiles are applied. ```bash #!/bin/bash set -eufo pipefail git lfs install --system ``` -------------------------------- ### Install Vim Plugins Headlessly Source: https://context7.com/posquit0/dotfiles/llms.txt Installs vim-plug plugins headlessly for Vim. This script re-runs when the Vim config directory modification time changes. ```bash #!/bin/bash set -eufo pipefail # Modified Date: vi +PlugInstall +qall now ``` -------------------------------- ### Local Bootstrap with Chezmoi Installer Source: https://context7.com/posquit0/dotfiles/llms.txt Clones the dotfiles repository and runs the bundled installer script. This script auto-installs chezmoi if absent and then applies the configuration from the local source directory. ```sh # Clone the repository git clone --recurse-submodules https://github.com/posquit0/dotfiles.git ~/dotfiles # Run the bundled installer (downloads chezmoi if not found, then runs chezmoi init --apply) cd ~/dotfiles && ./install.sh # Expected output: # [!] Installing chezmoi to '/Users/you/.local/bin/chezmoi' # Running 'chezmoi init --apply --source=/Users/you/dotfiles' ``` -------------------------------- ### Install Node.js via Volta Source: https://context7.com/posquit0/dotfiles/llms.txt Installs the latest Node.js using the Volta version manager. This script runs whenever the Volta tool list changes. ```bash #!/bin/bash set -eufo pipefail if which volta > /dev/null; then volta install node # Template outputs current volta list at apply time: # "node@22.3.0 (current @ /Users/you/dotfiles/.node-version)." else echo "[!] The version manager for Node.js 'volta' - Not Found!" fi ``` -------------------------------- ### Initialize and Apply Dotfiles with Chezmoi Source: https://github.com/posquit0/dotfiles/blob/main/README.md Use this command to initialize chezmoi and apply your dotfiles from a GitHub repository. Ensure you have chezmoi installed. ```sh $ chezmoi init --apply https://github.com/posquit0/dotfiles.git ``` -------------------------------- ### Install Terraform via tfswitch Source: https://context7.com/posquit0/dotfiles/llms.txt Installs the latest stable Terraform release using tfswitch. This script runs whenever the script content changes. ```bash #!/bin/bash set -eufo pipefail if which tfswitch > /dev/null; then tfswitch -u # -u = install latest # Template embeds the resolved version string at apply time fi ``` -------------------------------- ### Remote Bootstrap with Chezmoi Source: https://context7.com/posquit0/dotfiles/llms.txt Initializes chezmoi from a remote repository and applies all dotfiles and scripts in a single step. Installs chezmoi if it's not already present. ```sh # Remote bootstrap — installs chezmoi if missing, then applies the full configuration chezmoi init --apply https://github.com/posquit0/dotfiles.git ``` -------------------------------- ### Install GPG on macOS using Homebrew Source: https://context7.com/posquit0/dotfiles/llms.txt Installs GPG via Homebrew if it's not already present. This script is intended to run once before other files are applied. ```bash #!/bin/bash set -eufo pipefail if which gpg > /dev/null; then echo "[!] 'gpg' is already installed. Skip installation." else brew install gnupg echo "[+] Successfully installed 'gpg'." fi ``` -------------------------------- ### Install Ruby via rbenv Source: https://context7.com/posquit0/dotfiles/llms.txt Installs a pinned Ruby version (3.2.2) and sets it as the global default using rbenv. This script runs whenever the template variable changes. ```bash #!/bin/bash set -eufo pipefail # Ruby version is hardcoded in the template variable # {{- $rubyVersion := "3.2.2" }} if which rbenv > /dev/null; then rbenv install -s 3.2.2 # -s = skip if already installed rbenv global 3.2.2 echo "[+] Successfully installed 'ruby' 3.2.2." fi ``` -------------------------------- ### Playwright MCP Server Configuration Source: https://context7.com/posquit0/dotfiles/llms.txt Configures the Playwright MCP server for AI agent browser automation. It specifies a headless Chromium browser with a 1280x720 viewport and enables features like tabs, PDF generation, vision, and installation. ```json { "chromium": { "headless": true, "args": [ "--disable-gpu", "--no-sandbox", "--disable-dev-shm-usage" ], "viewport": { "width": 1280, "height": 720 } }, "playwright": { "enableTabs": true, "enablePdf": true, "enableVision": true, "enableInstall": true } } ``` -------------------------------- ### Get Git Status Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/security-review.md Retrieves the current status of the Git repository to understand staged and unstaged changes. ```Bash `git status` ``` -------------------------------- ### LazyGit Custom Command for AI Commit Message Source: https://context7.com/posquit0/dotfiles/llms.txt Configures LazyGit to use an AI model (Claude) for generating commit messages in conventional commit format. Requires Claude CLI and delta diff viewer to be installed. ```yaml git: pagers: - colorArg: always pager: delta --dark --paging=never gui: nerdFontsVersion: "3" customCommands: - key: context: files command: >- msg=$(git diff --staged | claude -p "You are a commit message generator. Output ONLY the commit message itself, nothing else. No explanation, no markdown fences, no preamble. Use conventional commit format. Keep the subject line under 72 chars. If needed, add a blank line then bullet-point body." --output-format text); git commit -e -m "$msg" description: 'AI commit message' loadingText: 'Generating commit message...' output: terminal ``` -------------------------------- ### Playwright Capabilities Configuration Source: https://context7.com/posquit0/dotfiles/llms.txt Defines the capabilities enabled for Playwright, such as tab management, browser installation, PDF generation, and vision-based interactions. Ensure these capabilities are listed here if you intend to use them in your automation scripts. ```yaml capabilities: - tabs # tab management - install # browser installation - pdf # PDF generation - vision # coordinate-based interactions ``` -------------------------------- ### Get Full Diff Content Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/security-review.md Retrieves the complete diff content between the current branch and its merge base with origin/HEAD. This is crucial for reviewing all code changes in a pull request. ```Bash `git diff --merge-base origin/HEAD` ``` -------------------------------- ### Configure macOS System Defaults Source: https://context7.com/posquit0/dotfiles/llms.txt Applies a curated set of `defaults write` commands for General, Finder, Dock, Mission Control, Menu Bar, Keyboard, and Trackpad. Re-runs whenever the script content changes. ```bash #!/bin/bash set -eufo pipefail # --- General --- defaults write NSGlobalDomain NSAutomaticSpellingCorrectionEnabled -bool false defaults write NSGlobalDomain NSAutomaticCapitalizationEnabled -bool false defaults write NSGlobalDomain NSAutomaticQuoteSubstitutionEnabled -bool false # --- Finder --- defaults write NSGlobalDomain AppleShowAllExtensions -bool true defaults write com.apple.finder AppleShowAllFiles -bool true defaults write com.apple.finder ShowStatusBar -bool true defaults write com.apple.finder FXPreferredViewStyle -string "Nlsv" defaults write com.apple.finder _FXSortFoldersFirst -bool true # --- Dock --- defaults write com.apple.dock orientation left defaults write com.apple.dock autohide -int 1 defaults write com.apple.dock autohide-time-modifier -float "0.4" defaults write com.apple.dock tilesize -int 26 defaults write com.apple.dock minimize-to-application -bool true defaults write com.apple.dock mineffect -string suck # --- Keyboard --- defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool true defaults write NSGlobalDomain com.apple.keyboard.fnState -bool true # --- Trackpad --- defaults write com.apple.AppleMultitouchTrackpad Clicking -bool true defaults write com.apple.AppleMultitouchTrackpad TrackpadThreeFingerDrag -bool true # Restart affected processes for app in "Dock" "Finder" "SystemUIServer"; do killall ${app} &>/dev/null done ``` -------------------------------- ### Detect Machine Type using chezmoi Template Source: https://context7.com/posquit0/dotfiles/llms.txt Classifies the current host as 'laptop', 'desktop', or 'virtual'. Detects macOS hardware and Linux chassis types, including GitHub Codespaces. ```go-template {{/* .chezmoitemplates/machine-type */}} {{- $machineType := "desktop" }} {{- $is_codespaces := env "CODESPACES" | not | not }} {{- if eq .chezmoi.os "darwin" }} {{- if contains "MacBook" (output "/usr/sbin/system_profiler" "SPHardwareDataType") }} {{- $machineType = "laptop" }} {{- else }} {{- $machineType = "desktop" }} {{- end }} {{- else if eq .chezmoi.os "linux" }} {{- if $is_codespaces }} {{- $machineType = "virtual" }} {{- else }} {{- $machineType = (output "hostnamectl" "--json=short" | mustFromJson).Chassis }} {{- end }} {{- end }} [data.machine] type = {{ $machineType | quote }} ``` -------------------------------- ### Gemini CLI Settings Source: https://context7.com/posquit0/dotfiles/llms.txt Configures the Google Gemini CLI with OAuth authentication, Neovim as the preferred editor, recursive file search, and local OTLP telemetry export. It also specifies the shared MCP server registry. ```yaml # Source data: private_dot_gemini/.chezmoidata/settings.yaml gemini: selectedAuthType: "oauth-personal" preferredEditor: "neovim" theme: "GitHub" contextFileName: "GEMINI.md" fileFiltering: enableRecursiveFileSearch: true respectGitIgnore: true telemetry: enabled: true target: "local" otlpEndpoint: "http://localhost:4317" logPrompts: true usageStatisticsEnabled: false # MCP servers are merged in via the template: # {{ .gemini | setValueAtPath "mcpServers" .mcp_servers | toPrettyJson }} ``` -------------------------------- ### Kiro AI CLI Configuration Source: https://context7.com/posquit0/dotfiles/llms.txt Sets up the Kiro AI CLI with Claude Opus as the default model, delta as the diff viewer, and enables experimental features and MCP server injection. Telemetry is also configured. ```yaml # Source data: private_dot_kiro/.chezmoidata/cli.yaml kiro: chat.defaultModel: claude-opus4.6 chat.diffTool: delta chat.editMode: true chat.enableNotifications: true chat.enableContextUsageIndicator: true chat.enableThinking: true # extended thinking (experimental) chat.enableTodoList: true mcp.initTimeout: 10 mcp.noInteractiveTimeout: 5 telemetry.enabled: true codeWhisperer.shareCodeWhispererContentWithAWS: false ``` -------------------------------- ### Download GitHub Release Binary Source: https://context7.com/posquit0/dotfiles/llms.txt Fetches a platform-appropriate binary from a GitHub release page using chezmoi's gitHubLatestReleaseAssetURL function. The downloaded asset is configured to be executable. ```yaml # .chezmoiexternals/github-release-assets.yaml ".local/bin/git-credential-gopass": type: archive-file # Template resolves to e.g.: # https://github.com/gopasspw/git-credential-gopass/releases/download/v1.15.0/git-credential-gopass-v1.15.0-darwin-arm64.tar.gz url: '{{ gitHubLatestReleaseAssetURL "gopasspw/git-credential-gopass" (printf "git-credential-gopass-*-%s-%s.tar.gz" .chezmoi.os .chezmoi.arch) | quote }}' executable: true path: git-credential-gopass ``` -------------------------------- ### Fetch README.md SHA and Content Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/create-github-pr-for-copyright-period-update.md Retrieves the SHA and base64-encoded content of a README.md file from a GitHub repository. It's crucial to decode the content after removing newline characters. ```bash README_SHA=$(gh api repos/$ORG/$REPO --jq '.sha') README_B64=$(gh api repos/$ORG/$REPO/contents/README.md --jq '.content') README_CONTENT=$(echo "$README_B64" | tr -d '\n' | base64 -d) ``` -------------------------------- ### GitHub Release Helper Script Source: https://context7.com/posquit0/dotfiles/llms.txt A bash script that automates the process of creating a Git tag, pushing it to the remote, and generating a GitHub Release with notes. ```bash # Usage: ghrelease # Example: ./scripts/ghrelease v1.2.3 # Internally runs: git push origin main git tag v1.2.3 git push origin v1.2.3 gh release create v1.2.3 --generate-notes # Expected output: # [!] Pushing 'main' branch to the remote repository. # [!] Creating Git tag 'v1.2.3'. # [!] Pushing 'v1.2.3' Git tag to the remote repository. # [!] Creating GitHub Release with 'v1.2.3' Git tag. # https://github.com/posquit0/dotfiles/releases/tag/v1.2.3 ``` -------------------------------- ### Starship Prompt Configuration Source: https://context7.com/posquit0/dotfiles/llms.txt TOML configuration for the Starship prompt, customizing its appearance, including AWS and Kubernetes context display, directory path truncation, and language version modules. ```toml # ~/.config/starship.toml (rendered from private_dot_config/starship.toml) add_newline = true scan_timeout = 30 # ms command_timeout = 500 # ms format = "$all$username$character" right_format = "$aws$kubernetes" [character] success_symbol = "[❯](bold green)" [directory] fish_style_pwd_dir_length = 1 truncation_length = 2 truncation_symbol = ".../" truncate_to_repo = false [aws] symbol = " " style = "bold 208" format = ' [$symbol($profile )(\'$region\')]$style)' [aws.region_aliases] us-east-1 = "use1" eu-west-1 = "euw1" ap-northeast-1 = "apne1" [kubernetes] disabled = false symbol = "󱃾 " style = "bold 63" format = ' [$symbol$context]($style)' [terraform] disabled = false detect_extensions = ["tf", "tfplan", "tfstate"] symbol = "󱁢 " format = 'via [$symbol$workspace]($style) ' ``` -------------------------------- ### Main Chezmoi Configuration Template Source: https://context7.com/posquit0/dotfiles/llms.txt Defines global chezmoi behavior including GPG encryption, diff pager, merge tool, and git auto-add. This Go template includes sub-templates for system information. ```toml # .chezmoi.toml.tmpl — rendered to ~/.config/chezmoi/chezmoi.toml at init time encryption = "gpg" [gpg] args = ["--quiet"] recipient = "74F3F6BE2D0EC4E8D00AFD490E44F71854180758" suffix = ".asc" # encrypted files carry this extension [git] autoAdd = true # stage changes in the source dir automatically autoCommit = false format = "json" # chezmoi data output format mode = "file" # write regular files (not symlinks) to target [diff] pager = "delta --side-by-side" [merge] command = "nvim" args = ["-d", "{{ .Destination }}", "{{ .Source }}", "{{ .Target }}"] [update] recurseSubmodules = true ``` -------------------------------- ### Sync Neovim Plugins Headlessly Source: https://context7.com/posquit0/dotfiles/llms.txt Performs a headless Lazy.nvim plugin sync for Neovim. This script re-runs when the Neovim config directory modification time changes. ```bash #!/bin/bash set -eufo pipefail # Template embeds the mtime of ~/.config/nvim at apply time to detect changes: # Modified Date: 2024-11-01 10:22:00.123456 +0900 KST vim --headless "+Lazy! sync" +qa ``` -------------------------------- ### CPU Detection Template for Chezmoi Source: https://context7.com/posquit0/dotfiles/llms.txt Detects physical CPU cores and logical threads across macOS, Linux, and Windows. Exposes this information as `data.cpu.cores` and `data.cpu.threads` for use in other templates. ```go-template {{/* .chezmoitemplates/cpu — included in .chezmoi.toml.tmpl via includeTemplate "cpu" . */}} {{- $cpuCores := 1 }} {{- $cpuThreads := 1 }} {{- if eq .chezmoi.os "darwin" }} {{- $cpuCores = (output "sysctl" "-n" "hw.physicalcpu_max") | trim | atoi }} {{- $cpuThreads = (output "sysctl" "-n" "hw.logicalcpu_max") | trim | atoi }} {{- else if eq .chezmoi.os "linux" }} {{- $cpuCores = (output "sh" "-c" "lscpu --online --parse | grep --invert-match '^#' | sort --field-separator=',' --key='2,4' --unique | wc --lines") | trim | atoi }} {{- $cpuThreads = (output "sh" "-c" "lscpu --online --parse | grep --invert-match '^#' | wc --lines") | trim | atoi }} {{- else if eq .chezmoi.os "windows" }} {{- $cpuCores = (output "powershell.exe" "-NoProfile" "-NonInteractive" "-Command" "(Get-CimInstance -ClassName 'Win32_Processor').NumberOfCores") | trim | atoi }} {{- $cpuThreads = (output "powershell.exe" "-NoProfile" "-NonInteractive" "-Command" "(Get-CimInstance -ClassName 'Win32_Processor').NumberOfLogicalProcessors") | trim | atoi }} {{- end }} [data.cpu] cores = {{ $cpuCores }} threads = {{ $cpuThreads }} ``` -------------------------------- ### K9s Hotkeys for Kubernetes Resources Source: https://context7.com/posquit0/dotfiles/llms.txt Defines quick-navigation hotkeys within k9s for common Kubernetes resource types, allowing for faster access to pods, deployments, statefulsets, and more. ```yaml # ~/.config/k9s/hotkeys.yaml hotKeys: shift-1: { command: pods, description: Viewing pods } shift-2: { command: dp, description: View deployments } shift-3: { command: statefulset, description: View statefulsets } shift-4: { command: daemonsets, description: View daemonsets } shift-5: { command: services, description: View services } shift-6: { command: ingresses, description: View ingresses } ``` -------------------------------- ### K9s Debug and Log Tailing Plugins Source: https://context7.com/posquit0/dotfiles/llms.txt Adds custom hotkeys to k9s for debugging pods using the nicolaka/netshoot container and tailing logs with stern. Supports debugging containers and provides options for log filtering. ```yaml # ~/.config/k9s/plugins.yaml plugins: debug-pod: shortCut: Shift-D scopes: [pods] command: kubectl args: [debug, -it, -n, $NAMESPACE, $NAME, --image, nicolaka/netshoot:v0.11] debug-pod-container: shortCut: Shift-D scopes: [containers] command: kubectl args: - debug - -it - -n - $NAMESPACE - $POD - --target - $NAME - --profile - netadmin - --image - nicolaka/netshoot:v0.11 - --share-processes stern: shortCut: Ctrl-L scopes: [pods] command: stern args: [--tail, 50, $FILTER, -n, $NAMESPACE, --context, $CONTEXT] ``` -------------------------------- ### Kubeswitch Configuration Source: https://context7.com/posquit0/dotfiles/llms.txt Configures kubeswitch to scan for kubeconfig files in ~/.kube, enabling fuzzy-search previews and setting the index refresh rate to hourly. Specifies zsh as the default shell. ```yaml # ~/.kube/switch-config.yaml kind: SwitchConfig version: v1alpha1 execShell: /usr/bin/zsh showPreview: true refreshIndexAfter: 1h0m0s kubeconfigStores: - kind: filesystem showPrefix: false kubeconfigName: "*.kubeconfig" paths: - ~/.kube # Usage: switch into a context switcher # or with alias (typically defined in ~/.zshrc): # ks ``` -------------------------------- ### Claude Permissions and Hooks Configuration Source: https://context7.com/posquit0/dotfiles/llms.txt Defines permissions for Claude, specifying allowed and denied Bash commands and web fetches. Includes a hook to log all Bash commands executed. ```yaml claude: cleanupPeriodDays: 30 includeCoAuthoredBy: false permissions: defaultMode: acceptEdits allow: - Bash(cat:*) - Bash(git add:*) - Bash(git commit:*) - Bash(git diff:*) - Bash(git push:*) - Bash(ls:*) - Bash(mv:*) - Bash(npm run lint) - Bash(npm run test:*) - Read(~/.zshrc) - WebFetch(domain:docs.aws.amazon.com) - WebFetch(domain:registry.terraform.io) - WebFetch(domain:developer.hashicorp.com) deny: - Bash(curl:*) # curl blocked; use WebFetch instead hooks: PreToolUse: - matcher: Bash hooks: - type: command # Appends every Bash command + description to an audit log command: "jq -r '"\(.tool_input.command) - \(.tool_input.description // "No description")"' >> ~/.claude/bash-command-log.txt" ``` -------------------------------- ### Detect GitHub Codespaces using chezmoi Template Source: https://context7.com/posquit0/dotfiles/llms.txt Detects if chezmoi is running inside a GitHub Codespace. Exposes the detection as a boolean value. ```go-template {{/* .chezmoitemplates/github-codespaces */}} {{- $is_codespaces := env "CODESPACES" | not | not }} [data.github] is_codespaces = {{ $is_codespaces }} ``` -------------------------------- ### Automate GitHub Copyright Updates with `gh` CLI Source: https://context7.com/posquit0/dotfiles/llms.txt A multi-step script using the `gh` CLI to update copyright year ranges in GitHub repository README files and create pull requests. ```bash # Step 1: list all non-archived repos gh repo list tedilabs --limit 200 --json name,isArchived \ --jq '.[] | select(.isArchived == false) | .name' # Step 2: fetch README content (handles base64 line-wrapping) README_SHA=$(gh api repos/tedilabs/my-repo/contents/README.md --jq '.sha') README_B64=$(gh api repos/tedilabs/my-repo/contents/README.md --jq '.content') README_CONTENT=$(echo "$README_B64" | tr -d '\n' | base64 -d) # Step 3: update copyright year range UPDATED=$(echo "$README_CONTENT" \ | sed -E 's/Copyright © ([0-9]{4})-[0-9]{4}/Copyright © \1-2026/g' \ | sed -E 's/Copyright © ([0-9]{4}), /Copyright © \1-2026, /g') # Step 4: create branch and commit updated README DEFAULT_BRANCH=$(gh api repos/tedilabs/my-repo --jq '.default_branch') SHA=$(gh api repos/tedilabs/my-repo/git/refs/heads/$DEFAULT_BRANCH --jq '.object.sha') BRANCH="chore/update-copyright-2026" gh api repos/tedilabs/my-repo/git/refs -X POST -f ref="refs/heads/$BRANCH" -f sha="$SHA" ENCODED=$(printf '%s' "$UPDATED" | base64) gh api repos/tedilabs/my-repo/contents/README.md -X PUT \ -f message="chore: update copyright year to 2026" \ -f "content=$ENCODED" \ -f sha="$README_SHA" \ -f branch="$BRANCH" # Step 5: open pull request gh pr create --repo tedilabs/my-repo \ --title "chore: update copyright year to 2026" \ --body "Update copyright year to 2026 in README.md." \ --base "$DEFAULT_BRANCH" \ --head "$BRANCH" ``` -------------------------------- ### Create New Branch from Default Branch Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/create-github-pr-for-copyright-period-update.md Creates a new branch for copyright updates, branching off the repository's default branch. It first retrieves the SHA of the default branch's head. ```bash DEFAULT_BRANCH=$(gh api repos/$ORG/$REPO --jq '.default_branch') SHA=$(gh api repos/$ORG/$REPO/git/refs/heads/$DEFAULT_BRANCH --jq '.object.sha') gh api repos/$ORG/$REPO/git/refs -f ref="refs/heads/$BRANCH" -f sha="$SHA" 2>/dev/null || true ``` -------------------------------- ### Create Pull Request for Copyright Update Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/create-github-pr-for-copyright-period-update.md Creates a pull request from a newly created branch to the default branch. This command can also retrieve an existing PR's URL if one already exists for the branch. ```bash gh pr create --repo $ORG/$REPO \ --title "chore: update copyright year to 2026" \ --body "Update copyright year to 2026 in README.md." \ --base "$DEFAULT_BRANCH" \ --head "$BRANCH" ``` -------------------------------- ### Playwright Browser Configuration Source: https://context7.com/posquit0/dotfiles/llms.txt Configures Playwright browser settings, including the browser name, whether to use an isolated profile, launch options like channel and headless mode, and context options such as viewport size. Use this to define the environment for browser automation. ```yaml playwright: browser: browserName: chromium isolated: true # ephemeral profile, not persisted to disk launchOptions: channel: chromium headless: true contextOptions: viewport: width: 1280 height: 720 ``` -------------------------------- ### List Non-Archived GitHub Repositories Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/create-github-pr-for-copyright-period-update.md Use this command to list all non-archived repositories within a GitHub organization. It fetches repository names and their archived status, filtering out archived ones. ```bash gh repo list $ORG --limit 200 --json name,isArchived \ --jq '.[] | select(.name | select(.isArchived == false) | .name' ``` -------------------------------- ### Merge MCP Servers into Claude JSON Config Source: https://context7.com/posquit0/dotfiles/llms.txt A chezmoi modify template that merges the shared MCP server registry into an existing JSON config file without overwriting unrelated keys. It reads the current JSON, applies the merge, and writes back the pretty-printed JSON. ```go-template {{/* modify_dot_claude.json — chezmoi reads the current ~/.claude.json, merges mcpServers, writes back */}} {{- /* chezmoi:modify-template */ -}} {{ $json := .chezmoi.stdin | default "{}" | fromJson }} {{ $json | setValueAtPath "mcpServers" .mcp_servers | toPrettyJson }} ``` -------------------------------- ### List Commits Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/security-review.md Lists commits on the current branch that are not present on origin/HEAD, without decorating the output. ```Bash `git log --no-decorate origin/HEAD...` ``` -------------------------------- ### List Modified Files Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/security-review.md Lists only the names of files that have been modified in the current branch compared to the merge base. ```Bash `git diff --name-only origin/HEAD...` ``` -------------------------------- ### Define Shared MCP Server Registry Source: https://context7.com/posquit0/dotfiles/llms.txt A single YAML data file defining configurations for various Model Context Protocol (MCP) servers. This registry is injected into AI tool configurations. ```yaml # .chezmoidata/mcp-servers.yaml mcp_servers: # AWS Knowledge base via FastMCP aws-knowledge-mcp-server: command: uvx args: [fastmcp, run, "https://knowledge-mcp.global.api.aws"] # Claude Code usage statistics ccusage: command: npx args: ["@ccusage/mcp@latest"] # Context7 — up-to-date library documentation context7: command: npx args: [-y, "@upstash/context7-mcp"] # GitHub MCP server — runs in Docker, secret injected via gopass github: command: gopass args: - env - --keep-case - env/ai-agent - docker - run - -i - --rm - -e - GITHUB_PERSONAL_ACCESS_TOKEN - ghcr.io/github/github-mcp-server # Playwright browser automation playwright: command: /bin/bash args: ["-c", "npx @playwright/mcp@latest --config=${HOME}/.playwright/config.json"] # Terraform Cloud MCP server — Docker, secret via gopass terraform: command: gopass args: - env - --keep-case - env/ai-agent - docker - run - -i - --rm - -e - TFE_TOKEN - hashicorp/terraform-mcp-server # Sequential thinking server sequential-thinking: command: npx args: [-y, "@modelcontextprotocol/server-sequential-thinking"] # Railway deployment MCP railway: command: npx args: [-y, "@railway/mcp-server"] ``` -------------------------------- ### Playwright Image Response Setting Source: https://context7.com/posquit0/dotfiles/llms.txt Sets the policy for handling image responses in Playwright. Use 'allow' to permit image responses. ```yaml imageResponses: allow ``` -------------------------------- ### Update Copyright Year Range in Content Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/create-github-pr-for-copyright-period-update.md Applies sed replacements to update copyright end years in a given text content. It handles both 'YYYY-NNNN' and 'YYYY,' formats, updating them to include the specified year. ```bash UPDATED=$(echo "$README_CONTENT" \ | sed -E 's/Copyright © ([0-9]{4})-[0-9]{4}/Copyright © \1-2026/g' \ | sed -E 's/Copyright © ([0-9]{4}), /Copyright © \1-2026, /g') ``` -------------------------------- ### Fix Touch ID Pinentry on macOS Source: https://context7.com/posquit0/dotfiles/llms.txt Wires up `pinentry-touchid` so GPG passphrase prompts use Touch ID on macOS. This script runs whenever the script content changes. ```bash #!/bin/bash set -eufo pipefail if which pinentry-touchid >/dev/null; then pinentry-touchid -fix fi ``` -------------------------------- ### Commit Updated README.md Source: https://github.com/posquit0/dotfiles/blob/main/private_dot_claude/commands/create-github-pr-for-copyright-period-update.md Commits the updated README.md file to a specified branch. The content must be base64 encoded before being sent via the GitHub API. ```bash ENCODED=$(printf '%s' "$UPDATED" | base64) gh api repos/$ORG/$REPO/contents/README.md \ -X PUT \ -f message="chore: update copyright year to 2026" \ -f "content=$ENCODED" \ -f sha="$README_SHA" \ -f branch="$BRANCH" ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.