Agent skill

Symusic Code Style

by Yikai-Liao in Yikai-Liao/symusic

Encodes symusic's engineering taste across C++ core, nanobind bindings, and Python-facing APIs.

MITAuto-check passedDevelopment

Install Symusic Code Style

skills CLI
$ npx skills add Yikai-Liao/symusic --skill symusic-code-style -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Yikai-Liao/symusic symusic-code-style --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Yikai-Liao/symusic.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/symusic-code-style .claude/skills/symusic-code-style && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
symusic-code-style
GitHub stars
189
Token cost
~1.2k tokens
SKILL.md length
512 words
Files
1
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

Encodes symusic's engineering taste across C++ core, nanobind bindings, and Python-facing APIs.

  • Works in 5 steps: Performance is a product feature, not an… → API symmetry beats cleverness. → Type-level correctness should be… → …
  • Reviewing features to preserve performance-first architecture and ergonomic
  • SKILL.md covers First-Principles Guidance, Repository-Specific Style…, C++ Core (include/, src/) and Nanobind Layer…, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Symusic Code Style is an agent skill from Yikai-Liao/symusic. Encodes symusic's engineering taste across C++ core, nanobind bindings, and Python-facing APIs. Use when implementing or reviewing features to preserve performance-first architecture and ergonomic, predictable interfaces.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development. It works with C++ and Python. The repository describes itself as: A swift and unified toolkit for symbolic music processing. The licence is MIT.

When your agent uses it

  • Reviewing features to preserve performance-first architecture and ergonomic
  • Predictable interfaces

Example prompts

  • “Use the symusic-code-style skill to encode symusic's engineering taste across C++ core, nanobind bindings, and Python-facing APIs”
  • “/symusic-code-style”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Performance is a product feature, not an optimization pass.
  2. API symmetry beats cleverness.
  3. Type-level correctness should be explicit at boundaries.
  4. Cross-language predictability is mandatory.
  5. Readable systems code over minimalist one-liners.

What it can do on your machine

Read from SKILL.md and the folder at commit 3cdd0ee. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Symusic Code Style loads about 1.2k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 512 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~60
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Yikai-Liao/symusic at commit 3cdd0ee, republished under its MIT licence (© Yikai-Liao). 512 words, ~1,168 tokens.

Download SKILL.mdSave it as .claude/skills/symusic-code-style/SKILL.md (or your agent's skills folder).
name
symusic-code-style
description
Encodes symusic's engineering taste across C++ core, nanobind bindings, and Python-facing APIs. Use when implementing or reviewing features to preserve performance-first architecture and ergonomic, predictable interfaces.
metadata.domain
symusic
metadata.role
project-specific-style-guide
metadata.scope
implementation-and-review
metadata.output-format
checklist-and-rationale

Symusic Code Style and Engineering Taste

Use this skill whenever a change touches src/, include/, py_src/, python/symusic/, or tests/.

First-Principles Guidance

  1. Performance is a product feature, not an optimization pass.

    • Keep hot paths in C++ (src/, include/) and expose them through thin nanobind layers.
    • Prefer data representations that avoid repeated conversion and minimize allocation churn.
  2. API symmetry beats cleverness.

    • For transformations, preserve the foo() + foo_inplace() dual interface.
    • Preserve consistent behavior across time units (Tick, Quarter, Second) and container types (Note, Track, Score).
  3. Type-level correctness should be explicit at boundaries.

    • Keep time-unit semantics explicit and dispatch through well-defined factories instead of ad-hoc runtime checks.
    • Ensure Python-visible typing helpers remain informative and fail loudly on invalid construction.
  4. Cross-language predictability is mandatory.

    • Python APIs should feel ergonomic, but never hide semantic differences from the C++ core.
    • Prefer deterministic behavior and clear exceptions over silent coercion.
  5. Readable systems code over minimalist one-liners.

    • Favor named helper functions and local structs when they clarify non-trivial timeline/algorithm logic.
    • Document subtle invariants (time tolerance, ownership expectations, conversion assumptions) near the implementation.

Repository-Specific Style Patterns

C++ Core (include/, src/)

  • Target modern C++ with explicit compile settings (C++20, no compiler extensions).
  • Use project aliases and containers (i32, vec, shared, pyvec) consistently instead of mixing raw STL usage styles.
  • Prefer value-semantic operations (copy, deepcopy, non-inplace transforms) and keep deep-copy semantics explicit.
  • Keep equality and ordering logic structural and deterministic, including pointer-aware equality fallbacks where needed.
  • For numeric timeline logic:
    • centralize tolerances,
    • avoid duplicated floating-point comparisons,
    • isolate helper predicates (close_enough, ge_or_close) and step derivation logic.

Nanobind Layer (py_src/bindings/)

  • Keep module entry points compact and delegate registrations to smaller binding units.
  • Prefer explicit, user-facing error messages when classes are typing placeholders or generic helpers.
  • Ensure pickle/state methods and reprs are predictable and stable.
  • Guard optional diagnostics (MEM_LEAK_WARNING) behind build flags rather than ad-hoc runtime branches.
Show full SKILL.md (205 more words)Show less

Python API Layer (python/symusic/)

  • Use factories to centralize dispatch across time units and core class variants.
  • Keep constructors and conversion helpers straightforward; avoid hidden expensive operations.
  • Raise precise exceptions (TypeError for wrong object kind, ValueError for invalid value domain).
  • Keep module import side-effects intentional, short, and validated (e.g., binary path checks).

Testing and Quality Signals (tests/ + pyproject.toml)

  • Keep tests behavior-focused, with clear assertions for immutability contracts and I/O round-trips.
  • Treat warnings as quality regressions where configured.
  • Respect existing lint philosophy: broad Ruff coverage, targeted per-file exceptions, strict pytest options.

Change Checklist Before Merge

  • Did the change preserve inplace and non-inplace API symmetry where relevant?
  • Are time-unit semantics (tick/quarter/second) consistent and explicitly handled?
  • Are exceptions and error messages concrete and user-actionable?
  • Did you avoid adding hidden work in Python wrappers that belongs in C++?
  • Are tests updated for behavior and edge cases, not just happy paths?
  • Are comments/docstrings in English and focused on invariants rather than restating code?

Anti-Patterns to Avoid

  • Introducing convenience wrappers that blur time-unit semantics.
  • Adding dependencies to solve narrowly scoped problems already covered by existing internal utilities.
  • Mixing ownership styles unpredictably (raw pointers vs shared/value semantics) in core data models.
  • Creating Python-side fallback implementations for logic that should remain canonical in C++.

© Yikai-Liao, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/symusic-code-style of Yikai-Liao/symusic.

Open the folder on GitHubat commit 3cdd0ee

Compare with similar skills

Symusic Code Style next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Symusic Code Style compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Symusic Code Style this skillYikai-Liao/symusic189—~1.2kAutomated safety check: PassMIT
pybind11 Release Preparationpybind/pybind1118k—~1.7kAutomated safety check: PassCustom licence
Paddle Eager GraphPaddlePaddle/Paddle24k—~562Automated safety check: PassApache-2.0
pybind11 Release Publicationpybind/pybind1118k—~2.5kAutomated safety check: PassCustom licence
ExecuTorch Build Guidepytorch/executorch5.1k—~2.3kAutomated safety check: NotesCustom licence
Ros2 Engineering Skillsdbwls99706/ros2-engineering-skills217—~3kAutomated safety check: PassApache-2.0

Similar skills

  • Opens the pybind11 release-preparation pull request: picking the release base, bumping the version in common.h and integrating the changelog, following docs/release.rst.

    18k GitHub stars~1.7k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Paddle Eager Graph

    PaddlePaddle/Paddle

    A skill your agent uses when navigating Paddle eager-mode (dynamic graph) source code, tracing forward/backward execution, debugging autograd issues, understanding PyLayer, or investigating…

    24k GitHub stars~562 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Walks a maintainer through publishing a pybind11 release after the preparation PR merges, with preflight checks, confirmations before each push and a GitHub release.

    18k GitHub stars~2.5k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • ExecuTorch Build Guide

    pytorch/executorch

    Builds ExecuTorch from source: the Python package, C++ runtime, model runners, Android and iOS cross-compilation and backend-specific builds, with environment checks.

    5.1k GitHub stars~2.3k tokensUpdated yesterday
    DevelopmentAuto-check: notes
  • Ros2 Engineering Skills

    dbwls99706/ros2-engineering-skills

    ROS 2 engineering: rclcpp/rclpy, colcon/ament, launch, QoS/DDS, tf2/URDF, ros2control, Nav2, MoveIt 2, sensors, runtime/artifact provenance, and hardware safety.

    217 GitHub stars~3k tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • Embedded Cpp14 Misra

    BlueAndi/Pixelix

    A skill your agent uses when writing, reviewing, or refactoring C/C++ firmware code in this repository (src/, lib/, test/) — creating or editing .h/.hpp/.cpp files, applying MISRA-oriented and…

    443 GitHub stars~2k tokensUpdated 2 days ago
    DevelopmentAuto-check passed

More from Yikai-Liao/symusic

All 11 skills in this repo
  • Uv Package Manager

    Yikai-Liao/symusic

    Master the uv package manager for fast Python dependency management, virtual environments, and modern Python project workflows.

    189 GitHub starsUsed in 16 repos~4k tokens
    Auto-check: notes
  • Code Reviewer

    Yikai-Liao/symusic

    Analyzes code diffs and files to identify bugs, security vulnerabilities (SQL injection, XSS, insecure deserialization), code smells, N+1 queries, naming issues, and architectural concerns, then…

    189 GitHub starsUsed in 1 repo~1.3k tokens
    Auto-check passed
  • Cpp Pro

    Yikai-Liao/symusic

    Writes, optimizes, and debugs C++ applications using modern C++20/23 features, template metaprogramming, and high-performance systems techniques.

    189 GitHub starsUsed in 1 repo~1.1k tokens
    Auto-check passed
  • Python Packaging

    Yikai-Liao/symusic

    Create and publish distributable scientific Python packages following Scientific Python community best practices.

    189 GitHub stars~2.3k tokensUpdated 2 mo ago
    Auto-check passed
  • Debugging Wizard

    Yikai-Liao/symusic

    Parses error messages, traces execution flow through stack traces, correlates log entries to identify failure points, and applies systematic hypothesis-driven methodology to isolate and resolve bugs.

    189 GitHub starsUsed in 1 repo~909 tokens
    Auto-check passed
  • Devops Engineer

    Yikai-Liao/symusic

    Creates Dockerfiles, configures CI/CD pipelines, writes Kubernetes manifests, and generates Terraform/Pulumi infrastructure templates.

    189 GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed

Works with

Categories

Questions about Symusic Code Style

What does Symusic Code Style do?

Encodes symusic's engineering taste across C++ core, nanobind bindings, and Python-facing APIs. Symusic Code Style is an agent skill from Yikai-Liao/symusic. Encodes symusic's engineering taste across C++ core, nanobind bindings, and Python-facing APIs.

When should I use Symusic Code Style?

Symusic Code Style fits situations like: reviewing features to preserve performance-first architecture and ergonomic; predictable interfaces.

How do I install Symusic Code Style in Claude Code?

Run `npx skills add Yikai-Liao/symusic --skill symusic-code-style -a claude-code`. Or copy the skill folder (.agents/skills/symusic-code-style in Yikai-Liao/symusic) into .claude/skills/symusic-code-style in your project. Claude Code loads it when a task matches its description.

How do I install Symusic Code Style in Codex?

Run `npx skills add Yikai-Liao/symusic --skill symusic-code-style -a codex`. Or copy the skill folder (.agents/skills/symusic-code-style in Yikai-Liao/symusic) into .agents/skills/symusic-code-style in your project. Codex loads it when a task matches its description.

Can I use Symusic Code Style in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Yikai-Liao/symusic --skill symusic-code-style -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/symusic-code-style, .gemini/skills/symusic-code-style, .github/skills/symusic-code-style and .opencode/skills/symusic-code-style in your project.

What does Symusic Code Style need to run?

SKILL.md names no scripts, command-line tools or credentials: Symusic Code Style is instructions for the agent only. Our summary lists: Python 3.

Does Symusic Code Style access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Symusic Code Style safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Symusic Code Style use?

Symusic Code Style is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Symusic Code Style use?

About 1.2k tokens (SKILL.md is roughly 4.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Symusic Code Style?

Skills that share tags, products or a category with Symusic Code Style: pybind11 Release Preparation (pybind/pybind11, 18k stars), Paddle Eager Graph (PaddlePaddle/Paddle, 24k stars), pybind11 Release Publication (pybind/pybind11, 18k stars) and ExecuTorch Build Guide (pytorch/executorch, 5.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Symusic Code Style?

Yikai-Liao (a GitHub user) maintains it in Yikai-Liao/symusic, which has 189 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on August 11, 2026.

Source: Yikai-Liao/symusic on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.