Repository navigation
v0.2.0
⚠ BREAKING CHANGES
- channel: remove redundant wechatAllowedUsers config
- channel: rename the JSON key channelProxyScript -> channelNetworkScript
and update the script's return statement to wrap the URL in an object:
return 'http://...'becomesreturn { proxy: 'http://...' }. - channel: make channelProxyScript loader strict on malformed input
- channel: the
telegramProxyconfig field is removed. Users on a
proxy must add achannelProxyScriptpointing to a TS file that returns
the proxy URL for'telegram'(and optionally'wechat'). See
docs/requirements.md § 3.6 for the contract. - Chat log format now uses emoji headers instead of Obsidian-style callouts
Replace > [!type] label timestamp format with simpler {emoji} label timestamp format:
- 💬 for input messages
- ✅ for successful output
- ❌ for errors
⚠️ for warnings/permission denials- 📝 for notes/state info
Changes:
- Update buildCalloutHeader() to use emoji prefix instead of Obsidian syntax
- Update formatPermissionDenials() to use emoji (📝) instead of > [!NOTE]
- Remove duplicate calloutEmoji() implementation from messaging.ts
- Update Telegram HTML converters to match emoji format using string matching
- Update all test assertions to expect emoji format
- Update documentation (requirements.md, CLAUDE.md) with new format examples
The new format is more universally readable and matches what Telegram users already see.
Old chat files with > [!type] format will not be automatically converted.