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.