executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
merge-configsAuthor, validate, and run mergekit YAML configurations for core model merges, layer slices, methods, tokenizer construction, chat templates, and resource-aware execution.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this route when the task is to author or execute a standard
mergekit-yaml merge from local or Hub model references. The input is a YAML
configuration and the output is a merged model directory, with tokenizer,
model card, and validation signals according to the configuration and CLI
options.
Do not reopen a source checkout: the bundled references are the operating catalog. Use the bundled validator before a merge; it parses YAML and validates the Pydantic configuration without resolving or downloading any model.
models, slices, or modules), method, base model, tokenizer/chat
requirements, output directory, dtype, device, and safety constraints.python scripts/validate_merge_config.py CONFIG.yml when running from this sub-skill's directory, or python sub-skills/merge-configs/scripts/validate_merge_config.py CONFIG.yml from the generated skill root.
A successful parse is necessary, not sufficient: it does not inspect model
files, architecture compatibility, tensor shapes, or tokenizer availability.models, slices, or modules. Use models for whole-model merges,
slices for a single-module layer assembly, and modules for explicit
multi-module layouts. Never combine these fields at the same level.base_model rules in
merge-methods.md. Put required per-model
values such as weight on each model/source and global values in
parameters.tokenizer for
union/base/model selection and per-token embeddings. Use legacy
tokenizer_source only for compatibility; they are mutually exclusive. Set
chat_template only when a tokenizer will be saved.dtype controls input tensor loading and
is also the output config fallback; out_dtype controls saved tensors and
takes precedence in the output config. Select CPU or CUDA flags from actual
RAM/VRAM and backend availability, not from model size alone.mergekit-yaml CONFIG.yml OUT_DIR [OPTIONS]
Important flags are --device TEXT, --cuda/--no-cuda, --low-cpu-memory,
--read-to-gpu, --multi-gpu, --gpu-rich, --lazy-unpickle,
--num-threads/-j, --out-shard-size SIZE, --safe-serialization,
--copy-tokenizer/--no-copy-tokenizer, --write-model-card/--no-write-model-card,
--async-write, --write-threads, --transformers-cache,
--lora-merge-cache, --lora-merge-dtype, --random-seed, -v, --quiet,
--trust-remote-code, and --allow-crimes. Confirm the installed help before
using a flag in automation; the bundled reference records the inspected
interface.
A merge is usable only when YAML validation succeeds, all references resolve,
the selected method accepts the effective input set, tensors are written
without NaN/shape/device errors, and the output metadata matches the requested
configuration. For tokenizer work also check vocabulary size, forced token
embeddings, config vocabulary size when padding was requested, and the saved
chat template. For a failed run, classify it with
troubleshooting.md before changing the YAML.
Read the focused details progressively:
Report the config path, chosen topology and method, effective base model, parameter overrides and filters, tokenizer/chat policy, exact command flags, output directory, validator result, run result, and any unresolved warning. Do not claim success from a parse-only check or from an output directory that lacks the expected model/config artifacts.