Releases: aayushadhikari7/zammy-cli
Releases · aayushadhikari7/zammy-cli
Release list
v1.3.2
What's Changed
Security Hardening
- Fixed command injection vulnerability in plugin installer
- Added input validation for npm packages, GitHub repos, and git URLs
- Replaced unsafe
Function()constructor in calc with safe recursive descent parser - Added path traversal prevention in plugin loader
- Added symlink detection for plugin security
Bug Fixes
- Fixed plugin installation on Windows (tar extraction with forward slashes)
- Fixed CRLF line ending handling for cross-platform compatibility
- Fixed readline input blocking after plugin operations
- Added proper cleanup handlers for countdown and pomodoro timers
- Added error handling for base64/hex decode operations
Improvements
- Added shared utility modules for version and security functions
- Added 133 new tests (284 total, all passing)
- Full cross-platform support (Windows, macOS, Linux)
Packages Updated
| Package | Version |
|---|---|
| zammy | 1.3.2 |
| zammy-plugin-faker | 1.0.1 |
| zammy-plugin-port | 1.0.1 |
| zammy-plugin-network | 1.0.1 |
| zammy-plugin-docker | 1.0.1 |
Full Changelog: v1.3.1...v1.3.2
v1.3.1
What's Changed
Security Hardening
- Fixed command injection vulnerability in plugin installer
- Added input validation for npm packages, GitHub repos, and git URLs
- Added path traversal prevention in plugin loader
- Replaced unsafe Function() constructor in calc with safe expression parser
- Added symlink detection for plugin security
Bug Fixes
- Fixed readline input blocking after plugin operations
- Added shared input utilities using raw stdin to avoid readline conflicts
- Fixed CRLF line ending handling for cross-platform compatibility
- Added proper cleanup handlers for countdown and pomodoro timers
- Added error handling for base64/hex decode operations
Testing
- Added 133 new tests covering input utilities, JSON handler, and version comparison
- 284 total tests, all passing
Plugin Architecture Improvements
- Added
exportsfield forzammy/pluginssubpath - plugin developers can now properly import types - Plugins now use shared type definitions from zammy instead of local duplicates
- Added
peerDependenciesto all plugins for proper npm conventions - Created shared
tsconfig.base.jsonfor plugin development - Consolidated tsup config for cleaner builds
Packages Updated
| Package | Version |
|---|---|
| zammy | 1.3.1 |
| zammy-plugin-faker | 1.0.1 |
| zammy-plugin-port | 1.0.1 |
| zammy-plugin-network | 1.0.1 |
| zammy-plugin-docker | 1.0.1 |
For Plugin Developers
You can now import types from zammy:
import type { PluginAPI, ZammyPlugin } from 'zammy/plugins';Full Changelog: v1.3.0...v1.3.1
v1.3.0 - Plugin System & Dev Commands
What's New
Plugin System
Zammy now supports a full plugin architecture for extending functionality:
- Lazy loading - Plugins load on first use for fast startup
- Version compatibility - Plugins can specify compatible Zammy versions
- Easy management -
/plugin list|install|remove|create - Immediate availability - Commands work right after install (no restart needed)
Official Plugins
Four official plugins are now available on npm:
| Plugin | Command | Description |
|---|---|---|
zammy-plugin-docker |
/docker |
Container management with pretty output |
zammy-plugin-faker |
/fake |
Generate fake data for testing |
zammy-plugin-network |
/net |
IP lookup, ping, DNS, speed test |
zammy-plugin-port |
/port |
List, check, and kill processes by port |
Install with: /plugin install zammy-plugin-<name>
New Core Commands
| Command | Description |
|---|---|
/json <action> |
JSON tools (validate, format, minify, query, stats) |
/request <method> <url> |
Native HTTP client |
/diff <file1> <file2> |
Compare two files |
/env [name] |
View environment variables |
/size [path] |
Analyze file/folder sizes |
Breaking Changes
/ipand/portsmoved to plugins (installzammy-plugin-networkorzammy-plugin-port)
Other Improvements
- Cross-platform fixes for plugin installer (Windows tar extraction)
- Assets reorganized into
assets/folder - Updated documentation
Full Changelog: v1.2.1...v1.3.0
v1.2.1
What's New
- Zammy Mascot: Added animated purple slime mascot with multiple moods (happy, excited, love, sleepy, angry, and more)
- Mood Reactions: Zammy now reacts to keywords like 'thanks', 'wow', 'sad', ':(' with appropriate expressions
- Terminal Resize Handling: Proper re-rendering when terminal is resized
- Idle Animation: Mini slime appears and blinks when idle for 3+ seconds
Full Changelog: v1.2.0...v1.2.1
v1.2.0 - Initial Public Release
Zammy CLI v1.2.0
Your slice-of-life terminal companion is now available on npm!
Installation
npm install -g zammyFeatures
- 30+ Commands - Utilities, fun, creative, and developer tools
- Interactive Command Menu - Type
/to browse commands with arrow keys - Enhanced Shell Commands - Supercharged
!commands with colors and icons - ASCII Art - Convert images to ASCII with multiple styles
- Cross-Platform - Works on Windows, macOS, and Linux
- 151 Unit Tests - Fully tested codebase
Highlights
/calc,/password,/stats,/time,/countdown,/timer,/todo/joke,/quote,/fortune,/dice,/flip,/pomodoro/asciiart,/figlet,/lorem,/color/hash,/uuid,/encode,/weather!ls,!cat,!tree,!git,!http,!clipboard, and more
Links
- npm: https://www.npmjs.com/package/zammy
- Docs: See README for full command list