| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
|
| |
Long-running tmux+vterm sessions (Claude Code's TUI in particular) run past 50k lines often enough that the C-; x C tmux-history-copy command in Emacs can't reach the start. Bump history-limit so `tmux capture-pane' has more room; the cost is roughly 7.5 MB per pane, so a six-pane session adds well under 100 MB total.
Existing panes keep their current buffer; the new limit applies only to panes created after the reload.
|
| |
|
|
|
|
| |
I removed the `ai-assistants` tmux launcher and the `.claude/settings.local.json` permissions stub from the stowed common dotfiles. The two `aliases.sh` files (bash and zsh) each lost a matching 5-line comment block about the Claude `ai` launcher. None of these belong in a shared dotfile tree.
Two small adjacent updates landed in the same commit. The gitconfig `includeIf` path moved from `~/code/deepsat/` to `~/projects/work/deepsat/code/` to match the on-disk layout. Qalculate auto-saved its config version bump from 5.9.0 to 5.10.0.
|
| |
|
|
|
|
| |
I moved settings.json, .mcp.json, and commands/refactor.md to the rulesets repo so they travel across machines instead of being archsetup-specific. The local ~/.claude/ symlinks now point at rulesets.
I also added the three paths to .gitignore so a stray re-add of any of them won't slip through. settings.local.json stays here because it's per-machine by convention.
|
| |
|
|
| |
I dropped frontend-design, ralph-loop, security-guidance, and context7 from enabledPlugins. Context7 saw three tool calls across months of sessions. I never used the other three at all. I also switched editorMode back to emacs because the readline default fits my flow better than vim mode.
|
| |
|
|
| |
I moved humanizer to the rulesets repo where the rest of the skills live. The local ~/.claude/skills/humanizer symlink now points at the new location. That leaves no more skills under archsetup, so the empty .claude/skills directory is gone too.
|
| |
|
|
| |
I changed the default browser to Firefox. I also added ~/.cask/bin to PATH.
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
New dmail IMAP group with the standard 5-channel layout (inbox, sent, drafts, trash, starred), mirroring the gmail block. Matching SMTP account uses passwordeval against an encrypted password file at .config/.dmailpass.gpg.
|
| | |
|
| |
|
|
| |
If no YYYY-MM-DD matches, the script now looks for a 10-digit epoch between underscores in the filename and converts it via date -d. The existing 24-hour mtime guard still protects the active session log from being deleted while it's still being written to.
|
| |
|
|
|
|
| |
Remove git-commit and gh-pr-create confirmation hooks, remove
code-review plugin, reorder keys alphabetically, and enable vim
editor mode.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Merges live ~/.claude/settings.json content (hooks: PreCompact +
PreToolUse/Bash with git-commit-confirm, gh-pr-create-confirm,
destructive-bash-confirm; enabledPlugins) into the archsetup source
that velox was already symlinking.
Previous state: velox symlinked archsetup source (attribution only,
missing hooks/plugins). Ratio had a standalone file (hooks/plugins
but no attribution). Both machines asymmetric and incomplete.
Now: single source of truth in archsetup/dotfiles/common/.claude/
settings.json. Ratio needs to replace standalone file with symlink
(manual step per-machine).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds the empty-string attribution block that disables Claude Code's
auto-added attribution lines (Co-Authored-By, 'Generated with Claude
Code', etc.) at the tool layer, matching the existing 'no Claude
attribution' rule in protocols.org.
Two complementary enforcement layers now:
- prompt-level rule (protocols.org)
- tool-level setting (this commit)
Same intent already lives in rulesets/languages/elisp/claude/settings.json
for elisp project bundles; this brings it to the global Claude Code
config that ships via archsetup.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The 'hey' alias launched claude with 'Read docs/protocols.org' — broken
after the docs/ → .ai/ restructure. While updating the path, add
matching behavior to aix:
- Bail early if the current dir isn't a .ai/ template project
- Fetch upstream only when FETCH_HEAD is stale (>10 min old) — avoids
re-fetching on back-to-back invocations in the same project
- Auto-pull when clean, behind, not ahead
- Print a one-line git-status summary otherwise (↑N ↓N dirty)
- Launch claude with the updated .ai/protocols.org path
Function identical across .bashrc.d and .zshrc.d (bash/zsh compatible).
Tested: non-template dir bails cleanly with exit 1; template project
shows status and launches claude; repeated invocations reuse
FETCH_HEAD cache silently.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds multi-machine sync awareness to the session launcher.
Before fzf:
- Fetches all candidate repos in parallel (capped at 6 concurrent)
- Annotates each entry with git status: (↑N ↓N dirty), (no upstream)
- Clean repos show no annotation
When launching a window:
- If working tree is clean, has upstream, is behind (not ahead): pull
- Otherwise: open window as-is, user handles any sync manually
Design choices:
- Fetches are synchronous — accurate status at the cost of a brief wait
on session start. Parallel execution keeps it fast (~1-2s for 22 repos).
- Pull is --ff-only — never merges, never creates merge commits in aix
- Diverged repos (ahead AND behind) trigger no auto-action; user decides
- No stash/pop dance — unreliable in multi-project batches; prefer
explicit awareness via annotation
Primary use case: moving between laptop and desktop. Wrap-it-up's
always-push ensures remote is current at session end; this ensures
local is current at next session start.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Two changes:
- AI_INSTRUCTIONS now points at .ai/protocols.org (was docs/) — aligns
with the template docs/ → .ai/ restructure
- build_candidates filters directories to those with .ai/protocols.org
present. Previously listed every dir under ~/code/ and ~/projects/
including third-party clones and non-template projects, which would
fail silently when Claude tried to read a missing protocols file.
New projects that haven't been initialized (no .ai/ yet) will not
appear in the fzf list. Bootstrap those with a direct claude
invocation; the first-session workflow takes over once .ai/ exists.
|
| |
|
|
|
|
|
|
|
| |
- archsetup: add proton-vpn-gtk-app; configure logind to ignore lid switch
- hyprland.conf: autostart protonvpn-app minimized
- waybar: set battery module to BAT1 (velox)
- pypr: resize scratchpads to fit 80x24 minimum; enlarge monitor for btop
- gitconfig: add deepsat GHE credential helpers
- CLAUDE.md: update notes.org reference (lowercase)
|
| |
|
|
|
|
| |
Fixed multilib, adwaita-qt, webkit2gtk, touchpad-indicator, tidaler,
pocketbook URL. Added post-archsetup review tasks for laptop setup.
Updated mbsyncrc for STARTTLS and waypaper config.
|
| | |
|
| |
|
|
|
| |
Add commands, settings, MCP config, and humanizer skill to
dotfiles/common for GNU Stow management across machines.
|
| |
|
|
|
|
| |
Add bind (dig, host, nslookup) to supplemental packages and
systemd-resolvconf for wireguard DNS integration. Update calibre,
hyprland, hyprlock, qalculate, mimeapps, and waypaper state.
|
| |
|
|
| |
Removed stale sxhkdrc reference from lock screen keybinding comment.
|
| |
|
|
|
|
|
| |
Merge all mime associations into mimeapps.list as single source of truth.
Set emacsclient as default for all text/code files. Add TypeScript mime
override, emacsclient.desktop with fixed Exec line, and simplify
resetmimetypes to just restow + rebuild caches.
|
| |
|
|
|
| |
Calibre window geometry and scheduler updates. Add Signal URI handlers.
Move processed inbox items to outbox.
|
| |
|
|
|
| |
Dim at 5min, lock at 7min, remove DPMS off and suspend. Update calibre
sort history and window geometry.
|
| |
|
|
|
|
|
| |
Add workspace allfloat toggle on mod+shift+f (was togglefloating, now
on mod+shift+space only). Add scripts/setup-chess.sh for En Croissant,
lc0, Maia, and Stockfish setup. Update log-cleanup to use filename
dates instead of mtime. Update ssh and calibre configs.
|
| |
|
|
|
|
|
| |
Add rustup toolchain manager to developer_workstation (before AUR
packages that need rust to compile). Add log-cleanup cron job with
test validation. Update ISO glob for archangel naming. Add dunst
icon theme, hyprlock animations, waybar log filtering.
|
| |
|
|
|
|
|
|
| |
Add deepsat GitHub Enterprise host to ssh config, reorganize todo.org
with GitHub release prep tasks, add Berkeley Mono Nerd Font woff/woff2
variants, and move podman notes to outbox.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
| |
|
|
|
| |
Add texlive-plaingeneric for org-mode PDF export (ulem.sty) and
masterpdfeditor from AUR for PDF form editing. Update calibre config.
|
| | |
|
| |
|
|
|
| |
Term scratchpads now 50x70%, renamed term2 to ai-term with updated
app-id. Updated calibre window state.
|
| |
|
|
|
| |
Replaced default crossfade binding with consume toggle. Calibre usage
stats updated from normal use.
|
| |
|
|
|
| |
Add Apple Books and Kindle hi-res cover plugins.
Update GUI state and metadata source config.
|
| |
|
|
|
| |
Add loudgain-ffmpeg7 (AUR) for ReplayGain/EBU R128 scanning.
Switch mpd replaygain from "track" to "auto" for album-aware playback.
|
| |
|
|
|
| |
Add Extract ISBN, Favourites Menu, Find Duplicates plugins.
Update tag mapping rules, window geometries, and download timestamps.
|
| |
|
|
|
|
| |
sort_windows now builds known project basenames from candidate dirs
and treats everything else as non-project. Prevents TUI apps (mc,
ranger, htop) from being misclassified as project windows.
|
| |
|
|
|
| |
Add rbw (Rust Bitwarden CLI) to security section. Update calibre
config state.
|
| |
|
|
|
|
| |
Move select-window after sort_windows so the first new project gets
focus via stable window ID. Also restructure todo.org into flat task
list (V2MOM preserved in docs/v2mom.org).
|
| |
|
|
|
| |
Shell window was intermittently shifting to index 1 because sort_windows
hardcoded index 0, which conflicts with base-index=1 and renumber-windows.
|
| |
|
|
|
| |
Add texlive-fontsextra to archsetup for fontawesome5 resume icons.
Change fullscreen screenshot from $mod+Print to Ctrl+$mod+S.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Sort windows (shells at 0, projects alphabetically from 1) on every
session access including --attach. Move --attach check after function
definitions so sort_windows is available.
|
| |
|
|
|
|
| |
Extract attach_session, create_window, read_selections, and
build_candidates functions. Remove unused variable. Simplify
new-session window ID capture.
|
| |
|
|
|
|
| |
Windows are reordered after creation and when adding to an existing
session. Shell windows (bash/zsh) sort to the end. Window numbering
starts at 1. Focus lands on the first selected window.
|