Communitygithub.com

G1Joshi/Agent-Skills

Kompetente Zsh-Hilfe für Shell-Anpassung, Oh My Zsh-Plugins, Zinit-Paketmanager, Prompt-Engineering (Starship/Powerlevel10k) und Shell-Scripting. Nutzen Sie dies beim Konfigurieren von .zshrc, Schreiben von Zsh-Automatisierungsskripten, Optimieren der Shell-Startzeit oder Konfigurieren der Tab-Vervollständigung.

Was ist Agent-Skills?

Dieses Skill bietet umfassende Unterstützung für die Zsh-Shell, mit Schwerpunkt auf Hochleistungs-Interaktionsmodi, moderner Plugin-Ökosysteme und robuster Shell-Scripting-Praktiken. Es deckt die Konfiguration von ~/.zshrc, das Benchmarking der Startzeit, die Verwendung von Starship für Prompts und die Implementierung von Autovervollständigung und Syntaxhervorhebung ab. Besondere Aufmerksamkeit gilt der Optimierung der Startzeit unter 20 ms durch Caching von Kompilierungen und asynchrones Laden von Plugins mit Zinit. Das Skill enthält praktische Beispiele für Globbing, Parameterexpansion, Fehlerbehandlung und Best Practices für die Shell-Programmierung. Es ist ideal für Entwickler, die ihre Shell-Produktivität maximieren und eine konsistente Umgebung auf macOS und Linux aufbauen möchten.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/G1Joshi/Agent-Skills/tree/HEAD/skills/tools/zsh

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Zsh

Zsh ist die Standard-Shell auf macOS. Sie ist hochgradig anpassbar und mit Bash kompatibel.

Wann verwenden

  • Hochproduktive interaktive Shell: Interaktive Autovervollständigung, Fuzzy-Navigation, Verlaufssuche und Zweiganzeigen.
  • Modernes CLI-Plugin-Ökosystem: Beschleunigung von Shell-Workflows mit zsh-autosuggestions, zsh-syntax-highlighting und Starship-Prompt.
  • Robustes Shell-Scripting: Erstellung von POSIX-kompatiblen und Zsh-erweiterten Automatisierungsskripten mit Array-Manipulation und Globbing.
  • Enterprise-Umgebungsverwaltung: Verwalten von SDK-Versionen, PATH-Exporten und Aliasen auf macOS- und Linux-Servern.

Schnellstart

1. Minimale ~/.zshrc-Einrichtung

# Verlaufskonfiguration
HISTFILE="$HOME/.zsh_history"
HISTSIZE=50000
SAVEHIST=50000
setopt HIST_IGNORE_DUPS
setopt SHARE_HISTORY

# Tastenkombinationen (Emacs-Modus)
bindkey -e

# Autovervollständigung
autoload -Uz compinit && compinit

# Aliase
alias ll="ls -lah"
alias g="git"
alias gs="git status -sb"

2. Startzeit messen

# Zsh-Startdauer profilieren
time zsh -i -c exit

Kernkonzepte

Hochgeschwindigkeits-Zshrc (~/.zshrc)

Konfiguration einer Shell-Startzeit unter 20 ms, intelligente Vervollständigung und Verlauf:

# ~/.zshrc
# Verlaufskonfiguration
HISTFILE="$HOME/.zsh_history"
HISTSIZE=50000
SAVEHIST=50000
setopt EXTENDED_HISTORY
setopt HIST_EXPIRE_DUPS_FIRST
setopt HIST_IGNORE_DUPS
setopt HIST_IGNORE_SPACE
setopt HIST_VERIFY
setopt SHARE_HISTORY

# Verzeichnisnavigation-Optionen
setopt AUTO_CD
setopt AUTO_PUSHD
setopt PUSHD_IGNORE_DUPS
setopt PUSHD_SILENT

# Schnelles Vervollständigungssystem (mit Caching)
autoload -Uz compinit
typeset -i updated_at=$(date +'%j' -r ~/.zcompdump 2>/dev/null || stat -f '%Sm' -t '%j' ~/.zcompdump 2>/dev/null)
if [ $(date +'%j') != $updated_at ]; then
  compinit -i
else
  compinit -C -i
fi

# Moderne Tastenkombinationen: Verlaufssuche
bindkey -e
bindkey '^[[A' history-search-backward
bindkey '^[[B' history-search-forward

# Starship-Prompt initialisieren (falls installiert)
if command -v starship &> /dev/null; then
  eval "$(starship init zsh)"
fi

Leichtgewichtiges Plugin-Laden ohne schwere Frameworks

Direktes Laden von Autosuggestions und Syntaxhervorhebung:

# Plugins nach ~/.zsh/plugins/ klonen
# git clone https://github.com/zsh-users/zsh-autosuggestions ~/.zsh/plugins/zsh-autosuggestions
# git clone https://github.com/zsh-users/zsh-syntax-highlighting ~/.zsh/plugins/zsh-syntax-highlighting

source ~/.zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

# Vorschlagsfarbe konfigurieren
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=8'

Fortgeschrittenes Zsh-Globbing & Parameterexpansion

Nutzung von rekursivem Globbing und Modifikatoren:

# Alle TypeScript-Dateien auflisten, die in den letzten 24 Stunden geändert wurden
ls -lh **/*.ts(m-1)

# Alle leeren Verzeichnisse rekursiv löschen
rmdir -p **/*(/^F) 2>/dev/null

# Nur ausführbare Dateien in bin/ auswählen
chmod +x bin/*(*)

Häufige Muster

Hochgeschwindigkeits-Plugin-Laden mit Zinit

Problem: Oh My Zsh startet aufgrund von schwerem eager Loading hunderte Millisekunden.
Lösung: Verwenden Sie Zinit mit Turbo-Modus (verzögertes Laden).

# Zinit installieren, falls nicht vorhanden
source ~/.local/share/zinit/zinit.git/zinit.zsh

# Turbo-Laden von Syntaxhervorhebung und Autosuggestions asynchron
zinit wait lucid for \
  atinit"ZINIT[COMPINIT_OPTS]=-C; zicompinit; zicdreplay" \
    zdharma-continuum/fast-syntax-highlighting \
  atload"_zsh_autosuggest_start" \
    zsh-users/zsh-autosuggestions \
  blockf \
    zsh-users/zsh-completions

Robuste Shell-Scripting-Funktionen

Problem: Wiederverwendbare Shell-Funktionen mit Optionsanalyse und Fehlerbehandlung schreiben.
Lösung: Verwenden Sie standardmäßige Zsh-Parameterexpansionen.

# mkcd: Verzeichnis erstellen und hineinwechseln
mkcd() {
  if [[ -z "$1" ]]; then
    echo "Verwendung: mkcd <verz>" >&2
    return 1
  fi
  mkdir -p "$1" && cd "$1"
}

Best Practices (2026)

  • Tun: Kompilieren Sie ~/.zcompdump in eine byte-kompilierte Datei (compdump.zwc), um die Shell-Startzeit zu beschleunigen.
  • Tun: Setzen Sie setopt SHARE_HISTORY, um den Befehlsverlauf über alle aktiven Terminal-Tabs zu synchronisieren.
  • Tun: Verwenden Sie Starship oder ein schlankes natives Prompt anstelle von aufgeblähten Legacy-Prompt-Themes.
  • Tun: Profilieren Sie die Startlatenz mit zmodload zsh/zprof am Anfang und Ende der ~/.zshrc.
  • Nicht: Verwenden Sie schwere, aufgeblähte Framework-Konfigurationen (monolithische Oh-My-Zsh-Konfigurationen) mit Dutzenden unnötiger Plugins.
  • Nicht: Speichern Sie Cloud-Anmeldedaten, API-Tokens oder Geheimnisse im Klartext in ~/.zshrc; verwenden Sie private .env-Dateien oder Geheimnisverwaltungen.
  • Nicht: Führen Sie langsame externe Befehle (nvm, brew doctor) synchron bei jedem interaktiven Shell-Start aus.

Fehlerbehebung

Fehler / SymptomUrsacheLösung
zsh: Befehl nicht gefunden: ... nach Bearbeiten von .zshrcSyntaxfehler in .zshrc oder $PATH-Zuweisung überschrieben statt vorangestelltPfade korrekt voranstellen: export PATH="$HOME/bin:$PATH" und source ~/.zshrc ausführen.
zsh compinit: unsichere Verzeichnisse, compaudit ausführenUnsichere Dateiberechtigungen auf /usr/local/share/zshFühren Sie `compaudit
Zsh startet sehr langsam (> 500ms)Synchrones nvm oder schwere Plugin-InitialisierungVerwenden Sie Lazy Loading für nvm oder profilieren Sie mit zmodload zsh/zprof am Anfang der .zshrc und zprof am Ende.

Referenzen

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

G1Joshi/Agent-Skills

Expert Dask distributed computing assistance covering Dask DataFrames, Arrays, Futures, and cluster scaling. Use when analyzing datasets too large for pandas on a single machine or multi-node cluster.

G1Joshi/Agent-Skills

Expert dbt (data build tool) assistance covering SQL modeling, Jinja macros, tests, documentation, and semantic layer. Use when building analytics engineering pipelines on BigQuery, Snowflake, or PostgreSQL.

G1Joshi/Agent-Skills

Expert JAX assistance covering Autograd, XLA compilation (`jit`), vectorization (`vmap`), and parallelization (`pmap`). Use when building high-performance numerical computing and cutting-edge deep learning research.

G1Joshi/Agent-Skills

Expert Ray distributed computing assistance covering Ray Core (actors, tasks), Ray Train, Ray Tune, and Ray Serve. Use when scaling Python compute and ML training across multi-node clusters.

G1Joshi/Agent-Skills

Expert Git version control assistance covering branching, interactive rebase, cherry-pick, submodules, worktrees, and conflict resolution. Use when managing source code history and collaboration workflows.

G1Joshi/Agent-Skills

Expert K9s CLI assistance covering terminal Kubernetes cluster navigation, real-time log streaming, port forwarding, and pod debugging. Use when managing and troubleshooting Kubernetes clusters with speed.

G1Joshi/Agent-Skills

Expert SWC assistance covering high-performance Rust-based JavaScript/TypeScript compilation, .swcrc configuration, Jest testing via @swc/jest, and minification. Use when replacing Babel with SWC for faster builds, accelerating test execution, or compiling modern ECMAScript features.

G1Joshi/Agent-Skills

Expert Tig assistance covering text-mode interface for Git, interactive staging, commit graph visualization, diff exploration, and blame navigation. Use when navigating Git commit history in the terminal, staging hunks interactively, browsing file changes, or reviewing revisions.

G1Joshi/Agent-Skills

Expert Vim assistance covering modal editing, .vimrc configuration, registers, macros, search/replace, and plugin management via vim-plug. Use when editing text efficiently in terminal environments, writing Vimscript, recording macros, or configuring core Vim settings.

G1Joshi/Agent-Skills

Expert Zed editor assistance covering high-performance Rust-based text editing, multi-buffer editing, language server protocols (LSP), and AI assistant integrations. Use when configuring Zed settings.json, setting up language extensions, collaborating in real-time channels, or optimizing editor startup speed.

G1Joshi/Agent-Skills

Expert [skill-name] assistance covering [feature 1], [feature 2], and [feature 3]. Use when [working with X], [debugging Y], or [implementing Z].

Verwandte Skills