docs/

directory
v0.1.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 10, 2025 License: Apache-2.0

README

ToolHive developer guide

The ToolHive development documentation provides guidelines and resources for developers working on the ToolHive project. It includes information on setting up the development environment, contributing to the codebase, and understanding the architecture of the project.

For user-facing documentation, please refer to the ToolHive docs website.

Contents

Explore the contents of this directory to find more detailed information on specific topics related to ToolHive development including architectural details and design proposals.

For information on the ToolHive Operator, see the ToolHive Operator README and DESIGN doc.

Getting started

ToolHive is developed in Go. To get started with development, you need to install Go and set up your development environment.

Prerequisites
  • Go: ToolHive requires Go 1.24. You can download and install Go from the official Go website.

  • Task (Recommended): Install the Task tool to run automated development tasks. You can install it using Homebrew on macOS:

    brew install go-task
    
Building ToolHive

To build the ToolHive CLI (thv), follow these steps:

  1. Clone the repository: Clone the ToolHive repository to your local machine using Git:

    git clone https://github.com/stacklok/toolhive.git
    cd toolhive
    
  2. Build the project: Use the task command to build the binary:

    task build
    
  3. Run ToolHive: The build task creates the thv binary in the ./bin/ directory. You can run it directly from there:

    ./bin/thv
    
  4. Optionally, install the thv binary in your GOPATH/bin directory:

    task install
    
Running tests

To run the linting and unit tests for ToolHive, run:

task lint
task test

ToolHive also includes comprehensive end-to-end tests that can be run using:

task test-e2e
Other development tasks

To see a list of all available development tasks, run:

task --list

Contributing

We welcome contributions to ToolHive! If you want to contribute, please review the contributing guide.

Contributions to the user-facing documentation are also welcome. If you have suggestions or improvements, please open an issue or submit a pull request in the docs-website repository.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL