Skip to main content
Glama

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
NameRequiredDescriptionDefault
elementsYesElements to synchronize (names of lines/loops/vibes)
master_rhythmNoMaster rhythm to sync to
phase_offsetNoPhase offset in degrees

Implementation Reference

  • 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, }, ], }; }
  • 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'], }, },
  • 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(' → '); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/suhitanantula/llv-helix'

If you have feedback or need assistance with the MCP directory API, please join our Discord server