Skip to content

oth-body/hoot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hoot - A Nostr CLI Tool

A secure command-line interface for interacting with the Nostr network. Features encrypted key storage, profile management, and multi-relay support. Made for shenanigans,not for serious critical use

Features

  • Secure encrypted storage of private keys
  • Post messages to multiple relays
  • View and edit profile information
  • List recent posts
  • Configurable relay list
  • Automatic hashtag detection
  • Cross-platform support (Windows, macOS, Linux)

Prerequisites

  • Go 1.19 or later
  • Git

Installation

  1. Clone the repository:

    git clone https://github.com/oth-body/hoot.git
    cd hoot
  2. Install dependencies:

    go mod download
  3. Build the binary:

    go build -o hoot
  4. (Optional) Move the binary to your PATH:

    # Linux/macOS
    sudo mv hoot /usr/local/bin/
    
    # Windows
    # Move hoot.exe to a directory in your PATH

Configuration

Relay Configuration

Create a relays.txt file in:

  • Your config directory:
    • Linux: ~/.config/nostr-cli/
    • macOS: ~/Library/Application Support/nostr-cli/
    • Windows: %APPDATA%\nostr-cli\

Example relays.txt:

wss://relay.damus.io
wss://relay.nostr.band
wss://nostr.wine

If no relays.txt is found, default relays will be used.

Usage

Store Your Private Key

hoot -s -k <your-private-key>

You'll be prompted to create an encryption password.

View Your Public Key

hoot

Post a Message

hoot -m "Hello Nostr! #introduction"

List Recent Posts

hoot -l

View Profile

hoot -p

Update Profile

hoot -u '{"name":"Alice","about":"Nostr enthusiast"}'

Using Custom Relays for a Single Command

hoot -r "wss://relay1.com,wss://relay2.com" -m "Hello from custom relays!"

Security

  • Private keys are encrypted using XSalsa20 and Poly1305
  • Key derivation uses Scrypt
  • Keys are stored in your system's config directory with appropriate permissions

About

a cli for nostr

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages