commit 106c5083532b2fc0f296bc56f030182f6c432b06 from: mtmn date: Sat Sep 12 03:52:31 2026 UTC flakes, aliases, etc. commit - 828fc2369b17f03c7a88cf7e1f1eee69d78c25bc commit + 106c5083532b2fc0f296bc56f030182f6c432b06 blob - 7ada3ceee0541285cef542f403038948053e4a73 blob + 4bc930ba52df1fb0ba2344d12e8c22ff6f74e198 --- flake.lock +++ flake.lock @@ -162,11 +162,11 @@ ] }, "locked": { - "lastModified": 1789071706, - "narHash": "sha256-S+oyh2YSP9V5bSjWbbK0N7GxdxxMwgBfUOtUdVcAWc4=", + "lastModified": 1789178892, + "narHash": "sha256-9IcxPm9wfRIQqnVbChGNRF6PzfTRLp7iqTzKszCv5zU=", "owner": "nix-community", "repo": "home-manager", - "rev": "150f9ce4ddd41544ea42eb9d6043a75bd615fa24", + "rev": "cd0e747f6af26cf4a699ce4b6dc1910dbe8af9a7", "type": "github" }, "original": { @@ -248,11 +248,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1789012029, - "narHash": "sha256-1CBkBf+Nhggykzlx0jvXrj5rk20btl+tK8Fa8Ml/BL4=", + "lastModified": 1789073787, + "narHash": "sha256-xfX/toC2QV707s06GbP4II/TxYF0fNQj7s5/LClNDKc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d5dfd8e6716dde34398bc14bc87c10dece9c8c68", + "rev": "aff8a0b28396750446e5537a96461bc4facdb287", "type": "github" }, "original": { blob - a8d738bfc72ac8d3db250fd819fffc5fe20099ea blob + ab1bf1f0d7dcf533fc7cf5800ed134edf9fe6044 --- hosts/impish/default.nix +++ hosts/impish/default.nix @@ -171,6 +171,7 @@ redo-sh knit go-task + goreleaser ]; debug = [ blob - 13968e6f99a7780ab5d08660fc5ad1a2dcbfed7b blob + 7718eb6c66b9bf05a762af0cf4bf8a629d4eaabd --- modules/mixins/dotfiles/config/zsh/rc/llm +++ modules/mixins/dotfiles/config/zsh/rc/llm @@ -1,60 +1,50 @@ -#!/bin/bash +#!/usr/bin/env bash -pi_recent_models() { - local n=${1:-10} - local session_dir="${HOME}/.pi/agent/sessions" - local files - if [ -n "${2:-}" ]; then - local enc - enc=$(echo "/$2" | sed 's|[./]|-|g') - files=$(find "$session_dir/$enc"* -name '*.jsonl' 2>/dev/null) - else - files=$(find "$session_dir" -name '*.jsonl' 2>/dev/null) - fi - [ -n "$files" ] || return 1 - # shellcheck disable=SC2086 - jaq -cr 'select(.type=="model_change") | "\(.timestamp)\t\(.provider) \(.modelId)"' $files | - sort -r | - cut -f2- | - awk '!seen[$0]++' | - head -n "$n" -} - paj() { - local isolate args model provider recent - args=("$@") - isolate="pisol" - - case "${args[0]}" in - --reuse | --continue) + local isolate candidates model provider rest fzf_status prov mid _ + isolate=pisol + case "${1:-}" in + y | yikes) isolate= shift ;; esac - # Use fzf picker for 10 models unless --reuse or --continue - if [ -z "${isolate}" ]; then - recent=$(pi_recent_models 10 2>/dev/null) || recent="" + candidates= + { + read -r _ + while read -r prov mid _; do + [[ -n "${prov:-}" && -n "${mid:-}" ]] || continue + candidates+="$prov $mid"$'\n' + done + } < <(pi --list-models 2>/dev/null) + candidates=${candidates%$'\n'} + + model=$(printf '%s\n' "$candidates" | fzf) + fzf_status=$? + if [[ "$fzf_status" -eq 130 ]]; then + return "$fzf_status" + elif [[ "$fzf_status" -ne 0 ]]; then + model= fi - candidates=$(pi --list-models 2>/dev/null | awk 'NR > 1 {print $1 " "$2}') || candidates="" + if [[ -n "$model" ]]; then + case "$model" in + *' '*) + provider=${model%% *} + rest=${model#* } + set -- --provider "$provider" --model "$rest" "$@" + ;; + esac + fi - if [ -n "$recent" ] && [ -n "$candidates" ]; then - # Show recent + non-recent - model=$(printf '%s\n' "$recent" | grep -xFf <(printf '%s' "$candidates") || true) - model=$(printf '%s%s' "$model" "\\n$(printf '%s' "$candidates" | grep -Fxvf <(printf '%s' "$recent"))" | fzf) || true + if [[ -n "$isolate" ]]; then + "$isolate" pi "$@" else - model=$(printf '%s' "$candidates" | fzf) || model="default" + pi "$@" fi - - [ -z "$model" ] && model="default" - provider=${model%% *} - rest=${model#* } - - [ "$rest" = "$model" ] && rest="$model" - - $isolate pi --provider "$provider" --model "$rest" "${args[@]}" } -alias pajre='paj --reuse' -alias pajco='paj --continue' +alias pajlo='paj yikes' +alias alpaq='alpaca quota' +alias alpac='alpaca compose'