firecloud-cli 0.1.0

Command-line interface for FireCloud P2P messaging and file sharing
firecloud-cli-0.1.0 is not a library.

firecloud-cli

Command-line interface for FireCloud P2P messaging and file sharing.

Overview

The firecloud binary provides a complete CLI for:

  • P2P messaging: Private, metadata-hiding chat
  • Friend management: Add, accept, and manage friends
  • File sharing: Upload and download files across the P2P network
  • Background daemon: Run node in the background

Installation

cargo install firecloud-cli

Quick Start

# Initialize identity
firecloud init

# Start node in background
firecloud node --daemon

# Add a friend
firecloud friend add <peer-id> --name "Alice"

# Send a message
firecloud msg send Alice "Hello!"

# View inbox
firecloud msg inbox

Commands

Node Management

  • firecloud node - Start P2P node (use --daemon for background)
  • firecloud init - Generate identity keypair

Friend Management

  • firecloud friend add <peer-id> - Add a friend
  • firecloud friend accept <peer-id> - Accept friend request
  • firecloud friend list - List all friends
  • firecloud friend pending - Show pending requests

Messaging

  • firecloud msg send <friend> <text> - Send message (1KB padded)
  • firecloud msg inbox - View received messages
  • firecloud msg chat <friend> - View conversation

File Sharing

  • firecloud upload <file> - Upload and share a file
  • firecloud download <hash> - Download a file
  • firecloud list - List uploaded files

Privacy Features

  • Metadata hiding: All messages padded to 1024 bytes
  • Timing obfuscation: Random delays (100-500ms)
  • Friend verification: Only friends can message you
  • End-to-end encryption: Coming soon

Daemon Mode

Run the node in the background:

# Start daemon
firecloud node --daemon

# View logs
tail -f ~/.local/share/firecloud/node.log

# Stop daemon
kill $(cat ~/.local/share/firecloud/node.pid)

License

Licensed under either of:

at your option.