Toolbox

1.0.2

A robust PowerShell module for parallel remote task orchestration with runspaces, throttling, timeout controls, structured output, error aggregation, retry logic, and pluggable task framework.

Minimum PowerShell version

5.1

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name Toolbox

Copy and Paste the following command to install this package using Microsoft.PowerShell.PSResourceGet More Info

Install-PSResource -Name Toolbox

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More

Owners

Copyright

(c) 2025 Zachary Shupp. All rights reserved.

Package Details

Author(s)

  • Zachary Shupp

Tags

PowerShell Remote Orchestration Parallel Runspaces Tasks WinRM SSH Toolbox Tools Toolkit

Functions

Invoke-Task Get-TaskDefinition New-TaskDefinition Export-TaskResult Get-TaskLog Get-TbConfig Set-TbConfig

PSEditions

Desktop Core

Dependencies

Release Notes

## 1.0.2 - Bug Fix Release (November 2025)

### Fixed
- **CRITICAL**: Fixed PowerShell 5.1 compatibility issue
- Rewrote New-TaskDefinition to use template file approach (TaskTemplate.ps1)
- Applied ASCII encoding to resolve parse errors
- Module now imports correctly on both PowerShell 5.1 and 7.x

### Known Issues
- Command name Invoke-Task conflicts with psake build automation module
- Workaround: Use Install-Module Toolbox -AllowClobber if you have psake installed

## 1.0.1 - Bug Fix Attempt (November 2025)

### Fixed
- Attempted fix for encoding issues (incomplete)

## 1.0.0 - First Stable Release (November 2025)

### Core Features
- **Parallel Task Execution**: Execute tasks across multiple computers simultaneously with runspace pooling
- **Configurable Throttling**: Control concurrent execution with throttle limits (1-256)
- **Timeout & Retry**: Automatic timeout handling and exponential backoff retry logic
- **Smart Computer Lists**: Load targets from TXT, CSV, or Excel files with column specification
- **Multiple Export Formats**: Export results to CSV, JSON, XML, or Excel
- **Comprehensive Logging**: JSON Lines format logs with sensitive data masking

### Built-In Tasks (11 Total)
- **System**: Get-Uptime, Get-BasicInfo
- **File**: Test-PathExists, Get-PathSize
- **Network**: Test-Connection, Test-Port
- **Process**: Get-Process
- **Service**: Get-Service
- **Registry**: Get-Value
- **HTTP**: Invoke-Request

### Cmdlets (7 Total)
- `Invoke-Task`: Execute tasks on remote computers
- `Get-TaskDefinition`: Query available tasks
- `New-TaskDefinition`: Create custom task scaffolding
- `Export-TaskResult`: Export results to various formats
- `Get-TaskLog`: Query execution logs
- `Get-TbConfig`: View configuration
- `Set-TbConfig`: Modify configuration

### Quality & Testing
- 103 comprehensive tests (100 passing)
- Full compatibility: PowerShell 5.1 and 7.x
- Cross-platform support: Windows, Linux, macOS (PS 7+)
- Complete documentation with 41 help examples
- Task authoring guide and contribution guidelines

### Requirements
- PowerShell 5.1 or higher
- ImportExcel module (for Excel export)

FileList

Version History

Version Downloads Last updated
1.0.2 (current version) 7 11/18/2025