aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/common/.bashrc.d
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-04-20 09:28:47 -0500
committerCraig Jennings <c@cjennings.net>2026-04-20 09:28:47 -0500
commitc092ed493a9ff4a823e38c4c23e571d27286bd49 (patch)
tree7ad345ceb3c4897bef68b2c6e73d0bdf9a010baa /dotfiles/common/.bashrc.d
parentfdb68c120e8544ae29006e76fb1165c3310ab631 (diff)
downloadarchsetup-c092ed493a9ff4a823e38c4c23e571d27286bd49.tar.gz
archsetup-c092ed493a9ff4a823e38c4c23e571d27286bd49.zip
remove aix and hey: 'ai' lives in claude-templates now
Both the aix script and hey shell function are superseded by the unified 'ai' launcher in claude-templates (bin/ai, installed via make install). Single command, three modes, smart in-tmux behavior so all sessions survive Hyprland crashes. Per-machine setup adds a step: cd ~/projects/claude-templates && make install The orphaned ~/.local/bin/aix symlink should be removed manually on each machine after pulling this change (rm ~/.local/bin/aix). Stow re-stow would also clean it up.
Diffstat (limited to 'dotfiles/common/.bashrc.d')
-rw-r--r--dotfiles/common/.bashrc.d/aliases.sh54
1 files changed, 3 insertions, 51 deletions
diff --git a/dotfiles/common/.bashrc.d/aliases.sh b/dotfiles/common/.bashrc.d/aliases.sh
index 6c5519f..7c75d26 100644
--- a/dotfiles/common/.bashrc.d/aliases.sh
+++ b/dotfiles/common/.bashrc.d/aliases.sh
@@ -78,57 +78,9 @@ alias cc="gcc -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversi
alias gdbx="gdb --batch --ex r --ex bt --ex q --args"
# =============================================================================
-# Claude Code
-# =============================================================================
-# hey — launch Claude in the current directory (must be a .ai/ template project).
-# If the repo has a remote and FETCH_HEAD is older than 10 minutes, fetches
-# first so status info is accurate. Auto-pulls when clean, behind, and not
-# ahead; warns for anything ambiguous.
-hey() {
- if [ ! -f .ai/protocols.org ]; then
- echo "hey: no .ai/protocols.org in $(pwd) — not a Claude-template project" >&2
- return 1
- fi
-
- if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
- # Fetch upstream if FETCH_HEAD is stale (>10 min) or missing
- local fetch_stale=1 gitdir age
- gitdir=$(git rev-parse --git-dir 2>/dev/null)
- if [ -f "$gitdir/FETCH_HEAD" ]; then
- age=$(( $(date +%s) - $(stat -c %Y "$gitdir/FETCH_HEAD" 2>/dev/null || echo 0) ))
- [ "$age" -lt 600 ] && fetch_stale=0
- fi
- [ "$fetch_stale" -eq 1 ] && git fetch --quiet 2>/dev/null
-
- local upstream ahead=0 behind=0 dirty=""
- upstream=$(git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null)
-
- if [ -n "$upstream" ]; then
- ahead=$(git rev-list --count "$upstream..HEAD" 2>/dev/null || echo 0)
- behind=$(git rev-list --count "HEAD..$upstream" 2>/dev/null || echo 0)
-
- if ! git diff --quiet 2>/dev/null \
- || ! git diff --cached --quiet 2>/dev/null \
- || [ -n "$(git ls-files --others --exclude-standard 2>/dev/null)" ]; then
- dirty="dirty"
- fi
-
- # Auto-pull if clean, behind, not ahead
- if [ -z "$dirty" ] && [ "${ahead:-0}" -eq 0 ] && [ "${behind:-0}" -gt 0 ]; then
- echo "hey: pulling $behind commit(s) from $upstream..." >&2
- git pull --ff-only --quiet
- elif [ "${ahead:-0}" -gt 0 ] || [ "${behind:-0}" -gt 0 ] || [ -n "$dirty" ]; then
- local parts=()
- [ "${ahead:-0}" -gt 0 ] && parts+=("↑$ahead")
- [ "${behind:-0}" -gt 0 ] && parts+=("↓$behind")
- [ -n "$dirty" ] && parts+=("$dirty")
- echo "hey: git ${parts[*]}" >&2
- fi
- fi
- fi
-
- claude "Read .ai/protocols.org and follow all instructions."
-}
+# Claude Code — the 'ai' launcher lives in claude-templates (make install
+# symlinks bin/ai into ~/.local/bin). No alias here.
+# =============================================================================
# =============================================================================
# Phenomenology RAG (ollama/deepseek)