
___x_cmd_buse___runmain(){
    local model=""
    local headless=disable
    local mcp=disable

    while [ $# -gt 0 ]; do
        case "$1" in
            --model)    model="$2"; arg:2:shift ;;
            --headless) headless=enable;  shift ;;
            --mcp)      mcp=enable;       shift ;;
            *)          break ;;
        esac
    done

    [ -n "$model" ] || {
        model="$(___x_cmd buse --cur get model 2>/dev/null)"
        [ -n "$model" ] || model="gemini-2.0-flash"
    }
    [ -n "$headless" ] || headless="$(___x_cmd buse --cur get headless 2>/dev/null)"
    [ -n "$mcp" ]      || mcp="$(___x_cmd buse --cur get mcp 2>/dev/null)"

    [ "$headless" = "disable" ] || set - --headless
    [ "$mcp" = "disable" ]      || set - --mcp

    ___x_cmd_buse___run_ifset "$model" "$@"
}

___x_cmd_buse___run_ifset() {
    local model="$1";   shift
    case "$model" in
        gpt*)       [ -n "$OPENAI_API_KEY" ]    || OPENAI_API_KEY="$(___x_cmd openai --cur get apikey 2>/dev/null)"     ___x_cmd_buse___runcmd --model "$model" "$@" || return $? ;;
        gemini*)    [ -n "$GOOGLE_API_KEY" ]    || GOOGLE_API_KEY="$(___x_cmd gemini --cur get apikey 2>/dev/null)"     ___x_cmd_buse___runcmd --model "$model" "$@" || return $? ;;
        grok*)      [ -n "$GROK_API_KEY" ]      || GROK_API_KEY="$(___x_cmd grok --cur get apikey 2>/dev/null)"         ___x_cmd_buse___runcmd --model "$model" "$@" || return $? ;;
        deepseek*)  [ -n "$DEEPSEEK_API_KEY" ]  || DEEPSEEK_API_KEY="$(___x_cmd deepseek --cur get apikey 2>/dev/null)" ___x_cmd_buse___runcmd --model "$model" "$@" || return $? ;;
    esac
    ___x_cmd_buse___runcmd --model "$model" "$@"
}

# ___x_cmd_buse___run_export() {
#     case "$1" in
#         gpt*)       [ -n "$OPENAI_API_KEY" ]    || export OPENAI_API_KEY="$(___x_cmd openai --cur get apikey 2>/dev/null)"     ;;
#         gemini*)    [ -n "$GOOGLE_API_KEY" ]    || export GOOGLE_API_KEY="$(___x_cmd gemini --cur get apikey 2>/dev/null)"     ;;
#         grok*)      [ -n "$GROK_API_KEY" ]      || export GROK_API_KEY="$(___x_cmd grok --cur get apikey 2>/dev/null)"         ;;
#         deepseek*)  [ -n "$DEEPSEEK_API_KEY" ]  || export DEEPSEEK_API_KEY="$(___x_cmd deepseek --cur get apikey 2>/dev/null)" ;;
#     esac
# }

___x_cmd_buse___runcmd(){
    if ___x_cmd_hascmd browser-use; then
        ___x_cmd_buse___runcmd(){  ___x_cmd_cmds browser-use "$@"; }
    else
        ___x_cmd_buse___runcmd(){ ___x_cmd snap --run browser-use "$@" ; }
    fi || return $?
    ___x_cmd_buse___runcmd "$@"
}


