browser automation library and tool in Common Lisp on Emacs
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
kommissar-js kom utils cleanup Dec 12, 2016 cleanup Apr 17, 2017
kommissar.el cleanup Apr 17, 2017
kommissar.lisp cleanup Apr 17, 2017
screenshot.png cleanup Apr 17, 2017
testworkflow.lisp parenscript tabs Dec 12, 2016

Kommissar - Lisp Browser Automation

sample Kommissar is a

  • browser automation development environment using Emacs and an interactive browser addon
  • Common Lisp/ParenScript library for generating and maintaining web user simulation applications

Kommissar's primary function is to compile lisp userscripts from manually recorded actions in the browser that you can then use to build web-oriented programs or bots.


  • web botting
  • test automation
  • Emacs as an internet browser
  • controlling browsers from CLI
  • interactive development of browser applications with ParenScript
  • pull web and local applications into a single runtime


  • install and start MozRepl
  • install kommissar-utils.js in the js folder as a Scriptish userscript
  • load kommissar.el in emacs
  • eval commands in kommissar.lisp with SLIME
  • to record a script, use the record tool with F2 in the browser, then save it as a common lisp program by evaluating (store-workflow "workflow-name.lisp")

The end product will include an option for a monolithic GUI intended for non-emacs users with the ability for laypersons to create their own browser scripts, bots, and workflows, and to have a repository for users to share, collaborate, and work on a collection of scripts and constructed site interaction APIs.

To Do

  • better ParenScript support
  • record tab changes
  • action-by-action runthrough of recording
  • sequences of elements by interactive xpath regex highlight
  • re-edit/re-order? actions in gui