Seedance Pipeline
Emily2040/seedance-2.0
This skill should be used when the user asks about Seedance 2.0 workflow operations, API planning, BytePlus ModelArk, Dreamina/Jimeng surfaces, provider/router APIs, China-facing surfaces, ComfyUI…
Generate 4-30 second cinematic video with ByteDance Seedance 2.5 through fal.ai, Volcengine Ark, Runway, or ComfyUI Partner Nodes.
$ npx skills add calesthio/OpenMontage --skill seedance-2-5 -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install calesthio/OpenMontage seedance-2-5 --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/calesthio/OpenMontage.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/seedance-2-5 .claude/skills/seedance-2-5 && rm -rf skills-srcUse ~/.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/
Install the "seedance-2-5" agent skill from https://github.com/calesthio/OpenMontage/tree/main/.agents/skills/seedance-2-5 into .claude/skills/seedance-2-5/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-5", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/calesthio/OpenMontage/tree/main/.agents/skills/seedance-2-5Type this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add calesthio/OpenMontage --skill seedance-2-5 -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install calesthio/OpenMontage seedance-2-5 --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/calesthio/OpenMontage.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/seedance-2-5 .agents/skills/seedance-2-5 && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "seedance-2-5" agent skill from https://github.com/calesthio/OpenMontage/tree/main/.agents/skills/seedance-2-5 into .agents/skills/seedance-2-5/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-5", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add calesthio/OpenMontage --skill seedance-2-5 -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install calesthio/OpenMontage seedance-2-5 --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/calesthio/OpenMontage.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/seedance-2-5 .cursor/skills/seedance-2-5 && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "seedance-2-5" agent skill from https://github.com/calesthio/OpenMontage/tree/main/.agents/skills/seedance-2-5 into .cursor/skills/seedance-2-5/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-5", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/calesthio/OpenMontage.git --path .agents/skills/seedance-2-5--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add calesthio/OpenMontage --skill seedance-2-5 -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install calesthio/OpenMontage seedance-2-5 --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/calesthio/OpenMontage.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/seedance-2-5 .gemini/skills/seedance-2-5 && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "seedance-2-5" agent skill from https://github.com/calesthio/OpenMontage/tree/main/.agents/skills/seedance-2-5 into .gemini/skills/seedance-2-5/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-5", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install calesthio/OpenMontage seedance-2-5Installs for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add calesthio/OpenMontage --skill seedance-2-5 -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/calesthio/OpenMontage.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/seedance-2-5 .github/skills/seedance-2-5 && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "seedance-2-5" agent skill from https://github.com/calesthio/OpenMontage/tree/main/.agents/skills/seedance-2-5 into .github/skills/seedance-2-5/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-5", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add calesthio/OpenMontage --skill seedance-2-5 -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install calesthio/OpenMontage seedance-2-5 --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/calesthio/OpenMontage.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/seedance-2-5 .opencode/skills/seedance-2-5 && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "seedance-2-5" agent skill from https://github.com/calesthio/OpenMontage/tree/main/.agents/skills/seedance-2-5 into .opencode/skills/seedance-2-5/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-5", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
seedance-2-5Generate 4-30 second cinematic video with ByteDance Seedance 2.5 through fal.ai, Volcengine Ark, Runway, or ComfyUI Partner Nodes.
Seedance 2 5 is an agent skill from calesthio/OpenMontage. Generate 4-30 second cinematic video with ByteDance Seedance 2.5 through fal.ai, Volcengine Ark, Runway, or ComfyUI Partner Nodes. Use for long single generations, synchronized audio, and large multimodal reference sets (up to 30 images, 10 videos, and 10 audio clips). Also covers the 2.5 prompt contract: section order, multi-shot "Hard cut" breakdown, named locks for continuity across cuts, the asset and character-sheet method, voice conditioning, and iteration discipline.
Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `reference/techniques.md`).
It sits in Media & Creative, covering AI video generation and Diffusion and image models. It works with Seedance, ComfyUI and fal. The repository describes itself as: World's first open-source, agentic video production system. 12 production pipelines, 100+ tools, 700+ agent skill and production-knowledge files. Turn your AI coding assistant… The licence is AGPL-3.0.
Read from SKILL.md and the folder at commit 9327439. It shows what the files ask for, not the result of running them.
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.
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.
Links to these hosts (documentation or services it may open):
higgsfield.aiFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Seedance 2 5 loads about 3.2k tokens when it runs. Until then it costs about 123 tokens; SKILL.md has 1,612 words of instructions outside code blocks.
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.
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.
The full file from calesthio/OpenMontage at commit 9327439, republished under its AGPL-3.0 licence (© calesthio). 1,612 words, ~3,180 tokens.
.claude/skills/seedance-2-5/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Seedance 2.5 extends the Seedance 2 family to 4–30 second 480p/720p clips and larger multimodal reference sets. It is hosted; there are no local model weights in OpenMontage.
| Route | Tool call | Notes |
|---|---|---|
| fal.ai | seedance_video, model_version: "2.5" | T2V, I2V, and reference-to-video |
| Volcengine Ark | seedance_ark, model: "2.5" | First-party model ID doubao-seedance-2-5-260628; custom token price required for cost estimates |
| Runway | runway_video, model: "seedance2_5" | T2V, I2V, V2V; 480p/720p |
| ComfyUI Partner Node | comfyui_video, model_family: "seedance_2.5" | Hosted and paid despite running in a ComfyUI graph |
Do not invent a Replicate, HeyGen, or Higgsfield identifier when their current public API schema does not list Seedance 2.5.
Resolution note. The supported routes above expose 480p and 720p. The model generates 1080p natively on the vendor's own web platform, which is not an OpenMontage route. If a vendor blog cites 1080p or 4K, check which surface it means before promising it in a pipeline.
Reference inputs are provider-specific. fal.ai uses image_urls, video_urls,
and audio_urls internally. Runway uses references, referenceVideos, and
referenceAudio. Ark uses typed content entries with roles. Always call the
OpenMontage tool instead of constructing a provider payload manually.
50 assets is a ceiling to use deliberately, not to max out. A cluttered reference set with competing faces, props, and locations produces a less coherent result than a smaller, chosen one. Rule: one reference per element that must stay consistent — a face, a product, a location, a style.
Lead with the shot structure, then subject, action, camera, lighting, and audio. For multi-shot work, give each beat an explicit time range and use quoted text for dialogue. Reference each supplied asset by a stable role in the prompt. Thirty seconds is a ceiling, not a target: use a shorter generation when the scene has only one meaningful action.
One continuous block of text, broken into labeled sections. Skipping a section does not degrade the output generally — it breaks it in a specific, predictable way.
GLOBAL STYLE
Genre, color grade, film stock or digital look, aspect ratio, shutter behavior,
and anything that must not appear. Everything below must match this.
SCENE
A one-line logline: what happens, where, in what mood.
CHARACTERS
Face, hair, build, wardrobe. If a reference covers this, just name which
reference is which character.
LOCATION
The space and its props, separate from the people in it. A vague location is
the single most common reason a multi-shot sequence drifts between cuts.
FIRST FRAME AND BLOCKING
Exact starting positions: who is where, facing which direction, as the clip
opens. Something fixed before any motion starts.
Shot 1: [shot type] [action in one or two sentences]. Hard cut.
Shot 2: [...]. Hard cut.
Shot 3: [...].
Pacing is built here. State camera distance and framing per shot: vague
transitions are the most common cause of a sequence collapsing.
OPTICS / CAMERA
Focal length, camera height, handheld or dolly or crane, per shot.
PHYSICS
Fabric, smoke, hair, liquid. Anything that would look wrong moving like a solid.
LIGHTING
Where the light is motivated from, its direction, how it falls on faces.
AUDIO
Ambience, specific effects, and what must not be heard. Default:
"No music, no discernible dialogue", unless the scene needs otherwise.The shape working prompts share: one visual rule at the top, one sound rule at the bottom, everything in between broken into shots. CHARACTERS can be short when a reference does that work; keep GLOBAL STYLE, the shot breakdown, and AUDIO regardless.
On vendor web platforms these are UI selectors, and changing genre alone shifts pacing,
contrast, and camera behavior with the scene description held identical. The API routes
above expose no such selectors, so on OpenMontage tool calls that intent has to be
written into GLOBAL STYLE and LIGHTING explicitly — genre, decade, grain and color
response, light source and its angle, and the emotional register. Leaving them implicit is
the difference between a shot that reads as noir and one that is merely dark.
Constraints do not belong in a trailing negative prompt. They go in named blocks, usually phrased positively, stating what holds.
| Lock | What it solves |
|---|---|
FIRST FRAME AND SPATIAL BLOCKING | Positions as x/y percentages of frame, plus the reverse-angle note: when the camera crosses, who ends up on which side, so they never swap |
SCREEN DIRECTION | The axis. "Sea always screen-right, dune line always screen-left, never reverses" |
LENS LOCK | One focal per segment in degrees of diagonal field of view: 84° wide, 47° normal, 29° portrait, 18° telephoto. Plus "no lens drift mid-segment" |
SINGLE-LENS LOCK | One focal for the whole piece; framing changes because the operator walks. This is what reads as documentary |
COUNT LOCK | "Exactly four, never five, no background double, no mirror or reflection showing an extra copy" |
STILLNESS LOCK | The list of what does not happen: nobody stands, nobody hugs, no hand leaves the blanket |
POSITIVE LOCKS | Closing block restating in positive terms what holds across cuts |
IDENTITY / NO-IP LOCK | "A wholly original, invented face." No logos, no readable text, no recognizable melody |
State monotonicity. The cheapest continuity trick available: states only advance, never reset. Wetness only accumulates. The cookie only shrinks — whole, bitten, two halves, finished — and never regrows. Writing the progression shot by shot stops the model from cleaning up your character on the next cut.
One grammar per action. When an action repeats, define one way to perform it and forbid the rest, then close the list: exactly five sword actions in the piece, each with its timestamp. Same for slow motion — allow-list it to named moments and nowhere else.
Event tracks. Write ambient elements as a timestamped event list rather than as texture: each wave with its second and its spray height as a percentage of frame, at irregular intervals. Works for sea, wind, rain, traffic, and crowds.
Substitute, don't only forbid. If you forbid something, supply the concrete replacement. "No blood" is weak; "the cut edge glows orange, sparks blow out, the body crumbles to ash" is enforceable.
The piece is won or lost here, before any video generates.
Character sheet: three plates, face on only one. Full body front with the face removed, full body back, and a 3/4 close-up carrying the face in two versions, smiling and neutral. The face is stripped from the full-body plates because in a wide shot it is small and blurry and the model copies that blur; if the only face in the set is a sharp close-up, that is the one it uses. Without the smiling version the model invents teeth.
One asset per state. Variations are split into separate assets rather than noted in the prompt: clean jacket, soaked, and bloodied. Splitting is cheaper than arguing.
The rule of 10. Before accepting an asset, generate it ten times across different poses and lighting. It must stay recognizable all ten.
Locations. Do not generate a head-on still. Generate a video of the empty space with the camera moving slowly, then derive the other sides of the room from that footage. A still gives you a wall; a slow travelling gives you geometry.
Voice is a conditioning sentence, not an asset. Write it once with accent, tempo, and manner, then paste it verbatim — without changing a word — every time that character speaks. Rewording widens the sampling range and destabilizes the voice.
Write accent phonetically, describing what the mouth does rather than where the speaker is
from: th going to f and v, dropped h, glottal t, -ing to -in'.
Keep audio tracks separate. Never voice and music in the same reference clip.
| Failure | Workaround |
|---|---|
| Singing | Pre-record the track, cut it into 12-second files, and label each THE TRACK THEY ARE PERFORMING. The label states the audio's role in the scene; audio guide, for sync only is technically accurate and produces nothing usable |
| Sustained physical contact | Fights and two bodies in constant contact. Shoot the reference on a phone and pass it as a motion reference; cheaper than twenty iterations |
| Multi-character scenes | The hardest category. The more faces in one shot, the more reference material each needs to avoid drifting into a generic face by the third or fourth cut |
Past 30 seconds, extend the previous clip or pass it as a video reference plus a description of what comes next — the second route also lets you introduce new characters or objects at the seam. Avoid vendor "long video" options that stitch several generations from one short prompt: there is not enough detail available for the runtime.
For a single wrong element, edit rather than regenerate, stating what changes and what holds:
Around the 2-second mark, change only [X] from [before] to [after].
Keep the characters, movement, camera, lighting, composition and timing unchanged.A repaired frame can also be passed as a start image for a short replacement segment. Note the tension: a published 110-minute Seedance production banned starting frames throughout, so continuity was carried by the assets rather than by the previous take's last frame, which drags its own drift. Treat the start-image repair as a point fix, not as a continuity method.
All supported routes are paid. Confirm the exact provider/model before calling and review the result for identity continuity, cuts, lip sync, audio artifacts, and prompt adherence. ComfyUI Partner Nodes use prepaid Comfy credits and are not an offline fallback.
Iteration discipline that keeps that cost bounded:
reference/techniques.md — ten prompt archetypes, the settings
each used, why the combination works, and which technique each one introduces. Use it to
pick the closest archetype before writing from scratch.
The prompting method, lock patterns, and asset rules above are distilled from material the Higgsfield team published in August 2026 — an official Seedance 2.5 prompting guide of ten categories each tested across multiple generations, and the open-sourced production method of a 110-minute Seedance feature. No prompt from either source is reproduced verbatim; the technique is restated with original templates. Credit for the underlying work is theirs.
The route table, provider field names, and cost guidance in this file are OpenMontage's own and take precedence over anything a vendor blog implies about API availability.
© calesthio, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in .agents/skills/seedance-2-5 of calesthio/OpenMontage.
Open the folder on GitHubat commit 9327439
Seedance 2 5 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Seedance 2 5 this skillcalesthio/OpenMontage | 66k | — | ~3.2k | Automated safety check: Pass | AGPL-3.0 | |
| Seedance PipelineEmily2040/seedance-2.0 | 7.6k | 1 repos | ~915 | Automated safety check: Pass | MIT | |
| Higgsfield CanvasOSideMedia/higgsfield-ai-prompt-skill | 713 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Moonvalley Mareycalesthio/generative-media-skills | 197 | — | ~5.2k | Automated safety check: Pass | MIT | |
| H3 Videoagent-next/video-agent | 120 | — | ~2.9k | Automated safety check: Pass | Apache-2.0 | |
| Seedancerobonuggets/seedance-skill | 105 | — | ~6.6k | Automated safety check: Notes | None |
Emily2040/seedance-2.0
This skill should be used when the user asks about Seedance 2.0 workflow operations, API planning, BytePlus ModelArk, Dreamina/Jimeng surfaces, provider/router APIs, China-facing surfaces, ComfyUI…
OSideMedia/higgsfield-ai-prompt-skill
A skill your agent uses when the user mentions Higgsfield Canvas, a node-based or node graph workspace, an infinite board/canvas, chaining generations into a pipeline, or wants to wire prompts →…
calesthio/generative-media-skills
Produce video with Moonvalley's Marey model family (Marey Realism v1.5) — a filmmaker-oriented, 1080p/24fps generative video model marketed as trained exclusively on licensed data.
agent-next/video-agent
OpenVideo skill (v0.1.0): generate high-quality local video with the OpenVideo product (MiniMax H3 backend).
robonuggets/seedance-skill
Generate cinematic motion graphics videos using ByteDance Seedance 2.0 via Fal AI.
agent-next/video-agent
Generate, edit, or direct videos via open-source models (MiniMax H3 baseline; Wan2.2 / LTX future).
calesthio/OpenMontage
Understand video content locally using ffmpeg frame extraction and Whisper transcription.
calesthio/OpenMontage
Create AI avatar videos with precise control over avatars, voices, scripts, scenes, and backgrounds using HeyGen's v2 API.
calesthio/OpenMontage
Creating interactive data visualisations using d3.js. An agent skill from calesthio/OpenMontage.
calesthio/OpenMontage
Create videos from a text prompt using HeyGen's Video Agent.
calesthio/OpenMontage
Build deterministic, editable, free-viewpoint Three.js worlds from text or structured briefs.
calesthio/OpenMontage
Edit videos locally using ffmpeg. An agent skill from calesthio/OpenMontage.
Categories
Generate 4-30 second cinematic video with ByteDance Seedance 2.5 through fal.ai, Volcengine Ark, Runway, or ComfyUI Partner Nodes. Seedance 2 5 is an agent skill from calesthio/OpenMontage.ai, Volcengine Ark, Runway, or ComfyUI Partner Nodes.
Seedance 2 5 fits situations like: long single generations; synchronized audio; large multimodal reference sets (up to 30 images; 10 audio clips).
Run `npx skills add calesthio/OpenMontage --skill seedance-2-5 -a claude-code`. Or copy the skill folder (.agents/skills/seedance-2-5 in calesthio/OpenMontage) into .claude/skills/seedance-2-5 in your project. Claude Code loads it when a task matches its description.
Run `npx skills add calesthio/OpenMontage --skill seedance-2-5 -a codex`. Or copy the skill folder (.agents/skills/seedance-2-5 in calesthio/OpenMontage) into .agents/skills/seedance-2-5 in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add calesthio/OpenMontage --skill seedance-2-5 -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/seedance-2-5, .gemini/skills/seedance-2-5, .github/skills/seedance-2-5 and .opencode/skills/seedance-2-5 in your project.
SKILL.md names no scripts, command-line tools or credentials: Seedance 2 5 is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: higgsfield.ai. This is read from the text; nothing was executed.
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.
Seedance 2 5 is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Seedance 2 5: Seedance Pipeline (Emily2040/seedance-2.0, 7.6k stars), Higgsfield Canvas (OSideMedia/higgsfield-ai-prompt-skill, 713 stars), Moonvalley Marey (calesthio/generative-media-skills, 197 stars) and H3 Video (agent-next/video-agent, 120 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
calesthio (a GitHub user) maintains it in calesthio/OpenMontage, which has 65,930 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on October 3, 2026.
Source: calesthio/OpenMontage on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.