Configuring Horizon
coollabsio/coolify
A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.
A skill your agent uses for Shopware Store readiness, publication, submission, or compliance questions about an extension.
$ npx skills add shopware/shopware-cli --skill shopware-cli-extension-store -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install shopware/shopware-cli shopware-cli-extension-store --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/shopware/shopware-cli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/shopware-cli-extension-store .claude/skills/shopware-cli-extension-store && 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 "shopware-cli-extension-store" agent skill from https://github.com/shopware/shopware-cli/tree/main/skills/shopware-cli-extension-store into .claude/skills/shopware-cli-extension-store/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shopware-cli-extension-store", 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/shopware/shopware-cli/tree/main/skills/shopware-cli-extension-storeType 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 shopware/shopware-cli --skill shopware-cli-extension-store -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install shopware/shopware-cli shopware-cli-extension-store --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shopware/shopware-cli.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/shopware-cli-extension-store .agents/skills/shopware-cli-extension-store && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "shopware-cli-extension-store" agent skill from https://github.com/shopware/shopware-cli/tree/main/skills/shopware-cli-extension-store into .agents/skills/shopware-cli-extension-store/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shopware-cli-extension-store", 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 shopware/shopware-cli --skill shopware-cli-extension-store -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install shopware/shopware-cli shopware-cli-extension-store --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shopware/shopware-cli.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/shopware-cli-extension-store .cursor/skills/shopware-cli-extension-store && 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 "shopware-cli-extension-store" agent skill from https://github.com/shopware/shopware-cli/tree/main/skills/shopware-cli-extension-store into .cursor/skills/shopware-cli-extension-store/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shopware-cli-extension-store", 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/shopware/shopware-cli.git --path skills/shopware-cli-extension-store--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 shopware/shopware-cli --skill shopware-cli-extension-store -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install shopware/shopware-cli shopware-cli-extension-store --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shopware/shopware-cli.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/shopware-cli-extension-store .gemini/skills/shopware-cli-extension-store && 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 "shopware-cli-extension-store" agent skill from https://github.com/shopware/shopware-cli/tree/main/skills/shopware-cli-extension-store into .gemini/skills/shopware-cli-extension-store/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shopware-cli-extension-store", 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 shopware/shopware-cli shopware-cli-extension-storeInstalls 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 shopware/shopware-cli --skill shopware-cli-extension-store -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/shopware/shopware-cli.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/shopware-cli-extension-store .github/skills/shopware-cli-extension-store && 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 "shopware-cli-extension-store" agent skill from https://github.com/shopware/shopware-cli/tree/main/skills/shopware-cli-extension-store into .github/skills/shopware-cli-extension-store/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shopware-cli-extension-store", 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 shopware/shopware-cli --skill shopware-cli-extension-store -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install shopware/shopware-cli shopware-cli-extension-store --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shopware/shopware-cli.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/shopware-cli-extension-store .opencode/skills/shopware-cli-extension-store && 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 "shopware-cli-extension-store" agent skill from https://github.com/shopware/shopware-cli/tree/main/skills/shopware-cli-extension-store into .opencode/skills/shopware-cli-extension-store/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shopware-cli-extension-store", 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.
shopware-cli-extension-storeA skill your agent uses for Shopware Store readiness, publication, submission, or compliance questions about an extension.
Shopware CLI Extension Store is an agent skill from shopware/shopware-cli. Use for Shopware Store readiness, publication, submission, or compliance questions about an extension. Inspects read-only using the installed shopware-cli, classifies every finding by table lookup, and cites a re-checkable source for each one so local file state is never reported as remote Store listing state.
Its SKILL.md is about 5.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It works with Go and PHP. The repository describes itself as: CLI for Shopware Account and Shopware 6. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit f20f5ba. 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 (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
developer.shopware.comFrom 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.
Shopware CLI Extension Store loads about 5.1k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 2,616 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 shopware/shopware-cli at commit f20f5ba, republished under its MIT licence (© shopware). 2,616 words, ~5,079 tokens.
.claude/skills/shopware-cli-extension-store/SKILL.md (or your agent's skills folder).Assess the current extension for Store publication. Start immediately. Never modify files. Never ask a preflight question the workspace can answer.
Every claim in the answer carries a source. A finding without a source is not a finding.
Gather evidence in two steps: run shopware-cli directly — exactly as a developer would — then read a few of the extension's own files (listed below) for the specific values the classification table needs. Do not wrap this in a bespoke script: calling the CLI directly keeps the output and the config-file discovery identical to what a human gets, and avoids re-implementing logic (e.g. config-path lookup) the CLI already owns.
Run both validations from the extension root and capture the full output and the exit code:
shopware-cli --version
shopware-cli extension validate . --only builtin --format markdown
shopware-cli extension validate . --only builtin --store-compliance --format markdown0 = pass, non-zero = findings). The report goes to stdout; a usage block or error goes to stderr — do not read a validation failure as a usage error.--format markdown gives a stable, quotable form. --reporter is a deprecated alias that prints a warning — use --format.extension validate now runs all checkers by default. The two commands above explicitly select only the built-in builtin checker, not PHPStan/ESLint/Stylelint. (sw-cli remains accepted as a legacy alias. It is that checker's deprecated name, not shorthand for the binary.) Report "the builtin checks passed", not "full validation passed". Source: cmd/extension/extension_validate.go, selectExtensionValidationTools.invoked means the checker was called; it does not prove that files were analyzed or that a check passed. skipped means it was not selected or was excluded. Classify only finding lines, not checker-status lines.shopware-cli binary throughout, and state its version. Never mix binaries mid-answer.L0 catches any line the table does not name explicitly. The CLI currently prints a missing icon twice; count a repeated line once.Then read these files yourself for the measured values and precondition triggers the classification table below uses — read only these, and do not re-derive CLI findings:
composer.json — license, extra.label, authors, and per-locale extra.description / extra.manufacturerLink / extra.supportLink (L1–L3, L5, A1, and the R9 trigger).src/Resources/config/plugin.png — presence, dimensions, and size (the L4 gate; a missing icon is the CLI's metadata.icon line under L0).src/Resources/config/config.xml — presence, and whether fields carry an English fallback (the R10 trigger).Run shopware-cli extension config-schema only if the extension already uses Store sync config, or the user asks where Store metadata is configured. Schema fields are never readiness requirements.
Do not answer before both validations have run.
Copy Level, Target, and Source from this table verbatim. Do not re-derive them from doc prose, CLI output, or reasoning. If a source has changed, report the drift as a separate note; do not silently reclassify.
Doc baseline: https://developer.shopware.com/docs/guides/development/testing/store/content-and-translations.html
Code baseline: the shopware-cli source. The result identifiers below are printed at the end of every CLI result line and are stable across releases.
CLI rules are cited by their result identifier, not a file or line number: identifiers appear in the CLI's own output and survive refactors. If a shopware-cli source checkout is at hand, a row can be re-checked with:
grep -rn '"metadata.icon.size"' --include=*.go internal/ | grep -v _test| # | Condition | Level | Target | Source | Emit only if |
|---|---|---|---|---|---|
| L0 | Any other error line printed by extension validate | CLI-enforced | Local file | the result identifier printed in that line, for example metadata.label, metadata.icon, metadata.icon.size, assets.* | always |
| L1 | extra.description per locale is 150–185 chars | CLI-enforced | Local file | metadata.description | always |
| L2 | extra.manufacturerLink per locale present | CLI-enforced | Local file | metadata.manufacturer | always |
| L3 | extra.supportLink per locale present | CLI-enforced | Local file | metadata.support | always |
| L4 | src/Resources/config/plugin.png is 84–256 px in both dimensions | Store-doc-required | Local artifact | docs #images-and-screenshots | icon present (a missing icon is the CLI's metadata.icon line, L0) |
| L5 | authors key present in composer.json | CLI-enforced | Local file | metadata.author | always |
| R1 | Published in the international Store | Store-doc-required | Remote listing | docs #store-listing | always |
| R2 | Short description 150–185 chars | Store-doc-required | Remote listing | docs #store-listing | always |
| R3 | Long description ≥200 chars | Store-doc-required | Remote listing | docs #store-listing | always |
| R4 | Descriptions and use cases are meaningful and accurate | Store-doc-required | Remote listing | docs #store-listing | always |
| R5 | Display name avoids "plugin" and "shopware" | Store-doc-required | Remote listing | docs #store-listing | always |
| R6 | Clear, complete setup/configuration instructions | Store-doc-required | Remote listing | docs #store-listing | always |
| R7 | Clean HTML, allowed tags only, no ads/contact info/backlinks | Store-doc-required | Remote listing | docs #store-listing | always |
| R8 | No blank-space filler text | Store-doc-required | Remote listing | docs #store-listing | always |
| R9 | German/English 1:1 parity | Store-doc-required | Remote listing | docs #store-listing | user states German Store intent, or de-DE values exist in composer.json (state which triggered it) |
| R10 | English fallback for settings and error messages | Store-doc-required | Extension behavior | docs #admin-translations | extension has user-facing settings or error messages |
| A1 | Shopware Account license matches the composer.json license value | Store-doc-required | Remote Account | docs #extension-master-data-and-license | always |
| G1 | ≥1 storefront and ≥1 admin screenshot showing main features | Store-doc-guidance | Remote listing | docs #images-and-screenshots (should) | always |
| G2 | Mobile and desktop screenshots | Store-doc-guidance | Remote listing | docs #images-and-screenshots (prefer) | always |
| G3 | Theme preview image in Theme Manager | Store-doc-required | Remote listing | docs #images-and-screenshots | extension is a theme |
| G4 | CMS element icon | Store-doc-required | Local artifact | docs #images-and-screenshots | extension ships CMS elements |
Nothing outside this table is a finding, because nothing outside it has a source. Every CLI error line has one, its identifier, which is what L0 is for. In particular, never emit: store.type, demo shops, API credential checks, install/uninstall hooks, logging or JS rules for absent features, README/CHANGELOG/LICENSE-file pseudo-requirements, or generic compatibility-date advice.
When CLI and docs disagree on a requirement:
Known differences:
metadata.icon.size check rejects icons below 112 px and files above 30 kB, stricter than L4. When it fires, add that the Store standard is 84–256 px.de-DE label, description, manufacturerLink and supportLink unless .shopware-extension.yml sets store.availabilities without German. When those lines fire for an extension meant for the international Store only, name that setting.Eight invariants. Check each finding against all eight before writing it.
Level, Target, and Source come from the table verbatim.de-DE values yields R1–R8 plus A1; either German trigger adds R9.Target = Remote listing / Remote Account / Extension behavior may appear only under "Remote conditions not verified". It can never be a required local change, and it can never be called missing, present, passing, failing, satisfied, or compliant unless the Shopware Account listing was actually inspected.Emit only if is not proven true by evidence from §1 emits nothing at all. Not as "N/A", not as "not applicable", not as a struck-through line. It is absent. R9 and R10 are omitted entirely for an extension with no German Store intent and no settings UI.config.xml exists and its fields carry unqualified defaults plus lang="…" variants, the English fallback is present; say so or say nothing. Never write "verify that…" or "this may not…" about a file you have read: you either found a conflict and can quote it, or you did not.composer.json label or description is a sync candidate. It may be described as compatible or incompatible with a remote rule. It never satisfies or fails one. R5 with a local label of "Acme Plugin" yields: remote display name unverified, plus a separate note that the local label candidate looks incompatible.No problems found, the Required local changes section is empty. Write "none". Never infer a CLI finding from reading composer.json yourself.example.com, TODO, lorem text) are not CLI findings: L2 and L3 check presence, not plausibility. Mention them under Local candidates if useful, never as a required local change.https://developer.shopware.com/docs/guides/development/testing/store/ is the index of all Store review pages. Always link it in Sources so the user can navigate the set.
content-and-translations is the baseline: read it every run, it backs the table in §2. Read any other page only when its trigger fires, and add its rows to the answer as sourced findings. Never audit the whole set unprompted.
| Page | Covers | Read when |
|---|---|---|
quality-guidelines | Non-negotiable quality, security, compliance rules for every extension | user asks for a full compliance audit or pre-submission review |
content-and-translations | Listing text, translations, images, icon, license | always |
store-review-errors | Common reasons reviewers reject a submission | user asks why a submission failed, or wants rejection risks |
not-allowed-store-behaviors | Prohibited patterns | extension touches core internals, filesystem, or DB directly |
functionality-integration | Correct integration with core, persistence, public APIs | extension has subscribers, entities, or API endpoints |
code-quality | Code standards reviewers apply | user asks about code quality, or code-quality checkers were invoked |
installation-and-cleanup | Install/update/uninstall and data removal | extension implements lifecycle methods or creates tables |
cookies-and-privacy | Cookie registration, GDPR, subprocessors | extension sets cookies, tracks, or sends data to third parties |
seo-and-structured-data | SEO output and structured data | extension changes storefront markup, URLs, or meta tags |
storefront-performance-and-errors | Storefront performance and error handling | extension ships storefront JS/CSS or template overrides |
faq | Preview requirements and misc answers | user asks about previews or something the other pages miss |
Preconditions here work like §2's: a page you had no trigger to read produces no findings, and you say so rather than guessing at its contents.
Validation status
--only builtin was used)Required local changes — one entry per CLI error line (L1–L5 by identifier, otherwise L0), plus any other Local file / Local artifact row that failed. Empty section if none; write "none".
| Finding | Evidence | Level | Row | Source |
|---|
Evidence is the verbatim CLI line or the measured value. Source is the identifier and file, or the doc anchor link.
Remote conditions not verified — every emitted row with a remote target, each with its doc anchor link. Then, verbatim:
Store publication readiness cannot be confirmed from local validation alone because the remote Store listing was not inspected.
Local candidates — measured local values and whether each looks compatible with its remote rule, with the rule's source. Explicitly not a pass.
Guidance — only Store-doc-guidance rows (G1, G2), each with its link and the exact modal verb the docs use. Guidance rows appear here only. They are not remote conditions and must not be repeated in that table.
Sources checked — a flat list the user can re-verify independently:
extension validate commands run (normal and --store-compliance), so the user can re-run them and see the same outputgrep commands only if a shopware-cli checkout was actually readThe response ends here. Do not append a summary, a recap, a next-steps list, or an offer to fix anything: the sections above already say what is wrong and what is unverified, and a summary reintroduces the collapsed local/remote framing the format exists to prevent.
Every documentation source must be a clickable URL, in every section including table rows. content-and-translations § store-listing is not a link. CLI identifiers, local paths and commands are quoted as they are.
Repeating a 100-character URL across eleven rows is tedious, so a table may instead declare its base once directly above itself and carry only anchors in the rows:
Sources below are anchors on https://developer.shopware.com/docs/guides/development/testing/store/content-and-translations.html
with rows reading #store-listing. Use one form or the other. Bare anchors with no declared base are not acceptable — that is the failure this replaces.
Answer only after all are true:
Level/Target/Source was copied from §2, not reasoned out;No problems found;license value, not the package name;© shopware, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/shopware-cli-extension-store of shopware/shopware-cli.
Open the folder on GitHubat commit f20f5ba
Shopware CLI Extension Store 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 |
|---|---|---|---|---|---|---|
| Shopware CLI Extension Store this skillshopware/shopware-cli | 123 | — | ~5.1k | Automated safety check: Pass | MIT | |
| Configuring Horizoncoollabsio/coolify | 63k | 4 repos | ~898 | Automated safety check: Pass | MIT | |
| Tailwindcss Developmentanonaddy/anonaddy | 4.9k | 10 repos | ~865 | Automated safety check: Pass | MIT | |
| Fortify Developmentcoollabsio/coolify | 63k | 4 repos | ~1.9k | Automated safety check: Pass | MIT | |
| MCP Developmentcoollabsio/coolify | 63k | 1 repos | ~949 | Automated safety check: Pass | MIT | |
| WooCommerce Code Reviewwoocommerce/woocommerce | 11k | 3 repos | ~1.1k | Automated safety check: Pass | Custom licence |
coollabsio/coolify
A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.
anonaddy/anonaddy
Always invoke when the user's message includes 'tailwind' in any form.
coollabsio/coolify
ACTIVATE when the user works on authentication in Laravel. An agent skill from coollabsio/coolify.
coollabsio/coolify
A skill your agent uses for Laravel MCP development. An agent skill from coollabsio/coolify.
woocommerce/woocommerce
Reviews WooCommerce code changes against the project's standards, flagging backend PHP architecture, naming, documentation, data integrity and testing violations.
symfony/symfony
Synchronize translation catalogs across maintained Symfony branches: find messages that newer branches added to the English catalogs but that are still missing from the oldest maintained branch…
shopware/shopware-cli
Use Shopware CLI for Shopware project, extension, and account workflows — create and install new projects (project create, project dev install), validate projects or extensions (with…
shopware/shopware-cli
A skill your agent uses when working on Docker-backed Shopware projects and needing to run Shopware or Symfony CLI commands, interact with project services or databases, start or stop the…
A skill your agent uses for Shopware Store readiness, publication, submission, or compliance questions about an extension. Shopware CLI Extension Store is an agent skill from shopware/shopware-cli. Use for Shopware Store readiness, publication, submission, or compliance questions about an extension.
Shopware CLI Extension Store fits situations like: shopware Store readiness; compliance questions about an extension.
Run `npx skills add shopware/shopware-cli --skill shopware-cli-extension-store -a claude-code`. Or copy the skill folder (skills/shopware-cli-extension-store in shopware/shopware-cli) into .claude/skills/shopware-cli-extension-store in your project. Claude Code loads it when a task matches its description.
Run `npx skills add shopware/shopware-cli --skill shopware-cli-extension-store -a codex`. Or copy the skill folder (skills/shopware-cli-extension-store in shopware/shopware-cli) into .agents/skills/shopware-cli-extension-store 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 shopware/shopware-cli --skill shopware-cli-extension-store -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/shopware-cli-extension-store, .gemini/skills/shopware-cli-extension-store, .github/skills/shopware-cli-extension-store and .opencode/skills/shopware-cli-extension-store in your project.
SKILL.md names no scripts, command-line tools or credentials: Shopware CLI Extension Store is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: developer.shopware.com; the agent is likely to contact it when it follows the instructions. 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.
Shopware CLI Extension Store is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.1k tokens (SKILL.md is roughly 20k 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 Shopware CLI Extension Store: Configuring Horizon (coollabsio/coolify, 63k stars), Tailwindcss Development (anonaddy/anonaddy, 4.9k stars), Fortify Development (coollabsio/coolify, 63k stars) and MCP Development (coollabsio/coolify, 63k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
shopware (a GitHub organization) maintains it in shopware/shopware-cli, which has 123 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 7, 2026.
Source: shopware/shopware-cli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.