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
2 changes: 1 addition & 1 deletion agents/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ grok --agent overlay -p "grokhunter not on PATH after overlay-only"
grok --agent ship -p "Cut 1.0.10 from Unreleased"
grok --agent docs -p "FAQ still says git-identity needs gh"
grok --agent models -p "models=no after overlay-only"
grokhunter modeler -p "Install V9 pickers"
grokhunter modeler -p "Refresh grok-4.6 profile"
grok --agent ci -p "ci-unit failed on git-identity help"
grok --agent aider -p "aider-grok missing on Kali 3.13"
grok --agent session -p "Termux killed grok"
Expand Down
44 changes: 19 additions & 25 deletions agents/models.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,26 @@
---
name: models
description: >-
Models — Grok 4.6 catalog and V9 /model pickers for GrokHunter. Use for
"models=no", chat-expert/multi/auto, grok-4.5 leftovers, or profile merge.
Models — Grok 4.6 catalog default and NetHunter profile for GrokHunter.
Use for "models=no", legacy V9 picker cleanup, or profile merge.
prompt_mode: full
model: inherit
permission_mode: default
agents_md: true
---

You are Models, the Grok Build catalog and V9 picker specialist for GrokHunter.
You are Models, the Grok Build catalog / profile specialist for GrokHunter.

You own **`grokhunter models`**, `scripts/install_v9_grok_models.sh`, and the NetHunter profile merge. Binary missing/old is `grokhunter ensure` (skill `grokhunter`) — do not reimplement ensure.
You own **`grokhunter models`**, `scripts/install_v9_grok_models.sh` (cleanup only),
and the NetHunter profile merge. Binary missing/old is `grokhunter ensure`
(skill `grokhunter`) — do not reimplement ensure.

## Domain

| Topic | Home |
|-------|------|
| Pickers | `grokhunter models status\|install\|force` |
| Script | `scripts/install_v9_grok_models.sh` |
| Status / cleanup | `grokhunter models status\|clean\|install\|force` |
| Script | `scripts/install_v9_grok_models.sh` (removes retired V9 pickers) |
| Profile | `scripts/install_grok_profile.sh` · `config/grok-build.nethunter.toml` |
| Docs | `docs/GROK-46.md`, `docs/GROK-BUILD-1.0.md` |
| Default | `grok-4.6` · min binary **1.0.5** |
Expand All @@ -35,36 +37,28 @@ You own **`grokhunter models`**, `scripts/install_v9_grok_models.sh`, and the Ne
## Process

1. `grokhunter models status` and `grok --version`
2. Smallest fix: `models install` or `models force` or profile `--force`
3. Verify in-session `/model` IDs (chat-expert · multi · auto · grok-v9)
2. Smallest fix: `models clean` (if legacy V9) or profile `--force`
3. Confirm default remains **`grok-4.6`** (do not re-install V9 pickers)

## Common failures

| Symptom | Fix |
|---------|-----|
| `models=no` after overlay-only | `grokhunter models install` |
| `models=no` after overlay-only | `grokhunter ensure` / profile install |
| legacy V9 pickers present | `grokhunter models clean` |
| channel=alpha / 4.5 leftovers | `bash scripts/install_grok_profile.sh --force` |
| Binary < 1.0.5 | `grokhunter ensure` (not this agent) |

## Required output — Models card

```markdown
## Symptom
## Binary / profile / pickers
## Commands
## Verify
```
State default model, whether legacy pickers were cleaned, and next verify step.

## References
## Binary / profile / cleanup

- Skill: `grok-models`
- Docs: `docs/GROK-46.md`, `docs/GROK-BUILD-1.0.md`
- Templates: `agents/HANDOFF-TEMPLATES.md`
- Cross-index: `agents/REFERENCES.md`
- Role: `models`
- Prefer `grokhunter ensure` for binary + profile.
- `grokhunter models install|force` are **cleanup aliases** — they do not install pickers.
- Imagine (`grok-imagine-*`) is out of scope unless the user asks.

## Activation
> Models online — grok-4.6 profile.

> Models online — grok-4.6 / V9 pickers.

Ask whether they need pickers, profile, or binary if not given.
Ask whether they need profile, cleanup, or binary if not given.
72 changes: 40 additions & 32 deletions bin/grokhunter
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ Usage:
grokhunter setup [opts] One-shot lab sync (ensure + skills + optional models)
grokhunter menu [install|remove] Kali/XFCE Applications → GrokHunter submenu
grokhunter ensure Install/upgrade Grok Build binary
grokhunter models [cmd] V9 / 4.6 model pickers (install|status|force)
grokhunter models [cmd] Model profile status / clean legacy pickers (status|clean|install|force)
grokhunter skills [cmd] Install/status lab skills under ~/.grok/skills
grokhunter agents [cmd] List/status Coding Team agents
grokhunter team [prompt] Launch coding-team agent (TUI or -p headless)
Expand All @@ -172,7 +172,7 @@ Usage:
grokhunter overlay [prompt] Launch overlay/install agent
grokhunter ship [prompt] Launch release/ship agent
grokhunter docs [prompt] Launch docs agent
grokhunter modeler [prompt] Launch models/V9 agent (grok --agent models)
grokhunter modeler [prompt] Launch models agent (grok --agent models · grok-4.6 profile)
grokhunter ci [prompt] Launch CI agent
grokhunter aider [prompt] Launch aider-grok agent
grokhunter session [prompt] Launch tmux / grok-resume agent
Expand Down Expand Up @@ -262,9 +262,7 @@ cmd_status() {
fi
local models="no"
local cfg="${GROK_CONFIG:-${HOME}/.grok/config.toml}"
local marker="# --- GrokHunter: v9 specialist models"
local marker_legacy="# --- Grok Imagine Cinematic Studio: v9-4p5 specialist models"
if [[ -f "${cfg}" ]] && { grep -qF "${marker}" "${cfg}" 2>/dev/null || grep -qF "${marker_legacy}" "${cfg}" 2>/dev/null; }; then
if [[ -f "${cfg}" ]] && grep -qE 'default\s*=\s*"grok-4\.6"|^\[models\]' "${cfg}" 2>/dev/null; then
models="yes"
fi
local skills core_n
Expand Down Expand Up @@ -301,13 +299,13 @@ Usage: grokhunter setup [options]
One-shot lab sync for an existing clone / overlay:
1. grokhunter ensure (Grok Build ≥ 1.0.5 + NetHunter profile)
2. grokhunter skills install
3. optional: models install / Aider install
3. optional: models clean (legacy V9 pickers) / Aider install
4. git-identity set (if still placeholder)
5. grokhunter doctor (unless --no-doctor)

Options:
--force-grok Reinstall Grok even if present
--with-models Install V9 /model pickers
--with-models Clean legacy V9 /model pickers (no-op if already clean)
--with-aider Run scripts/install_aider.sh
--no-doctor Skip doctor summary
--yes Non-interactive (default)
Expand Down Expand Up @@ -350,16 +348,16 @@ EOF
echo

if [[ "${with_models}" -eq 1 ]]; then
echo "→ [3/4] V9 model pickers…"
echo "→ [3/4] clean legacy V9 /model pickers…"
local script
if script="$(_v9_script)"; then
bash "${script}" || echo " WARN: models install reported issues" >&2
bash "${script}" || echo " WARN: models clean reported issues" >&2
else
echo " WARN: install_v9_grok_models.sh missing" >&2
fi
echo
else
echo "→ [3/4] models skipped (pass --with-models)"
echo "→ [3/4] models skipped (pass --with-models to clean legacy pickers)"
echo
fi

Expand Down Expand Up @@ -715,17 +713,31 @@ cmd_models_status() {
local marker_legacy="# --- Grok Imagine Cinematic Studio: v9-4p5 specialist models"
echo "config: ${cfg}"
if [[ ! -f "${cfg}" ]]; then
echo "status: missing (no config.toml — run grok once, then: grokhunter models install)"
echo "status: missing (no config.toml — run: grokhunter ensure)"
return 1
fi
if { grep -qF "${marker}" "${cfg}" 2>/dev/null || grep -qF "${marker_legacy}" "${cfg}" 2>/dev/null; } \
&& grep -qE '^\[model\.(chat-expert|multi|auto|"chat-expert")' "${cfg}" 2>/dev/null; then
echo "status: installed (V9 / 4.6 picker surface present)"
echo " switch: /model chat-expert · multi · auto · grok-v9"
local has_default=0 has_legacy=0
if grep -qE 'default\s*=\s*"grok-4\.6"' "${cfg}" 2>/dev/null \
|| grep -qE '^\[models\]' "${cfg}" 2>/dev/null; then
has_default=1
fi
if grep -qF "${marker}" "${cfg}" 2>/dev/null \
|| grep -qF "${marker_legacy}" "${cfg}" 2>/dev/null \
|| grep -qE '^\[model\.(chat-expert|multi|auto|grok-v9)' "${cfg}" 2>/dev/null; then
has_legacy=1
fi
if [[ "${has_legacy}" -eq 1 ]]; then
echo "status: legacy V9 pickers present — run: grokhunter models clean"
echo " (or: grokhunter models install — now cleans)"
[[ "${has_default}" -eq 1 ]] && echo " default: grok-4.6 (or [models] section) present"
return 1
fi
if [[ "${has_default}" -eq 1 ]]; then
echo "status: ok (default grok-4.6 / [models] present; V9 pickers retired)"
return 0
fi
echo "status: incomplete or missing V9 pickers"
echo " fix: grokhunter models install"
echo "status: no grok-4.6 default yet"
echo " fix: grokhunter ensure # or: bash scripts/install_grok_profile.sh"
return 1
}

Expand All @@ -736,43 +748,39 @@ cmd_models() {
case "${sub}" in
help|-h|--help)
cat <<'EOF'
Usage: grokhunter models [install|status|force]
Usage: grokhunter models [status|clean|install|force]

install Write V9 / 4.6 model pickers into ~/.grok/config.toml
status Report whether pickers are present (default)
force Re-install pickers even if already complete
status Report grok-4.6 default / legacy V9 picker leftovers (default)
clean Remove legacy V9 /model pickers from ~/.grok/config.toml
install Alias for clean (pickers are retired; no longer installs them)
force Alias for clean

Script: scripts/install_v9_grok_models.sh
Default catalog model remains grok-4.6 (grokhunter ensure / profile).
Script: scripts/install_v9_grok_models.sh (cleanup only)
EOF
return 0
;;
status|--status)
cmd_models_status
return $?
;;
install)
clean|install|force|--force|--clean)
if ! script="$(_v9_script)"; then
echo "scripts/install_v9_grok_models.sh not found under ${GROKHUNTER_HOME}" >&2
exit 1
fi
exec bash "${script}" "$@"
;;
force|--force)
if ! script="$(_v9_script)"; then
echo "scripts/install_v9_grok_models.sh not found under ${GROKHUNTER_HOME}" >&2
exit 1
fi
exec bash "${script}" --force "$@"
exec bash "${script}" --clean "$@"
;;
*)
echo "Unknown models subcommand: ${sub}" >&2
echo "Usage: grokhunter models [install|status|force]" >&2
echo "Usage: grokhunter models [status|clean|install|force]" >&2
exit 2
;;
esac
}



cmd_git_identity() {
local sub="${1:-show}"
shift || true
Expand Down
14 changes: 10 additions & 4 deletions bin/grokhunter-doctor
Original file line number Diff line number Diff line change
Expand Up @@ -464,13 +464,19 @@ if [[ -f "${HOME}/.grok/config.toml" ]]; then
else
warn "compact_mode not true (optional UX)"
fi
if grep -qE 'default\s*=\s*"grok-4\.6"' "${HOME}/.grok/config.toml" 2>/dev/null \
|| grep -qE '^\[models\]' "${HOME}/.grok/config.toml" 2>/dev/null; then
ok "models default grok-4.6 / [models] present (grokhunter models status)"
else
warn "No grok-4.6 models default yet — grokhunter ensure"
WARN=1
fi
v9_marker="# --- GrokHunter: v9 specialist models"
v9_legacy="# --- Grok Imagine Cinematic Studio: v9-4p5 specialist models"
if grep -qF "${v9_marker}" "${HOME}/.grok/config.toml" 2>/dev/null \
|| grep -qF "${v9_legacy}" "${HOME}/.grok/config.toml" 2>/dev/null; then
ok "V9 / 4.6 model pickers present (grokhunter models status)"
else
warn "V9 pickers not installed — grokhunter models install"
|| grep -qF "${v9_legacy}" "${HOME}/.grok/config.toml" 2>/dev/null \
|| grep -qE '^\[model\.(chat-expert|multi|auto|grok-v9)' "${HOME}/.grok/config.toml" 2>/dev/null; then
warn "legacy V9 pickers present — grokhunter models clean"
WARN=1
fi
else
Expand Down
2 changes: 1 addition & 1 deletion config/completions/bash/grokhunter.bash
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ _grokhunter_completions() {
prev="${COMP_WORDS[COMP_CWORD-1]}"

local cmds="status doctor binds proot-binds setup sync boot ensure models skills agents team coding-team scout benjamin lucas harper review fix desktop overlay ship docs modeler ci aider session host mcp plugin flow storage editor hook shell github secrets toolchain tls net tookie menu git-identity credits ai-smoke smoke install plan help version"
local model_sub="install status force --force help"
local model_sub="status clean install force --force --clean help"
local skills_sub="install status help"
local agents_sub="status list help"
local identity_sub="show set help --name --email --local --global"
Expand Down
17 changes: 9 additions & 8 deletions config/completions/zsh/_grokhunter
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ _grokhunter() {
'sync:Alias for setup'
'boot:Alias for setup'
'ensure:Install or upgrade Grok Build binary'
'models:V9 / 4.5 model pickers'
'models:grok-4.6 profile / clean legacy V9 pickers'
'skills:Install/status lab skills (~/.grok/skills)'
'agents:List Coding Team agents'
'team:Launch coding-team agent'
Expand All @@ -26,7 +26,7 @@ _grokhunter() {
'overlay:Launch overlay/install agent'
'ship:Launch release/ship agent'
'docs:Launch docs agent'
'modeler:Launch models/V9 agent'
'modeler:Launch models agent (grok-4.6 profile)'
'ci:Launch CI agent'
'aider:Launch aider-grok agent'
'session:Launch tmux / grok-resume agent'
Expand Down Expand Up @@ -60,9 +60,10 @@ _grokhunter() {

local -a model_cmds
model_cmds=(
'install:Write V9 pickers into ~/.grok/config.toml'
'status:Show whether V9 pickers are installed'
'force:Force refresh of V9 pickers'
'status:Show grok-4.6 default / legacy V9 leftovers'
'clean:Remove legacy V9 /model pickers'
'install:Alias for clean (pickers retired)'
'force:Alias for clean'
'help:Models help'
)

Expand Down Expand Up @@ -99,7 +100,7 @@ _grokhunter() {
local -a setup_opts
setup_opts=(
'--force-grok[Reinstall Grok]'
'--with-models[Install V9 pickers]'
'--with-models[Clean legacy V9 pickers]'
'--with-aider[Install Aider]'
'--no-doctor[Skip doctor]'
'--yes[Non-interactive]'
Expand All @@ -120,8 +121,8 @@ _grokhunter() {
'--no-x11[Skip Termux:X11]'
'--with-aider[Install Aider]'
'--no-aider[Skip Aider]'
'--with-v9-models[Install V9 model pickers]'
'--no-v9-models[Skip V9 pickers]'
'--with-v9-models[Deprecated no-op (V9 pickers removed)]'
'--no-v9-models[Deprecated no-op (V9 pickers removed)]'
'--with-completions[Install shell completions]'
'--no-completions[Skip shell completions]'
'--overlay-only[Optional overlays only; no rootfs download]'
Expand Down
Loading
Loading