Skip to main content

A multi-language code generator for the Opera Scope Protocol. Code is generated from Google Protocol Buffer definitions.

Project description


Hob is a multi-language code generator for the Opera Scope Protocol. It generates code from Google Protocol Buffer files (.proto), which describes the services, messages, commands and events.

The Scope Protocol is an RPC system used in the Opera web browser. This allows external and embedded clients to debug, inspect or perform other operations on any running Opera instance.

Hob consists of the following components:

  • The hob command line tool which is used to generate code and other output formats.

  • A library for working with Google Protocol Buffer definitions. It can read .proto files and has classes and functions for working with protobuf elements.

  • Support for third party extensions which can add additional commands.




If you install hob using easy_install or pip these dependencies will be installed automatically.


usage: hob [-h] [-v] [--verbose] [--quiet] [-c CONFIG_FILE] [-t TARGET]
           [--project PROJECT] [-w [WARNING [WARNING ...]]] [--pdb]
           [--profile FILE]
           command ...

    xml                 Generate XML structures of protocol definitions
    proto               Generate Protocol Buffer definitions
    js                  Create service interfaces for JavaScript. If no files
                        are specified, the following files will be added in
                        the 'service' folder:,
               Files can also be specified
                        with the service name, e.g. just ecmascript-debugger.
               and will always be added.
    extensions          Lists all enabled extensions
    rst-doc             Create reST documentation of selected services. If no
                        files are specified all services are added.
    validate            Validates services, commands, events, messages and
                        fields according to the style guide
    config              Displays the current config. This is the result of all
                        loaded config and project files as well as overrides
                        from the command-line.

  -h, --help            show this help message and exit
  -v, --verbose         increase verbosity
  --version             show program's version number and exit
  --quiet               be silent
  -c CONFIG_FILE, --config-file CONFIG_FILE
                        use specific config file instead of system-wide/local
                        config files
  -t TARGET, --target TARGET
                        specify target configuration to use (overrides config
  --project PROJECT     specifies project name or file to use (hob.project)
  -w [WARNING [WARNING ...]], --warning [WARNING [WARNING ...]]
                        enable a warning flag, pick from all, field-id-gap,
  --pdb                 start python debugger on exceptions
  --profile FILE        profile a command using the python profiler, writes
                        result to specified file


See or the CHANGELOG file in the top distribution directory.


Hob is maintained by the Opera Dragonfly team. The authors are:

Additional help from:


See the LICENSE file in the top distribution directory.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution (107.1 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page