Agent skill

Internal Extend CSS Converter

by elementor in elementor/elementor

Internal: Extend the atomic CSS converter in a Core fork and submit a Core PR.

GPL-3.0Auto-check passedFrontend & Design

Install Internal Extend CSS Converter

skills CLI
$ npx skills add elementor/elementor --skill internal-extend-css-converter -a claude-code

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

GitHub CLI
$ gh skill install elementor/elementor internal-extend-css-converter --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/elementor/elementor.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.cursor/skills/internal-extend-css-converter .claude/skills/internal-extend-css-converter && 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
internal-extend-css-converter
GitHub stars
7.1k
Token cost
~1.2k tokens
SKILL.md length
374 words
Files
1
Skills in repo
8
Repo updated
First seen
Licence
GPL-3.0

At a glance

Internal: Extend the atomic CSS converter in a Core fork and submit a Core PR.

  • Works in 7 steps: Confirm need — converter maps legacy CSS… → No public discovery hook — Core factory… → Shorthand → longhand — subclass… → …
  • Frontend & Design work in your project
  • SKILL.md covers Implementation location, Prerequisites, Checklist (Internal-first) and External partial APIs (do not…, plus 3 more sections
  • Calls composer

What it does

Internal Extend CSS Converter is an agent skill from elementor/elementor. Internal: Extend the atomic CSS converter in a Core fork and submit a Core PR. ShorthandExpanderBase, PropertyConverterBase, no public discovery hook.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design. It works with PHP. The repository describes itself as: The most advanced frontend drag & drop page builder. Create high-end, pixel perfect websites at record speeds. Any theme, any page, any design. The licence is GPL-3.0.

When your agent uses it

  • Frontend & Design work in your project

Example prompts

  • “/internal-extend-css-converter”

Workflow steps

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

  1. Confirm need — converter maps legacy CSS longhands/shorthands → atomic Style_Schema PropValues; not the same as style transformers at…
  2. No public discovery hook — Core factory registration or private Css_Converter with custom registries (not wired to core import UI).
  3. Shorthand → longhand — subclass Shorthand_Expander_Base; register in Expander_Registry_Factory::create() — order matters (first match…
  4. Longhand → PropValue — subclass Property_Converter_Base; register in Converter_Registry_Factory::real_converters(). Return PropValues via…
  5. Update coverage constants — add property to family constant: STRING_PROPERTIES, SIZE_PROPERTIES, UNITLESS_SIZE_PROPERTIES…
  6. PHPUnit — under tests/phpunit/elementor/modules/atomic-widgets/css-converter/. Fast loop: tests/phpunit/run-unit.sh…
  7. Verify — POST /wp-json/elementor/v1/css-to-atomic with sample CSS; full suite: composer run test with --filter as needed.

What it can do on your machine

Read from SKILL.md and the folder at commit f3c1c6e. 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

    Shell commands in SKILL.md call:

    • composer

    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

Internal Extend CSS Converter loads about 1.2k tokens when it runs. Until then it costs about 46 tokens; SKILL.md has 374 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~46
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

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 passed

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.

SKILL.md

The full file from elementor/elementor at commit f3c1c6e, republished under its GPL-3.0 licence (© elementor). 374 words, ~1,223 tokens.

Download SKILL.mdSave it as .claude/skills/internal-extend-css-converter/SKILL.md (or your agent's skills folder).
name
internal-extend-css-converter
description
Internal: Extend the atomic CSS converter in a Core fork and submit a Core PR. Shorthand_Expander_Base, Property_Converter_Base, no public discovery hook.

Extend CSS converter

Scope: Internal — there is no public registration hook. The full documented outcome requires a PR against Elementor Core (Converter_Registry_Factory / Expander_Registry_Factory), or a private Css_Converter instance not integrated into core import. Full split + disclaimer: skills-scope.md.

Implementation location

  • Fork/clone elementor/elementor.
  • Implement in modules/atomic-widgets/css-converter/:
    • converter-registry-factory.php, expander-registry-factory.php
    • expanders/, converters/
  • Add PHPUnit under tests/phpunit/elementor/modules/atomic-widgets/css-converter/.
  • Submit PR against Core. Third-party plugins cannot wire converters into the core import pipeline.
  • Skill fixture (boundary demo): tests/phpunit/elementor/modules/atomic-widgets/css-converter/test-skill-fixture-custom-registry.php — private Css_Converter vs empty registry.

Read first: css-converter/extension.md, pipeline.md, overview.md. Example: docs/atomic-builder/examples/internal-extend-css-converter.md.

Prerequisites

  • Experiment e_atomic_elements — REST POST /wp-json/elementor/v1/css-to-atomic depends on atomic module state.
  • New style schema keys from extend-prop-types need both schema work and converter + covered_properties() work here.

Checklist (Internal-first)

  1. Confirm need — converter maps legacy CSS longhands/shorthands → atomic Style_Schema PropValues; not the same as style transformers at render time.
  2. No public discovery hook — Core factory registration or private Css_Converter with custom registries (not wired to core import UI).
  3. Shorthand → longhand — subclass Shorthand_Expander_Base; register in Expander_Registry_Factory::create() — order matters (first match wins). Input rule: ['property' => string, 'value' => string|null]. Each expanded rule must include property, value, and declaration (e.g. 'border-top-width: 1px') — see shorthand-expander-base.php / border-shorthand-expander.php.
  4. Longhand → PropValue — subclass Property_Converter_Base; register in Converter_Registry_Factory::real_converters(). Return PropValues via the matching prop type's ::generate() (e.g. String_Prop_Type::generate() for strings, not only Size_Prop_Type::generate()).
  5. Update coverage constants — add property to family constant: STRING_PROPERTIES, SIZE_PROPERTIES, UNITLESS_SIZE_PROPERTIES, OTHER_PROPERTIES, etc.; covered_properties() merges them. CI: test-css-converter-rest-api.php::test_coverage__every_style_schema_property_is_hardcoded_as_covered.
  6. PHPUnit — under tests/phpunit/elementor/modules/atomic-widgets/css-converter/. Fast loop: tests/phpunit/run-unit.sh tests/phpunit/.../test-*.php.
  7. Verify — POST /wp-json/elementor/v1/css-to-atomic with sample CSS; full suite: composer run test with --filter as needed.
Show full SKILL.md (123 more words)Show less

External partial APIs (do not satisfy this skill)

  • Filter elementor/atomic-widgets/styles/schema extends schema only — does not register converters. Without factory + coverage updates, declarations route to customCss or fail CI.
  • Private Css_Converter in a plugin proves the pattern but does not integrate core import UI.

External workaround (not integrated into Core import)

Third-party plugins cannot register via WordPress filter. Options:

  • Open a core PR adding expander/converter to factory classes.
  • Instantiate custom Css_Converter with privately built registries for plugin-internal migration tooling. Constructor requires a Conversion_Failure_Reporter — use new Null_Failure_Reporter() for tests/tooling (css-converter.php).

Internal implementation path

  • Module: modules/atomic-widgets/css-converter/
  • Side longhands (padding-top, etc.) merge via Object_Side_Merge_Converter / Object_Field_Merge_Converter — not always top-level covered_properties() entries.
  • Pipeline routing: props vs customCss vs rejected — pipeline.md.

See also

© elementor, 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

Files

Just SKILL.md in .cursor/skills/internal-extend-css-converter of elementor/elementor.

Open the folder on GitHubat commit f3c1c6e

Compare with similar skills

Internal Extend CSS Converter 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.

Internal Extend CSS Converter compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Internal Extend CSS Converter this skillelementor/elementor7.1k—~1.2kAutomated safety check: PassGPL-3.0
Tailwindcss Developmentanonaddy/anonaddy4.9k10 repos~865Automated safety check: PassMIT
MCP Developmentcoollabsio/coolify63k1 repos~949Automated safety check: PassMIT
Kill AI Slopyetone/kill-ai-slop1.3k—~1.4kAutomated safety check: PassApache-2.0
Tidyfactor StylerTidyFactor/Styler118—~1.7kAutomated safety check: PassApache-2.0
I18n Lang FilesMes-Open/OpenMes153—~1.1kAutomated safety check: PassAGPL-3.0

Similar skills

  • Tailwindcss Development

    anonaddy/anonaddy

    Always invoke when the user's message includes 'tailwind' in any form.

    4.9k GitHub starsUsed in 10 repos~865 tokens
    Frontend & DesignAuto-check passed
  • MCP Development

    coollabsio/coolify

    A skill your agent uses for Laravel MCP development. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 1 repo~949 tokens
    Frontend & DesignAuto-check passed
  • Kill AI Slop

    yetone/kill-ai-slop

    Find and remove AI slop — the generic, machine-default visual and copy tics of vibe-coded products — from a web project.

    1.3k GitHub stars~1.4k tokensUpdated 24 days ago
    Frontend & DesignAuto-check passed
  • Tidyfactor Styler

    TidyFactor/Styler

    Production framework styler and surgical RTL UI polish engine with Contextual Decision Layer (CDL).

    118 GitHub stars~1.7k tokensUpdated 1 mo ago
    Frontend & DesignAuto-check passed
  • I18n Lang Files

    Mes-Open/OpenMes

    Editing or merging backend/lang/en.json and pl.json. An agent skill from Mes-Open/OpenMes.

    153 GitHub stars~1.1k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Vue Route Breadcrumbs

    chamilo/chamilo-lms

    Gives a route in Chamilo's Vue app its breadcrumb entirely from router meta fields, without editing the Breadcrumb component or naming pages.

    1k GitHub stars~2k tokensUpdated today
    Frontend & DesignAuto-check passed

More from elementor/elementor

All 8 skills in this repo
  • Add Dynamic Tag

    elementor/elementor

    External: Add dynamic tags for v4 atomic widgets from a third-party plugin.

    7.1k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Add Editor Package

    elementor/elementor

    External: Add an Editor V2 package from a third-party plugin that injects UI or in-editor MCP tools.

    7.1k GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Atomic Builder Extend

    elementor/elementor

    Pick the right Elementor v4 skill. An agent skill from elementor/elementor.

    7.1k GitHub stars~1.6k tokensUpdated today
    Auto-check passed
  • Create Atomic Widget

    elementor/elementor

    External: Create atomic widgets and container elements from a third-party plugin.

    7.1k GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Extend Prop Types

    elementor/elementor

    External: Add or extend a prop type from a third-party plugin.

    7.1k GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Extend Variables

    elementor/elementor

    External: Register global design-token variable types from a third-party plugin.

    7.1k GitHub stars~1.6k tokensUpdated today
    Auto-check passed

Works with

Questions about Internal Extend CSS Converter

What does Internal Extend CSS Converter do?

Internal: Extend the atomic CSS converter in a Core fork and submit a Core PR. Internal Extend CSS Converter is an agent skill from elementor/elementor. Internal: Extend the atomic CSS converter in a Core fork and submit a Core PR.

When should I use Internal Extend CSS Converter?

Internal Extend CSS Converter fits situations like: frontend & Design work in your project.

How do I install Internal Extend CSS Converter in Claude Code?

Run `npx skills add elementor/elementor --skill internal-extend-css-converter -a claude-code`. Or copy the skill folder (.cursor/skills/internal-extend-css-converter in elementor/elementor) into .claude/skills/internal-extend-css-converter in your project. Claude Code loads it when a task matches its description.

How do I install Internal Extend CSS Converter in Codex?

Run `npx skills add elementor/elementor --skill internal-extend-css-converter -a codex`. Or copy the skill folder (.cursor/skills/internal-extend-css-converter in elementor/elementor) into .agents/skills/internal-extend-css-converter in your project. Codex loads it when a task matches its description.

Can I use Internal Extend CSS Converter 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 elementor/elementor --skill internal-extend-css-converter -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/internal-extend-css-converter, .gemini/skills/internal-extend-css-converter, .github/skills/internal-extend-css-converter and .opencode/skills/internal-extend-css-converter in your project.

What does Internal Extend CSS Converter need to run?

Going by SKILL.md and its folder, Internal Extend CSS Converter needs the command-line tools its instructions call (composer).

Does Internal Extend CSS Converter 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 Internal Extend CSS Converter safe to install?

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.

What licence does Internal Extend CSS Converter use?

Internal Extend CSS Converter 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.

How many tokens does Internal Extend CSS Converter use?

About 1.2k tokens (SKILL.md is roughly 4.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Internal Extend CSS Converter?

Skills that share tags, products or a category with Internal Extend CSS Converter: Tailwindcss Development (anonaddy/anonaddy, 4.9k stars), MCP Development (coollabsio/coolify, 63k stars), Kill AI Slop (yetone/kill-ai-slop, 1.3k stars) and Tidyfactor Styler (TidyFactor/Styler, 118 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Internal Extend CSS Converter?

elementor (a GitHub organization) maintains it in elementor/elementor, which has 7,086 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 9, 2026.

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