Security Sandbox Model
Your plugin runs in an isolated execution environment with strict boundaries:Default Deny
Everything is denied unless explicitly allowed:- ❌ Cannot access any external networks
- ❌ Cannot read or write any files
- ❌ Cannot access environment variables
- ❌ Cannot execute system commands
- ❌ Cannot access other plugins’ data
Explicit Allow
You grant permissions innoorle.yaml:
Network Permissions
Control which external hosts your plugin can connect to.Host Allowlist
example.com- Exact domain*.example.com- All subdomains*.*.example.com- Multiple level wildcards
CIDR Ranges
Deny List
Use Cases
Filesystem Permissions
Control which files and directories your plugin can access.URI Patterns
Access Types
read- Read-only access to file contentwrite- Write access (implies read)
Available Directories
Standard filesystem paths:| Path | Purpose | Default Access |
|---|---|---|
fs://work/agent/** | Agent workspace (scratch files) | read, write |
fs://cache/** | Plugin cache directory | read, write |
fs://config/** | Configuration files | read |
fs://input/** | Input data files | read |
fs://output/** | Output files | write |
Use Cases
Environment Variable Permissions
Control which environment variables your plugin can access.Setting Environment Variables
Via.env file in your plugin:
Important Notes
- Only explicitly allowed variables are accessible
- Values are encrypted at rest in the database
- Each plugin has isolated variables (plugins can’t access each other’s env)
- System environment variables are not accessible to plugins
Use Cases
Resource Limits
Protect platform resources from plugin runaway behavior.Memory Limits
256Ki= 256 Kibibytes512Mi= 512 Mebibytes1Gi= 1 Gibibyte
Execution Timeouts
10s= 10 seconds5m= 5 minutes1h= 1 hour
CPU Limits
Currently managed via fuel system (internal). Platform provides sensible defaults.Use Cases
Security Best Practices
Principle of Least Privilege
Grant only permissions your plugin actually needs:Secrets Management
Never hardcode secrets:noorle.yaml:
Network Safety
Use specific hostnames and validate TLS:File Validation
Validate file paths before accessing:Viewing Granted Permissions
See what your plugin can access:Permission Violations
If your plugin tries to access unpermitted resources:Next Steps
- Configuration Reference
- Language Guides for implementation examples
- Deployment Guide