Personal Qwen assistant for WhatsApp.
Forked from NanoClaw and restructured to use Qwen.
This repo now contains only the runnable Qwen app. The old skills/customization system has been removed from the main repo and should live separately if it is revived.
git clone https://github.com/Amadeus415/nanoclaw-qwen.git
cd nanoclaw-qwen
npm install
./container/build.sh
npm run auth
LOG_LEVEL=debug npm run devUse a .env with:
OPENAI_API_KEY=your_api_key
OPENAI_BASE_URL=https://dashscope-intl.aliyuncs.com/compatible-mode/v1
OPENAI_MODEL=qwen3-coder-plus
ASSISTANT_NAME=Andy
ASSISTANT_HAS_OWN_NUMBER=false- WhatsApp input and output
- Qwen Code in isolated containers
- Per-group
QWEN.mdmemory files - Per-group
.qwensession state - Scheduled tasks via MCP tools
- File tools and sandboxed shell
The current harness does not expose dedicated browser automation, web-search tools, or agent swarms.
groups/global/QWEN.mdgroups/{name}/QWEN.mddata/sessions/{group}/.qwen/
Legacy CLAUDE.md and MEMORY.md files are migrated to QWEN.md when there is a single clear source file. If both legacy files exist, NanoClaw leaves them in place and logs a warning.
WhatsApp (baileys) -> SQLite -> polling loop -> container -> Qwen Code -> response
Useful files:
src/index.tssrc/container-runner.tscontainer/agent-runner/src/index.tscontainer/agent-runner/src/ipc-mcp-stdio.tssrc/task-scheduler.tssrc/db.ts
docs/SECURITY.mddocs/SPEC.mddocs/REQUIREMENTS.mddocs/DEBUG_CHECKLIST.md
MIT