Skip to content

Tailscale CLI Helpers v0.2.0 - Major Refactoring and New Commands

Choose a tag to compare

@DigitalCyberSoft DigitalCyberSoft released this 24 Jul 09:52
· 35 commits to main since this release

πŸš€ Major Release v0.2.0

This release brings significant improvements with new commands, refactored codebase, and comprehensive testing.

✨ New Features

New Commands

  • tscp - SCP file transfers with Tailscale hostname resolution
  • trsync - rsync synchronization with Tailscale hostname resolution
  • tmussh - Parallel SSH execution across multiple Tailscale nodes (requires mussh)
  • ts dispatcher - Unified command interface for all operations

Enhanced Installation

  • One-line installer: curl -fsSL https://raw.githubusercontent.com/DigitalCyberSoft/tailscale-cli-helpers/main/install.sh < /dev/null | bash
  • Interactive ts dispatcher installation option
  • Enhanced setup script with new features

πŸ’‘ Improvements

Core Functionality

  • Refactored function naming - Removed unnecessary dcs_ prefixes while preserving namespacing
  • Enhanced SSH support - Full SSH options passthrough (-p, -i, etc.)
  • Improved completion - Tab completion for all new commands
  • Better error handling - Enhanced argument parsing and validation

Code Quality

  • Comprehensive test suite - 5 new test files covering all functionality
  • Cross-shell compatibility - Tested on both bash and zsh
  • Clean namespacing - Strategic use of prefixes to avoid conflicts

πŸ›  Technical Changes

Command Structure

  • tssh - Main SSH command (replaces direct dcs_ts usage)
  • ts - Multi-command dispatcher with subcommands:
    • ts ssh hostname - SSH to host
    • ts scp file.txt host:/path - Copy files
    • ts rsync -av dir/ host:/path/ - Sync directories
    • ts mussh -h host1 host2 -c "cmd" - Parallel execution

New Files

  • tailscale-mussh.sh - Parallel SSH functionality
  • tailscale-ts-dispatcher.sh - Command dispatcher
  • install.sh - One-line installer script
  • VERSION - Version tracking
  • Comprehensive test suite (5 new test files)

πŸ“¦ Installation

Quick Install (Recommended)

# Current user installation
curl -fsSL https://raw.githubusercontent.com/DigitalCyberSoft/tailscale-cli-helpers/main/install.sh | bash

# System-wide installation  
curl -fsSL https://raw.githubusercontent.com/DigitalCyberSoft/tailscale-cli-helpers/main/install.sh | sudo bash -s -- --system

Package Downloads

  • RPM: For Fedora/RHEL/CentOS systems
  • DEB: For Ubuntu/Debian systems

πŸ§ͺ Testing

This release includes comprehensive testing:

  • 164 Tailscale hosts detected in test environment
  • All commands tested across bash and zsh
  • Complete tab completion verified
  • Host resolution fully functional

Run tests: ./tests/test-summary.sh

πŸ“ Usage Examples

# SSH connections
tssh myhost                    # Direct SSH
ts myhost                      # Via dispatcher
tssh user@myhost -p 2222       # With SSH options

# File operations  
tscp file.txt myhost:/tmp/     # Copy files
trsync -av dir/ myhost:/data/  # Sync directories

# Parallel operations
tmussh -h web1 web2 -c "uptime" # Execute on multiple hosts

πŸ”„ Migration

Existing functionality remains compatible:

  • ts hostname still works (calls tssh internally)
  • All tab completion preserved
  • MagicDNS and fallback behavior unchanged

Built by Digital Cyber Soft