Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Task manager living inside emacs
Emacs Lisp Perl
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.



  • emacs 24.0 or higher
  • pcsv (get if from ELPA or from its github repo).


(add-to-list ‘load-path “~/path/to/clasker/”) ; this is important (clasker-sql-setup-schema) ; do it once and forget (require ‘clasker)


Clasker is a task managing mode with automatization in mind. Clasker uses a special buffer, so text input is disabled by default. Let’s say clasker buffers are less ‘open’ than org-mode ones, but clasker makes it easier to implement workflows over tasks.

The basic idea of clasker is that a ticket or task is just a set of properties that and it’s related to other tasks in a hierarchy.

Create new tickets with clasker-new-tickets (default binded to c), or clasker-new-child-tickets (binded to C) to add new tickets as children of ticket at point.

Navigate through the tickets with ‘n’ and ‘p’ for next and previous.

To edit a ticket, pres RET on a ticket, and a menu will appear with the possible actions you can apply to that ticket. Default ones are archive and edit.

There are plugins that can be activated to add all kinds of functionality on top of this basic functionality.

Basic usage and bindings

  • ‘n’ move to next task
  • ‘p’ move to previous task
  • ‘c’ create new top-level task
  • ‘C’ create new task that’s descendant of the task at cursor
  • RET opens the actions menu


Tasks will have different actions depending basically on 2 elements: The type of the task and the actual state of it.

After pressing RET on a task, clasker will show the activable tasks for it. Some general ones are:

  • Archive. Tags the task as archived, and will grey it out. After a while from being archieved, a task disappears from the listing.
  • Edit. Opens a buffer to edit the description of the task. By convention, first line is the heading, and is what will be printed in the listing.

    You can create new actions defuning specially named defuns with the pattern

(defun clasker-action-FOO (ticket) ‘((“Label” . function-to-execute)))

Marking tasks

With ‘m’ you can mark tickets and unmark them with ‘u’. Not really useful yet, but just in case you wanna use it for your plugins


Clasker can be customized with plugins which add new actions for tasks, or add new task types. With the core clasker distribution, you’ll find:

Active task

Mark a task as active, and it will be highlighted in the listing. If you enable this plugin, the globally accessible clasker-active-ticket will be set to the current active task.



This plugin requires gh.el which you can find in elpa.




This project is in a very early state, and we’re mostly rethinking it as it evolves. If you like this project and have some ideas to contribute, we’re more than open to discuss them.

  • Use github’s pull requests for code collaborations
  • For suggestions and ideas, you can try #clasker at freenode and/or github issues.


This Project is licensed under the GPLv3

Something went wrong with that request. Please try again.