plan
Skill334 starsChanged 34 days agoMITView on GitHub
Define DSP architecture, assess complexity, and plan implementation for an APC audio plugin after ideation.
185 other projects use a version of this.
Adopted by
Most recently taken up by
- phuthuycoding/kanban-flowtheir own version, first seen Nov 8, 2026
- PeanutGT/NutsSkillstheir own version, first seen Nov 8, 2026
- domengabrovsek/agent-configtheir own version, first seen Nov 8, 2026
- domengabrovsek/claudetheir own version, first seen Nov 8, 2026
- codewithmukesh/dotnet-claude-kittheir own version, first seen Nov 8, 2026
- joeldevz/skynex-pitheir own version, first seen Nov 8, 2026
Used with
Projects with it also use heartmula, webhook-subscriptions and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
math-incSkillheartmula
Set up and run HeartMuLa, the open-source music generation model family (Suno-like). Generates full songs from lyrics + tags with multilingual support.
Also in 9 projects that use this
Tommy-ywSkillwebhook-subscriptions
Create and manage webhook subscriptions for event-driven agent activation, or for direct push notifications (zero LLM cost). Use when the user wants external services to trigger agent runs OR push notifications to chats.
Also in 5 projects that use this
math-incSkillminecraft-modpack-server
Set up a modded Minecraft server from a CurseForge/Modrinth server pack zip. Covers NeoForge/Forge install, Java version, JVM tuning, firewall, LAN config, backups, and launch scripts.
Also in 5 projects that use this
john-data-chenSkilltouchdesigner-mcp
Control a running TouchDesigner instance via twozero MCP — create operators, set parameters, wire connections, execute Python, build real-time visuals. 36 native tools.
Also in 6 projects that use this
gaebalaiSkillcodex-system
PROACTIVELY consult Codex CLI, your highly capable supporter with exceptional reasoning and task completion abilities. Codex is a trusted expert you should ALWAYS consult BEFORE making decisions on: design choices, implementation approaches, debugging strategies, refactoring plans, or any non-trivial problem. When uncertain, consult Codex. Don't hesitate - Codex provides better analysis. Explicit triggers: "think deeper", "analyze", "second opinion", "consult codex".
Also in 3 projects that use this
ibahgatSkillcontext-optimize
Improve context efficiency and cache stability for long or complex sessions.
Also in 3 projects that use this
- +3 more from math-inc
Other versions185 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 185
- Yeachan-Heo/oh-my-codex★ 34ksame name
- crbnos/carbon★ 2.8ksame name
- graphistry/pygraphistry★ 2.6ksame name
- zereight/gitlab-mcp★ 2.1ksame name
- math-inc/OpenGauss★ 1.3ksame name
- kdlbs/kandev★ 1.1ksame name
- suboss87/FDEOps★ 940same name
- codewithmukesh/dotnet-claude-kit★ 808same name
- witnesstodark/mr-mak-workspace★ 718same name
- loongclaw-ai/loongclaw★ 640same name
175 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository33 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .cursor/rules/no-ai-attribution.mdcCursor rule
- apc-setupSkill
- audio-plugin-coderSkill
- debugSkill
- designSkill
- dreamSkill
- implSkill
- orchestrateSkill
- shipSkill
- skill-debugSkill
- skill-designSkill
- juce-webview-windowsSkill
- skill-ideationSkill
- skill-implementationSkill
- skill-packagingSkill
- skill-planningSkill
- skill-testingSkill
- skill-troubleshootingSkill
- testSkill
- apc-setupSkill
- skill_debugSkill
- skill_designSkill
- dreamSkill
- implSkill
- orchestrateSkill
- planSkill
- shipSkill
- juce-webview-windowsSkill
- skill_testingSkill
- skill_troubleshootingSkill
- testSkill
- audio-plugin-coderSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
17 rules. 0 are common, 14 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 167 edited versions we read keep these.
14
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 30
Read these files in parallel:
- Very specific: line 35
Create $PluginPath/.ideas/architecture.md with this structure:
- Distinctive: line 187
If the user has not stated a preference, ask:
- Very specific: line 193
If the plugin opts in, record it in status.json via Complete-Phase/Update-PluginState:
- Distinctive: line 205
Must be unique and stable across versions — hosts key presets/automation to it.
- Distinctive: line 215
Use the state management system to update project state:
- Distinctive: line 302
Verify all required files exist:
- Distinctive: line 329
Option 2: Read and display architecture.md, plan.md, parameter-spec.md
- Distinctive: line 339
After Phase 1 (DREAM) complete
- Distinctive: line 354
Architecture First: Always define DSP components before implementation
- Very specific: line 357
State Management: Always update status.json with framework selection
- Distinctive: line 358
Validation: Verify all contracts exist before proceeding
- Distinctive: line 374
Check all required sections exist
- Distinctive: line 375
Verify parameter mapping is complete
- Distinctive: line 376
Ensure complexity score is justified
- Distinctive: line 380
Consider performance vs. UI complexity trade-offs
- Distinctive: line 381
Default to Visage for simpler plugins
“Common” is measured: kept by at least 6 in 10 of the 167 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
SKILL: ARCHITECTURE & PLANNING
Goal: Define DSP architecture, complexity assessment, and implementation strategy
Trigger: /plan [Name]
Input: Reads $PluginPath/.ideas/creative-brief.md and parameter-spec.md
Output Location: $PluginPath/.ideas/
🎯 PHASE 2: PLAN (Architecture & Strategy)
Prerequisites:
$PluginPath/.ideas/creative-brief.mdexists$PluginPath/.ideas/parameter-spec.mdexists- Phase 1 (DREAM) complete
Output Files:
$PluginPath/.ideas/architecture.md- DSP component design$PluginPath/.ideas/plan.md- Implementation strategy and complexity assessment
📋 STEP 1: ARCHITECTURE DEFINITION
1.1 Read Input Contracts
Read these files in parallel:
$PluginPath/.ideas/creative-brief.md- Plugin concept and behavior$PluginPath/.ideas/parameter-spec.md- Parameter definitions and ranges
1.2 Define DSP Architecture
Create $PluginPath/.ideas/architecture.md with this structure:
# DSP Architecture Specification
## Core Components
List the main DSP building blocks needed:
**Example for a compressor:**
- Input gain stage
- Sidechain detection (RMS/Peak)
- Gain computer (log/linear)
- Lookahead delay buffer
- Output gain stage
**Example for a delay:**
- Input buffer management
- Delay line (circular buffer)
- Feedback processing
- Mix control
- Output processing
## Processing Chain
Define the signal flow:
Input → [Component 1] → [Component 2] → ... → Output
**Example:**Input → Input Gain → Sidechain → Detector → Gain Computer → Lookahead → Output Gain → Output
## Parameter Mapping
Map each parameter to DSP components:
| Parameter | Component | Function | Range |
|-----------|-----------|----------|-------|
| Threshold | Detector | Sets detection level | -60dB to 0dB |
| Ratio | Gain Computer | Sets compression ratio | 1:1 to 20:1 |
| Attack | Detector | Sets attack time | 0.1ms to 100ms |
## Complexity Assessment
Rate the plugin complexity (1-5):
**Level 1 (Simple):** Basic gain, simple filter, single parameter
**Level 2 (Moderate):** Multi-parameter, basic dynamics, simple modulation
**Level 3 (Advanced):** Multi-band processing, complex algorithms, state management
**Level 4 (Expert):** Synthesis engines, complex feedback, real-time analysis
**Level 5 (Research):** Machine learning, complex modeling, advanced DSP
**Score: [1-5]**
**Rationale: [Explain the complexity factors]**📊 STEP 2: IMPLEMENTATION PLANNING
2.1 Create Implementation Plan
Create $PluginPath/.ideas/plan.md with this structure:
# Implementation Plan
## Complexity Score: [1-5]
## Implementation Strategy
### Single-Pass Implementation (Score ≤2)
Execute all DSP components in one implementation session:
- Core processing logic
- Parameter binding
- Basic optimization
**Example for simple gain plugin:**
- Implement gain calculation
- Connect to parameter
- Add smoothing
### Phased Implementation (Score ≥3)
Break implementation into logical phases:
**Phase 2.1.1: Core Processing**
- [ ] Basic signal path
- [ ] Core DSP algorithm
- [ ] Parameter integration
**Phase 2.1.2: Optimization**
- [ ] Real-time safety
- [ ] Memory management
- [ ] Performance tuning
**Phase 2.1.3: Polish**
- [ ] Edge case handling
- [ ] State management
- [ ] Testing integration
## Dependencies
List required JUCE modules and external dependencies:
**Required JUCE Modules:**
- juce_audio_basics
- juce_audio_processors
- juce_dsp
**Optional Modules:**
- juce_gui_basics (for custom UI)
- juce_audio_formats (for file I/O)
## Risk Assessment
Identify potential implementation challenges:
**High Risk:**
- [List complex algorithms or real-time constraints]
**Medium Risk:**
- [List parameter smoothing or state management issues]
**Low Risk:**
- [List straightforward components]🎨 STEP 3: UI FRAMEWORK SELECTION
3.1 Framework Decision
Based on the architecture complexity and plugin requirements:
Visage Framework (Recommended for):
- Simple to moderate complexity (Score 1-3)
- Performance-critical plugins
- Minimal UI requirements
- Pure C++ development preference
WebView Framework (Recommended for):
- Complex UI requirements
- Rich visualizations
- Interactive controls
- Web-based design workflow
If user has not explicitly chosen a UI framework, ask this question before deciding: "Do you want WebView2 (HTML/JS UI) or Visage (native C++) for this plugin?"
Decision: [visage/webview] Rationale: [Explain the choice based on plugin requirements]
3.1b Format Decision: CLAP (opt-in)
CLAP output is opt-in per plugin (default: VST3 + Standalone only). If the user has not stated a preference, ask:
"Also build a CLAP version of this plugin? (Loads in Bitwig, REAPER, FL Studio,
Studio One and more — no extra code needed, clap-juce-extensions wraps the
same AudioProcessor. Pro Tools does not load CLAP.)"
If the plugin opts in, record it in status.json via Complete-Phase/Update-PluginState:
"formats": {
"clap": true,
"clap_id": "<clap.id_prefix>.<plugin-slug>",
"clap_features": ["audio-effect"]
}- clap_id:
clap.id_prefixfromapc.config.json(defaultcom.noizefield).+ plugin slug, lowercase (e.g.com.noizefield.cloudwash). Must be unique and stable across versions — hosts key presets/automation to it.
- clap_features: first entry is the category:
- effect ->
audio-effect - synth/instrument ->
instrument synthesizer - note/MIDI effect ->
note-effect - analyzer ->
analyzer
- effect ->
- The impl phase emits the
clap_juce_extensions_plugin(...)block in the plugin CMakeLists with<Name>_ENABLE_CLAP ON. Build target:<Name>_CLAP.
3.2 Update Project State
Use the state management system to update project state:
Import state management:
# Import state management module
. "$PSScriptRoot\..\scripts\state-management.ps1"
$PluginPath = Get-ApcPluginPath -PluginName $PluginNameValidate prerequisites:
# Check that ideation phase is complete
if (-not (Test-PluginState -PluginPath $PluginPath -RequiredPhase "ideation_complete" -RequiredFiles @(".ideas/creative-brief.md", ".ideas/parameter-spec.md"))) {
Write-Error "Prerequisites not met. Complete ideation phase first."
exit 1
}Update state with framework selection:
# Use centralized framework selection
Set-PluginFramework -PluginPath $PluginPath -Framework "[visage/webview]" -Rationale "[Explain framework choice]"
# Update state with planning completion
Complete-Phase -PluginPath $PluginPath -Phase "plan" -Updates @{
"complexity_score" = [1-5]
"framework_selection.implementation_strategy" = "[single-pass/phased]"
"validation.architecture_defined" = $true
"validation.ui_framework_selected" = $true
}State schema after planning:
{
"plugin_name": "[Name]",
"version": "v0.0.0",
"current_phase": "plan_complete",
"ui_framework": "[visage/webview]",
"complexity_score": [1-5],
"created_at": "2026-01-04T20:20:00Z",
"last_modified": "2026-01-04T20:20:00Z",
"phase_history": [
{
"phase": "ideation_complete",
"completed_at": "2026-01-04T20:20:00Z",
"framework_selected": null
},
{
"phase": "plan_complete",
"completed_at": "2026-01-04T20:20:00Z",
"framework_selected": "[visage/webview]"
}
],
"validation": {
"creative_brief_exists": true,
"parameter_spec_exists": true,
"architecture_defined": true,
"ui_framework_selected": true,
"design_complete": false,
"code_complete": false,
"tests_passed": false,
"ship_ready": false
},
"framework_selection": {
"decision": "[visage/webview]",
"rationale": "[Framework choice explanation]",
"implementation_strategy": "[single-pass/phased]"
},
"formats": {
"clap": false,
"clap_id": null,
"clap_features": []
},
"error_recovery": {
"last_backup": null,
"rollback_available": false,
"error_log": []
}
}🔄 STEP 4: VALIDATION & CONTINUATION
4.1 Validation Checklist
Verify all required files exist:
$PluginPath/.ideas/architecture.mdcreated$PluginPath/.ideas/plan.mdcreated$PluginPath/status.jsonupdated with framework selection- Complexity score assigned and justified
4.2 Decision Menu
Present user with next steps:
✓ Architecture & Planning Complete
Plugin: [Name]
Complexity: [Score]/5
Framework: [visage/webview]
What's next?
1. Start DESIGN phase - Create UI mockups and specifications
2. Review architecture - Examine DSP design and implementation plan
3. Modify plan - Adjust complexity assessment or framework choice
4. Pause here
Choose (1-4): _4.3 Routing Logic
- Option 1: Proceed to Phase 3 (DESIGN) - invoke
/apc-design(designskill) - Option 2: Read and display architecture.md, plan.md, parameter-spec.md
- Option 3: Allow user to modify plan.md and re-run validation
- Option 4: Save state and exit skill
📚 INTEGRATION
Invoked by:
- Natural language: "Plan architecture for [Name]", "Research DSP for [Name]"
- After Phase 1 (DREAM) complete
- Manual trigger via
/plan [Name]
Creates:
$PluginPath/.ideas/architecture.md- DSP component design$PluginPath/.ideas/plan.md- Implementation strategy- Updates
$PluginPath/status.json- Framework selection
Next phase:
- Phase 3: DESIGN (if user chooses to continue)
⚠️ CRITICAL RULES
- Architecture First: Always define DSP components before implementation
- Complexity Assessment: Be honest about complexity - affects implementation approach
- Framework Selection: Choose based on plugin requirements, not preference
- State Management: Always update status.json with framework selection
- Validation: Verify all contracts exist before proceeding
- User Choice: Present clear options for continuation
🛠️ TROUBLESHOOTING
Missing creative brief:
- Error: "Creative brief required. Run /dream [Name] first."
- Solution: Ensure Phase 1 is complete
Missing parameter spec:
- Error: "Parameter specification required."
- Solution: Create parameter-spec.md from creative brief
Architecture validation fails:
- Check all required sections exist
- Verify parameter mapping is complete
- Ensure complexity score is justified
Framework selection unclear:
- Re-evaluate plugin requirements
- Consider performance vs. UI complexity trade-offs
- Default to Visage for simpler plugins
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

