What is Accerciser?

Accerciser is an interactive Python accessibility explorer for the GNOME desktop. It uses AT-SPI to inspect and control widgets, allowing you to check if an application is providing correct information to assistive technologies and automated test frameworks. Accerciser has a simple plugin framework which you can use to create custom views of accessibility information.

In essence, Accerciser is a next generation at-poke tool.



pyatspi, not cspi, based

Like the modern LSR and Orca screen readers, Accerciser uses pyORBit to talk AT-SPI with other applications. It avoids the deprecated cspi module.

Plugin architecture
Create a Python module, drop it in a folder, and have it load as a plugin pane with full access to AT-SPI and the selected element in the accessibility tree view.
Interface browser and event monitor plugins
All the features you've come to expect from a poke tool, and then some.
IPython console plugin

A full, interactive Python shell with access to the accessible object selected in the tree view; all AT-SPI interfaces, methods and attributes; and any other Python modules. Supports autocompletion and a million other niceties thanks to IPython.

API browser plugin
Shows the interfaces, methods, and attributes available on the selected accessible object.
Global hotkeys
Move the tree view quickly to the last focused accessible or the one under the mouse pointer. Insert a marker into the event monitor log for easy identification at a later time.
Customizable UI layout
Move plugin tabs to different panels or even separate windows to view them concurrently.
Accerciser does not disable its own accessibility.
Yelp documentation
Included in the package.
Python powered
Brits, not serpents.


The most recent stable release of Accerciser is version 3.4.x, and 3.5.x is the development one. You can get both of them by browsing the FTP site. Click here to browse the FTP site.

Also, you can get and install the current master from git by using the following commands:

git clone git://
cd accerciser
./           # or ./configure for first time build
sudo make install      # or make install as root


On a Red Hat based distro:

  • python >= 2.4

  • pygtk2 >= 2.8

  • gnome-python2 >= 2.12

  • pyatspi
  • gnome-python2-rsvg
  • gnome-python2-libwnck >= 2.14

  • GConf2

On a Debian based distro:

  • python >= 2.4

  • python-gtk2 >= 2.8

  • python-gnome2 >= 2.14

  • python-pyatspi2
  • python-rsvg
  • python-wnck
  • gconf2

To use the Python console plugin, you must have IPython installed.

Note: Accerciser version 3 or later depends on gsettings instead of gconf2.



We now have a tutorial for authoring plugins.

The following screencast tutorials require Ogg Theora to view.

Series #1: Introducing Accerciser

  1. Basic tour - Video - Transcript - Voicecast (with Orca)

  2. Plugin tour - Video - Transcript

Series #2: Debugging with Accerciser

  1. Basic debugging of an application Video - Transcript

  2. Using Accerciser to extend Orca Video - Transcript

In addition the introductory article Python Powered Accessibility has a tutorial on using Accercisor.


Why not improve at-poke?

  1. It's cspi based.
  2. It's not 3rd party extensible.
  3. We like Python.

Where's the console plugin?

Make sure you have IPython installed and have run it at the command line. You should now get an error message when a plugin is unable to load.

Why can't I relocate the console or other plug-in views?

Normally you can drag or right click the tabs to float or dock the plug-in views. Sometimes this just doesn't work. To solve it use conf-edit or gconftool to turn off /apps/accerciser/general/layout_single.

Why does Accerciser freeze my desktop when I put it to sleep?

The AT-SPI registry daemon delivers events synchronously to an AT-SPI client. When a client blocks, it blocks the registry, which blocks AT-SPI servers from posting new events. Thus the entire desktop freezes. See bug #326545.

Don't put your AT to sleep.

How does Accerciser talk AT-SPI?

Accerciser uses pyatspi to interact with AT-SPI through pyORBit.

Bugs and enhancements

To report an Accerciser bug or request an enhancement, please use this Bugzilla template.

This Bugzilla query names all reports ever filed for Accerciser. This second query only names reports currently open for Accerciser.

Accessibility testing resources


RoadMap for Accerciser in GNOME 3.0 and beyond.


EitanIsaacson is responsible for nearly all of the code in the version of Accerciser you see today. PeterParente worked on the original prototype, some of the documentation, and some of the packaging.

Apps/Accerciser (last edited 2013-11-18 18:28:41 by WilliamJonMcCann)