Nota
Claude Code plugin for algorithmic composition with MusaDSL — learn the framework, code compositions, explore ideas, analyze music
About Nota
Nota transforms Claude Code into an algorithmic-composition assistant with deep knowledge of the MusaDSL framework. Ten interactive skills cover the entire creative process — from understanding the framework, through brainstorming ideas, to writing verified code, analyzing the results, and consolidating best practices.
Everything is backed by a knowledge base with MusaDSL documentation, API reference, 23 demo projects, 23 built-in composition best practices, and — optionally — your own compositions and their musical analyses.
Say "hello musa" inside Claude Code to get a welcome and capabilities overview.
Who is it for?
- Composers learning MusaDSL — ask questions in natural language, get sourced answers.
- Working algorithmic composers — describe a musical intention, get verified code.
- Researchers — build a searchable knowledge base of your own compositions and analyses.
- Anyone exploring computer music who wants Claude to be domain-aware rather than guessing.
The 10 Skills
Core composition workflow
/nota:explain
Semantic search over MusaDSL. Ask about any concept and get an accurate, sourced answer with relevant documentation, API details, and working code examples retrieved from the knowledge base.
/nota:think
Creative thinking and ideation. Generates ideas for new compositions or explores new directions for existing ones. Draws from the inspiration framework, your previous analyses, the MusaDSL knowledge base, and the open web to connect ideas to composers, techniques and traditions with accurate references.
/nota:code
Composition coding. Translates musical intentions into working MusaDSL Ruby code. Verifies every method call against the API, draws from demo examples and your own indexed works, and always proposes the approach before writing.
/nota:index
Works indexing. Add your composition projects so Claude can reference
them. All .rb and .md files are indexed recursively; once
indexed, your works appear in search results and inform every other skill.
/nota:analyze
Musical analysis. Reads your code, interprets it musically, and produces a
detailed structured analysis across 10 default dimensions. The analysis is stored as
searchable knowledge, enriching every future /nota:think, /nota:code
and /nota:explain session.
/nota:best-practices
Best practices management. Extract recurring patterns from your analyses
into reusable best practices, or add them manually. /nota:code automatically
consults them when writing new code, so your consolidated patterns are applied
consistently.
Framework customization
/nota:inspiration-framework
View, modify or reset the inspiration framework that guides
/nota:think. The default has 9 dimensions: Structure, Time, Pitch,
Algorithm, Texture, Instrumentation, Reference, Dialogue, Constraint. Add your own
dimensions or rewrite them entirely.
/nota:analysis-framework
View, modify or reset the analysis framework that guides
/nota:analyze. The default has 10 dimensions: Formal Structure, Harmonic
and Modal Language, Rhythmic and Temporal Strategy, Generative Strategy, Texture and
Instrumentation, Idiomatic Usage, Relation to Other Artists, Notable Technical Patterns,
Coding Best Practices, Conclusion. Customize per your compositional priorities.
Onboarding & operations
/nota:hello
Welcome and capabilities overview. Start here when interacting with Nota for the first time, or trigger it by saying "hello musa".
/nota:setup
Plugin configuration and troubleshooting. Verifies the Voyage AI API key, checks knowledge base download, confirms MCP server connectivity. Run this after install.
Knowledge bases
Nota's depth comes from two SQLite-vec databases queried with Voyage AI embeddings, which let every skill ground its output in concrete sources rather than the model's general knowledge.
| Database | Scope | Storage |
|---|---|---|
knowledge.db |
MusaDSL documentation, API reference, 23 demo projects, 23 built-in composition best practices. Auto-downloaded on first session start. | Shipped with the plugin, refreshed when the plugin updates. |
private.db |
Your indexed compositions (added with /nota:index), their musical analyses
(created with /nota:analyze), and your custom best practices
(/nota:best-practices). Search across them as easily as the public docs.
|
Local, in ~/.config/nota/. Never leaves your machine. |
Both databases use sqlite-vec
for vector storage and Voyage AI
for high-quality multilingual code-aware embeddings. The plugin's MCP server exposes a
search tool that every skill consults transparently.
Workflow loop
Skills feed into each other. Used together, they form a virtuous loop where each composition enriches the assistant for the next one:
/nota:think →
/nota:code →
/nota:index →
/nota:analyze →
/nota:best-practices →
back to /nota:think
- Think — explore ideas across the inspiration dimensions, informed by your past work.
- Code — turn the idea into verified MusaDSL code, consulting docs, demos and best practices.
- Index — add the finished composition to your private knowledge base.
- Analyze — generate a structured musical analysis of the work.
- Best-practices — extract recurring patterns from your analyses into reusable practices.
- Think again — now your future ideation draws from a richer corpus.
The more you compose and analyze, the more domain-aware Nota becomes for your specific style.
Getting Started
Prerequisites
- Claude Code (the plugin runs inside it).
- Ruby 3.1+ (the plugin's MCP server is Ruby).
- A Voyage AI API key. The free tier is sufficient for personal use.
Install (3 steps inside Claude Code)
-
Add the Nota marketplace to Claude Code:
/plugin marketplace add javier-sy/nota-plugin-for-claude -
Install the plugin:
/plugin install nota@yeste.studio -
Export the Voyage API key in your shell profile (so Claude Code's subprocess inherits it):
export VOYAGE_API_KEY="your-key-here"
Verify
Run /nota:setup inside Claude Code to verify Ruby, the Voyage key, knowledge base
download and MCP server connectivity. Then say "hello musa" for the welcome
tour, or jump straight into /nota:explain how does the sequencer work?.
What gets downloaded
On first session start, Nota downloads the latest knowledge.db (a few MB of
MusaDSL documentation, API reference, demos and best practices, all pre-indexed with their
Voyage embeddings). Your private.db is created empty under
~/.config/nota/ the first time you use /nota:index or
/nota:analyze; nothing private leaves your machine.
Repository
Source code and detailed README:
Troubleshooting
| Symptom | Likely cause / fix |
|---|---|
/nota:setup says Voyage key missing |
Re-source your shell profile, or restart Claude Code so it inherits the updated env. |
| Knowledge base did not download | Check internet connectivity; /nota:setup retries the download. |
| Search returns empty results | The plugin may not have indexed your local works yet — run /nota:index on the project root. |
| MCP server connection failing | Check ~/.config/nota/ permissions; /nota:setup diagnoses it. |