trustblock-cli

Crates.iotrustblock-cli
lib.rstrustblock-cli
version0.9.1
sourcesrc
created_at2023-04-17 16:11:22.067844
updated_at2023-07-05 11:53:11.425436
descriptionhuman-friendly console utility that helps to interact with Trustblock from command line.
homepagehttps://trustblock.run
repositoryhttps://github.com/Trustblock-Inc/trustblock-cli
max_upload_size
id841648
size800,701
Timur Guvenkaya (timurguvenkaya)

documentation

https://docs.trustblock.run/technical-documentation/publish-an-audit#using-our-cli

README

Trustblock CLI

Trustblock CLI is a user-friendly command-line utility that helps you interact with Trustblock and publish audit reports. Refer to the Trustblock CLI documentation for more detailed information.

Installation

If you have cargo installed, you can install our CLI via:

cargo install trustblock-cli

For other installation methods please refer to:

https://github.com/Trustblock-Inc/trustblock-cli/releases

Usage

To see available subcommands, use the help flag:

trustblock help

For more information and help with specific subcommands, use the --help flag:

trustblock <subcommand> --help

Setup

Before publishing an audit, run the following command to initialize the ~/.trustblock/.env file:

trustblock init

Next, add your API key to the ~/.trustblock/.env file. You can obtain an API key by navigating to your profile and clicking the "Edit my profile" button on the Trustblock website after authentication.

Note: Trustblock CLI can still be used without adding data to the .env file, as long as the required information is passed as arguments.

Audit Publishing

To publish an audit, you can either attach pdf file or specify a web audit URL:

-r, --report-pdf <AUDIT_REPORT_PDF_FILE>
-u, --report-url <AUDIT_REPORT_URL>

Example:

trustblock publish-audit -a audit.json -r ./Audit_Report.pdf
trustblock publish-audit -a audit.json -u https://trustblock.run/my_audit

You can obtain an example audit.json file from https://github.com/Trustblock-Inc/trustblock-cli/blob/main/src/data/audit.json. You should fill in the fields with the appropriate information from your audit.

To include api key and private key:

-a, --api-key

Commands

  • publish-audit: Publishes an audit to Trustblock.
  • init: Initializes the .trustblock folder.
  • clean: Cleans the .trustblock folder.
  • help: Print this message or the help of the given subcommand(s).

Audit JSON Schema

{
  "project": {
    "name": String,
    "links": {
      "website": URL String,
      "twitter": URL String, (optional),
      "telegram": URL String (optional),
    },
    "contact": {
      "email": Email String
    }
  },
  "issues": {
    "FIXED": {
      "LOW": uint,
      "MEDIUM": uint,
      "HIGH": uint,
      "CRITICAL": uint
    },
    "RISK_ACCEPTED": {
      "LOW": uint,
      "MEDIUM": uint,
      "HIGH": uint,
      "CRITICAL": uint
    }
  },
    "tags": [ "TOKEN" | "FINANCE" | "COLLECTIBLES" | "GAMING" | "GOVERNANCE" | "SOCIAL" | "OTHER"],
    "contracts": [
        {
            "evmAddress": Evm Address String,
            "chain": "ETHEREUM" | "POLYGON" | "AVALANCHE" | "BNBCHAIN"
        }
    ],
    "description": {
        "summary": Markdown String
    },
    "name": String
}
Commit count: 48

cargo fmt