synchronize
Align lines, loops, and vibes with a master rhythm to maintain coordinated creative workflows and strategic energy states in the LLV Helix Framework.
Instructions
Synchronize lines, loops, and vibes
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| elements | Yes | Elements to synchronize (names of lines/loops/vibes) | |
| master_rhythm | No | Master rhythm to sync to | |
| phase_offset | No | Phase offset in degrees |
Implementation Reference
- index.js:683-744 (handler)The handler function that executes the synchronize tool. It validates input, checks if elements (lines/loops/vibes) exist, generates synchronization results and visualization.synchronize(args) { const { elements, master_rhythm = null, phase_offset = 0 } = args; if (!elements || elements.length === 0) { return { content: [ { type: 'text', text: `❌ No elements provided for synchronization. Please specify at least one line, loop, or vibe to synchronize.`, }, ], }; } const syncData = { elements, master_rhythm, phase_offset, timestamp: new Date().toISOString(), }; const syncResults = elements.map(element => { const hasLine = this.lines.has(element); const hasLoop = this.loops.has(element); const hasVibe = this.vibes.has(element); return { element, type: hasLine ? 'line' : hasLoop ? 'loop' : hasVibe ? 'vibe' : 'unknown', synced: hasLine || hasLoop || hasVibe, }; }); const validElements = syncResults.filter(r => r.synced); const invalidElements = syncResults.filter(r => !r.synced); if (validElements.length === 0) { return { content: [ { type: 'text', text: `❌ No valid elements found for synchronization.\n\nMissing elements: ${invalidElements.map(r => r.element).join(', ')}\n\nPlease create these elements first using create_line, create_loop, or create_vibe.`, }, ], }; } let resultText = `🔗 Synchronizing ${validElements.length} elements\n\nMaster Rhythm: ${master_rhythm || 'Auto-detected'}\nPhase Offset: ${phase_offset}°\n\n${syncResults.map(r => `${r.synced ? '✅' : '❌'} ${r.element} (${r.type})`).join('\n')}\n\n${this.visualizeSyncPattern(validElements.length, phase_offset)}`; if (invalidElements.length > 0) { resultText += `\n\n⚠️ Warning: ${invalidElements.length} elements not found: ${invalidElements.map(r => r.element).join(', ')}`; } return { content: [ { type: 'text', text: resultText, }, ], }; }
- index.js:224-244 (schema)JSON schema defining the input parameters for the synchronize tool, including elements array (required), master_rhythm, and phase_offset.inputSchema: { type: 'object', properties: { elements: { type: 'array', items: { type: 'string' }, description: 'Elements to synchronize (names of lines/loops/vibes)', }, master_rhythm: { type: 'string', description: 'Master rhythm to sync to', }, phase_offset: { type: 'number', minimum: 0, maximum: 360, description: 'Phase offset in degrees', }, }, required: ['elements'], },
- index.js:330-357 (registration)The switch statement in CallToolRequestSchema handler that registers and dispatches the 'synchronize' tool to its handler method.switch (name) { case 'create_line': return this.createLine(args); case 'create_loop': return this.createLoop(args); case 'create_vibe': return this.createVibe(args); case 'set_context': return this.setContext(args); case 'trace_line': return this.traceLine(args); case 'iterate_loop': return this.iterateLoop(args); case 'pulse_vibe': return this.pulseVibe(args); case 'synchronize': return this.synchronize(args); case 'compose_rhythm': return this.composeRhythm(args); case 'visualize_system': return this.visualizeSystem(args); case 'save_data': return this.saveData(args); case 'load_data': return this.loadDataTool(args); default: throw new Error(`Unknown tool: ${name}`); }
- index.js:221-245 (registration)Tool registration in ListToolsRequestSchema response, including name, description, and input schema.{ name: 'synchronize', description: 'Synchronize lines, loops, and vibes', inputSchema: { type: 'object', properties: { elements: { type: 'array', items: { type: 'string' }, description: 'Elements to synchronize (names of lines/loops/vibes)', }, master_rhythm: { type: 'string', description: 'Master rhythm to sync to', }, phase_offset: { type: 'number', minimum: 0, maximum: 360, description: 'Phase offset in degrees', }, }, required: ['elements'], }, },
- index.js:1006-1015 (helper)Helper function used by synchronize to generate a visual representation of the sync pattern.visualizeSyncPattern(count, offset) { const base = '◯'; const synced = '◉'; const pattern = []; for (let i = 0; i < count; i++) { const phase = (i * 360 / count + offset) % 360; pattern.push(phase < 180 ? synced : base); } return pattern.join(' → '); }