noorle.yaml file configures your plugin’s metadata, runtime behavior, and security permissions. This is the authoritative reference for all available configuration options.
File Structure
Schema Version
Type:string
Required: Yes
Current Version: "1.0"
Specifies the noorle.yaml schema version. Ensures forward compatibility as the platform evolves.
Metadata
name
Type:string
Required: Yes
The plugin identifier (lowercase alphanumeric and hyphens only).
description
Type:string
Required: No
Human-readable description of what your plugin does. Used in plugin listings.
author
Type:string
Required: No
Author name or organization that created the plugin.
license
Type:string (SPDX identifier)
Required: No
SPDX license identifier (e.g., MIT, Apache-2.0, GPL-3.0).
tags
Type:array<string>
Required: No
Searchable tags for discoverability.
homepage
Type:string (URL)
Required: No
URL to the plugin’s documentation or homepage.
Runtime
Type:string
Required: No
Default: "v1"
Specifies which runtime profile to use for execution. Each profile defines memory limits, timeout behaviors, and execution environment.
Available Values:
"v1"- Standard WASM runtime with Wasmtime"v2"- Enhanced runtime with additional capabilities (future)"edge"- Optimized for low-latency edge execution (future)"native"- Native binary execution (future)
Permissions
Thepermissions section defines the security sandbox for your plugin. Everything is denied by default — only explicitly allowed resources are accessible.
Network
Controls which external hosts and networks your plugin can access.host: "example.com"- Specific hostnamehost: "*.example.com"- Wildcard subdomainscidr: "10.0.0.0/8"- CIDR range notation
Filesystem
Controls which filesystem paths your plugin can read or write.fs://work/agent/**- Recursive (all nested paths)fs://cache/data/*- Single level wildcardfs://config/settings.json- Specific file
read- Read-only accesswrite- Write access (implies read)
Environment
Controls which environment variables your plugin can access.Resources
Defines execution resource limits for safety and cost control.Memory Limit
Type:string (Kubernetes-style format)
Examples: "512Mi", "1Gi", "256Ki"
Ki- Kibibytes (1024 bytes)Mi- Mebibytes (1024² bytes)Gi- Gibibytes (1024³ bytes)
Timeout
Type:string (duration format)
Examples: "30s", "5m", "1h"
Complete Example
Validation Rules
schema_versionmust be a valid version stringmetadata.namemust be alphanumeric with hyphens onlyruntimemust be one of the supported runtime profiles- Network hosts support wildcards (
*) but not other regex patterns - Filesystem URIs must start with
fs:// - Memory values must be valid Kubernetes-style notation
- Timeouts must follow duration format (number + unit)
Environment Variables in Config
Plugin runtime environment variables are set via the.env file in your .npack archive or via the API.