Pixelbadger.Toolkit
6.8.0
dotnet tool install --global Pixelbadger.Toolkit --version 6.8.0
dotnet new tool-manifest
dotnet tool install --local Pixelbadger.Toolkit --version 6.8.0
#tool dotnet:?package=Pixelbadger.Toolkit&version=6.8.0
nuke :add-package Pixelbadger.Toolkit --version 6.8.0
Pixelbadger.Toolkit
A CLI toolkit exposing varied functionality organized by topic. The CLI uses Spectre.Console for rich terminal output — colour-coded success and error messages, formatted tables for data-heavy commands, and styled interactive prompts for secure input.
Note: Search and MCP RAG functionality has been extracted to the separate Pixelbadger.Toolkit.Rag repository (
pbragCLI tool).
Installation
dotnet tool install --global Pixelbadger.Toolkit
Usage
pbtk [topic] [action] [options]
Get help for any command:
pbtk --help
pbtk strings reverse --help
Full command documentation is available at the project docs site.
Development
Build
dotnet build
dotnet test
Package and publish
dotnet pack
dotnet nuget push bin/Release/Pixelbadger.Toolkit.*.nupkg --source https://api.nuget.org/v3/index.json --api-key $NUGET_API_KEY
Run from source
dotnet run -- [topic] [action] [options]
Install locally
dotnet tool install --global --add-source ./bin/Release Pixelbadger.Toolkit
Topics
| Topic | Description |
|---|---|
strings |
String manipulation — reverse, Levenshtein distance, abjadify, Flesch reading ease, report |
interpreters |
Esoteric language interpreters — Brainfuck, Ook, bf-to-ook |
images |
Image steganography — hide and recover messages in PNG files |
web |
Local web server — serve a single HTML file over HTTP |
llm |
LLM utilities — chat, translate, OCR, corpospeak, session history |
oauth |
OAuth token management — acquire tokens, manage connection profiles |
crypto |
Paillier homomorphic encryption — encrypt, decrypt, and perform arithmetic on ciphertext |
markov |
Markov chain text generation — train a model from a corpus, generate completions |
demoscene |
Classic Amiga demoscene effects — Kefrens bars and Boing Ball rendered in the terminal |
gpt
A tiny char-level GPT (decoder-only transformer) implemented entirely from scratch in pure C# — a hand-rolled tensor library with reverse-mode autograd, manual forward and backward passes, and an AdamW optimizer. Inspired by Karpathy's nanoGPT/microGPT. Hot kernels are accelerated with SIMD via System.Numerics.Tensors (TensorPrimitives) and Parallel.For across independent matmul rows; reductions are kept sequential so results are reproducible regardless of thread count.
A checkpoint is a directory containing config.json (model config + vocabulary) and weights.bin (raw parameter floats).
train
Builds a character vocabulary from the corpus, trains the model by gradient descent, and writes a checkpoint.
--source <path> Path to a training corpus file, or literal text (required)
--out <dir> Checkpoint output directory (default: ./.gpt)
--steps <int> Number of training steps (default: 2000)
--batch-size <int> Sequences per training step (default: 16)
--block-size <int> Context length in characters (default: 64)
--n-embd <int> Embedding dimension (default: 128)
--n-head <int> Number of attention heads (default: 4)
--n-layer <int> Number of transformer blocks (default: 3)
--lr <float> Learning rate (default: 0.0003)
--seed <int> Random seed for reproducible runs (default: 1337)
pbtk gpt train --source corpus.txt --out ./.gpt --steps 2000
--n-embdmust be divisible by--n-head, and the corpus must be longer than--block-size.
complete
Loads a checkpoint and autoregressively generates a continuation of the prompt.
--model <dir> Checkpoint directory (default: ./.gpt)
--prompt <text> Prompt to continue (required)
--max-tokens <int> Number of characters to generate (default: 200)
--temperature <float> Sampling temperature; 0 = greedy/deterministic (default: 0.8)
--seed <int> Random seed for sampling (default: 1337)
pbtk gpt complete --model ./.gpt --prompt "ROMEO:" --max-tokens 200
pbtk gpt complete --model ./.gpt --prompt "The" --temperature 0
Requirements
- .NET 9.0
- OpenAI API key (for
llmcommands) — set theOPENAI_API_KEYenvironment variable
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 6.8.0 | 46 | 7/24/2026 |
| 6.7.0 | 43 | 7/24/2026 |
| 6.6.0 | 49 | 7/24/2026 |
| 6.5.0 | 46 | 7/23/2026 |
| 6.4.0 | 128 | 6/21/2026 |
| 6.3.0 | 110 | 6/21/2026 |
| 6.2.0 | 110 | 6/21/2026 |
| 6.1.0 | 111 | 6/18/2026 |
| 6.0.0 | 114 | 6/18/2026 |
| 5.1.0 | 107 | 6/18/2026 |
| 5.0.0 | 125 | 5/28/2026 |
| 4.1.3 | 104 | 5/26/2026 |
| 4.1.2 | 101 | 5/26/2026 |
| 4.1.1 | 119 | 5/24/2026 |
| 4.0.1 | 123 | 4/30/2026 |
| 4.0.0 | 129 | 4/21/2026 |
| 3.3.0 | 118 | 4/21/2026 |
| 3.2.0 | 139 | 3/6/2026 |
| 3.1.0 | 126 | 2/12/2026 |
| 3.0.0 | 201 | 12/23/2025 |