又一个提醒插件、支持完成打卡及按任务配置提醒间隔/时间和重复间隔/类型、
通过对话按群聊/私聊管理定时提醒任务的Nonebot2插件。相比常见的待办/日历应用,和IM结合大概能起到全自动压力/催人的作用,在活跃群聊中使用有奇效。
- 指派任务并循环At提醒
- 需要手动打卡完成任务
- 根据完成时间/固定间隔重复提醒
- 基于 nonebot-plugin-saa 的跨适配器支持
- 基于 nonebot-plugin-orm 的持久化
- refactor/更好的检索任务函数
- refactor/加测试
- feat/统计拖延时间
- fix/时间的自然语言输出在1-3周内差一周
- refactor/更自然的duration/timedelta描述
- feat/更激进或烦人的提醒:跨群聊乃至平台寻找任务指派人并提醒
- feat/请假及暂停功能:对特定任务/时间段请假(自动跳过)或在特定时间段内暂停任务
- feat/静音提醒:收到提醒消息后手动确认可一段时间内暂停提醒
- feat/用户系统:单用户多平台/多账号支持、昵称
- feat/可填入格式化模板的提醒内容
使用 nb-cli 安装
在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装nb plugin install nonebot-plugin-yareminder
使用包管理器安装
在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令pip
pip install nonebot-plugin-yareminder
pdm
pdm add nonebot-plugin-yareminder
poetry
poetry add nonebot-plugin-yareminder
conda
conda install nonebot-plugin-yareminder
打开 nonebot2 项目根目录下的 pyproject.toml
文件, 在 [tool.nonebot]
部分追加写入
plugins = ["nonebot_plugin_yareminder"]
<command_start>rmd
Usage: rmd COMMAND [OPTIONS] [ARGS] ...
Commands:
add Create a task
rm Delete a task
ls List all tasks in current chat
finish Finish a task (and triggers reoccurence if set)
skip Skip a task('s assignee) to the next or specified offset
due Show / Change the due time of a task
remind Show / Change the remind interval / starting time of a task
recur Show / Change the recurrence type / interval of a task
assign Show / Change the assignee(s) of a task
stat Calculated the total delayed time of assignee(s) on a task
添加任务
rmd add
Usage: :rmd add TASK_NAME DUE_TIME [OPTIONS]
Options:
-i | --remind-interval <datetime_str> Specify remind interval
-o | --remind-offset XdXhXmXs Specify when to begin reminding relative to due time
-t | --recur-type OnFinish|Regular|Never Specify recurrence type
-r | --recur-interval XdXhXmXs Specify recurrence interval
删除任务
rmd rm
Usage: :rmd rm TASK_NAME
列出任务
rmd ls
Usage: :rmd ls
完成任务
rmd finish
Usage: :rmd finish [TASK_NAME]
跳过任务
rmd skip
Usage: rmd skip [TASK_NAME] [OPTIONS]
Options:
--offset n Skip to the nth assignee after the current one
查看/修改任务到期时间
rmd due
Usage: rmd due TASK_NAME [OPTIONS]
Options:
--shift XdXhXmXs shift the due time by a time range
--set <datetime_str> set the due time directly
查看/修改任务提醒提前时间/周期
rmd remind
Usage: rmd remind TASK_NAME [OPTIONS]
Options:
-o|--offset +/-XdXhXmXs set how long to remind in advance of due time
-i|--interval XdXhXmXs set remind interval
查看/修改任务重复类型/周期
rmd recur
Usage: rmd recur TASK_NAME [OPTIONS]
Options:
-t|--type OnFinish|Regular|Never set recurrence type
-i|--interval XdXhXmXs set recurrence interval
查看/修改任务指派
rmd assign
Usage: rmd assign TASK_NAME [OPTIONS] [AT1] [AT2] ...
Options:
-r|--rm instead of add, remove assignees in ats from specified task
计算拖延时间
rmd assign
Usage: rmd stat TASK_NAME [AT1] [AT2] ...