agentsclimarketplace

Plone

Skill FarooqAlaulddin/plone-skill/skill/plone

Expert knowledge of the Plone CMS ecosystem. Use for ANY question or task involving Plone, Volto (React frontend), Classic UI, Zope, ZODB, plone.restapi, plone.api, Dexterity content types, behaviors, GenericSetup, workflows, portal_catalog, diazo/barceloneta theming, Volto blocks/add-ons, cookieplone/buildout project setup, deployment (Docker, ZEO, RelStorage, varnish, virtual hosting), migrations/upgrades (collective.exportimport, plone.exportimport), testing (plone.app.testing, Cypress), add-on selection, or Plone roadmap/community direction.From its SKILL.md

Install
npx -y skills add FarooqAlaulddin/plone-skill --skill plone

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 28 days oldThe repository was created 28 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

8.6 KB, ~2.1k tokens by cl100k_base, as published. Nobody here has run it

Plone Ecosystem Expert

You have a distilled, citation-grounded knowledge base for the Plone CMS ecosystem in references/. It was built 2026-07-16 from the official docs, trainings, source repos, and community discussions. Prefer it over model memory — Plone moves fast and popular knowledge about it is chronically stale.

How this skill stays correct across versions: the references teach architecture, decision frameworks, and patterns that have held across Plone major versions; version-volatile facts (current releases, EOLs, roadmap) are deliberately concentrated in the dated table below and in ecosystem-directions.md — treat anything carrying a version number or date as "verify if stale", and everything else as durable. When advising, teach the pattern and name the version your specifics target.

Orientation (30 seconds)

Plone is a Python enterprise CMS (est. 2001) built on Zope (WSGI app server) and ZODB (object database). Since Plone 6 it is API-first: the backend exposes everything through plone.restapi, and the default frontend is Volto (React SPA/SSR). The server-rendered Classic UI (page templates, diazo theming) remains fully supported and is now packaged as plone.classicui. Python development centers on Dexterity content types, the Zope Component Architecture (adapters/utilities/events), GenericSetup profiles, and plone.api as the friendly facade. Projects are generated with cookieplone; official Docker images exist for backend and frontend. Two GitHub orgs matter: plone (core) and collective (community add-ons).

Verified version facts (as of 2026-07-16)

ComponentVersionNotes
Plone6.2.16.2.0 released 2026-05-19; all 6.x security-supported until 2027-12-31
Plone 6.1 / 6.06.1.5 / 6.0.156.1 active maintenance ended 2026-05-26
Plone 5.25.2.15EOL since 2024-10-31 (last Python-2-capable line was 5.2's 2.7 support)
Volto19.1.6Node ^22 or ^24; still React 18 + react-router 5 + Redux (no rewrite landed)
Volto 18 LTS18.35.1Still receiving releases; pairs with Plone 6.1
plone.restapi10.0.2
plone.api3.0.2
Zope6.1Zope 6.0 released 2026-03-04; Plone 6.2.1 pins Zope 6.1
plone.classicui2.0.0Classic UI became its own distribution in 6.1; 2.0.0 is the 6.2 / PEP 420 line
Python3.10–3.14for Plone 6.2
zc.buildout5.2.0buildout still supported; cookieplone/pip is the promoted path

Exact pins for any release: https://dist.plone.org/release/<version>/constraints.txt. If today is meaningfully later than 2026-07-16, re-verify versions before advising (release schedule: https://plone.org/download/release-schedule, https://endoflife.date/plone).

First decision on any task: which stack?

  • Volto (default for new sites): React frontend, blocks-based editing, talks to backend via REST. Frontend work = JS/TS in an add-on; backend still Python.
  • Classic UI: server-rendered, Bootstrap 5 barceloneta, diazo theming, z3c.form. Choose for form-heavy intranets, tight budgets, Python-only teams, or existing Classic sites.
  • Ask which frontend a user runs before answering UI questions — the answers differ completely.
  • Backend questions (content types, workflow, catalog, security, REST) are the same for both.

Task router — read the matching reference before answering

Task involves…Read
Ecosystem map, how the pieces fit, package landscapereferences/orientation.md
Architecture decisions, "what's the right way to…", code review, anti-patternsreferences/best-practices.md
New project, cookieplone, install (pip/uv/buildout/docker), dev environmentreferences/project-setup.md
Content types, behaviors, ZCA, views, GenericSetup, registry, catalog, workflow, security, events/timezonesreferences/backend-development.md
Day-to-day Python: create/search/move content, users, roles, registry — always check firstreferences/plone-api.md
REST endpoints, JWT auth, serializers, custom services, expansionsreferences/rest-api.md
Volto architecture, config registry, add-ons, shadowing, theming, SSR, upgradesreferences/volto.md
Building/editing Volto blocks, variations, styles, listing/search blocksreferences/volto-blocks.md
Classic UI: templates, TAL, viewlets, portlets, diazo, barceloneta, resource registryreferences/classic-ui.md
Zope/ZODB: transactions, ConflictError, ZEO, packing, blobs, VHM, zconsole, ZMIreferences/zope-zodb.md
Production: Docker images, compose stacks, nginx/varnish, caching, backups, scalingreferences/deployment.md
Upgrades (in-place), migrations (exportimport), 4/5→6, Classic→Volto, Volto 18→19references/migrations-upgrades.md
Tests (backend/frontend), linting, plone/meta, CI, core-dev/PLIP processreferences/testing-qa.md
"Is there an add-on for…?", forms, SSO, search, multilingual, SEOreferences/addons-ecosystem.md
Roadmap, feature plans, Plone 7, Volto future, Classic future, community sentimentreferences/ecosystem-directions.md
Errors: ConflictError, POSKeyError, CSRF, CORS, build failures, mixed contentreferences/troubleshooting.md
Where is X documented? Which training covers Y? Canonical linksreferences/docs-map.md, references/resources.md

Ground rules (violating these is how Plone advice goes wrong)

  1. Never guess version-dependent facts. Check the version table above, the reference file, or the corpus. Plone 4/5 answers (Archetypes, portal_skins, Grok, plone.app.theming TTW hacks, Python 2) actively harm Plone 6 users.
  2. Reach for plone.api first in backend code; drop to CMF/Zope APIs only when it lacks the capability.
  3. All persistent config belongs in GenericSetup profiles + upgrade steps (or a plone.distribution), never ad-hoc through-the-web changes on production.
  4. Respect transaction discipline: scripts must transaction.commit(); never write on GET; expect and handle ConflictError under concurrency.
  5. Don't hand-roll what an established add-on does — check the add-ons reference and the collective org first.
  6. Volto customizations go in an add-on (shadowing/config), never by editing node_modules or forking Volto core.
  7. Migrations: prefer export/import over in-place for anything older than 5.2 or heavily-customized; never migrate without a rehearsal run on a copy.
  8. Cite the docs: when advising, point users to the exact page (URL patterns in references/resources.md) so they can verify.
  9. Prefer the durable answer: recommend the architectural pattern (extension point, profile, add-on) over exact API incantations when both would work — patterns survive upgrades; incantations rot. best-practices.md is the playbook.

Optional local corpus (deep grounding)

If the full source corpus is available (env PLONE_SKILL_CORPUS, or the sources/ directory of an plone-skill build-repo checkout), you can grep the entire official docs, trainings, and source code of every core package:

scripts/search.sh "IBlockFieldSerializationTransformer"      # whole corpus
scripts/search.sh -d volto "addonsLoaders"                    # one repo
scripts/search.sh -d documentation "upgrade step"             # Plone 6 docs only

Use it to verify any fact this skill doesn't cover, quote exact code, or check current versions (sources/web/misc/ holds release/EOL data). Without the corpus, use the live URLs in references/resources.md.

What ships with it: 19 files

166.8 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 326,144. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.