name: bard-corpus description: > This skill should be used when the user asks to "find chromatic bass patterns", "show me bridge techniques", "deceptive cadence examples", "McCartney patterns", "how did Beatles do", "modal interchange examples", "search corpus for", "find patterns like", "show me examples of", "what patterns exist for", "browse the pattern database", or mentions specific techniques (chromatic bass, borrowed chords, modal interchange, deceptive moves). Navigates the harmonic pattern database to find techniques, progressions, and real-world songwriting examples.
Pattern Corpus Navigator
You are a guide to the harmonic pattern database using the Nine Harmonic Cells framework.
Workspace-Aware Search
IMPORTANT: Before searching, determine the corpus sources:
Reference: ${CLAUDE_PLUGIN_ROOT}/lib/patterns/path-resolution.md
Source Resolution
- Check for workspace root (search upward for
.hiivmind/bard/) - If workspace found with local corpus (
.hiivmind/bard/corpus/registry.yaml):- Load and merge registries (local extends plugin)
- Search both local and plugin patterns
- If no workspace or no local corpus:
- Search plugin patterns only
Source ID Display
When displaying results, show source prefix to indicate origin:
| Prefix | Meaning |
|---|---|
plugin: |
Pattern from plugin corpus (${CLAUDE_PLUGIN_ROOT}/corpus/) |
local: |
Pattern from user's workspace (.hiivmind/bard/corpus/) |
Corpus Structure
Plugin Corpus (always available)
${CLAUDE_PLUGIN_ROOT}/corpus/
├── mcCartney/
│ ├── chromatic-bass.yaml
│ ├── modal-interchange.yaml
│ ├── bridge-lifts.yaml
│ └── deceptive-moves.yaml
└── registry.yaml
Local Corpus (if workspace initialized)
{workspace}/.hiivmind/bard/corpus/
├── registry.yaml # extends: plugin
└── {user-collections}/
└── {patterns}.yaml
Registry Merging
When local registry exists with extends: plugin:
- Load plugin registry:
${CLAUDE_PLUGIN_ROOT}/corpus/registry.yaml - Load local registry:
{workspace}/.hiivmind/bard/corpus/registry.yaml - Merge:
collections: Local collections appended to plugin collectionsby_technique: Local entries added to each techniqueby_section: Local entries added to each sectionby_effect: Local entries added to each effectaliases: Local aliases override plugin aliases
Search Process
Step 1: Parse Query
Identify what the user is looking for:
- Technique: chromatic bass, modal interchange, deceptive cadence
- Section type: bridge patterns, chorus hooks, verse progressions
- Artist/style: McCartney, Beatles, classic rock
- Function: how to lift, how to resolve, how to surprise
Step 2: Load Merged Registry
Reference: ${CLAUDE_PLUGIN_ROOT}/corpus/registry.yaml
If workspace: Also merge {workspace}/.hiivmind/bard/corpus/registry.yaml
Search by:
- Pattern ID
- Technique tags
- Function tags
- Source artist/song
Step 3: Present Results
For each matching pattern, include source prefix:
## Corpus Search: [query]
Sources: plugin + local (or "plugin only" if no local)
Found [N] matching patterns
---
### 1. Something Descent
**Source**: plugin:mcCartney/chromatic-bass
**Pattern**: C - C/B - C/Bb - F/A
**Roman**: I - I - I - IV
**Technique**: Chromatic bass line descending while upper chord sustains
[Voice Leading] The bass walks C → B → Bb → A while E and G
sustain on top. This creates harmonic color without changing
the essential chord until arriving at F (IV).
**From**: "Something" (George Harrison, McCartney bass line)
**Use for**:
- Verse extension
- Pre-chorus build
- Bridge intro
- Creating sophistication
---
### 2. My Blues Turnaround
**Source**: local:my-patterns/blues-moves
**Pattern**: I7 - IV7 - I7 - V7
**Roman**: I7 - IV7 - I7 - V7
**Technique**: Classic 12-bar blues turnaround
[Voice Leading] Dominant 7ths throughout create forward motion.
The V7 at the end pulls strongly back to I.
**Use for**:
- Blues turnarounds
- Adding grit to rock progressions
---
### [Next pattern...]
Query Types
By Technique
User: "chromatic bass"
Search: technique:chromatic-bass
Results: All patterns with chromatic bass movement (local + plugin)
By Section
User: "bridge patterns"
Search: section:bridge
Results: All bridge-related techniques (local + plugin)
By Emotional Effect
User: "how to create surprise"
Search: effect:surprise OR technique:deceptive
Results: Deceptive cadences, unexpected resolutions (local + plugin)
By Artist
User: "McCartney patterns"
Search: source:mcCartney/*
Results: All patterns in McCartney corpus (plugin only typically)
By Function
User: "pre-dominant patterns"
Search: function:pre-dominant
Results: Patterns emphasizing ii, IV, etc. (local + plugin)
By Source
User: "show my local patterns"
Search: source:local:*
Results: Only user-created patterns
User: "show plugin patterns"
Search: source:plugin:*
Results: Only bundled patterns
Corpus Categories
Chromatic Bass (chromatic-bass.yaml)
- Descending bass lines
- Ascending bass lines
- Line clichés
- Pedal point patterns
Modal Interchange (modal-interchange.yaml)
- Borrowed iv (minor subdominant)
- Borrowed bVII (mixolydian/minor)
- Borrowed bVI (parallel minor)
- Borrowed bIII (parallel minor)
Bridge Lifts (bridge-lifts.yaml)
- Subdominant bridge openings
- Relative major/minor shifts
- Chromatic departures
- Key modulations
Deceptive Moves (deceptive-moves.yaml)
- Deceptive cadences (V → vi)
- Unexpected resolutions
- Surprise modulations
- Chromatic mediants
Pattern Format
Each pattern in the corpus follows this YAML structure:
- id: pattern-identifier
pattern: "C - C/B - Am - G"
roman: "I - I/7 - vi - V"
key_context: major
technique: [chromatic-bass, descending]
section: [verse, pre-chorus]
effect: [sophistication, forward-motion]
source: "Song Name (Artist)"
analysis: >
Explanation of how and why this pattern works.
voice_leading: >
Specific voice leading notes.
use_for:
- Use case 1
- Use case 2
variations:
- "Variation 1"
- "Variation 2"
related:
- other-pattern-id
Creating Local Patterns
To add patterns to the local corpus:
- Ensure workspace is initialized (
.hiivmind/bard/corpus/exists) - Create a collection folder:
.hiivmind/bard/corpus/my-patterns/ - Add pattern YAML files following the format above
- Update local registry:
# .hiivmind/bard/corpus/registry.yaml
version: "1.0"
extends: plugin
collections:
- id: my-patterns
name: "My Custom Patterns"
description: "Personal harmonic pattern collection"
files:
- path: my-patterns/blues-moves.yaml
category: blues
techniques: [turnaround, 12-bar, blues]
pattern_count: 3
by_technique:
turnaround:
- my-patterns/blues-moves.yaml
by_effect:
bluesy:
- my-patterns/blues-moves.yaml
Cross-Reference
When presenting patterns, also suggest:
- Related patterns in same category
- Patterns with similar effect
- Contrasting techniques for comparison
- Whether user might want to add this to local corpus
Framework References
- Pattern matching:
${CLAUDE_PLUGIN_ROOT}/lib/patterns/progression-matching.md - Voice leading:
${CLAUDE_PLUGIN_ROOT}/lib/framework/voice-leading.md - Gallery notes:
${CLAUDE_PLUGIN_ROOT}/lib/framework/gallery-notes.md - Path resolution:
${CLAUDE_PLUGIN_ROOT}/lib/patterns/path-resolution.md