Installation
Conduct can be installed from source using the provided Makefile. This guide covers system requirements, installation methods, verification steps, and troubleshooting common issues.
Requirements
Before installing Conduct, ensure your system meets the following requirements:
| Component | Minimum Version | Recommended | Notes |
|---|---|---|---|
| Go | 1.21+ | 1.22+ | Required for building from source |
| Git | 2.0+ | Latest | Required for cloning repository |
| Make | 3.8+ | Latest | Build automation tool |
| Operating System | Linux, macOS, Windows | Linux/macOS | All major platforms supported |
Verify your Go installation with go version. If Go is not installed or outdated, download it from golang.org/dl.
Checking Requirements
# Check Go version
go version
# Check Git version
git --version
# Check Make version
make --version
Installation Methods
Method 1: Install from Source (Local User)
This method installs Conduct to your local Go bin directory ($GOPATH/bin or $HOME/go/bin) without requiring administrator privileges.
1Clone the Repository
git clone https://github.com/AGI-Tooling/Orchestrator.git
cd Conduct
2Build and Install
make install
This command will:
- Compile the Conduct binary
- Install it to
$GOPATH/binor$HOME/go/bin - Create both
conductandconductcommands
3Add to PATH (if needed)
If $GOPATH/bin is not in your PATH, add it to your shell configuration:
# For bash (~/.bashrc or ~/.bash_profile)
export PATH="$PATH:$(go env GOPATH)/bin"
# For zsh (~/.zshrc)
export PATH="$PATH:$(go env GOPATH)/bin"
# For fish (~/.config/fish/config.fish)
set -gx PATH $PATH (go env GOPATH)/bin
Reload your shell configuration:
# For bash/zsh
source ~/.bashrc # or ~/.zshrc
# For fish
source ~/.config/fish/config.fish
Method 2: Global Installation (System-Wide)
This method installs Conduct to /usr/local/bin, making it available to all users on the system. Requires administrator privileges.
1Clone the Repository
git clone https://github.com/AGI-Tooling/Orchestrator.git
cd Conduct
2Install Globally
make install-global
On Linux/macOS, you may need to use sudo:
sudo make install-global
Global installation requires write permissions to /usr/local/bin. On most systems, this requires sudo or administrator privileges.
Verifying Installation
After installation, verify that Conduct is correctly installed and accessible:
Check Installation Location
# Find the conduct binary
which conduct
# Check both command variants
which conduct
Expected output:
/Users/username/go/bin/conduct # Local install
/usr/local/bin/conduct # Global install
Verify Version
conduct --version
Test Basic Commands
# Display help
conduct --help
# List available commands
conduct
# Test coverage command
conduct coverage --help
If all commands execute without errors, Conduct is correctly installed and ready to use. Proceed to the Quick Start Guide.
Building from Source (Advanced)
For developers or advanced users who want more control over the build process:
Manual Build Process
# Clone repository
git clone https://github.com/AGI-Tooling/Orchestrator.git
cd Conduct
# Download dependencies
go mod download
# Build binary
go build -o conduct cmd/conduct/main.go
# Test the binary
./conduct --version
# Install manually
cp conduct $(go env GOPATH)/bin/
ln -s $(go env GOPATH)/bin/conduct $(go env GOPATH)/bin/conduct
Build Targets
The Makefile provides several build targets:
| Target | Command | Description |
|---|---|---|
| build | make build |
Compile binary to local directory |
| install | make install |
Install to user's Go bin directory |
| install-global | make install-global |
Install to /usr/local/bin (system-wide) |
| clean | make clean |
Remove built binaries and artifacts |
| test | make test |
Run test suite |
Custom Build Options
# Build with version information
go build -ldflags "-X main.version=1.0.0" -o conduct cmd/conduct/main.go
# Build for specific platform
GOOS=linux GOARCH=amd64 go build -o conduct-linux cmd/conduct/main.go
# Build with optimizations
go build -ldflags="-s -w" -o conduct cmd/conduct/main.go
Troubleshooting
Command Not Found
conduct: command not found after installation
Solutions:
- Verify Go bin directory is in PATH:
echo $PATH | grep $(go env GOPATH)/bin - Add Go bin to PATH (see installation instructions)
- Reload shell configuration:
source ~/.bashrc # or ~/.zshrc - Verify installation location:
ls -la $(go env GOPATH)/bin/conduct
Permission Denied
permission denied during global installation
Solutions:
- Use
sudofor global installation:sudo make install-global - Or use local installation instead:
make install
Go Version Too Old
go: go.mod requires go >= 1.21
Solutions:
- Update Go to version 1.21 or higher:
# Download from golang.org wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gz # Extract and install sudo rm -rf /usr/local/go sudo tar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz - Verify updated version:
go version
Build Failures
Build fails with dependency or compilation errors
Solutions:
- Clean build artifacts:
make clean - Clear Go module cache:
go clean -modcache - Re-download dependencies:
go mod download - Retry build:
make install
Module Download Issues
Network errors or timeout downloading Go modules
Solutions:
- Check internet connection
- Use Go proxy:
export GOPROXY=https://proxy.golang.org,direct - Retry download:
go mod download
Documentation Not Found
Embedded documentation not accessible via conduct docs
Solutions:
- Verify documentation is embedded during build
- Rebuild with documentation:
make clean make install - Access documentation directly in repository:
open internal/docs/site/index.html
Uninstallation
Remove Local Installation
# Remove binaries from Go bin
rm $(go env GOPATH)/bin/conduct
rm $(go env GOPATH)/bin/conduct
Remove Global Installation
# Remove binaries from system bin
sudo rm /usr/local/bin/conduct
sudo rm /usr/local/bin/conduct
Clean Build Directory
cd Conduct
make clean
After successful installation, proceed to the Quick Start Guide to begin using Conduct for screenplay analysis and model deployment.