mirror of
https://github.com/headroomlabs-ai/headroom.git
synced 2026-08-27 14:17:10 -04:00
fix(cli): align native wrapper help and version flags
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
parent
777faa85a7
commit
4d9c281749
2 changed files with 50 additions and 13 deletions
|
|
@ -155,7 +155,7 @@ function Invoke-HeadroomDocker {
|
|||
param([string[]]$Arguments)
|
||||
|
||||
$dockerArgs = New-Object System.Collections.Generic.List[string]
|
||||
$dockerArgs.AddRange(@('run','--rm','-it'))
|
||||
$dockerArgs.AddRange([string[]]@('run','--rm','-it'))
|
||||
$dockerArgs.AddRange((Get-SharedDockerArgs))
|
||||
$dockerArgs.Add('--entrypoint')
|
||||
$dockerArgs.Add('headroom')
|
||||
|
|
@ -201,7 +201,7 @@ function Start-ProxyContainer {
|
|||
|
||||
$containerName = "headroom-proxy-$Port-$PID"
|
||||
$dockerArgs = New-Object System.Collections.Generic.List[string]
|
||||
$dockerArgs.AddRange(@('run','-d','--rm','--name',$containerName,'-p',"$Port`:$Port"))
|
||||
$dockerArgs.AddRange([string[]]@('run','-d','--rm','--name',$containerName,'-p',"$Port`:$Port"))
|
||||
$dockerArgs.AddRange((Get-SharedDockerArgs))
|
||||
$dockerArgs.Add($HeadroomImage)
|
||||
$dockerArgs.Add('--host')
|
||||
|
|
@ -269,6 +269,9 @@ function Test-HelpFlag {
|
|||
param([string[]]$Arguments)
|
||||
|
||||
foreach ($arg in $Arguments) {
|
||||
if ($arg -eq '--') {
|
||||
break
|
||||
}
|
||||
if ($arg -eq '--help' -or $arg -eq '-?') {
|
||||
return $true
|
||||
}
|
||||
|
|
@ -481,12 +484,12 @@ function Invoke-OpenClawPrepareEntryJson {
|
|||
)
|
||||
|
||||
$dockerArgs = New-Object System.Collections.Generic.List[string]
|
||||
$dockerArgs.AddRange(@('run','--rm'))
|
||||
$dockerArgs.AddRange([string[]]@('run','--rm'))
|
||||
$dockerArgs.AddRange((Get-SharedDockerArgs))
|
||||
$dockerArgs.Add('--entrypoint')
|
||||
$dockerArgs.Add('headroom')
|
||||
$dockerArgs.Add($HeadroomImage)
|
||||
$dockerArgs.AddRange(@('wrap','openclaw','--prepare-only','--proxy-port',"$($Parsed.ProxyPort)",'--startup-timeout-ms',"$($Parsed.StartupTimeoutMs)"))
|
||||
$dockerArgs.AddRange([string[]]@('wrap','openclaw','--prepare-only','--proxy-port',"$($Parsed.ProxyPort)",'--startup-timeout-ms',"$($Parsed.StartupTimeoutMs)"))
|
||||
if ($ExistingEntryJson) {
|
||||
$dockerArgs.Add('--existing-entry-json')
|
||||
$dockerArgs.Add($ExistingEntryJson)
|
||||
|
|
@ -515,12 +518,12 @@ function Invoke-OpenClawPrepareUnwrapEntryJson {
|
|||
param([string]$ExistingEntryJson)
|
||||
|
||||
$dockerArgs = New-Object System.Collections.Generic.List[string]
|
||||
$dockerArgs.AddRange(@('run','--rm'))
|
||||
$dockerArgs.AddRange([string[]]@('run','--rm'))
|
||||
$dockerArgs.AddRange((Get-SharedDockerArgs))
|
||||
$dockerArgs.Add('--entrypoint')
|
||||
$dockerArgs.Add('headroom')
|
||||
$dockerArgs.Add($HeadroomImage)
|
||||
$dockerArgs.AddRange(@('unwrap','openclaw','--prepare-only'))
|
||||
$dockerArgs.AddRange([string[]]@('unwrap','openclaw','--prepare-only'))
|
||||
if ($ExistingEntryJson) {
|
||||
$dockerArgs.Add('--existing-entry-json')
|
||||
$dockerArgs.Add($ExistingEntryJson)
|
||||
|
|
@ -883,14 +886,14 @@ function Invoke-PrepareOnly {
|
|||
)
|
||||
|
||||
$dockerArgs = New-Object System.Collections.Generic.List[string]
|
||||
$dockerArgs.AddRange(@('run','--rm','-it'))
|
||||
$dockerArgs.AddRange([string[]]@('run','--rm','-it'))
|
||||
$dockerArgs.AddRange((Get-SharedDockerArgs))
|
||||
$dockerArgs.Add('--env')
|
||||
$dockerArgs.Add("HEADROOM_RTK_TARGET=$(Get-RtkTarget)")
|
||||
$dockerArgs.Add('--entrypoint')
|
||||
$dockerArgs.Add('headroom')
|
||||
$dockerArgs.Add($HeadroomImage)
|
||||
$dockerArgs.AddRange(@('wrap',$Tool,'--prepare-only'))
|
||||
$dockerArgs.AddRange([string[]]@('wrap',$Tool,'--prepare-only'))
|
||||
foreach ($arg in $KnownArgs) {
|
||||
$dockerArgs.Add($arg)
|
||||
}
|
||||
|
|
@ -910,6 +913,11 @@ if ($args.Count -eq 0) {
|
|||
|
||||
switch ($args[0]) {
|
||||
'wrap' {
|
||||
if ($args.Count -eq 1 -or $args[1] -eq '--help' -or $args[1] -eq '-?') {
|
||||
Invoke-HeadroomDocker -Arguments @('wrap','--help')
|
||||
exit 0
|
||||
}
|
||||
|
||||
if ($args.Count -lt 2) {
|
||||
Fail 'Usage: headroom wrap <claude|codex|aider|cursor|openclaw> [...]'
|
||||
}
|
||||
|
|
@ -928,12 +936,18 @@ switch ($args[0]) {
|
|||
exit 0
|
||||
}
|
||||
|
||||
if (Test-HelpFlag -Arguments $wrapArgs) {
|
||||
$helpArgs = @('wrap', $tool) + $wrapArgs
|
||||
Invoke-HeadroomDocker -Arguments $helpArgs
|
||||
exit 0
|
||||
}
|
||||
|
||||
$parsed = Parse-WrapArgs -Arguments $wrapArgs
|
||||
$proxyArgs = New-Object System.Collections.Generic.List[string]
|
||||
if ($parsed.Learn) { $proxyArgs.Add('--learn') }
|
||||
if ($parsed.Backend) { $proxyArgs.AddRange(@('--backend', $parsed.Backend)) }
|
||||
if ($parsed.Anyllm) { $proxyArgs.AddRange(@('--anyllm-provider', $parsed.Anyllm)) }
|
||||
if ($parsed.Region) { $proxyArgs.AddRange(@('--region', $parsed.Region)) }
|
||||
if ($parsed.Backend) { $proxyArgs.AddRange([string[]]@('--backend', $parsed.Backend)) }
|
||||
if ($parsed.Anyllm) { $proxyArgs.AddRange([string[]]@('--anyllm-provider', $parsed.Anyllm)) }
|
||||
if ($parsed.Region) { $proxyArgs.AddRange([string[]]@('--region', $parsed.Region)) }
|
||||
|
||||
switch ($tool) {
|
||||
'claude' { }
|
||||
|
|
@ -990,6 +1004,11 @@ switch ($args[0]) {
|
|||
}
|
||||
}
|
||||
'unwrap' {
|
||||
if ($args.Count -eq 1 -or $args[1] -eq '--help' -or $args[1] -eq '-?') {
|
||||
Invoke-HeadroomDocker -Arguments @('unwrap','--help')
|
||||
exit 0
|
||||
}
|
||||
|
||||
if ($args.Count -ge 2 -and $args[1] -eq 'openclaw') {
|
||||
$unwrapArgs = if ($args.Count -gt 2) { $args[2..($args.Count - 1)] } else { @() }
|
||||
if (Test-HelpFlag -Arguments $unwrapArgs) {
|
||||
|
|
@ -1019,7 +1038,7 @@ switch ($args[0]) {
|
|||
}
|
||||
|
||||
$dockerArgs = New-Object System.Collections.Generic.List[string]
|
||||
$dockerArgs.AddRange(@('run','--rm','-it','-p',"$port`:$port"))
|
||||
$dockerArgs.AddRange([string[]]@('run','--rm','-it','-p',"$port`:$port"))
|
||||
$dockerArgs.AddRange((Get-SharedDockerArgs))
|
||||
$dockerArgs.Add('--entrypoint')
|
||||
$dockerArgs.Add('headroom')
|
||||
|
|
|
|||
|
|
@ -133,7 +133,7 @@ append_common_container_args() {
|
|||
ref+=(--user "$(id -u):$(id -g)")
|
||||
fi
|
||||
|
||||
append_passthrough_envs ref
|
||||
append_passthrough_envs "$1"
|
||||
}
|
||||
|
||||
append_tty_args() {
|
||||
|
|
@ -341,6 +341,9 @@ run_host_tool() {
|
|||
contains_help_flag() {
|
||||
local arg
|
||||
for arg in "$@"; do
|
||||
if [[ "${arg}" == "--" ]]; then
|
||||
break
|
||||
fi
|
||||
if [[ "${arg}" == "--help" || "${arg}" == "-?" ]]; then
|
||||
return 0
|
||||
fi
|
||||
|
|
@ -793,6 +796,11 @@ main() {
|
|||
|
||||
case "$1" in
|
||||
wrap)
|
||||
if (($# == 1)) || [[ "$2" == "--help" || "$2" == "-?" ]]; then
|
||||
run_headroom wrap --help
|
||||
return
|
||||
fi
|
||||
|
||||
(($# >= 2)) || die "Usage: headroom wrap <claude|codex|aider|cursor|openclaw> [...]"
|
||||
local tool="$2"
|
||||
shift 2
|
||||
|
|
@ -806,6 +814,11 @@ main() {
|
|||
return
|
||||
fi
|
||||
|
||||
if contains_help_flag "$@"; then
|
||||
run_headroom wrap "${tool}" "$@"
|
||||
return
|
||||
fi
|
||||
|
||||
local known_args host_args port no_rtk no_proxy learn backend anyllm region
|
||||
parse_wrap_args known_args host_args port no_rtk no_proxy learn backend anyllm region "$@"
|
||||
|
||||
|
|
@ -874,6 +887,11 @@ EOF
|
|||
esac
|
||||
;;
|
||||
unwrap)
|
||||
if (($# == 1)) || [[ "$2" == "--help" || "$2" == "-?" ]]; then
|
||||
run_headroom unwrap --help
|
||||
return
|
||||
fi
|
||||
|
||||
if (($# >= 2)) && [[ "$2" == "openclaw" ]]; then
|
||||
shift 2
|
||||
if contains_help_flag "$@"; then
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue