Welcome to the lobster tank! 🦞
- GitHub: https://github.com/openclaw/openclaw
- Discord: https://discord.gg/qkhbAGHRBT
- X/Twitter: @steipete / @openclaw
-
Peter Steinberger - Benevolent Dictator
-
Shadow - Discord + Slack subsystem
- GitHub: @thewilloftheshadow · X: @4shad0wed
-
Jos - Telegram, API, Nix mode
-
Christoph Nakazawa - JS Infra
- GitHub: @cpojer · X: @cnakazawa
- Bugs & small fixes → Open a PR!
- New features / architecture → Start a GitHub Discussion or ask in Discord first
- Questions → Discord #setup-help
- Test locally with your OpenClaw instance
- Run tests:
pnpm build && pnpm check && pnpm test - Keep PRs focused (one thing per PR)
- Describe what & why
The Control UI uses Lit with legacy decorators (current Rollup parsing does not support
accessor fields required for standard decorators). When adding reactive fields, keep the
legacy style:
@state() foo = "bar";
@property({ type: Number }) count = 0;The root tsconfig.json is configured for legacy decorators (experimentalDecorators: true)
with useDefineForClassFields: false. Avoid flipping these unless you are also updating the UI
build tooling to support standard decorators.
Built with Codex, Claude, or other AI tools? Awesome - just mark it!
Please include in your PR:
- Mark as AI-assisted in the PR title or description
- Note the degree of testing (untested / lightly tested / fully tested)
- Include prompts or session logs if possible (super helpful!)
- Confirm you understand what the code does
AI PRs are first-class citizens here. We just want transparency so reviewers know what to look for.
We are currently prioritizing:
- Stability: Fixing edge cases in channel connections (WhatsApp/Telegram).
- UX: Improving the onboarding wizard and error messages.
- Skills: Expanding the library of bundled skills and improving the Skill Creation developer experience.
- Performance: Optimizing token usage and compaction logic.
Check the GitHub Issues for "good first issue" labels!