tool-creator
Meta-skill for building, managing, and hot-reloading AnimaWorks Python external tools, including dispatchers, credential management, and permissions.
Introduction
The tool-creator meta-skill provides a standardized framework for developers and autonomous agents to build and integrate custom Python tools within the AnimaWorks ecosystem. By automating the boilerplate required for tool registration, parameter schema definition, and credential handling, this skill enables seamless extension of the agent's capabilities. It supports three distinct tool categories: Core, Shared, and Personal, allowing for flexible project architectures from internal system modules to user-defined scripts. Developers can define complex multi-schema tools for API integrations or simple single-operation utilities, ensuring they are instantly discoverable via the ExternalToolDispatcher.
-
Standardized boilerplate for get_tool_schemas and dispatch logic to ensure consistent tool execution.
-
Seamless support for Web API wrapping using httpx, integrated with get_credential for secure authentication management.
-
Hot-reload capability via refresh_tools, allowing agents to test and deploy updates without restarting the main AnimaWorks server.
-
Robust command-line interface access via animaworks-tool, supporting dynamic subcommands and argument parsing.
-
Granular permission management integrated with permissions.json to enforce security when writing new memory files to the tool directory.
-
Automated integration with the tool discovery pipeline across personal (~/.animaworks/tools/), shared, and core directories.
-
Users should design tools using snake_case naming conventions and provide clear input schemas for agent-driven execution.
-
Always invoke refresh_tools after creating or modifying a Python module to ensure the ExternalToolDispatcher detects changes.
-
Use the write_memory_file method with appropriate permissions to programmatically create tools from within the agent environment.
-
Ensure credentials are kept out of source code by utilizing the get_credential helper, which facilitates secure environment variable retrieval.
-
Note that personal and shared tools are scanned and reloaded dynamically, making them ideal for rapid prototyping and iterative development workflows.
Repository Stats
- Stars
- 231
- Forks
- 35
- Open Issues
- 12
- Language
- Python
- Default Branch
- main
- Sync Status
- Idle
- Last Synced
- May 1, 2026, 09:19 AM