13821 Commits

Author SHA1 Message Date
kumarabhirup
7fe870fec0
👌 IMPROVE: caching 2026-03-18 17:23:49 -07:00
kumarabhirup
f29bd0c5c1
🚀 RELEASE: v2.3.11 2026-03-18 17:12:55 -07:00
kumarabhirup
295f5c008d
fix(agent): lower thinking level to high, fix indentation, and handle terminated errors
- Change thinkingLevel from xhigh to high for session patches
- Fix indentation of event handler blocks in wireSubscribeOnlyProcess
  and wireChildProcess
- Add user-friendly message when agent run is terminated by the gateway
2026-03-18 16:56:13 -07:00
kumarabhirup
f04c1a5dc3
fix(terminal): proxy WebSocket through host in daemonless mode
When DENCHCLAW_DAEMONLESS=1, route the terminal WebSocket through
the app host instead of connecting directly to 127.0.0.1, allowing
it to work in environments without direct port access.
2026-03-18 16:56:01 -07:00
kumarabhirup
104628ed9c
fix(bootstrap): set agents.defaults.timeoutSeconds=86400 to prevent premature termination
OpenClaw's default agent timeout is 600s (10 min), which consistently kills
long-running agent responses — especially multi-file code generation and
complex multi-tool-call workflows. This triggers:

- 'terminated' errors mid-stream (webchat shows terminated banner)
- Retry storms: same runId retries ~60s apart, then new runIds also fail
- Follow-up messages silently dropped (shouldSkipMessageByAbortCutoff)

Set the default to 86400s (24 hours) during bootstrap so all DenchClaw
installations get a sane timeout out of the box. Note: the runtime code
supports timeoutSeconds=0 (no timeout) but the config schema validation
rejects 0 (exclusiveMinimum: 0), so 86400 is the practical maximum.

Also rename ensureSubagentDefaults -> ensureAgentDefaults since the function
now configures both agent-level and subagent-level settings.

Refs:
- https://github.com/openclaw/openclaw/issues/30487
- https://github.com/openclaw/openclaw/issues/46049
- https://github.com/openclaw/openclaw/issues/30083
2026-03-18 13:50:56 -07:00
kumarabhirup
351b71fd05
feat(telemetry): add person identity support and enable session replay
Add optional name, email, avatar, and denchOrgId fields to
telemetry.json. When present, all telemetry layers (CLI, web server,
web client, OpenClaw plugin) call PostHog identify() with $name,
$email, $avatar, and dench_org_id person properties.

Remove $process_person_profile:false from all layers so every install
gets a PostHog person profile. Enable session replay with masking
controlled by privacy mode (all text/inputs masked when on, nothing
masked when off).
2026-03-18 00:08:23 -07:00
kumarabhirup
9a26ab6de1
chore: bump version to 2.3.9
Reflects identity plugin extraction and workspace seed cleanup since v2.3.7.
2026-03-17 16:24:10 -07:00
kumarabhirup
98e9c245a5
feat(identity): extract DenchClaw identity into runtime plugin
Move identity injection from static IDENTITY.md generation at workspace seed
time to a runtime `dench-identity` OpenClaw plugin that prepends the system
prompt via the `before_prompt_build` hook. This keeps identity always current
without re-seeding, encourages dynamic skill discovery, and positions
DenchClaw as a CEO orchestrator that delegates to specialist subagents.
2026-03-17 16:24:00 -07:00
kumarabhirup
748e46ff9e
🚀 RELEASE: v2.3.7 2026-03-17 14:52:14 -07:00
kumarabhirup
1de6943773
docs(skills): refactor app-builder into focused child skills
Split monolithic skill into agent-builder, data-builder, game-builder, and platform-api child skills for better context efficiency.
2026-03-17 14:42:08 -07:00
kumarabhirup
ea8bab6179
feat(apps): expand platform API with objects, chat, store, cron, and webhooks
Enables apps to access the full DenchClaw platform — CRUD on workspace objects, AI chat with streaming, inter-app messaging, KV store, HTTP proxy, webhooks, cron scheduling, and widget display mode.
2026-03-17 14:42:01 -07:00
kumarabhirup
e92419760b
fix(workspace): show .app children in tree and fix cron tab opening
App folders are now expandable when hidden files are shown, and cron items properly open in tabs.
2026-03-17 14:41:52 -07:00
kumarabhirup
92b32fdf21
fix(chat): use refs in stop handler to avoid stale closures
Reads sessionId and subagentSessionKey from refs instead of state so the stop button works even before React re-renders.
2026-03-17 14:41:46 -07:00
kumarabhirup
786a729c83
fix(agent-runner): attach WS listeners before open and always use chat.send
Prevents listener-attachment race after handshake and ensures all runs are session-tracked for reliable abort.
2026-03-17 14:41:39 -07:00
Mark
f4ce923f5c fix(cli): add rollback safety net and crash diagnostics for web runtime updates
- Back up existing app dir before replacing (enables rollback on crash)
- Rollback to previous working runtime when new version fails readiness probe
- Early exit in waitForWebRuntime() when spawned process dies (saves 15s)
- Include web-app.err.log tail in probe failure reason for diagnostics
- Clean up backup after successful probe

Made-with: Cursor
2026-03-17 13:10:47 -07:00
kumarabhirup
ef72fe29d7
🚀 RELEASE: 2.3.6 2026-03-17 12:42:44 -07:00
kumarabhirup
8fa221554e
feat(agent-runner): per-session lanes, lifecycle error recovery, and slash command support
Use per-session gateway lanes (web:sessionId) so concurrent chat tabs
stream independently. Add a 15s recovery window after lifecycle errors
to accept continuation runIds. Route slash commands through chat.send
RPC and forward chat events to the UI.
2026-03-17 12:35:26 -07:00
kumarabhirup
11478c752e
refactor(workspace): remove chat-slot agent pool to prevent workspace pollution
Chat-slot agents were being persisted as durable entries in openclaw.json,
causing spurious workspace directories (e.g. chat-slot-main-1) to appear.
Only explicit workspace creation via init now creates durable agent entries.
Workspace discovery and session routing ignore chat-slot internals.
2026-03-17 12:35:18 -07:00
kumarabhirup
3cd51759da
📖 DOC: feat(cli): enhance daemonless mode support for container/cloud environments
Refine the handling of the DENCHCLAW_DAEMONLESS=1 environment variable and --skip-daemon-install flag to ensure consistent behavior across all commands, including bootstrap, update, start, restart, and stop, in environments lacking systemd/launchd.
2026-03-15 21:27:20 -07:00
kumarabhirup
76f8838362
feat(cli): add daemonless mode for container/cloud environments
Support DENCHCLAW_DAEMONLESS=1 env var and --skip-daemon-install flag
across all commands (bootstrap, update, start, restart, stop) to skip
gateway daemon management and LaunchAgent registration in environments
without systemd/launchd.
2026-03-15 21:25:25 -07:00
kumarabhirup
4436e57d9a
fix(bootstrap): eliminate gateway probe race and pre-onboard config failures
Pre-onboard config (gateway.mode, gateway.port, plugin trust) used to call
`openclaw config set` before `openclaw onboard` created the profile, causing
"Failed to set ..." errors on fresh installs (#101). All pre-onboard config is
now staged via raw JSON writes. Hidden gateway restarts inside syncBundledPlugins
are removed; one explicit restart happens after all post-onboard config, followed
by retried health probes so bootstrap no longer falsely reports "gateway closed"
while the gateway is simply finishing startup.
2026-03-15 17:16:05 -07:00
kumarabhirup
fc04de7eb8
🚀 RELEASE: v2.3.3 2026-03-15 14:52:23 -07:00
kumarabhirup
8fd2fe396a
🚀 RELEASE: v2.3.2 2026-03-15 13:53:53 -07:00
kumarabhirup
94ef2c0288
🚀 RELEASE: v2.3.1 2026-03-15 13:30:11 -07:00
kumarabhirup
c16ecb899f
🐛 FIX: model context 2026-03-15 13:27:09 -07:00
kumarabhirup
0f864fb0ef
fix(agent-runner): remove Origin header to fix pairing required error
Server-side WebSocket connections should not set Origin (a browser security
concept). The header caused the gateway to treat the web runtime as a browser
client, blocking silent local device pairing after device identity auth was
added.
2026-03-15 13:18:12 -07:00
kumarabhirup
45acfbb493
fix(telemetry): emit per-turn cost instead of cumulative session total
extractUsageFromMessages was summing ALL assistant messages, so each
$ai_generation event reported a growing cumulative total — PostHog's
sum() then massively over-counted costs (e.g. $634 reported vs $73 actual).
2026-03-15 13:09:54 -07:00
kumarabhirup
920bb1d12a
👌 IMPROVE: 🔧 UPDATE: Bump version to 2.3.0 and update denchclaw dependency to match 2026-03-15 04:41:37 -07:00
kumarabhirup
3f6fe5f892
🚀 RELEASE: v2.3.0 2026-03-15 04:39:22 -07:00
kumarabhirup
aa97489785
👌 IMPROVE: feat(telemetry): add DenchClaw and OpenClaw version tracking
Integrate version tracking for DenchClaw and OpenClaw into the telemetry system. The versions are now read from the package.json and environment variables, and are included in the PostHog client initialization and telemetry events. This enhancement allows for better monitoring and analytics of the versions in use.
2026-03-15 04:33:44 -07:00
kumarabhirup
1c92aaf5d7
fix(bootstrap): create workspace dir before setting openclaw config
On fresh Linux installs (e.g. running as root), `openclaw config set
agents.defaults.workspace` fails because the target directory doesn't
exist yet — some OpenClaw builds validate the path on disk before
accepting the value. Create the directory eagerly with mkdirSync before
the config set call.

Also surface the exit code in runOpenClawOrThrow errors when stderr is
empty, so silent failures are easier to diagnose.

Fixes #101
2026-03-15 04:29:07 -07:00
Kumar Abhirup
d6ca3b329c
Merge pull request #107 from DenchHQ/bp/6-workspace-ui-browse-mode
feat(workspace): support browse-mode paths in editors and file tree
2026-03-15 04:20:52 -07:00
Kumar Abhirup
9298bd1080
Merge pull request #106 from DenchHQ/bp/5-workspace-api-routes-browse
refactor(api): migrate workspace routes to resolveFilesystemPath
2026-03-15 04:20:46 -07:00
Kumar Abhirup
c89c3d8be2
Merge pull request #104 from DenchHQ/bp/3-dench-cloud-bootstrap
feat(cli): integrate Dench Cloud setup into bootstrap flow
2026-03-15 04:20:42 -07:00
Kumar Abhirup
022e8db3e9
Merge pull request #108 from DenchHQ/bp/7-agent-runner-device-auth
feat(agent-runner): add device identity challenge-response auth
2026-03-15 04:20:36 -07:00
Kumar Abhirup
cacecda172
Merge pull request #105 from DenchHQ/bp/4-workspace-path-resolution
refactor(workspace): add unified path resolution with browse mode support
2026-03-15 04:20:33 -07:00
Kumar Abhirup
33b849a7c6
Merge pull request #103 from DenchHQ/bp/2-dench-cloud-helpers
feat(cli): add dench-cloud model catalog and config helpers
2026-03-15 04:20:29 -07:00
Kumar Abhirup
b3177f923c
Merge pull request #102 from DenchHQ/bp/1-dench-ai-gateway-extension
chore(extensions): add dench-ai-gateway OpenClaw plugin
2026-03-15 04:20:14 -07:00
kumarabhirup
a27d4d28f8
feat(agent-runner): add device identity challenge-response auth
Gateway connections use Ed25519 device keypair for challenge-response auth and surface actionable error messages for scope failures.
2026-03-15 04:18:22 -07:00
kumarabhirup
ef86960d00
feat(workspace): support browse-mode paths in editors and file tree
Editors and file tree use workspace-paths helpers to route saves and classify system files correctly for absolute and home-relative paths.
2026-03-15 04:17:47 -07:00
kumarabhirup
3fe5a91033
refactor(api): migrate workspace routes to resolveFilesystemPath
All workspace API routes use resolveFilesystemPath and isProtectedSystemPath, enabling browse-mode writes to external paths.
2026-03-15 04:17:11 -07:00
kumarabhirup
acc80615c4
refactor(workspace): add unified path resolution with browse mode support
resolveFilesystemPath replaces ad-hoc path helpers with a single resolver for absolute, home-relative, and workspace-relative paths.
2026-03-15 04:16:40 -07:00
kumarabhirup
9a784d275e
feat(cli): integrate Dench Cloud setup into bootstrap flow
Bootstrap now prompts for Dench Cloud API key and model, syncs bundled plugins generically, and migrates legacy dench-cloud-provider.
2026-03-15 04:16:01 -07:00
kumarabhirup
1af869f64b
feat(cli): add dench-cloud model catalog and config helpers
Shared module for Dench Cloud catalog fetching, API key validation, and OpenClaw config patching.
2026-03-15 04:15:29 -07:00
kumarabhirup
320a611095
chore(extensions): add dench-ai-gateway OpenClaw plugin
Registers Dench Cloud as an OpenClaw model provider with live gateway-backed catalog discovery.
2026-03-15 04:14:45 -07:00
Kumar Abhirup
e490380d01
Merge pull request #90 from alexanderwcheney/fix/bootstrap-gateway-mode-ordering
fix(bootstrap): set gateway.mode before onboard to prevent crash loop
2026-03-15 02:16:57 -07:00
kumarabhirup
2efe2ecf41
fix(bootstrap): preserve gateway config around onboarding
Set gateway mode and port before onboarding so the first daemon start succeeds, then reapply them after onboarding so wizard defaults cannot drift DenchClaw off its expected local gateway.
2026-03-15 01:05:43 -07:00
kumarabhirup
23aa21c4d2
Merge remote-tracking branch 'origin/bp/3-stream-status' 2026-03-15 00:34:43 -07:00
Kumar Abhirup
3efa6f9605
Merge pull request #100 from DenchHQ/bp/4-multi-session-chat-ui
feat(chat): multi-session chat tabs with stop controls UI
2026-03-15 00:33:41 -07:00
Kumar Abhirup
f9ccaf5b23
Merge pull request #97 from DenchHQ/bp/1-fix-workspace-routing
fix(workspace): repair managed workspace routing and block reserved names
2026-03-15 00:33:19 -07:00