openclaw/src/cli
Josh Avant 806803b7ef
feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580)
* feat(secrets): expand secret target coverage and gateway tooling

* docs(secrets): align gateway and CLI secret docs

* chore(protocol): regenerate swift gateway models for secrets methods

* fix(config): restore talk apiKey fallback and stabilize runner test

* ci(windows): reduce test worker count for shard stability

* ci(windows): raise node heap for test shard stability

* test(feishu): make proxy env precedence assertion windows-safe

* fix(gateway): resolve auth password SecretInput refs for clients

* fix(gateway): resolve remote SecretInput credentials for clients

* fix(secrets): skip inactive refs in command snapshot assignments

* fix(secrets): scope gateway.remote refs to effective auth surfaces

* fix(secrets): ignore memory defaults when enabled agents disable search

* fix(secrets): honor Google Chat serviceAccountRef inheritance

* fix(secrets): address tsgo errors in command and gateway collectors

* fix(secrets): avoid auth-store load in providers-only configure

* fix(gateway): defer local password ref resolution by precedence

* fix(secrets): gate telegram webhook secret refs by webhook mode

* fix(secrets): gate slack signing secret refs to http mode

* fix(secrets): skip telegram botToken refs when tokenFile is set

* fix(secrets): gate discord pluralkit refs by enabled flag

* fix(secrets): gate discord voice tts refs by voice enabled

* test(secrets): make runtime fixture modes explicit

* fix(cli): resolve local qr password secret refs

* fix(cli): fail when gateway leaves command refs unresolved

* fix(gateway): fail when local password SecretRef is unresolved

* fix(gateway): fail when required remote SecretRefs are unresolved

* fix(gateway): resolve local password refs only when password can win

* fix(cli): skip local password SecretRef resolution on qr token override

* test(gateway): cast SecretRef fixtures to OpenClawConfig

* test(secrets): activate mode-gated targets in runtime coverage fixture

* fix(cron): support SecretInput webhook tokens safely

* fix(bluebubbles): support SecretInput passwords across config paths

* fix(msteams): make appPassword SecretInput-safe in onboarding/token paths

* fix(bluebubbles): align SecretInput schema helper typing

* fix(cli): clarify secrets.resolve version-skew errors

* refactor(secrets): return structured inactive paths from secrets.resolve

* refactor(gateway): type onboarding secret writes as SecretInput

* chore(protocol): regenerate swift models for secrets.resolve

* feat(secrets): expand extension credential secretref support

* fix(secrets): gate web-search refs by active provider

* fix(onboarding): detect SecretRef credentials in extension status

* fix(onboarding): allow keeping existing ref in secret prompt

* fix(onboarding): resolve gateway password SecretRefs for probe and tui

* fix(onboarding): honor secret-input-mode for local gateway auth

* fix(acp): resolve gateway SecretInput credentials

* fix(secrets): gate gateway.remote refs to remote surfaces

* test(secrets): cover pattern matching and inactive array refs

* docs(secrets): clarify secrets.resolve and remote active surfaces

* fix(bluebubbles): keep existing SecretRef during onboarding

* fix(tests): resolve CI type errors in new SecretRef coverage

* fix(extensions): replace raw fetch with SSRF-guarded fetch

* test(secrets): mark gateway remote targets active in runtime coverage

* test(infra): normalize home-prefix expectation across platforms

* fix(cli): only resolve local qr password refs in password mode

* test(cli): cover local qr token mode with unresolved password ref

* docs(cli): clarify local qr password ref resolution behavior

* refactor(extensions): reuse sdk SecretInput helpers

* fix(wizard): resolve onboarding env-template secrets before plaintext

* fix(cli): surface secrets.resolve diagnostics in memory and qr

* test(secrets): repair post-rebase runtime and fixtures

* fix(gateway): skip remote password ref resolution when token wins

* fix(secrets): treat tailscale remote gateway refs as active

* fix(gateway): allow remote password fallback when token ref is unresolved

* fix(gateway): ignore stale local password refs for none and trusted-proxy

* fix(gateway): skip remote secret ref resolution on local call paths

* test(cli): cover qr remote tailscale secret ref resolution

* fix(secrets): align gateway password active-surface with auth inference

* fix(cli): resolve inferred local gateway password refs in qr

* fix(gateway): prefer resolvable remote password over token ref pre-resolution

* test(gateway): cover none and trusted-proxy stale password refs

* docs(secrets): sync qr and gateway active-surface behavior

* fix: restore stability blockers from pre-release audit

* Secrets: fix collector/runtime precedence contradictions

* docs: align secrets and web credential docs

* fix(rebase): resolve integration regressions after main rebase

* fix(node-host): resolve gateway secret refs for auth

* fix(secrets): harden secretinput runtime readers

* gateway: skip inactive auth secretref resolution

* cli: avoid gateway preflight for inactive secret refs

* extensions: allow unresolved refs in onboarding status

* tests: fix qr-cli module mock hoist ordering

* Security: align audit checks with SecretInput resolution

* Gateway: resolve local-mode remote fallback secret refs

* Node host: avoid resolving inactive password secret refs

* Secrets runtime: mark Slack appToken inactive for HTTP mode

* secrets: keep inactive gateway remote refs non-blocking

* cli: include agent memory secret targets in runtime resolution

* docs(secrets): sync docs with active-surface and web search behavior

* fix(secrets): keep telegram top-level token refs active for blank account tokens

* fix(daemon): resolve gateway password secret refs for probe auth

* fix(secrets): skip IRC NickServ ref resolution when NickServ is disabled

* fix(secrets): align token inheritance and exec timeout defaults

* docs(secrets): clarify active-surface notes in cli docs

* cli: require secrets.resolve gateway capability

* gateway: log auth secret surface diagnostics

* secrets: remove dead provider resolver module

* fix(secrets): restore gateway auth precedence and fallback resolution

* fix(tests): align plugin runtime mock typings

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-03-03 02:58:20 +00:00
..
browser-cli-actions-input refactor(browser): dedupe browser and cli command wiring 2026-03-02 21:31:36 +00:00
cron-cli refactor: dedupe cli config cron and install flows 2026-03-02 19:57:33 +00:00
daemon-cli feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
gateway-cli test: micro-optimize slow suites and CLI command setup 2026-03-02 23:00:49 +00:00
node-cli refactor(cli): share runtime status color rendering 2026-02-18 23:09:09 +00:00
nodes-cli refactor(nodes): dedupe camera payload and node resolve helpers 2026-03-02 23:32:41 +00:00
program CLI: unify routed config positional parsing 2026-03-02 21:11:53 -05:00
shared refactor(cli): dedupe parsePort 2026-02-15 04:02:10 +00:00
update-cli CLI: dedupe config validate errors and expose allowed values 2026-03-02 20:05:12 -05:00
acp-cli.option-collisions.test.ts test(cli): dedupe acp program setup and cover token-file errors 2026-02-21 21:40:39 +00:00
acp-cli.ts fix(cli): correct --verbose / -v option syntax in acp commands (#21303) 2026-02-19 21:04:22 -05:00
argv.test.ts CLI: unify routed config positional parsing 2026-03-02 21:11:53 -05:00
argv.ts CLI: unify routed config positional parsing 2026-03-02 21:11:53 -05:00
banner.test.ts feat(cli): add configurable banner tagline mode 2026-03-03 00:31:51 +00:00
banner.ts feat(cli): add configurable banner tagline mode 2026-03-03 00:31:51 +00:00
browser-cli-actions-input.ts
browser-cli-actions-observe.ts
browser-cli-debug.ts refactor: dedupe agent and browser cli helpers 2026-03-03 00:15:00 +00:00
browser-cli-examples.ts fix(security): harden archive extraction (#16203) 2026-02-14 14:42:08 +01:00
browser-cli-extension.test.ts test(cli): seed stable defaults while replacing setup resets 2026-02-22 07:35:54 +00:00
browser-cli-extension.ts style: align formatting with oxfmt 0.33 2026-02-18 01:34:35 +00:00
browser-cli-inspect.test.ts test(cli): dedupe inspect runner and cover snapshot/screenshot mode defaults 2026-02-21 21:40:39 +00:00
browser-cli-inspect.ts
browser-cli-manage.timeout-option.test.ts refactor: dedupe agent and browser cli helpers 2026-03-03 00:15:00 +00:00
browser-cli-manage.ts refactor: dedupe agent and browser cli helpers 2026-03-03 00:15:00 +00:00
browser-cli-resize.ts refactor(cli): share browser resize output helper 2026-02-15 18:25:47 +00:00
browser-cli-shared.ts refactor(cli): share browser resize request 2026-02-15 05:08:08 +00:00
browser-cli-state.cookies-storage.ts refactor(browser): dedupe browser and cli command wiring 2026-03-02 21:31:36 +00:00
browser-cli-state.option-collisions.test.ts refactor(browser): dedupe browser and cli command wiring 2026-03-02 21:31:36 +00:00
browser-cli-state.ts CLI: resolve parent/subcommand option collisions (#18725) 2026-02-17 20:57:09 -05:00
browser-cli-test-helpers.ts refactor(browser): dedupe browser and cli command wiring 2026-03-02 21:31:36 +00:00
browser-cli.test.ts test: dedupe and optimize test suites 2026-02-19 15:19:38 +00:00
browser-cli.ts style: align formatting with oxfmt 0.33 2026-02-18 01:34:35 +00:00
channel-auth.test.ts fix: stop hardcoded channel fallback and auto-pick sole configured channel (#23357) (thanks @lbo728) 2026-02-22 11:21:43 +01:00
channel-auth.ts fix: stop hardcoded channel fallback and auto-pick sole configured channel (#23357) (thanks @lbo728) 2026-02-22 11:21:43 +01:00
channel-options.test.ts CLI: add root --help fast path and lazy channel option resolution (#30975) 2026-03-01 14:23:46 -08:00
channel-options.ts CLI: add root --help fast path and lazy channel option resolution (#30975) 2026-03-01 14:23:46 -08:00
channels-cli.ts fix: stop hardcoded channel fallback and auto-pick sole configured channel (#23357) (thanks @lbo728) 2026-02-22 11:21:43 +01:00
clawbot-cli.ts docs: align CLI docs and help surface 2026-02-22 20:05:01 +01:00
cli-name.ts
cli-utils.test.ts Session/Cron maintenance hardening and cleanup UX (#24753) 2026-02-23 22:39:48 +00:00
cli-utils.ts refactor: consolidate duplicate utility functions (#12439) 2026-02-08 23:59:43 -08:00
command-format.ts
command-options.test.ts test(cli): extend command option inheritance edge coverage 2026-02-21 21:40:39 +00:00
command-options.ts CLI: resolve parent/subcommand option collisions (#18725) 2026-02-17 20:57:09 -05:00
command-secret-gateway.test.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
command-secret-gateway.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
command-secret-resolution.coverage.test.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
command-secret-targets.test.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
command-secret-targets.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
completion-cli.ts docs: align CLI docs and help surface 2026-02-22 20:05:01 +01:00
completion-fish.test.ts refactor(cli): extract fish completion line builders 2026-02-22 07:44:56 +00:00
completion-fish.ts refactor(cli): extract fish completion line builders 2026-02-22 07:44:56 +00:00
config-cli.test.ts refactor(tests): dedupe browser and config cli test setup 2026-03-03 01:15:09 +00:00
config-cli.ts CLI: dedupe config validate errors and expose allowed values 2026-03-02 20:05:12 -05:00
cron-cli.test.ts feat(cron): add failure destination support to failed cron jobs (#31059) 2026-03-02 09:27:41 -06:00
cron-cli.ts
daemon-cli-compat.test.ts fix (cli): harden daemon compat shim for minimal bundle exports 2026-02-14 20:53:32 -08:00
daemon-cli-compat.ts fix (cli): harden daemon compat shim for minimal bundle exports 2026-02-14 20:53:32 -08:00
daemon-cli.coverage.test.ts test(perf): stub expensive cli coverage integration paths 2026-03-02 12:41:45 +00:00
daemon-cli.ts refactor(cli): share gateway service subcommands 2026-02-15 04:44:23 +00:00
deps.test.ts test: dedupe repeated test fixtures and assertions 2026-02-22 18:37:25 +00:00
deps.ts refactor(cli): share outbound send dependency mapping 2026-02-21 21:40:39 +00:00
devices-cli.test.ts test(core): reduce mock reset overhead in targeted suites 2026-02-22 08:40:29 +00:00
devices-cli.ts CLI: recover devices commands via local pairing fallback 2026-02-20 05:12:05 +00:00
directory-cli.ts refactor(cli): share directory list command flow 2026-02-18 18:38:58 +00:00
dns-cli.ts style: align formatting with oxfmt 0.33 2026-02-18 01:34:35 +00:00
docs-cli.ts
exec-approvals-cli.test.ts test: dedupe and optimize test suites 2026-02-19 15:19:38 +00:00
exec-approvals-cli.ts refactor(cli): dedupe allowlist command wiring 2026-02-22 07:44:56 +00:00
gateway-cli.coverage.test.ts test(cli): fix gateway coverage mock signature 2026-03-02 13:00:21 +00:00
gateway-cli.ts
gateway-rpc.ts
gateway.sigterm.test.ts test: replace slow gateway SIGTERM integration coverage 2026-02-22 17:06:35 +00:00
help-format.ts
hooks-cli.test.ts refactor(agent): dedupe harness and command workflows 2026-02-16 14:59:30 +00:00
hooks-cli.ts refactor: dedupe cli config cron and install flows 2026-03-02 19:57:33 +00:00
install-spec.ts refactor: dedupe cli config cron and install flows 2026-03-02 19:57:33 +00:00
log-level-option.test.ts Feat/logger support log level validation0222 (#23436) 2026-02-22 11:15:13 +01:00
log-level-option.ts Feat/logger support log level validation0222 (#23436) 2026-02-22 11:15:13 +01:00
logs-cli.test.ts test(cli): use lightweight clear for logs gateway mock 2026-02-22 07:35:54 +00:00
logs-cli.ts fix(logs): respect TZ env var for timestamp display, fix Windows timezone (#21859) 2026-03-02 08:44:37 -06:00
memory-cli.test.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
memory-cli.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
models-cli.test.ts test: dedupe and optimize test suites 2026-02-19 15:19:38 +00:00
models-cli.ts
node-cli.ts
nodes-camera.test.ts refactor(nodes): dedupe camera payload and node resolve helpers 2026-03-02 23:32:41 +00:00
nodes-camera.ts refactor(nodes): dedupe camera payload and node resolve helpers 2026-03-02 23:32:41 +00:00
nodes-canvas.ts refactor(cli): extract shared node media helpers 2026-02-18 23:34:15 +00:00
nodes-cli.coverage.test.ts refactor: dedupe agent and browser cli helpers 2026-03-03 00:15:00 +00:00
nodes-cli.ts
nodes-media-utils.test.ts refactor(cli): extract shared node media helpers 2026-02-18 23:34:15 +00:00
nodes-media-utils.ts Security: harden tool media paths 2026-02-20 13:32:49 -06:00
nodes-run.ts
nodes-screen.ts refactor(cli): extract shared node media helpers 2026-02-18 23:34:15 +00:00
npm-resolution.test.ts refactor(cli): share pinned npm install record helper 2026-02-22 07:44:56 +00:00
npm-resolution.ts refactor: dedupe cli config cron and install flows 2026-03-02 19:57:33 +00:00
outbound-send-deps.ts refactor(cli): share outbound send dependency mapping 2026-02-21 21:40:39 +00:00
outbound-send-mapping.test.ts refactor(cli): share outbound send dependency mapping 2026-02-21 21:40:39 +00:00
outbound-send-mapping.ts refactor(cli): share outbound send dependency mapping 2026-02-21 21:40:39 +00:00
pairing-cli.test.ts test(cli): seed stable defaults while replacing setup resets 2026-02-22 07:35:54 +00:00
pairing-cli.ts CLI: default pairing channel for pairing commands 2026-02-20 19:59:54 -08:00
parse-bytes.ts fix: unify session maintenance and cron run pruning (#13083) 2026-02-09 20:42:35 -08:00
parse-duration.ts Session/Cron maintenance hardening and cleanup UX (#24753) 2026-02-23 22:39:48 +00:00
parse-timeout.ts
plugin-install-plan.test.ts refactor(cli): extract plugin install plan helper 2026-03-03 02:51:11 +00:00
plugin-install-plan.ts refactor(cli): extract plugin install plan helper 2026-03-03 02:51:11 +00:00
plugin-registry.ts style: align formatting with oxfmt 0.33 2026-02-18 01:34:35 +00:00
plugins-cli.ts refactor(cli): extract plugin install plan helper 2026-03-03 02:51:11 +00:00
plugins-config.test.ts fix: sync built-in channel enablement across config paths 2026-02-23 19:40:42 +00:00
plugins-config.ts fix: sync built-in channel enablement across config paths 2026-02-23 19:40:42 +00:00
ports.ts fix(gateway): add Windows-compatible port detection using netstat fallback (openclaw#29239) thanks @ajay99511 2026-03-02 08:33:59 -06:00
profile-utils.ts
profile.test.ts test: dedupe and optimize test suites 2026-02-19 15:19:38 +00:00
profile.ts fix(paths): respect OPENCLAW_HOME for all internal path resolution (#12091) 2026-02-08 16:20:13 -05:00
program.force.test.ts fix(gateway): add Windows-compatible port detection using netstat fallback (openclaw#29239) thanks @ajay99511 2026-03-02 08:33:59 -06:00
program.nodes-basic.e2e.test.ts test: move integration-heavy suites to e2e lane 2026-03-02 05:33:07 +00:00
program.nodes-media.e2e.test.ts fix(security): fail-close node camera URL downloads 2026-03-02 23:23:39 +00:00
program.nodes-test-helpers.test.ts test(cli): share nodes ios fixture helpers 2026-02-22 07:44:56 +00:00
program.nodes-test-helpers.ts test(cli): share nodes ios fixture helpers 2026-02-22 07:44:56 +00:00
program.smoke.test.ts test(perf): reduce repeated cli program setup overhead 2026-03-02 14:02:47 +00:00
program.test-mocks.ts fix(ci): repair e2e mocks and tool schemas 2026-02-15 23:14:42 +00:00
program.ts
progress.test.ts
progress.ts
prompt.test.ts chore: Fix types in tests 30/N. 2026-02-17 14:32:57 +09:00
prompt.ts
qr-cli.test.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
qr-cli.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
requirements-test-fixtures.ts refactor(agent): dedupe harness and command workflows 2026-02-16 14:59:30 +00:00
respawn-policy.ts perf(cli): speed up help/config paths and route config get/unset 2026-02-14 00:27:35 +00:00
route.test.ts CLI: dedupe config validate errors and expose allowed values 2026-03-02 20:05:12 -05:00
route.ts CLI: dedupe config validate errors and expose allowed values 2026-03-02 20:05:12 -05:00
run-main.exit.test.ts fix: ensure CLI exits after command completion (#12906) 2026-02-14 00:34:33 +01:00
run-main.profile-env.test.ts fix(cli): apply --profile before dotenv bootstrap in runCli (#31950) 2026-03-02 18:09:45 +00:00
run-main.test.ts CLI: dedupe config validate errors and expose allowed values 2026-03-02 20:05:12 -05:00
run-main.ts CLI: dedupe config validate errors and expose allowed values 2026-03-02 20:05:12 -05:00
sandbox-cli.ts
secrets-cli.test.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
secrets-cli.ts feat(secrets): expand SecretRef coverage across user-supplied credentials (#29580) 2026-03-03 02:58:20 +00:00
security-cli.ts CLI: improve command descriptions in help output (#18486) 2026-02-16 22:06:25 +01:00
skills-cli.commands.test.ts refactor(cli): dedupe skills command report loading 2026-02-22 07:44:56 +00:00
skills-cli.format.ts refactor(cli): reuse skill missing summary 2026-02-15 16:46:04 +00:00
skills-cli.formatting.test.ts test: move local cli and config scenario suites out of e2e 2026-02-22 10:58:04 +00:00
skills-cli.test.ts test: drop duplicate skills-cli integration coverage 2026-02-19 07:33:37 +00:00
skills-cli.ts refactor(cli): dedupe skills command report loading 2026-02-22 07:44:56 +00:00
system-cli.test.ts refactor(cli): dedupe system gateway action handling 2026-02-21 21:40:39 +00:00
system-cli.ts refactor(cli): dedupe system gateway action handling 2026-02-21 21:40:39 +00:00
tagline.test.ts feat(cli): add configurable banner tagline mode 2026-03-03 00:31:51 +00:00
tagline.ts feat(cli): add configurable banner tagline mode 2026-03-03 00:31:51 +00:00
test-runtime-capture.ts fix(cli): align runtime capture helper with RuntimeEnv signature 2026-02-18 13:34:03 +00:00
tui-cli.ts
update-cli.option-collisions.test.ts test: dedupe and optimize test suites 2026-02-19 15:19:38 +00:00
update-cli.test.ts test(cli): reduce update/program suite overhead 2026-03-02 09:46:27 +00:00
update-cli.ts feat(update): add core auto-updater and dry-run preview 2026-02-22 17:11:36 +01:00
wait.ts
webhooks-cli.ts refactor(agent): dedupe harness and command workflows 2026-02-16 14:59:30 +00:00
windows-argv.ts refactor(cli): share windows argv normalization 2026-02-14 15:39:46 +00:00