Skip to main content


The Tezos Client plugin provides tasks to analyze contracts including type checking and simulating of Michelson (.tz) smart contracts. They both execute against a protocol (currently kathmandu). We'll enable a --protocol flag in the future to allow users to specify a protocol to use


  • Taqueria v0.26.0 or later
  • Node.js v16.16 or later. (v17.x.x or later is not supported)
  • Docker v20.10.12 or later


To install the Tezos Client plugin on a Taqueria project, navigate to the project folder and run:

taq install @taqueria/plugin-tezos-client

You can override the Tezos-Client version used by the plugin by creating the environment variable TAQ_TEZOS_CLIENT_IMAGE and setting it to your desired Tezos-Client Docker image

The taq typecheck task

Basic usage is:

taq typecheck <contractName>

Basic description

This task typechecks a Michelson file in artifacts and reports a failure or success

The taq typecheck-all task

Basic usage is:

taq typecheck-all

Basic description

Performs the same function as taq typecheck, but performs type-checking for all contracts in the artifacts directory.

The taq simulate task

Basic usage is:

taq simulate <contractName> <--param paramFileName>

Basic description

This task runs a Michelson file in artifacts as a simulation and ouputs a result suggesting a failure or success. If it's a success, it shows the updated storage value, emitted operations, and big map differences


  • By default, the storage file it will use to simulate the contract is where CONTRACT is the name of the contract. If you wish to specify another storage file in artifacts, use the --storage flag

  • The --param flag is mandatory and you must supply the filename, in artifacts, that contains the actual parameter value

  • By default, the entrypoint is default, which points to no specific annotated entrypoint. Use --entrypoint to specify an annotated entrypoint to call. E.g. if the parameter type of a Michelson contract is (or (or (int %decrement) (int %increment)) (unit %reset)), then there are two ways to call the increment entrypoint, with parameter (Left (Right 14)) or with parameter 14 if your command contains --entrypoint increment

The taq client task

Basic usage is:

taq client --command <command to pass to the underlying octez-client binary>

Wrap the value for the --command flag with quotes.


This task allows you to run arbitrary octez-client native commands, but they might not benefit from the abstractions provided by Taqueria

Plugin Architecture

This is a plugin developed for Taqueria built on NodeJS using the Taqueria Node SDK and distributed via NPM