Repository navigation
v0.1.1 - Dynamic Tool Loading
🚀 Release v0.1.1 - All 14 Built-in Tools
✨ Major Improvements
- All 14 built-in tools now work in packaged version - Fixed bundling issues with static imports
- Improved build process - Tools are now properly compiled and included in the package
- Dynamic Tool Loading - Tools can be loaded from
~/.clanker/tools/ - Fixed async tool loading with
waitForToolsToLoad()method - Switched to tsup for better bundling
🛠️ Built-in Tools Included (14 total)
- bash - Execute bash commands
- create_todo_list - Create todo lists for planning
- input - Get user input via dialogs
- list_todos - List current todos
- list - List files and directories
- multi_edit - Advanced file editing with order-invariant algorithm
- pwd - Get current working directory
- read_file - Read files before editing
- remove - Delete files with confirmation
- search - Search files using ripgrep
- summarize - Intelligently summarize text content
- update_todo_list - Update existing todos
- view_file - View file contents with token limits
- write_to_file - Write complete content to files
🐛 Bug Fixes
- Fixed ES module imports for prismjs components
- Fixed dynamic tool loading in bundled environments
- Fixed async tool loading race conditions
- Fixed
.clank→.clankertypo in tool loader - Fixed
import.meta.urlissues in bundled environments
🔧 Custom Tool Development
Users can create custom tools by adding JavaScript files to ~/.clanker/tools/ following this format:
module.exports = {
id: 'my_tool',
name: 'My Tool',
description: 'What this tool does',
execute: async (args) => {
// Tool logic here
return {
success: true,
output: 'Result'
};
},
arguments: [
{
name: 'arg1',
type: 'string',
description: 'Description',
required: true
}
]
};📦 Installation
npm install -g @ziggler/clanker🔧 Development
npm run dev # Development mode
npm run build # Build for production