Skip to content

Releases: aayushadhikari7/zammy-cli

v1.3.2

Choose a tag to compare

@aayushadhikari7 aayushadhikari7 released this 02 Jan 13:16

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

Choose a tag to compare

@aayushadhikari7 aayushadhikari7 released this 02 Jan 11:41

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 exports field for zammy/plugins subpath - plugin developers can now properly import types
  • Plugins now use shared type definitions from zammy instead of local duplicates
  • Added peerDependencies to all plugins for proper npm conventions
  • Created shared tsconfig.base.json for 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

Choose a tag to compare

@aayushadhikari7 aayushadhikari7 released this 01 Jan 14:59

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

  • /ip and /ports moved to plugins (install zammy-plugin-network or zammy-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

Choose a tag to compare

@aayushadhikari7 aayushadhikari7 released this 28 Dec 13:41

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

Choose a tag to compare

@aayushadhikari7 aayushadhikari7 released this 28 Dec 10:57

Zammy CLI v1.2.0

Your slice-of-life terminal companion is now available on npm!

Installation

npm install -g zammy

Features

  • 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