orgassist is a bot - which handles your appointments, tasks and notes. A remote control for your org-mode directory.
MIT License
"orgassist" is a bot - an assistant who handles your appointments, tasks and note-taking when you're away from your computer. It can integrate multiple sources of tasks and appointments and use multiple different communication interfaces to notify you in various ways.
It's architected to be easily expandable. Planned features can be found in PROJECT.org file. README describes the current project state.
Currently working functions include:
I had most of those problems and decided this would be an elegant way to solve all of them without dropping org-mode or using cloud-sync solutions.
OrgAssist is split into plugins with a well-defined API.
"Core" plugin - required by org and exchange plugin.
It manages a list of dated events with a state (TODO, DONE, etc.) in a common format. For this events, it generates notifications and agenda views.
Planned: Incremental search over events.
Reads org files and feeds events into the calendar. Handles command to take notes.
Planned: changing state of tasks, rescheduling, smarter capture.
Fills calendar with events from your company's Exchange. Detects those set by you, and with your required and optional attendance.
Planned: detecting new events.
Execute a configured shell command on request. Enable/disable alarms, control music, etc.
Tested with Python 3.5 and 3.6.
See example_plugin.py
for an example and showcase of the API. You can develop
plugins using the PyPI version of orgassist by specifying config parameters
plugins_path
and plugins
.
Single orgassist instance can have multiple interfaces (xmpp, irc) with multiple assistants connected to them. Each assistant handles a single "boss" - identified by JID or irc nick/realname. Each assistant can have different plugins enabled, with different configuration and state.
/- Calendar Plugin
Interfaces --> | Assistant 1 (Boss JID 1) -+
(xmpp, irc) | state, config \- Org plugin
|
| /- Calendar plugin
| Assistant 2 (JID 2) ------+
| \- Org plugin, OWA Plugin
| Assistant 3 ---> etc.
License: MIT License. Author: Tomasz Fortuna, 2019. Contact: [email protected]
Project's beautiful logo was contributed by Ulises (tjulises). It relates to the org-mode logo with an added "robot" twist.
Orgassist includes an external MIT-licensed module "orgnode" by Albin Stjerna, Takafumi Arakaki, and Charles Cave (https://github.com/albins/orgnode.git). Edited by myself to cleanup API and fix some problems.