create_song
Creates a new song from a validated structured AST and automatically formats and serializes it to .evox markup for songbook authoring.
Instructions
Creates a new song from a validated structured AST. Automatically formats and serializes to .evox markup.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Optional filename slug (e.g. 'hotel_california'). If omitted, automatically derived from metadata.name. | |
| upsert | No | If true, overwrite existing song if it already exists. Defaults to false. | |
| columns | Yes | List of columns. Each column contains stanzas, and each stanza contains lines with 0-indexed chord-over-lyric pairs: { chords?: string, lyrics?: string }. | |
| metadata | Yes | Song metadata including name (max 60 chars), author, font size (pt), column_width (pt), and gutter (pt). | |
| project_dir | No | Songbook directory path (defaults to EVOX_PROJECT_DIR or cwd). |