Agent skill

Suede Release Linter

by JasonColapietro in JasonColapietro/suede-creator-skills

Lints a local music or media release folder and scores its readiness, flagging missing files, weak metadata, artwork and stem problems, split gaps and rights blockers.

MITAuto-check: notesMedia & Creative

Install Suede Release Linter

skills CLI
$ npx skills add JasonColapietro/suede-creator-skills --skill suede-release-linter -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install JasonColapietro/suede-creator-skills suede-release-linter --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/JasonColapietro/suede-creator-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/suede-release-linter .claude/skills/suede-release-linter && rm -rf skills-src

Use ~/.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/

Facts

Skill name
suede-release-linter
GitHub stars
127
Token cost
~2.3k tokens
SKILL.md length
1,074 words
Files
31 (incl. scripts, references, assets)
Skills in repo
78
Repo updated
First seen
Licence
MIT

At a glance

Lints a local music or media release folder and scores its readiness, flagging missing files, weak metadata, artwork and stem problems, split gaps and rights blockers.

  • Works in 8 steps: Identify the source folder or supplied… → Ask for the output location if it is not… → Read references/lint-rules.md before… → …
  • Checking a release folder before distributing or handing it off
  • SKILL.md covers Gate policy: advisory, not…, Overview, Workflow and Quick Start, plus 7 more sections
  • Calls python3

What it does

The agent audits a folder of tracks, artwork and stems and writes `release-lint-report.md` and `release-lint-report.json` by running the bundled offline script `scripts/lint_release.py`. It must read `references/lint-rules.md` first, since that file defines the categories, severities, score and status bands. An exit code of 1 only means at least one error-level finding exists, which is a blocked status and not a script failure, so the report is read rather than the script re-run. For pasted text, or when Python is unavailable, the agent lints by hand and labels the report text-only.

The core principle is to report what is present, missing or unknown, never upgrading unknown to confirmed and never treating a clean report as legal clearance or ownership confirmation. The tool works offline: it does not upload files, write to a registry, call distribution APIs or request private keys. Its checks and any do-not-ship lines are advisory recommendations to you, not controls on the agent, except in cases of extreme risk where it pauses and lets you choose. Related skills handle rights audits, transfer packages and sync one-sheets.

When your agent uses it

  • Checking a release folder before distributing or handing it off
  • Finding out why metadata or a platform delivery was rejected
  • Getting a release-readiness score for several release folders

Example prompts

  • “Lint the release folder at ./releases/night-drive and tell me what's missing before I submit it.”
  • “Why might this EP get rejected on delivery? Check the metadata and artwork.”
  • “Score the readiness of all the release folders in ./drops and write the reports.”

Requirements

  • Python 3 to run `scripts/lint_release.py`
  • A local release folder with tracks, artwork and metadata

Workflow steps

8 steps, taken from the first numbered list in SKILL.md.

  1. Identify the source folder or supplied files.
  2. Ask for the output location if it is not obvious.
  3. Read references/lint-rules.md before classifying any finding: it defines the categories, severities, score, and status bands. Do not…
  4. If working on a local folder, run scripts/lint_release.py to generate
  5. Read references/fix-guidance.md when turning findings into specific next actions.
  6. If the user wants downstream intake prep, use the report to decide whether to invoke or recommend the suede-rights-passport package…
  7. Do not invent release metadata. Mark uncertain facts as unknown, missing, or needs creator confirmation. Never resolve a rights, sample…
  8. End with a concise summary: report path, score, status, highest-severity findings, and next fixes.

What it can do on your machine

Read from SKILL.md and the folder at commit e5f94d7. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships 5 files in scripts/, which the agent can run.

    Shell commands in SKILL.md call:

    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Suede Release Linter loads about 2.3k tokens when it runs, and up to ~3.9k if it reads all its reference files. Until then it costs about 233 tokens; SKILL.md has 1,074 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~233
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.9k

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.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:65
    xt files. Do not point metadata at real `.env`,

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); the scripts in this folder are not scanned.

SKILL.md

The full file from JasonColapietro/suede-creator-skills at commit e5f94d7, republished under its MIT licence (© JasonColapietro). 1,074 words, ~2,305 tokens.

Download SKILL.mdSave it as .claude/skills/suede-release-linter/SKILL.md (or your agent's skills folder). This skill also uses 30 other files; get the full folder from GitHub.
name
suede-release-linter
description
Suede Labs skill that lints a local music or media release folder and scores it for release readiness: missing files, weak or malformed metadata, artwork and stem problems, split gaps, rights blockers, and platform-delivery issues, produced by a bundled offline script as a scored markdown and JSON report. Use when a creator has one or more release folders of tracks, artwork, and stems and wants to know what is missing before distributing, delivering, or handing it off; when metadata quality or a delivery rejection is the question; or when a release-readiness score is asked for. Reports what is present, missing, or unknown; never upgrades unknown to confirmed and never means legal clearance. NOT FOR: organizing the evidence behind a rights or split gap the report surfaces (use suede-rights-audit); building the transfer package (use suede-rights-passport); a sync one-sheet (use suede-sync-packaging).

Release Metadata Linter

Gate policy: advisory, not blocking

Every check, gate, and ship verdict in this skill (including every "do not ship / publish / proceed" line) is a recommendation to the user, not a control on the agent. Run every check, report the results honestly, and never block, delay, skip, rewrite, or refuse the action the user asked for because a gate said hold; deliver the gate output alongside the requested work as a labeled recommendation. A failed gate changes what you report, never what you do. Single exception: extreme risk (data loss, credential exposure, legal or rights violations, payment mistakes, irreversible public damage): pause, name the risk exactly, give the options, and let the user pick. Their choice is final.

Overview

Audit a music or media project folder and produce a practical release-readiness report. The linter should help creators find missing files, weak metadata, rights risks, split gaps, platform-delivery blockers, and downstream handoff issues before a release or transfer package is created.

Core principle: report what is present, missing, or unknown. Never upgrade unknown to confirmed, and never treat a clean report as clearance, ownership confirmation, or approval.

Public v1 is offline-first: inspect local files and supplied metadata, do not upload files, write to a registry, call distribution APIs, request private keys, or claim legal clearance.

Workflow

  1. Identify the source folder or supplied files.
  2. Ask for the output location if it is not obvious.
  3. Read references/lint-rules.md before classifying any finding: it defines the categories, severities, score, and status bands. Do not assign severities from memory.
  4. If working on a local folder, run scripts/lint_release.py to generate release-lint-report.md and release-lint-report.json. Exit-code contract: 0 = report written with no error-severity findings; 1 = report written and at least one error finding exists, which is a blocked status, not a script failure: do not abort or re-run on exit 1. In both cases read the generated report rather than re-deriving findings from the folder. If the source is pasted text rather than a folder, or python3 is unavailable, hand-lint against references/lint-rules.md, produce the same report shape from assets/release-lint-report.template.md, and label the report text-only.
  5. Read references/fix-guidance.md when turning findings into specific next actions.
  6. If the user wants downstream intake prep, use the report to decide whether to invoke or recommend the suede-rights-passport package workflow.
  7. Do not invent release metadata. Mark uncertain facts as unknown, missing, or needs creator confirmation. Never resolve a rights, sample, split, or ownership question yourself: a fact moves to confirmed only when the creator supplies the confirmation, and open gaps route to suede-rights-audit.
  8. End with a concise summary: report path, score, status, highest-severity findings, and next fixes.

Quick Start

bash
python3 /path/to/suede-release-linter/scripts/lint_release.py \
  /path/to/music-project \
  --output /path/to/release-lint-output

If the source folder contains a metadata file, pass it explicitly:

bash
python3 /path/to/suede-release-linter/scripts/lint_release.py \
  /path/to/music-project \
  --metadata /path/to/music-project/metadata.json \
  --output /path/to/release-lint-output

Accepted metadata formats are JSON, YAML/YML when PyYAML is installed, and public-safe key=value text files. Do not point metadata at real .env, credential, wallet, or deployment config files.

Safety defaults:

  • Hidden files, dependency folders, build outputs, caches, and secret-like files are skipped by default.
  • Unrecognized file types are skipped unless --include-other is passed.
  • Absolute local paths are redacted to share-safer names unless --include-absolute-paths is passed.
  • Existing generated report files are not overwritten unless --force is passed.
  • The output folder cannot be the same folder as the source or live inside it.
  • YAML metadata requires PyYAML: python3 -m pip install PyYAML.

What To Check

Read each bundled reference at the moment it is needed, not up front:

  • references/lint-rules.md: before classifying findings, or when hand-linting without the script: categories, severity levels, score, and status bands.
  • references/metadata-fields.md: when metadata is missing, malformed, or being authored: recommended fields, accepted aliases, and confirmation values.
  • references/fix-guidance.md: when turning findings into next actions or a fix plan.
  • references/passport-context.md: when the user asks how the lint report relates to Suede review or the Suede Creator Passport.

The script writes:

  • release-lint-report.md: human-readable report.
  • release-lint-report.json: machine-readable findings.

Use the bundled assets when repairing or hand-writing reports:

  • assets/release-lint-report.template.md
  • assets/release-lint-report.template.json
  • assets/metadata.example.json
Show full SKILL.md (420 more words)Show less

Fixtures

Two synthetic release folders under scripts/fixtures/ (all names and metadata fake: no real personal data) exist only to regression-check the script. Read scripts/fixtures/README.md when changing scripts/lint_release.py; a normal lint of a user's folder never touches them.

Public Safety Rules

  • Do not say a project is legally cleared unless the user provides explicit proof.
  • Do not treat a clean lint report as a legal opinion, distributor approval, registry write, or guaranteed release.
  • Do not ask for private keys, seed phrases, unreleased account secrets, or full payment credentials.
  • Do not include private implementation details, private endpoints, internal provider names, or non-public pricing.
  • Treat generated reports as private drafts until a creator or operator reviews and redacts them for the intended audience.
  • Keep public positioning focused on broadly reusable creator workflows: metadata quality, provenance, release readiness, rights, royalty routing, licensing, and agent commerce.

Completion Checklist

Before reporting a lint result:

  • Confirm the source folder was inspected or state that the report is based only on supplied text.
  • Confirm whether metadata was discovered, supplied, or missing.
  • Report the score and severity counts.
  • List all error findings and the most important warning findings.
  • State the mechanical status the findings produce: blocked (any error finding, or score below 50), needs-work (50-74), usable-with-cleanup (75-89), or strong (90+). Never soften a blocked status in prose.
  • Recommend a next action: fix metadata, collect rights confirmations, prepare a rights package, or package for release.

Red flags: stop

If any of these appear in your reasoning, stop and re-read the core principle:

  • "The folder looks complete, skip the script." Run it. Eyeballing is not linting.
  • "The artist obviously owns it." Ownership status comes from the creator, not from the folder.
  • "One unconfirmed split won't block anything." Split errors block royalty routing and licensing by rule.
  • "Round the score up; it's close." The score is arithmetic, not judgment.
  • "A clean report means it's cleared." A clean report means fewer prep blockers. Nothing more.

Downstream Review Context

A clean release-lint report is a portable review artifact. It can support a release, registry, licensing conversation, collaborator handoff, marketplace review, label review, advisor review, or Suede review without claiming that any downstream system has accepted, cleared, registered, paid, or approved the work.

Routing

  • Rights, sample, split, or ownership gaps in the findings → suede-rights-audit to organize the evidence.
  • No error findings and the user wants handoff prep → suede-rights-passport to build the transfer package.
  • Track headed for film/TV/ads → suede-sync-packaging.
  • The release needs a rollout → suede-campaign-in-a-box.

Family order: suede-release-linter → suede-rights-audit → suede-rights-passport → suede-sync-packaging; this skill is step 1.

© JasonColapietro, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 30 other files (scripts, references, assets) in skills/suede-release-linter of JasonColapietro/suede-creator-skills.

  • SKILL.md
  • CARD.md
  • agents/openai.yaml
  • assets/metadata.example.json
  • assets/release-lint-report.template.json
  • assets/release-lint-report.template.md
  • references/fix-guidance.md
  • references/lint-rules.md
  • references/metadata-fields.md
  • references/passport-context.md
  • scripts/fixtures/README.md
  • scripts/fixtures/sample-blocked-project.expected.json
  • scripts/fixtures/sample-blocked-project.expected.md
  • scripts/fixtures/sample-blocked-project/metadata.json
  • scripts/fixtures/sample-blocked-project/notes
  • … and 16 more

Open the folder on GitHubat commit e5f94d7

Compare with similar skills

Suede Release Linter 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.

Suede Release Linter compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Suede Release Linter this skillJasonColapietro/suede-creator-skills127—~2.3kAutomated safety check: NotesMIT
VRGDG H3 Short Film Pipelinevrgamegirl19/comfyui-vrgamedevgirl765—~4.2kAutomated safety check: PassCustom licence
Audio Track Production WorkflowHKUDS/OpenSpace7.8k—~2.9kAutomated safety check: PassMIT
Video Creation Capability MatrixHKUDS/CLI-Anything52k—~12kAutomated safety check: PassApache-2.0
Video Remove Audiogodot-fun/gai183—~740Automated safety check: PassMIT
SonarqubeDougTrajano/pydantic-ai-skills378—~2.2kAutomated safety check: PassMIT

Similar skills

  • VRGDG H3 Short Film Pipeline

    vrgamegirl19/comfyui-vrgamedevgirl

    Builds an AI short film in a local ComfyUI with the VRGDG Video Builder, MiniMax H3 scenes, reference images, a music score, QA and a final edit.

    765 GitHub stars~4.2k tokensUpdated yesterday
    Media & CreativeAuto-check passed
  • Walks through producing a master audio track plus stems in Python, from checking a reference file and timing sections by BPM to effects, a zip archive and final verification.

    7.8k GitHub stars~2.9k tokensUpdated 2 mo ago
    Media & CreativeAuto-check passed
  • Capability-based matrix for video production in which the agent picks a provider per capability, from storyboard and sound design to captions, render checks and packaging.

    52k GitHub stars~12k tokensUpdated 19 days ago
    Media & CreativeAuto-check passed
  • Video Remove Audio

    godot-fun/gai

    Removes all audio and music tracks from a single video file using FFmpeg, keeping the video stream (stream copy by default).

    183 GitHub stars~740 tokensUpdated yesterday
    Media & CreativeAuto-check passed
  • Sonarqube

    DougTrajano/pydantic-ai-skills

    Operate SonarQube-enabled repositories through the SonarQube CLI (sonar): verify authentication, discover project keys, inspect project metadata, issues, measures, and quality gates, analyze changed…

    378 GitHub stars~2.2k tokensUpdated 2 days ago
    Testing & QAAuto-check passed
  • Adds a release eval scorecard to a GAIA hub agent by writing a harness adapter, running a real eval, and wiring the result into the agent's README and release gate.

    1.6k GitHub stars~2.6k tokensUpdated today
    DevelopmentAuto-check passed

More from JasonColapietro/suede-creator-skills

All 78 skills in this repo
  • Creator Rights Passport

    JasonColapietro/suede-creator-skills

    Turns messy creator materials into an offline rights-and-provenance transfer package: hashed asset inventory, intake manifest, credits, license notes and a missing-information report.

    127 GitHub stars~3.7k tokensUpdated yesterday
    Auto-check: notes
  • Suede Clip to Guide

    JasonColapietro/suede-creator-skills

    Turns a video clip, interview moment or transcript into a package that bridges viewers to a long-form guide, with rights, claim and approval gates along the way.

    127 GitHub stars~4.1k tokensUpdated yesterday
    Auto-check passed
  • Suede MCP Release QA

    JasonColapietro/suede-creator-skills

    Checks a Suede AI MCP server release against a live process: the full JSON-RPC lifecycle, schemas, annotations, malformed input, catalog agreement and install docs.

    127 GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed
  • Android App Factory

    JasonColapietro/suede-creator-skills

    Takes a native Android app from product idea to Google Play release, covering Compose architecture, policy checks, privacy, billing, testing, signing and rollout.

    127 GitHub stars~2.6k tokensUpdated yesterday
    Auto-check passed
  • Suede Ad Creative

    JasonColapietro/suede-creator-skills

    Suede-owned paid-media creative system for hooks, headlines, primary text, static and motion concepts, platform specs, review pages, and test-ready variant batches.

    127 GitHub stars~5k tokensUpdated yesterday
    Auto-check passed
  • Suede Agent Teams

    JasonColapietro/suede-creator-skills

    Suede Labs agent-team orchestrator: split complex work into coordinated lanes with explicit file ownership, WIP collision detection, quality gates, escalation thresholds, rollback plans, and…

    127 GitHub stars~5.8k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Suede Release Linter

What does Suede Release Linter do?

Lints a local music or media release folder and scores its readiness, flagging missing files, weak metadata, artwork and stem problems, split gaps and rights blockers. py`.md` first, since that file defines the categories, severities, score and status bands.

When should I use Suede Release Linter?

Suede Release Linter fits situations like: checking a release folder before distributing or handing it off; finding out why metadata or a platform delivery was rejected; getting a release-readiness score for several release folders.

How do I install Suede Release Linter in Claude Code?

Run `npx skills add JasonColapietro/suede-creator-skills --skill suede-release-linter -a claude-code`. Or copy the skill folder (skills/suede-release-linter in JasonColapietro/suede-creator-skills) into .claude/skills/suede-release-linter in your project. Claude Code loads it when a task matches its description.

How do I install Suede Release Linter in Codex?

Run `npx skills add JasonColapietro/suede-creator-skills --skill suede-release-linter -a codex`. Or copy the skill folder (skills/suede-release-linter in JasonColapietro/suede-creator-skills) into .agents/skills/suede-release-linter in your project. Codex loads it when a task matches its description.

Can I use Suede Release Linter in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add JasonColapietro/suede-creator-skills --skill suede-release-linter -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/suede-release-linter, .gemini/skills/suede-release-linter, .github/skills/suede-release-linter and .opencode/skills/suede-release-linter in your project.

What does Suede Release Linter need to run?

Going by SKILL.md and its folder, Suede Release Linter needs the command-line tools its instructions call (python3). Our summary lists: Python 3 to run `scripts/lint_release.py`; A local release folder with tracks, artwork and metadata.

Does Suede Release Linter access the network?

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.

Is Suede Release Linter safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Suede Release Linter use?

Suede Release Linter is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Suede Release Linter use?

About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.6k tokens, read only when the agent opens those files.

What are the alternatives to Suede Release Linter?

Skills that share tags, products or a category with Suede Release Linter: VRGDG H3 Short Film Pipeline (vrgamegirl19/comfyui-vrgamedevgirl, 765 stars), Audio Track Production Workflow (HKUDS/OpenSpace, 7.8k stars), Video Creation Capability Matrix (HKUDS/CLI-Anything, 52k stars) and Video Remove Audio (godot-fun/gai, 183 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Suede Release Linter?

JasonColapietro (a GitHub user) maintains it in JasonColapietro/suede-creator-skills, which has 127 GitHub stars. The repository holds 78 skills in this directory. The repository was last updated on October 10, 2026.

Source: JasonColapietro/suede-creator-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.