A desktop app to help aid on-boarding and porting vehicles to openpilot for the masses.
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Removes yarn test from circleci for now Sep 29, 2018
.github Initial commit. Sep 17, 2018
.vscode Initial commit. Sep 17, 2018
app Updates for package management Nov 15, 2018
docs New menu system Nov 5, 2018
internals Fixes issues with builds. Oct 21, 2018
resources Adds Screenshot Feature, Fixes Missing Menus, Copy/Paste Nov 5, 2018
test Fixes Sep 28, 2018
.babelrc Initial commit. Sep 17, 2018
.dockerignore Initial commit. Sep 17, 2018
.editorconfig Initial commit. Sep 17, 2018
.eslintignore Initial commit. Sep 17, 2018
.eslintrc Fixes Sep 28, 2018
.gitattributes Initial commit. Sep 17, 2018
.gitignore Initial commit. Sep 17, 2018
.npmrc Adds npmrc for fontawesome pro and added fontawesome pro to css. Sep 28, 2018
.prettierrc Initial commit. Sep 17, 2018
.stylelintrc Initial commit. Sep 17, 2018
.tool-versions Initial commit. Sep 17, 2018
.travis.yml Fixes node-pty-prebuilt Oct 24, 2018
LICENSE Updates some minor things. Nov 8, 2018
README.md Updates contribution text. Nov 8, 2018
appveyor.yml Fixes node-pty-prebuilt Oct 24, 2018
package.json Updates for package management Nov 15, 2018
webpack.config.base.js New scanning logic to help identify if your devices are on the networ… Nov 8, 2018
webpack.config.eslint.js Initial commit. Sep 17, 2018
webpack.config.main.prod.js Some finishing touches before v0.1.0 Nov 7, 2018
webpack.config.renderer.dev.dll.js Adds websocket server files. Oct 15, 2018
webpack.config.renderer.dev.js Some finishing touches before v0.1.0 Nov 7, 2018
webpack.config.renderer.prod.js tweaks for builds Oct 24, 2018
yarn.lock Updates for package management Nov 15, 2018


Build status


Workbench is a desktop application to help you manage your Comma EON(s) as well as assisting with installing Openpilot. It also has a goal of providing easier porting of new vehicles.

It's in its infancy so it doesn't actually fulfill that mission above quite yet but it's getting better by the day.

Help Support Openpilot Community Efforts

The Openpilot Community nor jfrux are funded by Comma.ai, Inc. or any other commercial entity. Your support is all we have. Growing expenses with opc.ai, cloud hosting, and costs running great services for the community is not free. If you have a few bucks, please consider becoming a patreon for the Openpilot Community and support further uptime and dev time. Finances will be out in the open on the patreon page for everyone to see.



Download the latest version from the links below.


IMPORTANT: Workbench manages your EON over SSH. You must enable SSH in your Settings on EON.


  • Scans your network for your EON so you don't need to find the IP.
  • Connects to EON via SSH (and automatically, installs SSH key for you)
  • Dumps you into an SSH shell connection to your EON with one click.
  • Has tabs for all of the various ZMQ messages sent in real-time over wifi from EON.

Ideas / Concepts

  • Automatic task scripts for EON configuration / maintenance.
  • Reinstall Comma Openpilot Release2
  • Backup videos
  • Review videos
  • Monitor uploads


Regardless of the platform you are working on, you will need to have Yarn installed. If you have never installed Yarn before, you can find out how at: https://yarnpkg.com/en/docs/install.

  1. Install necessary packages:
  • Windows
    • Be sure to run yarn global add windows-build-tools to install windows-build-tools.
  • macOS
    • Once you have installed Yarn, you can skip this section!
  • Linux(You can see here what your Linux is based on.)
    • RPM-based
      • GraphicsMagick
      • libicns-utils
      • xz (Installed by default on some distributions.)
    • Debian-based
      • graphicsmagick
      • icnsutils
      • xz-utils
  1. Fork this repository to your own GitHub account and then clone it to your local device
  2. Install the dependencies: yarn
  3. Build the code and watch for changes: yarn run dev
  4. Note: You may have to run yarn run package once before to get the node-pty binaries in place.
  5. Checkout a new branch for your feature... something like feature/what-is-it or bugfix/the-fix-for-something
  6. Push your change up to GitHub and create a Pull Request to merge your new feature / bugfix branch into the master branch.

To make sure that your code works in the finished application, you can generate the binaries like this:

yarn run package

After that, you will see the binary in the ./releases folder!

Known issues that can happen during development

Error related to node-pty-prebuilt

If after building during development you get an alert dialog related to node-pty issues, make sure its build process is working correctly by running yarn run package.

Error with codesign on macOS when running yarn run dist

If you have issues in the codesign step when running yarn run package on macOS, you can temporarily disable code signing locally by setting export CSC_IDENTITY_AUTO_DISCOVERY=false for the current terminal session.

Bug Reports / Feature Requests

Feel free to create issues for feature requests and/or bugs.