本文へ移動
cccskills
無料GitHub で公開

beatflow-skill

Compose, revise, validate, compare, inspect, and export original multi-track music as Standard MIDI with BeatFlow's compact, style-neutral Python DSL. Use for turning a musical brief into a deterministic Composition, testing explicit phrase/counterpoint/theme contracts, or inspecting MIDI.

インストール方法を見る

含まれるファイル(26)

  • SKILL.md3.1 KB
  • agents/openai.yaml220 B
  • LICENSE34.3 KB
  • references/architecture.md1.1 KB
  • references/composition-format.md3.1 KB
  • references/diagnostics.md1.3 KB
  • requirements.txt29 B
  • scripts/beatflow_core/__init__.py871 B
  • scripts/beatflow_core/cli.py11.1 KB
  • scripts/beatflow_core/composer.py33.0 KB
  • scripts/beatflow_core/composition_compiler.py19.1 KB
  • scripts/beatflow_core/composition_diagnostics.py19.6 KB
  • scripts/beatflow_core/composition_models.py22.2 KB
  • scripts/beatflow_core/composition_validation.py18.1 KB
  • scripts/beatflow_core/counterpoint_diagnostics.py24.9 KB
  • scripts/beatflow_core/diagnostic_models.py1.1 KB
  • scripts/beatflow_core/harmony_utils.py3.9 KB
  • scripts/beatflow_core/inspect_midi.py4.4 KB
  • scripts/beatflow_core/meter.py1.9 KB
  • scripts/beatflow_core/models.py1.1 KB
  • scripts/beatflow_core/realized_score.py1.6 KB
  • scripts/beatflow_core/renderer.py9.1 KB
  • scripts/beatflow_core/thematic_diagnostics.py10.3 KB
  • scripts/beatflow_core/validation.py987 B
  • scripts/beatflow.py241 B
  • scripts/run.py3.4 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

BeatFlow

Use Codex for musical decisions and BeatFlow for exact timing, functional pitch realization, validation, diagnostics, MIDI rendering, and inspection.

Run python "<skill-root>/scripts/run.py" <command> .... Write scripts and outputs in the user's workspace, never inside <skill-root>.

Workflow

  1. Extract duration, tempo, meter, tonal center, form, instrumentation, energy path, priorities, and exclusions. Make reversible assumptions when needed.
  2. Read composition-format.md before authoring. Read diagnostics.md only when adding explicit contracts, comparing candidates, or revising findings. Read architecture.md only for runtime maintenance.
  3. Plan the shared clock, harmony, bass, role entries, rests, foreground, arrivals, and development before adding decoration.
  4. Author a trusted Python file whose build() returns Composition. Prefer SongBuilder and exact beat() values. Style belongs in authored material, not compiler branches.
  5. Keep identity-bearing material recognizable before transforming it. Declare phrases, interactions, counterpoint, themes, or silence only when the brief makes them testable.
  6. Render and inspect:
python "<skill-root>/scripts/run.py" compose song.py --midi song.mid --composition song.composition.json --report song.report.json
  1. Treat validation errors as hard failures. Treat diagnostics as evidence against declared intent, never as a universal taste score. Listen before making the final musical judgment.

Constraints

  • Keep timing quantized unless the user explicitly requests timing variation.
  • Count the perceptual tactus; do not assume every quarter note is one felt beat.
  • Preserve essential instruments; repair writing or balance before dropping them.
  • Give foreground a clear rhythmic identity, internal contrast, and arrival.
  • Coordinate roles without forcing identical attacks.
  • Use top_target when a chord's top voice carries the line.
  • Keep all realized onsets and durations explicit.
  • Create original music; do not copy a reference melody or imitate a living artist.
  • Treat General MIDI as a preview, not final production timbre.

Commands

  • compose SCRIPT --midi MIDI [--composition JSON] [--report JSON]
  • analyze COMPOSITION [--output REPORT]
  • compare COMPOSITION... [--revision] [--output REPORT]
  • inspect [MIDI|COMPOSITION] [--schema] [--output REPORT]
  • self-check

Interruptions

The Python source is the durable checkpoint. --composition is written atomically before MIDI rendering, and MIDI/report outputs are also atomic. After interruption, rerun the same command; deterministic realization restarts cheaply without requiring an internal project cache.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

このスキルの問題を報告する