findObjectDir only searched the workspace root and one level deep, so objects nested inside category folders (e.g. marketing/influencer/) were not discovered by the views API. This caused saved views, active_view, and view_settings to silently return empty for any object beyond depth 1. Replace the single-level scan with a depth-limited recursive search (max 4 levels), skipping known heavy directories (node_modules, .git, .next, etc.). The sidebar tree builder (buildTree in tree/route.ts) already walks recursively, so this brings findObjectDir in line with the rest of the workspace discovery.
Website · Discord · Skills Store
Install
Node 22+ required.
npx denchclaw
Opens at localhost:3100 after completing onboarding wizard.
Commands
npx denchclaw # runs onboarding again for openclaw --profile dench
npx denchclaw update # updates denchclaw with current settings as is
npx denchclaw restart # restarts denchclaw web server
npx denchclaw start # starts denchclaw web server
npx denchclaw stop # stops denchclaw web server
# some examples
openclaw --profile dench <any openclaw command>
openclaw --profile dench gateway restart
openclaw --profile dench config set gateway.port 19001
openclaw --profile dench gateway install --force --port 19001
openclaw --profile dench gateway restart
Development
git clone https://github.com/DenchHQ/DenchClaw.git
cd denchclaw
pnpm install
pnpm build
pnpm dev
Web UI development:
pnpm install
pnpm web:dev
Open Source
MIT Licensed. Fork it, extend it, make it yours.
Languages
TypeScript
73.8%
JavaScript
17.1%
Swift
6.1%
Kotlin
1.4%
Shell
0.9%
Other
0.6%