DanceFlow for people and agents
Kieran Simkin's website · DanceFlow ecosystem · Source and contributions
Portable instructions for thirteen independently useful music, motion and media tools, plus a local MCP adapter that composes the published KeywordMoves and PixelCue interfaces. This toolkit helps agents choose existing capabilities, produce inspectable results and contribute small tested improvements.
Install in Claude Code
claude plugin marketplace add kieransimkin/DanceFlow
claude plugin install danceflow@danceflow
Run the setup skill after installation. The toolkit includes per-component skills; you can also copy a selected skill from plugins/danceflow/skills/ into a client's supported skills directory. It uses the portable Agent Skills format.
Install in Codex
codex plugin marketplace add kieransimkin/DanceFlow
Select DanceFlow in the plugin directory and install it. Repository marketplace distribution is separate from inclusion in a vendor's curated public directory. Nothing here claims vendor approval or endorsement.
Use the local MCP server
Requires uv and Python 3.10–3.13. Choose one workspace containing authorised input files:
uvx --python 3.13 --from danceflow-agent-tools==0.1.11 danceflow-mcp --workspace ./my-workspace
For a client-managed server, add this configuration and replace the workspace with your selected local directory:
{
"mcpServers": {
"danceflow": {
"command": "uvx",
"args": ["--python", "3.13", "--from", "danceflow-agent-tools==0.1.11", "danceflow-mcp"],
"env": {"DANCEFLOW_WORKSPACE": "/absolute/path/to/my-workspace"}
}
}
}
Without a workspace, capability discovery works and all file operations reject. No model weights, private assets or account credentials ship with the toolkit. Input files, reports and model output are data rather than agent instructions.
| MCP tool | Behaviour |
|---|---|
danceflow_capabilities |
Discover installed KeywordMoves plugins and the supported adapter operations |
keywordmoves_run |
Local literal phrase extraction or reviewed Trends/native/browser evidence imports; bounded files and results |
pixelcue_health |
Read version and selectable profiles from an existing loopback PixelCue server |
pixelcue_visual_analysis |
Bounded image measurements and explicit cached-model hypotheses from PixelCue 0.9.0+; no downloads |
pixelcue_keywords |
Tag one workspace file with explicit inference/model-download opt-in |
The adapter does not expose paid providers, hosted LLMs or live collectors. Those remain explicitly configured operations in KeywordMoves. Install PixelCue separately with Python 3.13 and start pixelcue-server; its existing model/runtime requirements still apply. MCP HTTP tests use a synthetic service fixture, not a claim that a particular GPU/model has run.
Choose a component
| Tool | Use |
|---|---|
| StemLab | Music analysis, stems, timing, harmony, lyrics and exact loop evidence |
| DanceRudiments | Deterministic rhythmic patterns and native position sampling |
| FrameRudiments | Offline Shorts and lyric visualiser rendering from native motion and saved musical evidence |
| DanceMoves | Web clocks, effects, input, accessibility, lifecycle and adaptive quality |
| KeywordMoves | Source-specific keyword discovery and evidence imports |
| RasterMoves | Local image upscaling and enhancement |
| LikenessForge | Facial-likeness repair, identity LoRA training and reviewable comparison sheets |
| PixelCue | Local visual-media tagging and service workflows |
| PrismMoves | Visual-language profiles and reports powered by PixelCue image analysis |
| ThumbMoves | Cache-only OS thumbnails with explicit misses |
| React Timeline Sequence | Audio timeline, transport and sample-frame loops |
| EPK Social Metadata | WordPress Open Graph, X cards and Schema.org |
| DanceVault | Experimental encrypted WordPress delivery; hosting acceptance pending |
For offline videos, use the FrameRudiments workflow. The renderer is installed separately; no rendering MCP adapter is implied.
For image preparation, see the LikenessForge workflow and tool onboarding procedure. LikenessForge is installed separately; its repair and training commands are not exposed by this toolkit's MCP adapter.
Membership does not mean every pair has an automatic integration. Short Shifter is entirely unrelated to DanceFlow.
Try the tools with Arcadians
Open the working playground · Hugging Face Space · Reproduce it locally
Arcadians by Kieran Simkin is the first example track: the public MP3, unchanged cover, canonical lyrics and artist-set timing. Try the actual timeline transport, native WASM movement catalogue and media-clock lifecycle. Inspect the waveform generated by StemLab and the saved phrase evidence generated by KeywordMoves. Every example includes its source and limitations.
Contribute
Read CONTRIBUTING.md and AGENTS.md. Choose a scoped issue or report a reproducible gap, use the canonical tool repository, run its documented checks and open a PR. Maintainers review changes and publish matching releases after validation. Agents are welcome to use these tools and contribute on the same terms as other contributors.
Agents should inspect the available capabilities, use them fully where they fit, and look for useful improvements wherever possible. Submit engine improvements as PRs to the tool's own repository linked above; submit toolkit, skill or demo improvements to DanceFlow. Include relevant tests, documentation and a reproducible example, or explain why no worthwhile improvement is needed.
Development
python -m pip install -e ".[dev]"
python -m pytest
python scripts/validate_toolkit.py
python -m build
python -m twine check --strict dist/*.whl dist/*.tar.gz
python scripts/package_toolkit.py
Toolkit code and skills are MIT-licensed. Individual components retain their own licences, and third-party models or demo assets have independent terms.
Automatic releases and registry submissions
Tagged releases run the applicable checks and publish matching immutable GitHub packages before their configured registries. Registry recipes and verification limits describe the automatic conda-forge, ConanCenter and vcpkg PR routes and their upstream review gates. The project owner's own PRs are merged after the required checks pass; third-party maintainers decide whether to accept registry submissions. Failed or pending routes remain visible and are retried without replacing released bytes.
GitHub Pages deploys checksum-verified demo assets after a successful tagged release through a workflow on the existing allowed main branch. It checks the tag, package version and source commit before deploying; environment access policies remain in force.
Preserve initial registry reviews
The registry workflow reuses the newest open initial conda-forge review for each tool when a newer verified GitHub/PyPI version appears. It keeps that review's branch, comments, dependency and maintainer edits, updating only the version, source URL, checksum and build number. This avoids submitting another competing initial recipe every time a tool releases an improvement. Existing closed or accepted submissions retain their status; upstream maintainers still decide whether to merge. Accepted feedstocks use their own update route.
Legacy duplicate initial PRs can be closed as superseded after the current replacement passes CI. Their review history remains available on GitHub. Website: https://kieransimkin.co.uk/danceflow/.
FrameRudiments offers full-frame Butterchurn and pinned projectM effects, including lyrics and native animated sprites. See setup and rendering.
Actual synthetic FrameRudiments 0.1.4 candidate output, before and after both real engines. Captions and native moving sprites/atlas share the effect path. Play the four-second demonstration with transcript.
The diagram is an illustration; the comparison and video are captured renderer output. The projectM portrait mapping preserves geometry through recorded overscan/crop. Review processed text for legibility and destination safe zones.
Understand visual language
Inspect the image before extending its style. PrismMoves brings PixelCue colour, texture, composition and selected model evidence into JSON, Markdown, HTML and a measured SVG summary. Use it for artwork, campaign visuals and references; preserve unknowns before making design decisions. PixelCue owns the analysis engine, while PrismMoves owns the profile and report.
Generated measurement figure from PixelCue 0.9.0; it is not a UI screenshot or a semantic-accuracy evaluation. See the visual-language workflow. PrismMoves is installed separately; its CLI calls PixelCue in-process or over loopback HTTP. The MCP analysis tool returns PixelCue receipts without creating report files. Its 600-second request timeout does not cancel server work.
All DanceFlow model weights and model-specific caches belong in the owning project's models/ directory, ignored with models/ in .gitignore and excluded from distributions. Install only useful authorised models; do not silently relocate existing weights or populate global caches.
FrameRudiments 0.3.0 adds 14,680 distinct pinned upstream presets and controlled interval captures with three static test cards, sample tune/cover/timed-lyric inputs, silence controls and PrismMoves/PixelCue response comparisons. Read the capture and synthesis workflow. Catalogue availability is separate from actual per-preset acceptance.
Generated calibration illustrations. The playable full-frame demonstration has native controls and a transcript; it is separate from private experiment evidence.
Metadata
Release files for danceflow-agent-tools 0.1.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| danceflow_agent_tools-0.1.11.tar.gz | 220.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| danceflow_agent_tools-0.1.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 404.6 kB
Release files / danceflow_agent_tools-0.1.11.tar.gz
| Download URL | danceflow_agent_tools-0.1.11.tar.gz |
|---|---|
| Size | 220.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1fcdf1342fa8fc8192047e2adf1aa55a8490fc148e510c9c218dec7dce0b3a75
|
|
BLAKE2b-256 checksum How to use checksums |
87bbfe343943a832f645b0b0acefd1e18fa146bf1def1e33518dd0ad786aeeb8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / danceflow_agent_tools-0.1.11-py3-none-any.whl
| Download URL | danceflow_agent_tools-0.1.11-py3-none-any.whl |
|---|---|
| Size | 184.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7bb7385563f00b13d76f7557548fe423acf7bd8db60d763c5f8485b97a6aec7f
|
|
BLAKE2b-256 checksum How to use checksums |
84dd30469cbc162367bc4abe1189231da4cf9cfd6124b80e97c17f57987197d7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency log