Tags
Creators
Details
All versions
v0.6.0-beta
Beta
kashub v0.6.0-beta10 months ago 34
Uploaded by
Compatibility
Minecraft: Java Edition
1.21.1
Platform
Fabric
Supported environments
Client-side
Client and server
Required content
Any compatible version
Changes
[v0.6.0 beta] - 2025-12-15
🔥 Major Features
Hot-Reload System
- Automatic script reloading when files are modified externally
- Edit scripts in your favorite editor (VSCode, IntelliJ, Notepad++, etc.) and see changes instantly
- Dual monitoring system:
- Java NIO
WatchServicefor real-time file system events - Periodic polling (configurable interval, default: 1000ms) for external editor compatibility
- Java NIO
- Configurable via Settings panel (
hotReloadoption) - Automatic registration/unregistration with script lifecycle
- Thread-safe reloading with error handling
- Use case: Edit long-running scripts without stopping them!
- Note: May have 1-2 second delay for external editors (this is normal)
Autorun System
- Automatic script execution on world load
- Configure multiple scripts to start automatically when joining a world
- Visual management interface in Task Manager (new "Autorun" tab)
- Scripts execute sequentially with error handling
- Failed scripts don't block other autorun scripts
- Configurable via Settings panel (
autorunEnabled,autorunScripts) - Use case: Always-on utility scripts (anti-AFK, auto-farm, monitoring, etc.)
✨ Added
Task Manager UI Enhancements
- Tabbed Interface - Task Manager now has tabs like Windows Task Manager
- Processes Tab - View and manage running scripts (existing functionality)
- Autorun Tab - NEW! Manage scripts that auto-start on game launch
- Autorun Management Panel - Visual interface for autorun scripts
- Left panel: Currently configured autorun scripts
- Right panel: Available scripts that can be added
- Add/Remove buttons (→/←) to move scripts between panels
- Real-time status indicators (running/stopped)
- Changes saved automatically to config
Configuration
- New settings in
config/kashub/config.json:hotReload- Enable/disable hot-reload (default: false)hotReloadCheckInterval- Polling interval in milliseconds (default: 1000)autorunEnabled- Enable/disable autorun (default: false)autorunScripts- List of scripts to auto-start (default: [])
- Settings accessible via in-game Settings panel
- Auto-save on configuration changes
🐛 Fixed
Script Execution
- If/Else If/Else Blocks - Fixed detection of
elseblocks in conditional chainsfindIfElseChainnow correctly finds all blocks includingelse- Fixed parsing of
} else {syntax on same line - Extended search range to include blocks outside initial if block
- While (true) Loops - Fixed infinite loop execution
- Loops now correctly re-queue after each iteration
- Fixed
findBlockEndto properly handle} else {syntax - Commands after conditional blocks (like
wait 200) now execute correctly
- Environment Variables - Fixed timing of variable updates
- Variables now update before condition evaluation
- Health checks now use current values instead of stale data
- Fixed incorrect health messages when player has full health
Example Scripts
- Fixed multiple example scripts to ensure 100% working examples
example_animations.kh- Fixed animation command syntax (animation stopAll→animation stop)example_deepslate_miner.kh- Fixed loop syntax, input commands, and scan commandsexample_area_clearer.kh- FixedlookAtrelative coordinates syntax and loop syntaxexample_scanner_advanced.kh- Fixed for loop increment syntax (i = i + 1→i++)- All examples now use correct command syntax and proper quote formatting
🔄 Changed
- Task Manager dialog now uses tabbed interface for better organization
- Autorun configuration moved from Settings to Task Manager for easier access
- Improved command queue management for better stability
- Enhanced error handling - script errors no longer stop entire script execution
- Better state cleanup on script stop/restart
- Improved loop marker re-queuing logic for better performance
🔒 Security & Stability
- Thread-safe hot-reload implementation
- Debouncing for rapid file changes (prevents reload spam)
- Protected against file lock issues on Windows
- Safe handling of missing/deleted files during hot-reload
- Autorun scripts validate before execution
🔄 Migration from v0.5.x
No breaking changes! All existing scripts work as-is.
To enable new features:
- Open Settings → Enable "Hot-Reload" (optional)
- Open Task Manager → Autorun tab → Add scripts with → button
- Enable "Autorun" in Settings
- Done! 🎉
Recommended workflow:
- Use Kashub editor for quick tests and debugging
- Use external editor (VSCode/IntelliJ) for serious development
- Let hot-reload sync changes automatically
⚠️ Known Issues (v0.6.0 Beta)
- Hot-reload: 1-2 second delay for external editors (by design, ensures file write completion)
- Windows: Rare file lock delays on rapid saves (working on fix for v0.6.1)
- Large scripts (>1000 lines): Slower reload time (optimization planned)
These will be addressed in v0.6.1!
📚 Notes
- Hot-reload may have 1-2 second delay for external editors (this is normal)
- Autorun scripts execute once per world join
- Both features disabled by default for backward compatibility
- v0.6.0 beta - Please report any issues on GitHub!
Supplementary resources
| File | Type | Size | |
|---|---|---|---|
| kashub-v0.6.0-beta-sources.jar | Unknown | 3.45 MiB |
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:yq1pcH6Z:KSXjJRGs"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:yq1pcH6Z:KSXjJRGs"
}

