Files
openclaw/completions/openclaw.bash
T
hyowons 549545bde6 Initial commit: OpenClaw 워크스페이스 버전관리 시작
설정·스크립트·스킬·문서·큐레이션 메모리 추적.
시크릿(credentials/identity)·런타임 상태(state/logs/sessions/sqlite)·
백업(clobbered/bak)·dream 캐시는 .gitignore로 제외.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 15:10:57 +09:00

283 lines
12 KiB
Bash

_openclaw_completion() {
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
# Simple top-level completion for now
opts="completion crestodian setup onboard configure config backup migrate doctor dashboard reset uninstall message mcp agent agents status health sessions tasks acp gateway daemon logs system models infer approvals exec-policy nodes devices node sandbox tui cron dns docs proxy hooks webhooks qr clawbot browser memory pairing plugins channels directory security secrets skills update -V, --container --dev --profile --log-level --no-color"
case "${prev}" in
completion)
opts=" -s, -i, --write-state -y,"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
crestodian)
opts=" -m, --yes --json"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
setup)
opts=" --workspace --wizard --non-interactive --mode --import-from --import-source --import-secrets --remote-url --remote-token"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
onboard)
opts=" --workspace --reset --reset-scope --non-interactive --modern --accept-risk --flow --mode --auth-choice --token-provider --token --token-profile-id --token-expires-in --secret-input-mode --cloudflare-ai-gateway-account-id --cloudflare-ai-gateway-gateway-id --alibaba-model-studio-api-key --anthropic-api-key --arceeai-api-key --openrouter-api-key --byteplus-api-key --cerebras-api-key --chutes-api-key --cloudflare-ai-gateway-api-key --comfy-api-key --deepinfra-api-key --deepseek-api-key --fal-api-key --fireworks-api-key --github-copilot-token --gemini-api-key --huggingface-api-key --kilocode-api-key --kimi-code-api-key --litellm-api-key --lmstudio-api-key --minimax-api-key --mistral-api-key --moonshot-api-key --nvidia-api-key --openai-api-key --opencode-zen-api-key --opencode-go-api-key --qianfan-api-key --modelstudio-standard-api-key-cn --modelstudio-standard-api-key --modelstudio-api-key-cn --modelstudio-api-key --runway-api-key --stepfun-api-key --synthetic-api-key --tokenhub-api-key --together-api-key --venice-api-key --ai-gateway-api-key --volcengine-api-key --vydra-api-key --xai-api-key --xiaomi-api-key --zai-api-key --custom-base-url --custom-api-key --custom-model-id --custom-provider-id --custom-compatibility --custom-image-input --custom-text-input --gateway-port --gateway-bind --gateway-auth --gateway-token --gateway-token-ref-env --gateway-password --remote-url --remote-token --tailscale --tailscale-reset-on-exit --install-daemon --no-install-daemon --skip-daemon --daemon-runtime --skip-channels --skip-skills --skip-bootstrap --skip-search --skip-health --skip-ui --node-manager --import-from --import-source --import-secrets --json"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
configure)
opts=" --section"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
config)
opts="get set unset file schema validate --section"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
backup)
opts="create verify "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
migrate)
opts="list plan apply --from --include-secrets --overwrite --dry-run --yes --backup-output --no-backup --force --json"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
doctor)
opts=" --no-workspace-suggestions --yes --repair --fix --force --non-interactive --generate-gateway-token --deep"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
dashboard)
opts=" --no-open"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
reset)
opts=" --scope --yes --non-interactive --dry-run"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
uninstall)
opts=" --service --state --workspace --app --all --yes --non-interactive --dry-run"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
message)
opts="send broadcast poll react reactions read edit delete pin unpin pins permissions search thread emoji sticker role channel member voice event timeout kick ban "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
mcp)
opts="serve list show set unset "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
agent)
opts=" -m, -t, --session-id --agent --model --thinking --verbose --channel --reply-to --reply-channel --reply-account --local --deliver --json --timeout"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
agents)
opts="list bindings bind unbind add set-identity delete "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
status)
opts=" --json --all --usage --deep --timeout --verbose --debug"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
health)
opts=" --json --timeout --verbose --debug"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
sessions)
opts="cleanup --json --verbose --store --agent --all-agents --active"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
tasks)
opts="list audit maintenance show notify cancel flow --json --runtime --status"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
acp)
opts="client --url --token --token-file --password --password-file --session --session-label --require-existing --reset-session --no-prefix-cwd --provenance -v,"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
gateway)
opts="run status install uninstall start stop restart call usage-cost health stability diagnostics probe discover --port --bind --token --auth --password --password-file --tailscale --tailscale-reset-on-exit --allow-unconfigured --dev --reset --force --verbose --cli-backend-logs --claude-cli-logs --ws-log --compact --raw-stream --raw-stream-path"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
daemon)
opts="status install uninstall start stop restart "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
logs)
opts=" --limit --max-bytes --follow --interval --json --plain --no-color --local-time --url --token --timeout --expect-final"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
system)
opts="event heartbeat presence "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
models)
opts="list status set set-image aliases fallbacks image-fallbacks scan auth --status-json --status-plain --agent"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
infer)
opts="list inspect model image audio tts video web embedding "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
approvals)
opts="get set allowlist "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
exec-policy)
opts="show preset set "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
nodes)
opts="status describe list pending approve reject remove rename invoke notify push canvas camera screen location "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
devices)
opts="list remove clear approve reject rotate revoke "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
node)
opts="run status install uninstall stop start restart "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
sandbox)
opts="list recreate explain "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
tui)
opts=" --local --url --token --password --session --deliver --thinking --message --timeout-ms --history-limit"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
cron)
opts="status list add rm enable disable show runs run edit "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
dns)
opts="setup "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
docs)
opts=" "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
proxy)
opts="start run coverage sessions query blob purge "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
hooks)
opts="list info check enable disable relay install update "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
webhooks)
opts="gmail "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
qr)
opts=" --remote --url --public-url --token --password --setup-code-only --no-ascii --json"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
clawbot)
opts="qr "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
browser)
opts="status start stop reset-profile tabs tab open focus close profiles create-profile delete-profile doctor screenshot snapshot navigate resize click click-coords type press hover scrollintoview drag select upload waitfordownload download dialog fill wait evaluate console pdf responsebody highlight errors requests trace cookies storage set --browser-profile --json --url --token --timeout --expect-final"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
memory)
opts="status index search promote promote-explain rem-harness rem-backfill "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
pairing)
opts="list approve "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
plugins)
opts="list inspect enable disable uninstall install update registry doctor marketplace "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
channels)
opts="list status capabilities resolve logs add remove login logout "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
directory)
opts="self peers groups "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
security)
opts="audit "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
secrets)
opts="reload audit configure apply "
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
skills)
opts="search install update list info check --agent"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
update)
opts="wizard status --json --no-restart --dry-run --channel --tag --timeout --yes"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
esac
if [[ ${cur} == -* ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
fi
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
}
complete -F _openclaw_completion openclaw