Peter Steinberger
dda347eda3
refactor: dedupe synology config schema
2026-03-22 23:32:22 -07:00
Peter Steinberger
c42cb1ca66
refactor: audit synology dangerous name matching
2026-03-22 23:32:22 -07:00
Peter Steinberger
fb6454c543
refactor: narrow synology legacy name lookup
2026-03-22 23:32:21 -07:00
Peter Steinberger
677a821a2f
refactor: centralize synology dangerous name matching
2026-03-22 23:32:21 -07:00
Peter Steinberger
ea800dd4ef
refactor: clarify synology delivery identity names
2026-03-22 23:32:21 -07:00
scoootscooob
6c1ea41472
Docs: refresh config baseline for Synology Chat
2026-03-22 23:32:03 -07:00
Peter Steinberger
f3de580ca1
test: trim docker live auth mounts
2026-03-23 06:31:41 +00:00
Peter Steinberger
957fff443f
fix: include .npmrc in onboard docker build
2026-03-23 06:27:58 +00:00
Peter Steinberger
cef7d14861
refactor(exec): rename wrapper plans for trust semantics
2026-03-22 23:18:54 -07:00
Peter Steinberger
0b40ec38ab
refactor(exec): share wrapper trust planning
2026-03-22 23:18:54 -07:00
Peter Steinberger
6ba5595004
refactor(exec): make dispatch wrapper semantics spec-driven
2026-03-22 23:18:54 -07:00
Peter Steinberger
c041f8587b
refactor(exec): split wrapper resolution modules
2026-03-22 23:18:54 -07:00
Peter Steinberger
97abc6db55
docs: clarify sessions_spawn ACP vs subagent policies
2026-03-22 23:08:06 -07:00
Peter Steinberger
7ade3553b7
fix: gate synology chat reply name matching
2026-03-22 23:06:38 -07:00
Peter Steinberger
55ad5d7bd7
fix(security): harden explicit-proxy SSRF pinning
2026-03-22 23:05:42 -07:00
Peter Steinberger
f52eb934d6
fix(security): unify dispatch wrapper approval hardening
2026-03-22 23:01:49 -07:00
Peter Steinberger
72e58ca260
test(models): refresh example model fixtures
2026-03-22 23:00:18 -07:00
Peter Steinberger
4d50084c6e
fix(exec): escape invisible approval filler chars
2026-03-22 22:52:14 -07:00
Peter Steinberger
78175aeb0a
docs(agents): prefer current test model examples
2026-03-22 22:48:30 -07:00
Vincent Koc
e1d4c38cee
fix(runtime): skip peer resolution for bundled plugin deps
2026-03-22 22:47:46 -07:00
Peter Steinberger
c036e4d176
fix: restrict remote marketplace plugin sources
2026-03-22 22:47:08 -07:00
Peter Steinberger
09faed6bd8
fix(gateway): gate internal command persistence mutations
2026-03-22 22:46:49 -07:00
Peter Steinberger
81445a9010
fix(media): bound remote error-body snippet reads
2026-03-22 22:43:42 -07:00
Vincent Koc
fd5555d5be
fix(runtime): make dist-runtime staging idempotent
2026-03-22 22:41:27 -07:00
Peter Steinberger
5822892fee
docs: refresh plugin-sdk api baseline
2026-03-23 05:35:51 +00:00
Peter Steinberger
c82fc9a0fd
docs(changelog): note time exec approval fix
2026-03-22 22:32:02 -07:00
Peter Steinberger
a55f371cc5
fix(ci): skip docs-only preflight pnpm audit
2026-03-23 05:29:27 +00:00
Vincent Koc
be3a2e2eb6
fix(plugin-sdk): fall back to src root alias files
2026-03-22 22:26:18 -07:00
Peter Steinberger
39409b6a6d
fix(security): unwrap time dispatch wrappers
2026-03-22 22:25:57 -07:00
Peter Steinberger
af9de86286
perf: trim vitest hot imports and refresh manifests
2026-03-23 05:25:05 +00:00
Peter Steinberger
7fcbf383d8
fix(ci): write dist build stamp after builds
2026-03-22 22:23:25 -07:00
Peter Steinberger
ea579ef858
fix(gateway): preserve async hook ingress provenance
2026-03-22 22:21:49 -07:00
Peter Steinberger
c5a941a506
refactor!: remove moltbot state-dir migration fallback
2026-03-22 22:19:35 -07:00
Peter Steinberger
6b9915a106
refactor!: drop legacy CLAWDBOT env compatibility
2026-03-22 22:13:39 -07:00
oliviareid-svg
5ff60cc39f
fix(build): add stable memory-cli dist entry ( #51759 )
...
Co-authored-by: oliviareid-svg <269669958+oliviareid-svg@users.noreply.github.com>
Co-authored-by: Frank <vibespecs@gmail.com>
2026-03-23 13:11:06 +08:00
Vincent Koc
91f2c92960
docs(tools): soften DDG wording (scrapes -> pulls/gathers)
2026-03-22 22:10:56 -07:00
Rick_Xu
2fe1ff8ea8
Usage: include reset and deleted session archives ( #43215 )
...
Merged via squash.
Prepared head SHA: 49ed6c2fa3
Co-authored-by: rcrick <23069968+rcrick@users.noreply.github.com>
Co-authored-by: frankekn <4488090+frankekn@users.noreply.github.com>
Reviewed-by: @frankekn
2026-03-23 13:10:26 +08:00
Peter Steinberger
30ed4342b3
fix(agents): deny local MEDIA paths for MCP results
2026-03-22 22:10:13 -07:00
Vincent Koc
5730865f08
docs(tools): update DuckDuckGo Search for landed plugin code
...
- Mark as experimental (not just unofficial)
- Add region and safeSearch tool parameters (from DDG schema)
- Add plugin config example for region/safeSearch defaults
- Document auto-detection order (100 = last)
- Note SafeSearch defaults to moderate
- Verified against extensions/duckduckgo/src/
2026-03-22 22:09:47 -07:00
Vincent Koc
d43e26e399
fix(web-search): mark DuckDuckGo experimental
2026-03-22 22:07:53 -07:00
Peter Steinberger
8791aaae2b
refactor: extract gateway install token helpers
2026-03-22 22:05:56 -07:00
Peter Steinberger
c15282062f
refactor: split durable service env helpers
2026-03-22 22:05:56 -07:00
Vincent Koc
c6ca11e5a5
feat(web-search): add DuckDuckGo bundled plugin ( #52629 )
...
* feat(web-search): add DuckDuckGo bundled plugin
* chore(changelog): restore main changelog
* fix(web-search): harden DuckDuckGo challenge detection
2026-03-22 22:05:33 -07:00
Peter Steinberger
827c441902
fix(test): isolate flaky extension lanes
2026-03-23 05:02:07 +00:00
Peter Steinberger
dc6c22b812
fix: narrow exec exit failure kind typing
2026-03-23 04:58:46 +00:00
Kevin ONeill
dd860e76aa
fix: normalize env var keys and isolate tests from real .env
...
- Apply normalizeEnvVarKey({ portable: true }) before security
filtering, matching the established pattern in env-vars.ts.
Rejects non-portable key names (spaces, special chars) that
would produce invalid plist/systemd syntax.
- Isolate existing tests from the developer's real ~/.openclaw/.env
by providing a temp HOME directory, preventing flaky failures
when the test machine has a populated .env file.
2026-03-22 21:55:58 -07:00
Kevin ONeill
77ec7b4adf
fix: include .env file vars in gateway service environment on install
...
When building the gateway install plan, read and parse
~/.openclaw/.env (or $OPENCLAW_STATE_DIR/.env) and merge those
key-value pairs into the service environment at the lowest
priority — below config env vars, auth-profile refs, and the
core service environment (HOME, PATH, OPENCLAW_*).
This ensures that user-defined secrets stored in .env (e.g.
BRAVE_API_KEY, OPENROUTER_API_KEY, DISCORD_BOT_TOKEN) are
embedded in the LaunchAgent plist (macOS), systemd unit (Linux),
and Scheduled Task (Windows) at install time, rather than
relying solely on the gateway process loading them via
dotenv.config() at startup.
Previously, on macOS the LaunchAgent plist never included .env
vars, which meant:
- launchctl print did not show user secrets (hard to debug)
- Child processes spawned before dotenv loaded had no access
- If the same key existed in both .env and the plist, the stale
plist value won via dotenv override:false semantics
Dangerous host env vars (NODE_OPTIONS, LD_PRELOAD, etc.) are
filtered using the same security policy applied to config env
vars.
Fixes #37101
Relates to #22663
2026-03-22 21:55:58 -07:00
Vincent Koc
3afb6a2b95
fix(exec): accept runtime failure kind in formatter
2026-03-22 21:54:02 -07:00
Vincent Koc
8a59b09fc8
refactor(ci): collapse fast setup jobs into preflight
2026-03-22 21:52:19 -07:00
Peter Steinberger
97e4f37171
fix: keep status --json stdout clean ( #52449 ) (thanks @cgdusek)
2026-03-22 21:51:08 -07:00