1# SPDX-FileCopyrightText: Amolith <amolith@secluded.site>
2#
3# SPDX-License-Identifier: Unlicense
4
5# Provide basic usage information for the wrapper itself
6# Suggest known agents and interactive mode for the first argument
7complete -c synu -n "not __fish_seen_subcommand_from i claude opencode aider llxprt qwen crush amp octo codex" \
8 -a "i" -d "Interactive model selection"
9complete -c synu -n "not __fish_seen_subcommand_from i claude opencode aider llxprt qwen crush amp octo codex" \
10 -a "claude opencode aider llxprt qwen crush amp octo codex" -d "AI agent to wrap"
11
12# After "i" subcommand, suggest agents
13complete -c synu -n "__fish_seen_subcommand_from i; and not __fish_seen_subcommand_from claude opencode aider llxprt qwen crush amp octo codex" \
14 -a "claude opencode aider llxprt qwen crush amp octo codex" -d "AI agent"
15
16# Claude-specific flags (when claude is the agent)
17complete -c synu -n "__fish_seen_subcommand_from claude" \
18 -s L -l large -r -d "Override Opus, Sonnet, and Sub-agent models"
19complete -c synu -n "__fish_seen_subcommand_from claude" \
20 -s l -l light -r -d "Override Haiku model"
21complete -c synu -n "__fish_seen_subcommand_from claude" \
22 -s o -l opus -r -d "Override Opus model"
23complete -c synu -n "__fish_seen_subcommand_from claude" \
24 -s s -l sonnet -r -d "Override Sonnet model"
25complete -c synu -n "__fish_seen_subcommand_from claude" \
26 -s H -l haiku -r -d "Override Haiku model"
27complete -c synu -n "__fish_seen_subcommand_from claude" \
28 -s a -l agent -r -d "Override Sub-agent model"
29
30# Inherit claude completions for claude subcommand
31complete -c synu -n "__fish_seen_subcommand_from claude" -w claude
32
33# OpenCode-specific flags (when opencode is the agent)
34complete -c synu -n "__fish_seen_subcommand_from opencode" \
35 -s m -l model -r -d "Override model"
36
37# Aider-specific flags (when aider is the agent)
38# Note: no short flags to avoid collision with aider's -m (--message) and -e (--env-file)
39complete -c synu -n "__fish_seen_subcommand_from aider" \
40 -l model -r -d "Main model"
41complete -c synu -n "__fish_seen_subcommand_from aider" \
42 -l editor-model -r -d "Editor model (enables architect + editor mode)"
43
44# llxprt-specific flags (when llxprt is the agent)
45complete -c synu -n "__fish_seen_subcommand_from llxprt" \
46 -s m -l model -r -d "Override model"
47
48# Qwen Code-specific flags (when qwen is the agent)
49complete -c synu -n "__fish_seen_subcommand_from qwen" \
50 -s m -l model -r -d "Override model"