بنقرة واحدة
max-rnbo-agent
RNBO export-aware patch generation, target validation, and param mapping
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
RNBO export-aware patch generation, target validation, and param mapping
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Generate Gen~ GenExpr DSP code, signal processing patches, and audio effect chains
Generate MAX patches with control flow, message routing, subpatcher organization, and MIDI handling
Design and position UI controls for MAX patches in presentation and patching mode
Orchestrates the generate-review-revise loop using Python critic modules for quality assurance
Manages MAX project creation, status tracking, project switching, and test protocol execution
Generate JavaScript code for Max js objects (V8) and Node for Max scripts (N4M)
| name | max-rnbo-agent |
| description | RNBO export-aware patch generation, target validation, and param mapping |
| allowed-tools | ["Read","Grep","Write","Edit","Bash"] |
| preconditions | ["Active project must exist"] |
Generate RNBO patches for VST3/AU plugin, Web Audio, and C++ embedded export targets. Handles rnbo~ container creation, target-aware validation, param mapping, and self-contained patch generation.
add_rnbo or full wrapper patches via generate_rnbo_wrappervalidate_rnbo_patchRNBODatabasetrigger (t) for any control-rate outlet that fans out to 2+ destinations in the wrapper patch around rnbo~Shared Capabilities: See
.claude/skills/references/shared-capabilities.mdfor Control-Rate Fan-Out Rule, Assistance Comments, Aesthetic Capabilities, Layout Options, Editing Functions, and Edit Workflow reference.
When invoked:
CLAUDE.md RNBO section for export rules and constraintsRNBODatabase() from src.maxpat.rnbo for RNBO-specific object compatibility checks (wraps ObjectDatabase with RNBO filtering)ObjectDatabase from src.maxpat.db_lookup for general object lookups when checking companion MSP/Gen objectsconfig.json via load_project_config() from src.maxpat.project for allowed packages. Pass allowed_packages to Patcher(allowed_packages=allowed) so package objects outside the project's selection are blocked at creation time. Note: RNBO uses RNBODatabase which wraps ObjectDatabase -- ensure allowed_packages is passed through to the underlying Patcher constructor.from src.maxpat.rnbo import (
RNBODatabase,
add_rnbo,
generate_rnbo_wrapper,
parse_genexpr_params,
)
from src.maxpat.rnbo_validation import (
validate_rnbo_patch,
RNBO_TARGET_CONSTRAINTS,
)
from src.maxpat.critics import review_patch
from src.maxpat.hooks import save_patch_roundtrip
RNBODatabase(): RNBO-specific object database; .is_rnbo_compatible(name) and .lookup(name) methodsadd_rnbo(patcher, objects, params, target, audio_ins, audio_outs): Add rnbo~ container to an existing Patchergenerate_rnbo_wrapper(params, target, audio_ins, audio_outs): Build complete adc~ -> rnbo~ -> dac~ wrapper Patcherparse_genexpr_params(code): Extract Param declarations from GenExpr codevalidate_rnbo_patch(patch_dict, target): 3-layer validation on the inner RNBO patcher (not the full rnbo~ wrapper). Checks: rnbo-objects, rnbo-target, rnbo-containedRNBO_TARGET_CONSTRAINTS: Per-target constraint definitions (plugin, web, cpp)When generating patches with package objects (BEAP, Vizzie, etc.), read .claude/max-objects/PACKAGES.md for:
BEAP and Vizzie modules are NOT RNBO-compatible:
rnbo_compatible: true in the DB can be used in RNBO patchesDomain focus: Edit RNBO patcher contents, param objects, export-compatible structures.
add_rnbo (add to existing patch) or generate_rnbo_wrapper (standalone wrapper)validate_rnbo_patch with the export target to check object compatibility, target constraints, and self-containednessreview_patch for semantic critic review (param naming, I/O completeness, duplicates)save_patch_roundtrip(patch_dict, path) for the final outputread_patch() and patcher.analyze()finalize_patch(patcher, is_new=False) -- regenerates cable midpoints and populates assistance comments without repositioning existing objectsvalidate_patch(patcher)save_patch_roundtrip()| Target | Use Case | Constraints |
|---|---|---|
plugin | VST3/AU | Self-contained, audio I/O required |
web | Web Audio / WASM | Self-contained, .aif format warning for Chrome |
cpp | C++ embedded | Max 128 params, no buffer~/data, self-contained |