Setup
Install Tools
Project Structure
Define Tools
Tools are Python functions exported from your plugin.Simple Function
Complex Types
Type Annotations
Python type hints define the tool interface:str- Stringint- Integerfloat- Floating pointbool- BooleanList[T]- Array of type TDict[str, T]- Object with string keysOptional[T]- Nullable type
Working with Dependencies
Add Dependencies
Editpyproject.toml:
Install and Build
Size Considerations
Large dependencies increase plugin size:File I/O
Access allowed filesystem paths via environment or configuration.Configure Permissions
Innoorle.yaml:
Environment Variables
Access configuration via environment variables..env:
Network Access
Make HTTP requests to allowed hosts.requests (add to pyproject.toml):
Error Handling
Return errors gracefully:Testing
Test your plugin locally before uploading.Unit Tests
Integration Tests
Building and Deploying
Build
Upload
Best Practices
Input Validation
Logging
Documentation
Example: Complete Plugin
Troubleshooting
Build fails with “componentize-py not found”:- Remove unnecessary dependencies
- Use lighter alternatives
- Check import statements
- Ensure all function parameters have type hints
- Check return type annotations
- Verify List/Dict syntax:
List[str],Dict[str, int]