Draw.io Diagram Generator
github/awesome-copilot
Generates, edits and validates draw.io files with correct mxGraph XML, covering flowcharts, architecture, sequence, ER and UML class diagrams.
Add a new image or video generative model to the Draw Things app / CLI with a compile-first, end-to-end workflow across SwiftDiffusion, tokenizer plumbing, text encoder, fixed encoder, UNet / DiT…
$ npx skills add drawthingsai/draw-things-community --skill new-model-integration -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install drawthingsai/draw-things-community new-model-integration --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/drawthingsai/draw-things-community.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/new-model-integration .claude/skills/new-model-integration && 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 "new-model-integration" agent skill from https://github.com/drawthingsai/draw-things-community/tree/main/.agents/skills/new-model-integration into .claude/skills/new-model-integration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-model-integration", 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/drawthingsai/draw-things-community/tree/main/.agents/skills/new-model-integrationType 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 drawthingsai/draw-things-community --skill new-model-integration -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install drawthingsai/draw-things-community new-model-integration --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/drawthingsai/draw-things-community.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/new-model-integration .agents/skills/new-model-integration && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "new-model-integration" agent skill from https://github.com/drawthingsai/draw-things-community/tree/main/.agents/skills/new-model-integration into .agents/skills/new-model-integration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-model-integration", 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 drawthingsai/draw-things-community --skill new-model-integration -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install drawthingsai/draw-things-community new-model-integration --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/drawthingsai/draw-things-community.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/new-model-integration .cursor/skills/new-model-integration && 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 "new-model-integration" agent skill from https://github.com/drawthingsai/draw-things-community/tree/main/.agents/skills/new-model-integration into .cursor/skills/new-model-integration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-model-integration", 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/drawthingsai/draw-things-community.git --path .agents/skills/new-model-integration--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 drawthingsai/draw-things-community --skill new-model-integration -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install drawthingsai/draw-things-community new-model-integration --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/drawthingsai/draw-things-community.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/new-model-integration .gemini/skills/new-model-integration && 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 "new-model-integration" agent skill from https://github.com/drawthingsai/draw-things-community/tree/main/.agents/skills/new-model-integration into .gemini/skills/new-model-integration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-model-integration", 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 drawthingsai/draw-things-community new-model-integrationInstalls 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 drawthingsai/draw-things-community --skill new-model-integration -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/drawthingsai/draw-things-community.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/new-model-integration .github/skills/new-model-integration && 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 "new-model-integration" agent skill from https://github.com/drawthingsai/draw-things-community/tree/main/.agents/skills/new-model-integration into .github/skills/new-model-integration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-model-integration", 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 drawthingsai/draw-things-community --skill new-model-integration -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install drawthingsai/draw-things-community new-model-integration --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/drawthingsai/draw-things-community.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/new-model-integration .opencode/skills/new-model-integration && 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 "new-model-integration" agent skill from https://github.com/drawthingsai/draw-things-community/tree/main/.agents/skills/new-model-integration into .opencode/skills/new-model-integration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "new-model-integration", 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.
new-model-integrationAdd a new image or video generative model to the Draw Things app / CLI with a compile-first, end-to-end workflow across SwiftDiffusion, tokenizer plumbing, text encoder, fixed encoder, UNet / DiT…
New Model Integration is an agent skill from drawthingsai/draw-things-community. Add a new image or video generative model to the Draw Things app / CLI with a compile-first, end-to-end workflow across SwiftDiffusion, tokenizer plumbing, text encoder, fixed encoder, UNet / DiT runtime, VAE, converter and quantizer tooling, and CLI validation.
Its SKILL.md is about 4.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).
The repository describes itself as: The community repository for the Draw Things app. The licence is GPL-3.0.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 3cac075. 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.
Shell commands in SKILL.md call:
bazelrgswiftFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From 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.
New Model Integration loads about 4.8k tokens when it runs. Until then it costs about 71 tokens; SKILL.md has 2,294 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 drawthingsai/draw-things-community at commit 3cac075, republished under its GPL-3.0 licence (© drawthingsai). 2,294 words, ~4,829 tokens.
.claude/skills/new-model-integration/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Use this when adding a new image or video generative model, or a new model version, to the Draw Things app / CLI, especially when most of the surrounding components already exist and the task is mainly integration.
This skill is optimized for the current SwiftDiffusion / Draw Things layout:
Libraries/SwiftDiffusion/Sources/ModelsModelWeightMapper from model builders and helper blocksLibraries/SwiftDiffusion/Sources/TextEncoder.swiftLibraries/SwiftDiffusion/Sources/UNetFixedEncoder.swiftLibraries/SwiftDiffusion/Sources/Models/UNetProtocol.swiftLibraries/SwiftDiffusion/Sources/FirstStage.swiftIn this repo, UNet in names such as UNetProtocol, UNetFixedEncoder, and UNetExtractConditions is the legacy name for the main diffusion model integration boundary. The underlying architecture may be a DiT or another non-UNet model.
case .newModel: fatalError() placeholders first, then fill them in.read(model: "model", strict: true, ...) to surface missing or mismatched keys early. Do not ship that debugging behavior unintentionally.UNetFixedEncoder / UNetProtocol integration split as the long-term structure, but do not force that split into the first implementation if it makes bring-up materially harder.--seed when comparing semantic fixes.Add the new diffusion builder in Libraries/SwiftDiffusion/Sources/Models/<Model>.swift.
Follow the existing structure used by nearby large-model integrations such as:
Libraries/SwiftDiffusion/Sources/Models/Flux2.swiftLibraries/SwiftDiffusion/Sources/Models/QwenImage.swiftFor weight loading:
ModelWeightMapperModelWeightMapper closure is sufficientCompile goal for this step:
ModelWeightMapper can resolve checkpoint keys deterministicallyModelVersionAdd the enum case in Libraries/SwiftDiffusion/Sources/Samplers/Sampler.swift, for example:
case newModel = "new.model"Then sweep the repo for switches over ModelVersion.
Preferred bring-up tactic:
case .newModel: fatalError() where behavior is not decided yetHigh-value sweep targets:
Libraries/SwiftDiffusion/Sources/TextEncoder.swiftLibraries/SwiftDiffusion/Sources/UNetFixedEncoder.swiftLibraries/SwiftDiffusion/Sources/Models/UNetProtocol.swiftLibraries/SwiftDiffusion/Sources/FirstStage.swiftLibraries/ModelZoo/Sources/ModelZoo.swiftLibraries/ModelZoo/Sources/ComputeUnits.swiftLibraries/ModelOp/Sources/ModelImporter.swiftApps/ModelConverter/Converter.swiftApps/LoRAConverter/Converter.swiftApps/ModelQuantizer/Quantizer.swiftApps/DrawThings/Sources/Model/*Apps/DrawThings/Sources/Edit/EditWorkflow.swiftUseful search pattern:
rg -n "case \\.ltx2|case \\.flux2_4b|case \\.qwenImage|switch version|switch modelVersion" Libraries Apps -g '*.swift'Do not assume a single tokenizer stream.
If the model uses more than one text stream:
Validate the runtime contract, not only the submodule math:
Check and update the places that vend or select tokenizers:
Apps/DrawThings/Sources/Edit/Tokenizers.swiftApps/DrawThings/Sources/Edit/EditWorkflow.swiftApps/DrawThingsCLI/DrawThingsCLI.swiftApps/gRPCServerCLI/gRPCServerCLI.swiftLibraries/DrawThingsSDK/Sources/DrawThingsSDK.swiftLibraries/LocalImageGenerator/Sources/LocalImageGenerator.swiftGoal:
llm_adapter boundaryDecision rule:
TextEncoder.swift if that avoids returning large hidden-state tensors across module boundariesUNetFixedEncoder.swift only when the boundary is cleaner and tensor traffic remains reasonableImplementation target:
Libraries/SwiftDiffusion/Sources/TextEncoder.swiftBring-up advice:
debugPrint relevant tensors around the new pathUNetFixedEncoder and UNetProtocolAfter text encoding is stable, hook the new generative model into:
Libraries/SwiftDiffusion/Sources/UNetFixedEncoder.swiftLibraries/SwiftDiffusion/Sources/Models/UNetProtocol.swiftDefault rule for a first integration:
UNetFixedEncoder / UNetProtocol integration split structurallyUNetFixedEncoder early if it is already simple, obvious, and low-riskOnly add slicing later if profiling or architecture constraints require it.
UNetProtocol call contractUNetExtractConditions is used, only slice tensors that are actually timestep-major extracted conditionsIf the model is user-facing or importable, extend the non-runtime tools too:
Apps/ModelConverter/Converter.swiftApps/LoRAConverter/Converter.swiftApps/ModelQuantizer/Quantizer.swiftCommon integration miss:
If the new model reuses an existing latent contract:
Libraries/SwiftDiffusion/Sources/FirstStage.swiftGoal:
Preferred validation order:
bazel run //Apps:DrawThingsCLI -- ...For this class of task, start with:
bazel build //Libraries/SwiftDiffusion:SwiftDiffusion
bazel build //Apps:DrawThingsCLI
bazel run //Apps:DrawThingsCLI -- --helpIf the new model is already selectable from the CLI, run an actual generation with the model assets present.
Suggested validation sequence:
bazel build //Libraries/SwiftDiffusion:SwiftDiffusion
bazel build //Apps:DrawThingsCLI
bazel build //Apps/DrawThings:DrawThings --ios_multi_cpus=arm64
bazel run //Apps:DrawThingsCLI -- generate \
--models-dir <models-dir> \
-m <model-file> \
-p "<prompt>" \
--steps <steps> \
--cfg <cfg> \
--seed <seed> \
--config-json '<json-if-needed>' \
--width <width> \
--height <height> \
--no-download-missing \
-o /tmp/model-generate.pngIllustrative example using Anima:
--config-json to match the model family you are integratingbazel run //Apps:DrawThingsCLI -- generate \
--models-dir <models-dir> \
-m anima_preview_3_f16.ckpt \
-p "a red apple on a wooden table, studio photograph" \
--steps 20 \
--cfg 4 \
--seed 7 \
--config-json '{"shift":3}' \
--width 1024 \
--height 1024 \
--no-download-missing \
-o /tmp/drawthings-generate.pngConcrete smoke-test example:
bazel run //Apps:DrawThingsCLI -- generate \
--models-dir <models-dir> \
-m <model-file> \
-p "<simple prompt>" \
--steps 1 \
--cfg 1 \
--width 512 \
--height 512 \
--no-download-missing \
-o /tmp/drawthings-generate.pngNote:
bazel run //Apps:DrawThingsCLI -- ... directly over swift run in this repo--config-jsonModelZoo values explicitly instead of assuming the nearest existing model is correctbazel build //Libraries/SwiftDiffusion:SwiftDiffusionbazel build //Apps/DrawThings:DrawThings --ios_multi_cpus=arm64bazel run //Apps:DrawThingsCLI -- generate ... sampleIf end-to-end execution is blocked, stop at the highest verified layer and record the blocker precisely.
ModelVersion switch cases outside SwiftDiffusionUNetProtocol and the model builderllm_adapter placed on the wrong side of the boundary, causing oversized tensor trafficModelWeightMapper in the same style as nearby model integrationsModelVersion existsUNetFixedEncoder and UNetProtocol run without slicingFirstStage reuses an existing compatible VAE path when possible© drawthingsai, GPL-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/new-model-integration of drawthingsai/draw-things-community.
Open the folder on GitHubat commit 3cac075
New Model Integration 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 |
|---|---|---|---|---|---|---|
| New Model Integration this skilldrawthingsai/draw-things-community | 580 | — | ~4.8k | Automated safety check: Pass | GPL-3.0 | |
| Draw.io Diagram Generatorgithub/awesome-copilot | 40k | 1 repos | ~4.9k | Automated safety check: Pass | MIT | |
| Generatealirezarezvani/claude-skills | 28k | 1 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Fal Generatenexu-io/open-design | 100k | — | ~306 | Automated safety check: Pass | Apache-2.0 | |
| Video Generationbytedance/deer-flow | 83k | 4 repos | ~1.4k | Automated safety check: Pass | MIT | |
| Image Generationonyx-dot-app/onyx | 32k | 1 repos | ~1.7k | Automated safety check: Pass | Custom licence |
github/awesome-copilot
Generates, edits and validates draw.io files with correct mxGraph XML, covering flowcharts, architecture, sequence, ER and UML class diagrams.
alirezarezvani/claude-skills
Generate Playwright tests. An agent skill from alirezarezvani/claude-skills.
nexu-io/open-design
Generate images and videos using fal.ai AI models. An agent skill from nexu-io/open-design.
bytedance/deer-flow
Generates short videos from a structured JSON prompt, optionally guided by a reference image used as the first or last frame.
onyx-dot-app/onyx
Generate or edit raster images (photos, illustrations, textures, sprites, mockups, logos, infographics) using the workspace's configured image-generation provider via onyx-cli image.
earthtojake/text-to-cad
Projects orthographic views, dimensions, hole callouts and a title block from a part's actual geometry into a single ISO-sheet PDF drawing that updates when the model changes.
drawthingsai/draw-things-community
Generate, benchmark, validate, and troubleshoot LongCat-Video-Avatar 1.5 videos with draw-things-cli.
drawthingsai/draw-things-community
Set up and verify a new Draw Things CPU proxy and Envoy server using the scripts in Scripts/ServerManagement/CPUScript.
drawthingsai/draw-things-community
Use and troubleshoot an already installed Homebrew draw-things-cli for model discovery, authentication, local, cloud, or remote image generation, basic image-to-image and video generation, output…
drawthingsai/draw-things-community
Initialize a Draw Things GPU server with GPUScript, including script sync, Docker/CUDA/NVIDIA runtime setup, 7T data disk mounting, mergerfs, and end-to-end GPU verification.
drawthingsai/draw-things-community
Validate Draw Things LoRA training end to end with draw-things-cli, including tiny-dataset training, loss and scaler checks, checkpoint sanity, and base-versus-LoRA generation comparison.
drawthingsai/draw-things-community
Add or tighten Draw Things LoRA trainer support for generative models available in the Draw Things app / CLI, covering LoRA builders, trainer dispatch, tokenizer and fixed-encoder wiring, checkpoint…
Add a new image or video generative model to the Draw Things app / CLI with a compile-first, end-to-end workflow across SwiftDiffusion, tokenizer plumbing, text encoder, fixed encoder, UNet / DiT…. New Model Integration is an agent skill from drawthingsai/draw-things-community. Add a new image or video generative model to the Draw Things app / CLI with a compile-first, end-to-end workflow across SwiftDiffusion, tokenizer plumbing, text encoder, fixed encoder, UNet / DiT runtime, VAE, converter and quantizer tooling, and CLI validation.
Run `npx skills add drawthingsai/draw-things-community --skill new-model-integration -a claude-code`. Or copy the skill folder (.agents/skills/new-model-integration in drawthingsai/draw-things-community) into .claude/skills/new-model-integration in your project. Claude Code loads it when a task matches its description.
Run `npx skills add drawthingsai/draw-things-community --skill new-model-integration -a codex`. Or copy the skill folder (.agents/skills/new-model-integration in drawthingsai/draw-things-community) into .agents/skills/new-model-integration 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 drawthingsai/draw-things-community --skill new-model-integration -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/new-model-integration, .gemini/skills/new-model-integration, .github/skills/new-model-integration and .opencode/skills/new-model-integration in your project.
Going by SKILL.md and its folder, New Model Integration needs the command-line tools its instructions call (bazel, rg and swift).
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.
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.
New Model Integration is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.8k tokens (SKILL.md is roughly 19k 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 New Model Integration: Draw.io Diagram Generator (github/awesome-copilot, 40k stars), Generate (alirezarezvani/claude-skills, 28k stars), Fal Generate (nexu-io/open-design, 100k stars) and Video Generation (bytedance/deer-flow, 83k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
drawthingsai (a GitHub organization) maintains it in drawthingsai/draw-things-community, which has 580 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 6, 2026.
Source: drawthingsai/draw-things-community on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.