.rfx (ReqFlow eXecution) format for pipeline configs. This is a JSON-based format that wraps a complete Pipeline with version metadata.
File structure
Defined insrc/export/format.rs:5-18
RfxConfig fields
File format version numberCurrent version:
1Config metadata (name, author, timestamps)
Complete pipeline structure with blocks and settingsSee Pipeline API for field documentation
RfxMetadata fields
Config name (duplicates
pipeline.name for top-level access)Author name or identifier
Creation timestamp in ISO 8601 format (RFC 3339)Example:
"2026-02-15T00:00:00Z"Last modification timestamp in ISO 8601 format
Example config
Complete.rfx file from configs/example.rfx:
File operations
Fromsrc/export/format.rs:20-45:
Save to file
Load from file
Create from pipeline
Version history
| Version | Changes |
|---|---|
| 1 | Initial format (current) |
Future versions may add fields but will maintain backward compatibility.
The loader will migrate older formats automatically.
Import formats
IronBullet can import other config formats:| Format | Extension | Compatibility |
|---|---|---|
| RFX (native) | .rfx | 100% - Full feature support |
| SilverBullet | .svb | 95% - High compatibility |
| OpenBullet 2 | .opk, .json | 90% - Most features |
| LoliCode | .loli | 85% - Text-based format |
Export formats
IronBullet can export to:.rfx- Native format (lossless)- Standalone Rust - Compiled binary (see Export Code)
Validation
The config loader validates:- JSON syntax and structure
- Required fields presence
- UUID format (tolerates empty strings → nil UUID)
- Enum variants (BlockType, ProxyMode, etc.)
- Array types and nesting