13811 Commits

Author SHA1 Message Date
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
kumarabhirup
89289bb31d
feat(chat): multi-session chat tabs with stop controls UI
Tab-based multi-chat system supporting concurrent parent and subagent sessions, per-session stop controls, layout/scroll fixes, and attachment display improvements.
2026-03-15 00:31:55 -07:00
kumarabhirup
2c2164ed2c
feat(chat): add stream status labels and partial tool output
Keep a visible streaming status indicator throughout the assistant turn and forward partial tool output to the UI so users see real-time progress.
2026-03-15 00:31:19 -07:00
kumarabhirup
8838cc4e16
feat(chat): add runs API, subagent registry, and cascade stop
Backend support for multi-session chat: /api/chat/runs endpoint for parent/subagent run status, subagent registry for reading run state, and cascade stop to abort child sessions when stopping a parent.
2026-03-15 00:30:43 -07:00
kumarabhirup
46fe15df81
fix(workspace): repair managed workspace routing and block reserved names
Prevent workspace-main / agent-main collision by adding ensureManagedWorkspaceRouting() repair on chat create/send/switch, and reject reserved workspace names (main, default, chat-slot-*).
2026-03-15 00:29:57 -07:00
kumarabhirup
584d974f07
style: increase sidebar vs chat panel background contrast
Darken --color-sidebar-bg to create more visual hierarchy between
the sidebar and main content area, inspired by animclaw's approach.

Light: #f5f5f4 → #ebebea (delta 15 from main-bg, was 5)
Dark:  #141413 → #0c0c0b (delta 10 from main-bg, was 2)
2026-03-14 22:26:40 -07:00
Kumar Abhirup
ce40a9632f
Merge pull request #93 from DenchHQ/markrachapoom/design
feat: new design system
2026-03-14 19:47:57 -07:00
Mark
ae7e497fe0 style: polish data table UI with glassmorphism toolbar, rounded controls, and zebra-striped rows
Made-with: Cursor
2026-03-14 19:20:29 -07:00
Mark
95a91bc729 style: update accent color to #4FA1EE
Made-with: Cursor
2026-03-12 21:54:08 -07:00
Mark
5f8b9ed98e fix: remove hero animations and ensure new chat tab always exists
- Remove framer-motion animations from hero greeting, input bar, and
  suggestion buttons so they render instantly
- Fix SSR hydration mismatch by deferring hero render until client mount
- Always create a "New Chat" tab on fresh load and when closing last tab

Made-with: Cursor
2026-03-12 21:49:25 -07:00
Mark
f39130c8f7 style: update sidebar animations and accent colors
- Add 'sidebar-animate' class to sidebar elements for improved transition effects.
- Change accent color scheme to a green palette for better visual consistency.
- Ensure sidebar animations are disabled during resizing for smoother user experience.
2026-03-12 21:12:15 -07:00