- Add persistent personality engine with Redis/PostgreSQL storage
- Add language-specific code execution commands (/js, /python, /ts, /bash, /run)
- Update AI system prompts to guide users to available commands
- Add Piston API fallback for sandbox when Docker unavailable
- Update README with new features and commands
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
- Add /js, /python, /py, /ts, /bash, /sh commands for quick code execution
- Add /run <lang> <code> for any supported language
- Update /status to show sandbox backend (docker/piston/none)
- Update /start and /help with new command documentation
- Update AI system prompts to know about available commands
- Bot now guides users to use /js, /python etc. when they ask to run code
- Fixes issue where AI was hallucinating non-existent commands
Supported languages via Piston API fallback:
python, javascript, typescript, bash, rust, go, c, cpp, java, ruby, php
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
- Add personality engine with learning from conversations
- Tracks user preferences, interests, and communication style
- Persists to Redis (cache) + PostgreSQL (durable)
- Generates personalized system prompts per user
- Add Piston API fallback for sandbox execution
- Auto-detects backend: Docker → Piston API → none
- Supports 15+ languages via free cloud execution
- Works on Railway and other managed platforms
- Add storage layer with layered persistence
- PostgreSQL for tasks, user profiles, personality traits
- Redis for conversation cache and fast profile access
- Graceful fallback to in-memory when not configured
- Update scheduler with task persistence
- Loads tasks from PostgreSQL on startup
- Saves task status after execution
- Add document analysis (PDF, text files)
- Add railway-template.json for one-click deployment
- Enable sandbox by default (Piston fallback)
- Add OpenRouter support (100+ models)
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
- Rewrite Dockerfile to be fully standalone (no workspace deps)
- Use npm install instead of pnpm workspace
- Update README with step-by-step Railway deployment
- Critical: Root Directory must be set to 'secure' in Railway
- Add instructions for getting Telegram user ID
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
- Add OpenRouter as third AI provider option (100+ models)
- Create railway-template.json with auto-wired PostgreSQL + Redis
- Template auto-references DATABASE_URL and REDIS_URL from services
- Default model for OpenRouter: anthropic/claude-3.5-sonnet
- Update README with OpenRouter configuration
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
- Add document analysis for PDFs, text, code files (up to 20MB)
- Add PostgreSQL storage for task persistence (survives restarts)
- Add Redis for conversation caching (24hr TTL)
- Create storage.ts abstraction layer with fallback to memory
- Update scheduler to persist tasks to database
- Update config with DATABASE_URL and REDIS_URL support
- Add railway.toml for Railway deployment
- Update README with new architecture and features
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
- Agent now supports multimodal messages (text + images)
- Telegram handler downloads photos and sends to Claude/GPT-4V
- Works with both Anthropic and OpenAI vision models
- Updates branding to AssureBot in messages
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
- Agent now supports multimodal messages (text + images)
- Telegram handler downloads photos and sends to Claude/GPT-4V
- Works with both Anthropic and OpenAI vision models
- Updates branding to AssureBot in messages
https://claude.ai/code/session_015VqJ7gN4vaxtYfYc92UjLs
registerTelegramNativeCommands() calls listSkillCommandsForAgents()
without passing agentIds, causing ALL agents' skill commands to be
registered on EVERY Telegram bot. When multiple agents share skill
names (e.g. two agents both have a "butler" skill), the shared `used`
Set in listSkillCommandsForAgents causes de-duplication suffixes
(_2, _3) and all commands appear on every bot regardless of agent
binding.
This fix uses the existing resolveAgentRoute() (already imported) to
find the bound agent for the current Telegram accountId, then passes
that agentId to listSkillCommandsForAgents(). The function already
accepts an optional agentIds parameter — it just wasn't wired from
the Telegram registration path.
Before: All agents' skill commands registered on every Telegram bot,
causing /butler_2, /housekeeper_2 dedup suffixes and potential
BOT_COMMANDS_TOO_MUCH errors when total exceeds 100.
After: Each Telegram bot only registers skill commands for its own
bound agent. No cross-agent dedup, no command limit overflow.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat: add Kimi K2.5 model to synthetic catalog
Add hf:moonshotai/Kimi-K2.5 to the synthetic model catalog.
This model is available via dev.synthetic.new API.
- 256k context window
- 8192 max tokens
- Supports reasoning
* chore: fix formatting in onboard-helpers.ts
* fix: update config candidate ordering test (#4407) (thanks @manikv12)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com>
Replaced the static image with a responsive logo using the <picture> element for light/dark mode support. Updated contributor name from 'Clawd' to 'Molty'.
Replaces the previous ASCII art in both the CLI banner and the wizard header with a new, wider design and updates the label to 'OPENCLAW' for consistency.