Note: For a more recent guide to getting started, please visit the NetLab blog.

metaknowledge has two distributions. The simplest is found under the release branch of the git repo, which can be installed the usual way with pip:

pip3 install metaknowledge

The second version is at the master branch on Github. It comes with extra documents and resources for teaching.

The download from Github includes a customized Vagrant file that installs metaknowledge and other useful Python libraries into a virtual machine. It is the easiest way of getting metaknowledge working if you are not familiar with Python.

Install with Vagrant

The Vagrant method is intended for students and anyone not familiar with Python. It creates a virtual machine with metaknowledge installed, as well as the Python scientific stack numpy, scipy, and matplotlib, as well as a series of iPython notebooks for teaching metaknowledge and Python. Some notebooks are more complete than others.

The instructions for those familiar with the command line use the advanced instructions. Otherwise, it is probably best to use the student install.

Student Install

First, you need to install Vagrant and VirtualBox. You need to do this before you can install metaknowledge.

Once Vagrant and VirtualBox are installed, download metaknowledge. Unzip the file. If you are unable to unzip the file, download 7-zip.

Open the directory metaknowledge and go to the vagrant subdirectory. Depending on your operating system, double click either: win_run, mac_run, or linux_run.

A window should pop up and say something like:

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'ubuntu/trusty64' could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: >= 0

You will also see an estimate of how long the download and installation process will take (typically 20 minutes). All you have to do it wait for it to finish. When it is done, a browser window will appear at the showing the notebooks. If a browser window opens and it is showing No data received, hit refresh a couple times.

When you see a page with the following, you have installed everything successfully:


To open the page again, just double click on which ever of win_run, mac_run, or linux_run you used. It should take less than a minute the second time.

Advanced Instructions

  1. Install Vagrant and VirtualBox.
  2. Clone the git repo <>.
  3. Make sure you are on the master branch.
  4. Go to the vagrant directory.
  5. Run vagrant up
  6. Once vagrant has finished go to http://localhost:1159/

What you are doing by running vagrant up is creating an Ubuntu VM and provisioning it with the script bootstrap, which is also in the vagrant directory. If you run vagrant up again it only starts the VM. To access the VM’s notebook once it is created:

  1. Go to the vagrant directory.
  2. Run vagrant up
  3. Once vagrant has finished go to http://localhost:1159/

You can also use vagrant ssh to ssh into the VM or vagrant provision to rerun bootstrap. If vagrant ssh does not work on your machine, you should be able to ssh into it at:

Port: 2222
Username: vagrant
Password: vagrant

On Windows PuTTY has been tested and works well.</p>

Install without Vagrant

Installing without Vagrant is done with setuptools. Go to the metaknowledge directory and run python3 install. This is the same version that is installed via pip plus some extra development command line tools.

Extending MK

Coming soon


If you find bugs, or have questions, please write to:

Reid McIlroy-Young


metaknowledge is free and open source software, distributed under the GPL License.