Getting Started
Get up and running with biwa in minutes.
Windows Not Supported
biwa does not run natively on Windows. Please use WSL2 (Windows Subsystem for Linux). All features work seamlessly inside WSL2.
Installation
Via mise (Recommended)
First, install mise if you haven't already. Then:
# Install biwa
mise use -g github:risu729/biwa
# Verify installation
biwa --versionVia Cargo
If you have Rust installed, you can install biwa directly from crates.io:
cargo install biwaFrom Release Assets (Binary)
Download the latest release for your platform from the Releases page.
From Source
For the latest development version:
git clone https://github.com/risu729/biwa.git
cd biwa
cargo install --path .Configuration
Initialize Configuration
Run the initialization command to create a configuration file:
biwa initThis creates a biwa.toml file in your project directory with default settings.
Basic Configuration
Edit the generated configuration file to add your CSE server details:
[ssh]
host = "cse.unsw.edu.au"
user = "z5555555" # Your zID
port = 22
# Path to your SSH private key (optional, uses default if not specified)
# key_path = "~/.ssh/id_ed25519"SSH Key Authentication
SSH key authentication is recommended over password authentication. See the SSH Key Setup guide for instructions.
First Run
Test your configuration:
# Run a simple command remotely
biwa run echo "Hello from CSE!"
# Run course-specific commands
biwa run 1511 autotest lab01
biwa run give cs1521 lab02TIP
If you're in a project directory, biwa will automatically sync your local files to the remote server before executing commands.
Log Output
By default, biwa shows internal logs (connection status, etc.) alongside remote command output. You can control this:
# Suppress biwa logs, only show remote output
biwa -q run echo "Hello"
# Suppress all output (including remote stdout/stderr)
biwa -s run echo "Hello"
# Increase verbosity for debugging
biwa -vv run echo "Hello"You can also set these in your config:
[log]
quiet = true # Suppress biwa internal logs
silent = true # Suppress all outputNext Steps
- Read about Configuration options
- Learn how env forwarding works in Environment Variables
- Set up SSH Key Authentication
- Check About biwa
- Explore advanced features like hooks and mise integration