README
🚀 Milestoner
Milestoner是一款MCP服务器,它能帮助开发者在无需切换上下文的情况下,分享他们公开构建的历程。它会从git历史记录中提取上下文信息,并助力为社交平台生成里程碑更新内容。
🚀 快速开始
当你在编码过程中达成一个里程碑时,你可以让你的AI助手起草并发布更新内容。Milestoner会自动提取你的git上下文信息,并协助生成适合平台的内容。
✨ 主要特性
- 自动提取上下文:自动从git历史记录中提取上下文信息,无需手动整理。
- 多平台支持:目前支持Bluesky平台,且设计上可扩展支持更多平台。
- AI辅助操作:借助AI助手完成草稿起草、发布、调度等操作。
📦 安装指南
使用uv(推荐)
# 克隆仓库
git clone https://github.com/J3r3my97/milestoner.git
cd milestoner
# 使用uv安装
uv pip install -e .
使用pip
pip install -e .
💻 使用示例
查看工作成果
> "What have I done this week that's worth posting about?"
AI助手会使用list_activity工具,按天展示你最近的提交记录。
起草更新内容
> "Draft a post about the authentication feature I just shipped"
AI助手会使用draft_update工具获取git上下文信息,然后为你生成一篇待审核的帖子。
发布更新内容
> "Post that update to Bluesky"
AI助手会使用post_update工具发布你的内容,并返回一个指向已发布帖子的链接。
安排最佳发布时间
> "Schedule this post for the best time today"
AI助手会使用schedule_post工具,设置use_optimal_time: true,将你的帖子安排在最佳互动时间发布(例如周三上午10点、工作日上午)。
查看最佳发布时间
> "When's the best time to post today?"
AI助手会使用get_optimal_times工具,根据互动研究结果为你展示最佳发布时间。
📚 详细文档
工具说明
list_activity
展示近期可用于发布的git活动。 输入参数:
repo_path(可选):git仓库的路径,默认为当前目录。since(可选):追溯的时间范围,默认为“7 days”。
draft_update
获取起草社交媒体帖子所需的结构化上下文信息。 输入参数:
context(可选):关注的内容(例如“just shipped auth”)。style(可选):语气风格 -casual(随意)、announcement(公告)、technical(技术)、storytelling(叙事)。repo_path(可选):git仓库的路径。commit_range(可选):特定的提交范围(例如“abc123..def456”或“last 5”)。platform(可选):目标平台(默认为已配置的默认平台)。
post_update
将内容发布到社交平台。 输入参数:
content(必需):要发布的内容。platform(可选):目标平台(默认为已配置的默认平台)。
configure
为平台设置凭证。 输入参数:
platform(必需):要配置的平台(例如“bluesky”)。handle:你在平台上的用户名。app_password:用于身份验证的应用密码。set_default(可选):将此平台设置为默认平台(默认值:true)。
schedule_post
安排帖子在最佳时间发布。 输入参数:
content(必需):要发布的内容。scheduled_for(可选):发布的ISO日期时间(例如“2025-01-15T10:00:00”)。platform(可选):目标平台(默认为已配置的默认平台)。use_optimal_time(可选):安排在下次最佳发布时间发布。
list_scheduled_posts
列出所有待发布的定时帖子和即将到来的最佳发布时间。
cancel_scheduled_post
取消已安排的帖子。 输入参数:
post_id(必需):要取消的定时帖子的ID。
get_optimal_times
根据互动研究结果获取最佳发布时间。返回:
- 当前时间质量评估。
- 今天和明天的推荐发布时间。
- 本周最佳时间(周三上午10点)。
- 应避免的时间。
资源链接
milestoner://config
当前配置状态和平台连接状态。
milestoner://recent-posts
通过Milestoner发布的帖子历史记录。
配置存储
凭证信息存储在~/.milestoner/config.json文件中,文件权限为600。帖子历史记录存储在~/.milestoner/post-history.json文件中。
添加新平台
Milestoner旨在支持多个平台。要添加新平台,请按以下步骤操作:
- 在
src/milestoner/platforms/目录下创建一个新文件(例如twitter.py)。 - 实现
Platform抽象基类。 - 在
src/milestoner/platforms/registry.py文件中将新平台添加到注册表中。
具体实现示例可参考src/milestoner/platforms/bluesky.py文件。
📄 许可证
本项目采用MIT许可证。
微信扫一扫