A collection of Linux shell scripts that can be easily cloned and used without system-wide installation.
git clone <repo-url> ~/toolkit
source ~/toolkit/init.shTo make scripts available in all future sessions:
echo 'source ~/toolkit/init.sh' >> ~/.bashrc # or ~/.zshrc- hcurl - HTTP client with persistent header injection
- sysinfo - Display system information
- hello-toolkit - Welcome/demo script
See HCURL.md for complete hcurl reference. Add your own scripts to bin/ following CONTRIBUTING.md.
toolkit/
├── init.sh # Source this first
├── bin/ # Your scripts go here
├── lib/common.sh # Shared functions
├── .state/ # Git-ignored state (auto-created per script)
├── README.md # This file
├── CONTRIBUTING.md # How to add scripts
├── STATE_MANAGEMENT.md # Persistent state guide
├── HCURL.md # hcurl reference
└── QUICKREF.md # Command quick reference
Sourcing init.sh:
- Sets
$TOOLKIT_ROOTenvironment variable - Adds
bin/to PATH for current session - Auto-sources library functions from
lib/
Works with Bash 4.0+ and Zsh 5.0+. To suppress output: source init.sh 2>/dev/null
- CONTRIBUTING.md - How to add scripts, best practices, code style
- STATE_MANAGEMENT.md - Persistent state pattern for scripts
- HCURL.md - Complete hcurl guide with examples
- QUICKREF.md - Command quick reference
After sourcing init.sh:
$TOOLKIT_ROOT- Path to toolkit directory$DEBUG- Set to "1" for debug output in scripts
| Problem | Solution |
|---|---|
| Scripts not found | Check PATH: echo $PATH | grep toolkit |
| State not persisting | Verify: ls -la .state/ |
| Headers not injecting (hcurl) | Debug: DEBUG=1 hcurl https://example.com |
New to toolkit? Start with CONTRIBUTING.md to understand how scripts work. See QUICKREF.md for a command cheat sheet.