- .zshrc: gate bun/grok blocks on dir existence; use $BUN_INSTALL for
completions path (was hardcoded /home/lkraven); drop dead
lk-tools/fzf path entry
- zellij: remove autogenerated banner referencing a Linux backup path
- aider.conf.yml: trim to active settings (was 459-line sample dump)
erdtree (erd) replaces GNU tree as the tree-style directory lister. It uses
a parallel walker (the `ignore` crate, one thread per core) where GNU tree is
strictly serial. Benchmarked over 658k entries under ~/development, best-of-3,
warm cache, plain output, hidden included, gitignore off:
erd (16 threads) 2.35s
GNU tree 2.1.0 4.22s (1.8x slower)
erd (1 thread) 4.97s (so ~2.1x thread scaling)
eza --tree 15.87s (6.8x slower)
Three changes:
- home_config/erdtree/.erdtree.toml — erd ships as a disk-usage tool, so its
stock defaults are root-at-bottom, size-sorted, with a du column. The
top-level table overrides that to behave like GNU tree; `erd -c du` keeps
the original behaviour and `erd -c all` disables the gitignore/hidden
filtering. Stowed to ~/.config/erdtree.
- home_root/.zshrc — `alias tree='erd'`, plus ~/.zfunc prepended to fpath for
the generated completion. The fpath line goes before the primary compinit
at the top of the file rather than adding a third compinit call after it.
- lk-installers/install-apps — erd is now a runtime assumption of the
dotfiles (the alias depends on it), so a fresh box must get it: brew on
macOS, cargo on Linux (not packaged in Debian apt). The zsh completion is
generated per installed version rather than tracked, matching how the other
generated completions in this repo are handled.
Caveat worth knowing: erd respects .gitignore by default, which GNU tree does
not. `-i` disables it, `-.` shows hidden files.
The summarizer/classifier endpoint is now the 'summarizer' (+ 'summarizer-large') /
'classifier' alias backed by qwen3.6-35b-a3b-heretic (2026-07 GPU re-org), not
granite-4.1-8b. GLM family up to 5.2 (+ -reasoning/-turbo/-air) with gen-frontier ->
GLM 5.2; kimi now kimi-k3 / kimi-k3-gen-api. Added coder-fast, lfm2.5-2.6b, the Selene
judge, current rerankers, and ext-tts -> dots. Retired granite-4.1-8b and the
qwen3.5-9b-fp8 vision seat from the roster. Shared-key / paid-spend caveats unchanged.
Extend the secrets directive per operator (2026-08-11): store durable secrets in the
vault AND 'secret get' the creds a task needs from it rather than reading on-disk copies.
Custom Claude Code statusline: project/git, model, ctx%, session cost, and the
5h/7d usage limits with reset countdowns (all models, granular 1d2h/3h19m). Was
nh3-dev-only; now stow-managed like CLAUDE.md/CONTEXT.md/keybindings.json so a
fresh box picks it up. Live ~/.claude/statusline-command.sh symlinked into the tree.
~/.claude/CLAUDE.md was already symlinked into home_root/, but the rest of the user-level Claude
config was not. These two are static, hand-edited, and portable, so they belong with it — moved
into home_root/.claude/ and re-linked via stow. Verified: keybindings.json still parses, both
symlinks resolve.
Checked for secrets before moving. The only regex hits were false positives — "sortByTokens" in
keybindings, and glossary prose ABOUT API-key tiers and token-spend in CONTEXT.md. No credentials.
DELIBERATELY NOT TRACKED:
settings.json — Claude Code writes it during normal operation, and an app that replaces rather
than rewrites a file in place would silently destroy the symlink and strand the
repo copy. Needs a decision about that risk, not a quiet symlink.
hooks/ — empty.
everything else — runtime state, not config: projects/ (2.6G), remote/ (815M), file-history/
(467M), sessions/, cache/, shell-snapshots/, plugins/.
Note the skills tree is already version-controlled elsewhere: ~/.claude/skills/* symlink into
~/development/galdrabok/skills/, which is where the /snapshot canon the new CLAUDE.md section
points at actually lives.
Adds "## Persistent memory (`persistent-memory.md`)" to the global CLAUDE.md, placed directly
after the cognitive-load-reduction section because persistent memory is that mission's instrument:
it is what lets the operator re-enter a project without reloading its context.
Deliberately a POINTER, not a copy. The canon is the /snapshot skill
(~/.claude/skills/snapshot -> ~/development/galdrabok/skills/snapshot, version-controlled there);
the section says so explicitly and forbids restating it here or in a project CLAUDE.md, because a
second copy is a sync surface that drifts silently.
What it does carry is the four things a session needs BEFORE it loads the skill: read
persistent-memory.md at session start; check /tmp/<althing-handle>-handoff.md and its 1h staleness
rule; never bulk-read persistent-memory.d/; commit memory alongside the work. Plus the three-way
split (project CLAUDE.md / auto-memory / persistent-memory) with the redundancy test, because that
boundary is the one sessions actually get wrong.
Fleet state at time of writing: 48 repos carry persistent-memory.md, 18 carry persistent-memory.d/.
Stamped with the date so it reads as a snapshot rather than a standing fact.
The shared all-agents key entry claimed it was "scoped to free local models
only... deliberately can't spend z.ai cost." Per infra-ops (2026-07-25, in
the course of provisioning Kimi as Heid's 4th cross-frontier panel arm) that
was never actually true: the key already spent GLM/z.ai credits, and now
reaches kimi-k3 (Moonshot's coding-endpoint passthrough, added same day) the
same way. Corrected to state plainly that a paid-model call on the shared
key spends real vendor credits shared across every session holding it, and
that a project-scoped key remains available from infra-ops for isolated
spend tracking — no longer a technical requirement, just an isolation
option.
Add a fleet-tool entry for The Booth (nh3-dev :8090 ephemeral media board) so
any Claude Code session can surface A/B renders, smoke results, and audio/video
to the operator by dropping a folder in ~/booth-data.
title_bar.show_sign_in disables the sign in button, which is shown by
default and serves no purpose without a Zed account.
Panel layout: project, outline, collaboration and git panels dock to
the right; the agent panel docks left.
Icon theme changed from Zed (Default) to Material Icon Theme. Note
this requires the Material Icon Theme extension to be installed;
Zed falls back to the default icons if it is absent, so a fresh
machine linking these dotfiles will not error.
Brings the Zed configuration under dotfiles management, stowed to
~/.config/zed alongside the other home_config packages.
settings.json carries the Australis Dark theme selection, the
PFI-LiteLLM OpenAI-compatible provider, explicit default_model and
inline_assistant_model assignments, and the edit-prediction endpoint.
The model assignments are required: the Inline Assistant, git commit
message generation, and thread summaries each resolve their model
independently of the agent panel's UI selection, and report the
provider as unconfigured when neither setting is present.
themes/australis-dark.json is generated from the palette spec in the
australis repo (zed/build-theme.py there is the source of truth).
The prompts/ directory is deliberately left untracked. It is an LMDB
database with an active lock file, not user-authored content.
No credentials are included. The provider API key lives in the system
keychain, which is where Zed stores it; endpoint addresses are
internal RFC 1918.
The tracked theme had drifted from the palette source. Cursor and
selection values did not match wezterm/config.lua in the australis
repo, which the port is derived from:
cursor-color #51e08a -> #6388d8 (wezterm cursor_bg)
cursor-text absent -> #373b46 (wezterm cursor_fg)
selection-foreground #cce7ec -> #373b46 (wezterm selection_fg)
Neither #51e08a nor #cce7ec appears in the wezterm cursor or
selection configuration. All sixteen palette entries were already
correct and are unchanged; the drift was confined to cursor and
selection. Also restores the header comment citing the upstream
source.
Add a global conversational-register section to CLAUDE.md: ~6/10 warm
register, occasional load-bearing profanity, opinions-led, affect on top
of substance. Banter leans non-technical with the technical as an
addendum, mirroring the existing /elitk detail habit. Scoped to
conversation only — committed artifacts (commits, contracts, ADRs,
findings, althing ships) stay professional and technical.
Adds a default-posture paragraph to the althing async-reply monitoring
section: unless a session says otherwise, every session attempts to keep
its althing monitor armed for the session's duration (arm early, re-arm
after each fire, stay armed even without a pending reply). Reconciles the
Scope paragraph so it no longer instructs sign-off after each exchange.
Forces the web pilot to VictorMono NF for ligatures. Resolves against
the client device's installed fonts (no @font-face serving like the
ttyd seat), so each device needs the font installed locally.
- 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>