- setopt interactive_comments: inline `#` comments at the prompt, so
pasted commands with comment tails don't error (matches script mode)
- bun: completions + BUN_INSTALL bin on PATH (installer-appended)
- grok: bin on PATH + zsh completions fpath (installer-appended)
Global versioning questions now resolve against
corviduo-project-template/docs/VERSIONING-POLICY.md (self-pinned
versioning-policy-v1); the SemVer etiquette section is declared as
the Corviduo cadence layer on top — it wins on cadence/tier choice,
the policy wins on format, contract semantics, pre-release staging,
and release mechanics.
Replace the ASCII git VCS markers with Nerd Font glyphs:
branch , detached-HEAD commit , and a distinct staged /
unstaged / untracked breakdown (each with its count) in place
of the single '*' dirty marker; behind/ahead use / arrows.
Drop the old CONTENT_EXPANSION (hard-coded the literal arrows and
stripped all spacing for the collapsed design) and the ahead/behind
MAX_NUM=1 cap so real commit counts show. Glyphs use \uXXXX escapes
beside naming comments for auditability; all sit in the core Nerd
Font range covered by VictorMono Nerd Font Mono.
fastfetch is the maintained successor to neofetch (removed from Homebrew).
macOS installs it in the main brew list; Linux installs it best-effort with a
neofetch fallback for older distros. README tool list updated.
Context segment already sat left of the time segment but was hidden in the
local (DEFAULT) state. Show the hostname there: grey when native, yellow with
an explicit ' ssh' tag when remote (p10k's REMOTE state detects SSH for free).
Only the local-sudo state stays quiet.
Fold macinstaller + install-apt-pkgs + install-tools + install-zellij into a
single host-aware lk-installers/install-apps (macOS->Homebrew, bootstrapping
Homebrew if absent; Linux->apt + upstream installers). Installs the tools the
configs assume (bat, fd, fzf, zoxide, zellij, nvim, btop, htop, tldr) plus the
fzf-git.sh helper and fzf shell integration; idempotent.
link-dotfiles gains --apps to install then link in one shot. .zshrc drops the
redundant brew/system zsh-autosuggestions source (zinit already loads it),
fixing the missing-file error on a fresh box. README documents the new flow.
The repo carried an empty home_config/ghostty/config; the actual working
config (Victor Mono Nerd Font, australis theme, ssh-terminfo, scrollback,
macOS option-as-alt) lived only on the machine. Pull it in so stow links
the real config instead of blanking it.
- zsh prompt: replace oh-my-posh with powerlevel10k via zinit, with the
instant-prompt preamble near the top of .zshrc for fast startup
- remove thefuck/thefk entirely: .zshrc aliases, install-thefk,
home_config/thefuck, and its .stow-global-ignore entry
- link-dotfiles: one-shot host-aware bootstrap — detect macOS vs Linux,
install GNU stow if missing (brew / apt/dnf/pacman), then stow both trees
- retire oh-my-posh: delete the bash + pwsh installers and
home_config/ohmyposh (starship covers PowerShell separately)
- README: document the new bootstrap and prompt setup
Record Vuong Hoang's name + roles (Founder/Principal Developer/Chief
Systems Architect of Corviduo AI and PhaseFinal, Inc; Partner + Chief
Systems Architect at VastBlue AI) so identity surfaces in every Claude
Code session, not just brokkr-smithy's per-project auto-memory.
New "## Roadmap discipline" section in the global CLAUDE.md: every project
carries a ROADMAP.md (v1 target = 3-7 capabilities + parking lot; the
feature-gate defaults to parking lot regardless of who proposed the
feature; creep-check at checkpoints). The feature-axis analog of
value-of-information (probes) + patch-default (SemVer). Per-project file
defined as a skeleton in corviduo-project-template.
LiteLLM Global-tools entry: frame granite-4.1-8b as the standing
always-available local summarizer/classifier endpoint (FP8, ana-ml2 GPU1,
131k ctx); add qwen3.5-9b-fp8 (vision) to the gateway listing; document the
shared all-agents virtual key (alias all-agents-local) scoped to the free
local models only (granite/vision/embed/rerank; paid GLM walled off).
Internal-only gateway, rotatable.
Global Claude Code preferences (symlinked from ~/.claude/CLAUDE.md, like
the other home_root dotfiles). Includes the new 'Global tools available'
section documenting box-wide Playwright/Chromium on nh3-dev.
The "Mono" variant squeezes glyphs into single cells, distorting Victor
Mono's cursive italics (bad kerning). Switch to "VictorMono Nerd Font"
to match the WezTerm config, which renders italics correctly.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- windows/windows-terminal/settings.json: Australis scheme, VictorMono
Nerd Font Mono, acrylic on the PowerShell profile
- link-dotfiles.ps1: link it into the Terminal LocalState folder
- README: document the windows/ folder and Terminal setup
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- link-dotfiles.ps1: stow-equivalent for Windows using junctions/symlinks
(no admin required), idempotent with .bak backups and -DryRun
- lk-installers/install-ohmyposh.ps1: winget-based install with fallback
- README.md: document Linux/macOS (stow) and Windows flows
- .gitignore: resolve leftover merge conflict markers, ignore *.bak
- ohmyposh/lkraven.toml: oh-my-posh v3 auto-migrated this on load (same
theme, upgraded schema)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Okay, let's see. The user provided a diff for the file lk-installers/install-apt-pkgs. The main changes here are adding 'sudo apt update' at the top and removing 'tmux' from the list of packages being installed in the first sudo apt install line.
The commit message needs to follow the format <type>: <description>. The type options are fix, feat, build, chore, ci, docs, style, refactor, perf, test.
Looking at the changes: adding an update before installing packages and removing a package (tmux). This seems like a modification to the installation script to ensure dependencies are up-to-date and removing an unnecessary package. Since it's adjusting the script's process rather than adding a new feature, 'chore' might be appropriate here. Alternatively, if this fixes an issue where outdated packages could cause problems, maybe 'fix'. But since the user mentioned they're switching tmux to zellij, perhaps removing tmux is part of that change. However, the main action here is updating before install and package removal.
The description should be imperative, like "Update apt before installs and remove tmux". Let me check character count: "chore: Update apt before installs and remove tmux" – that's 67 characters, which is under 72.
Alternatively, maybe 'build' if it's related to build processes, but since it's an installer script, 'chore' for maintenance-related changes fits better. So the final message would be "chore: Update apt before installs and remove tmux".
</think>
chore: Update apt before installs and remove tmux
Okay, let's see. The user wants to update the install-apt-pkgs script to ensure Cargo is available for Zellij installation.
Looking at the diff, they added "cargo" to the list of packages in the first sudo apt install line. So the main change here is adding cargo via apt.
The commit message needs to be concise and follow the specified format. The type should be 'feat' since this adds a new package dependency. The description should mention adding cargo for Zellij.
Wait, but maybe it's a fix? Because they're making sure Cargo is available, which might have been missing before. Hmm. If installing Zellij requires Cargo and wasn't working before, then "fix: ensure cargo is installed for zellij" could be better. But the user said "update" the script to make sure, so maybe it's a feature addition? Or perhaps a chore since it's a maintenance change.
Alternatively, 'chore' might not fit here. Since adding Cargo is necessary for Zellij's installation, this is more of a functional fix. So using 'fix: ensure cargo is available for zellij install' would make sense. The imperative mood is important too—so "ensure" instead of "ensuring".
Checking the length: "feat: add cargo to apt packages for zellij" is under 72 characters? Let's count... "feat: add cargo to apt packages for zellij" — that's okay, but maybe more precise. Alternatively, "fix: ensure cargo is available for zellij install". That's also within the limit.
The user mentioned updating the script specifically to make sure Cargo is there. So "ensure" might be better than "add", as it emphasizes availability. The type could be 'feat' if adding a new dependency, but since it's fixing an oversight that broke Zellij installation, maybe 'fix'.
Hmm, tough call. Since the user says they're updating to make sure it's available, perhaps it's a fix for a missing dependency. So I'll go with:
fix: ensure cargo is available for zellij install
That fits all criteria.
</think>
feat: add cargo to apt packages for zellij
Okay, let me try to figure out how to approach this. The user wants to replace Tmux with Zellij in their dotfiles setup. First, I need to look at all the files provided and see where Tmux is mentioned or configured.
Starting with `.gitignore`, there's an entry for `.config/tmux/plugins`. Since they're removing Tmux, that line should be deleted so those directories aren't ignored anymore once removed.
Next, looking into `home_root/.zshrc`, I notice several sections related to Tmux. There's a block checking if the user is in a Tmux session and automatically starting it if not. That whole conditional block needs to be removed because Zellij won't use that logic. Also, there are parts about setting up Tmux Plugin Manager (TPM) with Git clones. Those lines should go too.
The `home_config/tmux` directory contains the actual Tmux configuration files like `tmux.conf`, so those can be deleted entirely since they're no longer needed. Similarly, `.tmux.conf` in `home_root/` is another config file for Tmux and should also be removed.
In the installers folder, there's an `install-tmux-plugins` script. Since Zellij doesn't use TPM, this script isn't necessary anymore and can be deleted or replaced with a Zellij installer.
Now, adding Zellij support: I need to create a new installation script in `lk-installers/`, maybe called `install-zellij`. This script should handle installing Zellij via Cargo (Rust's package manager) since that's the common method. If Cargo isn't available, it might try using apt-get as a fallback.
I also have to ensure that any references to Tmux in other files are removed. For example, aliases or environment variables related to Tmux should be checked and eliminated if present. However, looking at the provided `.zshrc`, most of the Tmux-related code was already isolated in the sections I mentioned earlier.
Another consideration is whether there's a Zellij configuration file needed. The user might want to set up their own config, but since they didn't provide one yet, maybe just note that creating a `~/.config/zellij/config.toml` could be next step, but it's beyond the current scope unless instructed otherwise.
Finally, updating any dependencies or other scripts like `link-dotfiles` if necessary. Since Tmux configs are being removed, ensuring those aren't linked anymore is important, but since we're deleting the files themselves, that might not be needed immediately.
Putting all this together: remove all Tmux-related config files and references in `.zshrc`, delete the installer script for Tmux plugins, add a new Zellij installer, and adjust any other dependencies. The commit message should reflect replacing Tmux with Zellij.
</think>
chore: replace tmux configuration with zellij setup
Okay, let's see. The user provided a diff for the .gitignore file where they added ".aider*" to the list.
First, I need to determine the type of commit. Since this is about updating the ignore file, which is part of project maintenance, the type should be "chore".
The description needs to be imperative, like "add" something. The change is adding an entry to .gitignore, so "Add .aider* to gitignore" makes sense.
Check the length: "chore: Add .aider* to gitignore" is under 72 characters. Yep, that works. No other changes here, so this should be accurate.
</think>
chore: Add .aider* to gitignore