a digital person for bluesky
1# Tool Changelog - Recent Updates 2 3## Latest Changes (January 2025) 4 5### ✅ NEW: Platform-Specific Tool Management 6- **Purpose**: Automatically manage tools based on platform (Bluesky vs X) 7- **Implementation**: `tool_manager.py` handles tool switching 8- **Behavior**: 9 - Running `bsky.py` activates Bluesky-specific tools 10 - Running `x.py` activates X-specific tools 11 - Common tools remain available on both platforms 12- **Tools Categories**: 13 - **Bluesky Tools**: `search_bluesky_posts`, `create_new_bluesky_post`, `get_bluesky_feed`, `add_post_to_bluesky_reply_thread`, user memory tools 14 - **X Tools**: `add_post_to_x_thread`, X-specific user memory tools 15 - **Common Tools**: `halt_activity`, `ignore_notification`, `annotate_ack`, `create_whitewind_blog_post`, `fetch_webpage` 16 17### ✅ NEW TOOL: `fetch_webpage` 18- **Purpose**: Fetch and convert web pages to markdown/text using Jina AI reader 19- **Parameters**: 20 - `url` (required): The URL to fetch and convert 21- **Returns**: Web page content in markdown/text format 22- **Usage**: Access and analyze web content for enhanced context 23 24### ✅ ENHANCED: Reply Structure Fix 25- **Issue**: Reply threading was broken due to incorrect root post references 26- **Fix**: Now properly extracts root URI/CID from notification reply structure 27- **Impact**: Bluesky replies now properly maintain thread context 28 29### ✅ ENHANCED: #voidstop Keyword Support 30- **Purpose**: Allow users to prevent void from replying to specific posts 31- **Usage**: Include `#voidstop` anywhere in a post or thread 32- **Behavior**: void will skip processing mentions in posts containing this keyword 33 34### ✅ NEW TOOL: `annotate_ack` 35- **Purpose**: Add notes to acknowledgment records for post interactions 36- **Parameters**: 37 - `note` (required): Note text to attach to acknowledgment 38- **Usage**: Track interaction metadata and reasoning 39 40### ✅ NEW TOOL: `create_whitewind_blog_post` 41- **Purpose**: Create blog posts on Whitewind platform with markdown support 42- **Parameters**: 43 - `title` (required): Blog post title 44 - `content` (required): Markdown content 45 - `visibility` (optional): Public/private visibility 46- **Usage**: Create longer-form content beyond social media posts 47 48## Previous Changes 49 50### ✅ ENHANCED: Atomic Reply Threading 51- **Tool**: `add_post_to_bluesky_reply_thread` 52- **Purpose**: Add single posts to reply threads atomically 53- **Benefits**: Better error recovery, flexible threading, clearer intent 54 55### ❌ REMOVED TOOL: `bluesky_reply` 56- Replaced by atomic `add_post_to_bluesky_reply_thread` approach 57- Migration: Replace single list call with multiple atomic calls 58 59## Migration Notes 60 61### For Platform Switching 62- No action required - tools automatically switch based on platform 63- Use `python tool_manager.py --list` to check current tool configuration 64 65### For Web Content Integration 66- Replace manual web scraping with `fetch_webpage` tool calls 67- Automatically handles conversion to markdown for AI processing 68 69### For Enhanced Interaction Control 70- Use `#voidstop` in posts to prevent void responses 71- Use `annotate_ack` to add metadata to interactions 72- Use `ignore_notification` for bot-to-bot interaction control 73 74## Tool Registration 75 76```bash 77# Register all Bluesky tools 78python register_tools.py 79 80# Register all X tools 81python register_x_tools.py 82 83# Manual tool management 84python tool_manager.py bluesky # Configure for Bluesky 85python tool_manager.py x # Configure for X 86``` 87 88See [`TOOL_MANAGEMENT.md`](/TOOL_MANAGEMENT.md) for detailed platform-specific tool management information.