chore: update dotfiles with new tool configs and pi settings

- Add configs for goose, herdr, ostt, fabric, zero, gnupg
- Restructure pi models.json (dupont, obelix, bianca, cloudflare)
- Update pi settings with new provider lineup, subagent overrides
- Add pi permission system, search config
- Add desktop entries (RampClient, terminal, tmux)
- Add tmux-open script, rename battery.sh -> battery
- Refactor fish config (simplify conditionals, fix nvim aliases)
- Switch worktrunk commit command from opencode to pi
- Update mise.toml with new tool symlinks
- Fix mise auth.json path reference
This commit is contained in:
2026-07-18 12:19:17 -04:00
parent 156b7261db
commit ffec9e25a0
25 changed files with 651 additions and 82 deletions
+2
View File
@@ -0,0 +1,2 @@
- When reporting information to me, be extremely concise and sacrifice grammar for the sake of concision.
- My obsidian vault is located a /home/sjb/Documents/sjb-brain
View File
+32
View File
@@ -0,0 +1,32 @@
#this is an example yaml config file for fabric
# use fabric pattern names
# pattern: ai
# or use a filename
# pattern: ~/testpattern.md
# model: openai/gpt-5.2
# for models that support context length
modelContextLength: 6000
#frequencypenalty: 0.5
#presencepenalty: 0.5
#topp: 0.67
#topp: 0.0
#seed: 42
#temperature: 0.88
#temperature: 1.0
stream: true
raw: true
# suppress vendor thinking output
suppressThink: false
thinkStartTag: "<think>"
thinkEndTag: "</think>"
# OpenAI Responses API settings
# (use this for llama-server or other OpenAI-compatible local servers)
disableResponsesAPI: true
+6 -13
View File
@@ -32,6 +32,7 @@ if status is-interactive
if command -q fzf
/usr/bin/fzf --fish | source
end
command -q nmcli && alias nmlist "nmcli device wifi list"
if command -q tree
@@ -50,13 +51,10 @@ if status is-interactive
if command -q nvim
set -gx EDITOR nvim
end
if command -q v
alias oo="cd ~/Documents/nca-notes/"
alias on="v +Obsidian new"
alias os="v +Obsidian search"
end
alias on="nvim +Obsidian new"
alias os="nvim +Obsidian search"
end
command -q jj && alias rev "jj log -G -T 'commit_id.short(8)'"
@@ -80,13 +78,8 @@ if status is-interactive
alias ls="eza -al --color=always --group-directories-first"
end
if command -q bat
alias cat="bat"
end
if command -q git
alias g=git
end
command -q bat && alias cat="bat"
command -q git && alias g=git
set -gx VISUAL $EDITOR
+1 -1
View File
@@ -4,7 +4,7 @@ term=xterm-256color
pad=6x6
initial-window-mode=windowed
workers=0
include=~/.local/share/themes/current/theme/foot.ini
include=~/.config/omarchy/current/theme/foot.ini
[scrollback]
lines=10000
+1
View File
@@ -0,0 +1 @@
use-keyboxd
+3
View File
@@ -0,0 +1,3 @@
enable-ssh-support
default-cache-ttl 60
max-cache-ttl 120
+2
View File
@@ -0,0 +1,2 @@
utf8-strings
use-agent
+189
View File
@@ -0,0 +1,189 @@
extensions:
extensionmanager:
enabled: true
type: platform
name: Extension Manager
description: Enable extension management tools for discovering, enabling, and disabling extensions
display_name: Extension Manager
bundled: true
available_tools: []
chatrecall:
enabled: false
type: platform
name: chatrecall
description: Search past conversations and load session summaries for contextual memory
display_name: Chat Recall
bundled: true
available_tools: []
skills:
enabled: true
type: platform
name: skills
description: Discover and provide skill instructions from filesystem and builtins
display_name: Skills
bundled: true
available_tools: []
todo:
enabled: true
type: platform
name: todo
description: Enable a todo list for goose so it can keep track of what it is doing
display_name: Todo
bundled: true
available_tools: []
code_execution:
enabled: true
type: platform
name: code_execution
description: Goose will make extension calls through code execution, saving tokens
display_name: Code Mode
bundled: true
available_tools: []
memory:
enabled: true
type: builtin
name: memory
description: Tools to save and retrieve durable memories
display_name: Memory
timeout: 300
bundled: true
available_tools: []
computercontroller:
enabled: true
type: builtin
name: computercontroller
description: controls for webscraping, file caching, and automations
display_name: Computer Controller
timeout: 300
bundled: true
available_tools: []
developer:
enabled: true
type: platform
name: developer
description: Write and edit files, and execute shell commands
display_name: Developer
bundled: true
available_tools: []
apps:
enabled: true
type: platform
name: apps
description: Create and manage custom Goose apps through chat. Apps are HTML/CSS/JavaScript and run in sandboxed windows.
display_name: Apps
bundled: true
available_tools: []
tom:
enabled: true
type: platform
name: tom
description: Inject custom context into every turn via GOOSE_MOIM_MESSAGE_TEXT and GOOSE_MOIM_MESSAGE_FILE environment variables
display_name: Top Of Mind
bundled: true
available_tools: []
summon:
enabled: true
type: platform
name: summon
description: Load knowledge and delegate tasks to subagents
display_name: Summon
bundled: true
available_tools: []
analyze:
enabled: true
type: platform
name: analyze
description: 'Analyze code structure with tree-sitter: directory overviews, file details, symbol call graphs'
display_name: Analyze
bundled: true
available_tools: []
summarize:
enabled: false
type: platform
name: summarize
description: Load files/directories and get an LLM summary in a single call
display_name: Summarize
bundled: true
available_tools: []
orchestrator:
enabled: false
type: platform
name: orchestrator
description: 'Manage agent sessions: list, view, start, send messages, interrupt, and stop agents'
display_name: Orchestrator
bundled: true
available_tools: []
autovisualiser:
enabled: false
type: builtin
name: autovisualiser
description: Data visualization and UI generation tools
display_name: Auto Visualiser
timeout: 300
bundled: true
available_tools: []
tutorial:
enabled: false
type: builtin
name: tutorial
description: Access interactive tutorials and guides
display_name: Tutorial
timeout: 300
bundled: true
available_tools: []
GOOSE_TELEMETRY_ENABLED: false
OLLAMA_HOST: 192.168.33.74:11434
CHATGPT_CODEX_REASONING_EFFORT: medium
providers:
chatgpt_codex:
enabled: true
model: gpt-5.5
configured: true
github_copilot:
enabled: true
model: gpt-5-mini
configured: true
custom_opencode_zen:
enabled: true
model: north-mini-code-free
configured: true
ollama:
enabled: true
model: qwen3.6:35b
configured: true
custom_sagacity:
enabled: true
model: gemma4:31b
configured: true
custom_opencode_go:
enabled: true
model: mimo-v2.5-pro
configured: true
opencode_go:
enabled: true
model: deepseek-v4-flash
configured: true
custom_allears:
enabled: true
model: qwen3.6:35b
configured: true
custom_obelix:
enabled: true
model: north-mini-code-1.0
configured: true
custom_dupont:
enabled: true
model: north-mini-code-1.0
configured: true
active_provider: opencode_go
GOOSE_THINKING_EFFORT: off
voice_dictation_provider: openai
GOOSE_MODE: auto
OLLAMA_TIMEOUT: '600'
SECURITY_PROMPT_ENABLED: false
SECURITY_PROMPT_CLASSIFIER_ENABLED: false
SECURITY_PROMPT_CLASSIFIER_MODEL: ''
OPENAI_BASE_URL: https://opencode.ai/zen/go/
OPENAI_HOST: https://api.openai.com
OPENAI_BASE_PATH: v1/chat/completions
OPENAI_TIMEOUT: '600'
+15
View File
@@ -0,0 +1,15 @@
onboarding = false
[ui]
show_agent_labels_on_pane_borders = true
pane_gaps = false
pane_borders = true
[experimental]
pane_history = true
[theme]
name = "gruvbox"
auto_switch = false
[keys]
prefix = "ctrl+space"
+8 -1
View File
@@ -10,6 +10,7 @@ copilot-cli = "latest"
"github:danielmiessler/fabric" = "latest"
"github:mrusme/reader" = "latest"
"github:ulyssa/iamb" = "latest"
"github:zed-industries/codex-acp" = "latest"
herdr = "latest"
"npm:@earendil-works/pi-coding-agent" = "latest"
"npm:mermaid-cli" = "latest"
@@ -25,10 +26,16 @@ run = [
'pi install npm:@tintinweb/pi-subagents',
'pi install npm:context-mode',
'pi install npm:@gotgenes/pi-permission-system',
'test -x /usr/bin/pass && /usr/bin/pass show agent/pi/auth.json > ~/.pi/agent/auth.json'
'test -x /usr/bin/pass && /usr/bin/pass show config/pi/auth.json > ~/.pi/agent/auth.json'
]
[tasks.setup_nvim]
run = [
'uv tool install vectorcode'
]
[tasks.skills]
run = [
'npx skills add SjB/skills',
'npx skills add mattpocock/skills'
]
+21
View File
@@ -0,0 +1,21 @@
config_version = "0.0.25"
[transcription]
provider = "whisper"
model = "small"
[audio]
device = "default"
output_format = "mp3 -ab 16k -ar 12000"
peak_volume_threshold = 90
reference_level_db = -20
visualization = "spectrum"
[popup]
#terminal = "foot"
borderless = true
font_size = 25
height = 15
width = 90
x = 630
y = 790
@@ -0,0 +1,24 @@
{
"permission": {
"*": "ask",
"path": {
"./*": "allow",
"./.*": "allow",
"~/.ssh/*": "deny",
"*.env": "deny",
"*.env.*": "deny",
"*.env.example": "allow"
},
"bash": {
"*": "ask",
"rm -rf *": "deny",
"sudo *": "ask"
},
"external_directory": {
"*": "deny"
}
},
"debugLog": false,
"permissionReviewLog": true,
"yoloMode": true
}
+104 -57
View File
@@ -1,61 +1,108 @@
{
"providers": {
"dupont": {
"baseUrl": "http://172.25.11.30/v1",
"api": "openai-completions",
"models": [
{
"id": "north-mini-code",
"name": "north-mini-code",
"reasoning": true,
"input": ["text"],
"contextWindow": 128000,
"maxTokens": 128000,
"cost": { "input": 1, "output": 1, "cacheRead": 1, "cacheWrite": 1 }
"providers": {
"dupont": {
"baseUrl": "http://172.25.11.30/v1",
"api": "openai-completions",
"models": [
{
"id": "glm-4.7-flash",
"name": "glm-4.7-flash",
"reasoning": true,
"input": [
"text"
],
"contextWindow": 131072,
"maxTokens": 131072,
"cost": {
"input": 1,
"output": 1,
"cacheRead": 1,
"cacheWrite": 1
}
}
],
"compat": {
"supportsDeveloperRole": true,
"supportsReasoningEffort": true
}
},
"obelix": {
"baseUrl": "http://172.25.11.32/v1",
"api": "openai-completions",
"models": [
{
"id": "ornith-1.0-35B",
"name": "ornith-1.0-35B",
"reasoning": true,
"input": [
"text"
],
"contextWindow": 131072,
"maxTokens": 131072,
"cost": {
"input": 1,
"output": 1,
"cacheRead": 1,
"cacheWrite": 1
}
}
],
"compat": {
"supportsDeveloperRole": true,
"supportsReasoningEffort": true
}
},
"bianca": {
"baseUrl": "http://172.25.11.33/v1",
"api": "openai-completions",
"models": [
{
"id": "gemma-4-12B-coder",
"name": "gemma-4-12B-coder",
"reasoning": true,
"input": [
"text"
],
"contextWindow": 128000,
"maxTokens": 65536,
"cost": {
"input": 1,
"output": 1,
"cacheRead": 1,
"cacheWrite": 1
}
}
],
"compat": {
"supportsDeveloperRole": true,
"supportsReasoningEffort": true
}
},
"cloudflare": {
"baseUrl": "https://api.cloudflare.com/client/v4/accounts/e54fa0b493ef3bef55746b1de8d33693/ai/v1",
"api": "openai-completions",
"models": [
{
"id": "@cf/zai-org/glm-5.2",
"name": "@cf/zai-org/glm-5.2",
"reasoning": true,
"input": [
"text"
],
"contextWindow": 256000,
"maxTokens": 256000,
"cost": {
"input": 1,
"output": 1,
"cacheRead": 1,
"cacheWrite": 1
}
}
],
"compat": {
"supportsDeveloperRole": true,
"supportsReasoningEffort": true
}
}
],
"compat": {
"supportsDeveloperRole": true,
"supportsReasoningEffort": true
}
},
"bianca": {
"baseUrl": "http://172.25.11.33/v1",
"api": "openai-completions",
"models": [
{
"id": "gemma-4-12B-coder",
"name": "gemma-4-12B-coder",
"reasoning": true,
"input": ["text"],
"contextWindow": 128000,
"maxTokens": 65536,
"cost": { "input": 1, "output": 1, "cacheRead": 1, "cacheWrite": 1 }
}
],
"compat": {
"supportsDeveloperRole": true,
"supportsReasoningEffort": true
}
},
"cloudflare": {
"baseUrl": "https://api.cloudflare.com/client/v4/accounts/e54fa0b493ef3bef55746b1de8d33693/ai/v1",
"api": "openai-completions",
"models": [
{
"id": "@cf/zai-org/glm-5.2",
"name": "@cf/zai-org/glm-5.2",
"reasoning": true,
"input": ["text"],
"contextWindow": 256000,
"maxTokens": 256000,
"cost": { "input": 1, "output": 1, "cacheRead": 1, "cacheWrite": 1 }
}
],
"compat": {
"supportsDeveloperRole": true,
"supportsReasoningEffort": true
}
}
}
}
+13
View File
@@ -0,0 +1,13 @@
{
"enabled": true,
"searchEnabled": true,
"fetchEnabled": true,
"providerOverrides": {
"claude-bridge": {
"searchEnabled": false
},
"opencode": {
"searchEnabled": true
}
}
}
+50 -7
View File
@@ -1,19 +1,62 @@
{
"lastChangelogVersion": "0.80.10",
"lastChangelogVersion": "0.80.7",
"theme": "light/dark",
"defaultProvider": "opencode-go",
"defaultModel": "deepseek-v4-flash",
"defaultThinkingLevel": "high",
"defaultProvider": "github-copilot",
"defaultModel": "gpt-5-mini",
"defaultThinkingLevel": "minimal",
"hideThinkingBlock": true,
"compaction": {
"enabled": true
},
"thinkingLevelMap": {
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": null,
"max": "max"
},
"enableInstallTelemetry": false,
"enabledModels": [
"opencode-go/qwen3.7-plus",
"opencode-go/deepseek-v4-pro",
"opencode-go/deepseek-v4-flash",
"opencode-go/kimi-k2.7-code",
"openai-codex/gpt-5.4",
"openai-codex/gpt-5.4-mini",
"openai-codex/gpt-5.3-codex-spark",
"obelix/ornith-1.0-35B",
"dupont/glm-4.7-flash",
"github-copilot/gpt-5-mini",
"github-copilot/mai-code-1-flash-picker"
],
"packages": [
"npm:pi-lens",
"npm:@gotgenes/pi-permission-system",
"npm:pi-native-search",
"npm:@tintinweb/pi-subagents",
"npm:context-mode",
"npm:@gotgenes/pi-permission-system"
]
"npm:@tintinweb/pi-subagents"
],
"subagents": {
"agentOverrides": {
"reviewer": {
"model": "opencode-go/mimo-v2.5-pro",
"fallbackModels": [
"openai/gpt-5-mini"
]
},
"planner": {
"model": "opencode-go/qwen3.7-plus"
},
"worker": {
"model": "opencode-go/kimi-k2.7-code"
},
"oracle": {
"model": "opencode-go/qwen3.7-max",
"thinking": "high"
}
}
},
"quietStartup": true,
"steeringMode": "all"
}
-2
View File
@@ -1,3 +1 @@
SetEnv TERM=xterm-256color
+1 -1
View File
@@ -2,7 +2,7 @@ worktree-path = "{{ repo_path }}/../wt-{{ branch | sanitize }}"
[commit.generation]
command = "opencode run -m github-copilot/gpt-5-mini --variant fast"
command = "pi --model github-copilot/gpt-5-mini -p"
[post-create]
misetrust = "mise trust"
+20
View File
@@ -0,0 +1,20 @@
{
"activeProvider": "chatgpt",
"providers": [
{
"name": "chatgpt",
"provider_kind": "openai-compatible",
"catalogID": "chatgpt",
"baseURL": "https://chatgpt.com/backend-api/codex",
"apiFormat": "chat-completions",
"model": "gpt-5.5"
}
],
"mcp": {},
"sandbox": {},
"notify": {},
"tools": {},
"swarm": {},
"preferences": {},
"keybindings": {}
}