Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions fish/conf.d/10-core.fish
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,12 @@ else
alias la 'ls -lah -A'
end

# gs sync installs the Gentle stack from main, so every host follows the beta
# channel for gentle-ai install/upgrade and engram downloads.
if not set -q GENTLE_AI_CHANNEL; or test -z "$GENTLE_AI_CHANNEL"
set -gx GENTLE_AI_CHANNEL beta
end

# gentle-ai's managed launchers (OpenCode background subagents) must win on PATH;
# gentle-ai cannot persist PATH for fish login shells by itself.
if test -d "$HOME/.gentle-ai/bin"
Expand Down
2 changes: 2 additions & 0 deletions fish/conf.d/99-local.fish.example
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,5 @@
# set -gx GS_SYNC_AGENTS claude-code,opencode,pi
# Binaries only, no managed-config sync:
# set -gx GS_SKIP_AI_SYNC 1
# 10-core.fish defaults GENTLE_AI_CHANNEL to beta; override only on a host that must differ:
# set -gx GENTLE_AI_CHANNEL stable
6 changes: 6 additions & 0 deletions fish/tests/w7-gentle-ai-path.fish
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,11 @@ test (count (string match -a -- "$ws/with/.gentle-ai/bin" (string split '|' -- "
set -l without (env -i HOME="$ws/without" PATH=/usr/bin:/bin "$fish_bin" --no-config -c "$probe" "$core")
string match -q '*gentle-ai*' -- "$without"; and fail "missing launcher dir added to PATH: $without"

# Every host follows the beta channel (gs sync installs from main); a host may override.
set -l channel (env -i HOME="$ws/without" PATH=/usr/bin:/bin "$fish_bin" --no-config -c 'source $argv[1]; echo $GENTLE_AI_CHANNEL' "$core")
test "$channel" = beta; or fail "GENTLE_AI_CHANNEL default (expected beta, got '$channel')"
set -l override (env -i HOME="$ws/without" PATH=/usr/bin:/bin GENTLE_AI_CHANNEL=stable "$fish_bin" --no-config -c 'source $argv[1]; echo $GENTLE_AI_CHANNEL' "$core")
test "$override" = stable; or fail "GENTLE_AI_CHANNEL override not kept (got '$override')"

rm -rf -- "$ws"
printf 'gentle-ai path checks passed\n'
Loading