Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/abderrahimghazali/drupal-boost/theme-developmentnpx skills add abderrahimghazali/drupal-boost --skill theme-developmentgit clone --depth 1 https://github.com/abderrahimghazali/drupal-boostWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00052 | $0.01026 |
| Opus 5 | $0.00026 | $0.00513 |
| Sonnet 5 | $0.00010 | $0.00205 |
| Haiku 4.5 | $0.00005 | $0.00103 |
Grade A, and why
theme-development scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 156 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Drupal 11 Theme Development
Theme Structure
themes/custom/THEME_NAME/
├── THEME_NAME.info.yml
├── THEME_NAME.theme # Preprocess functions
├── THEME_NAME.libraries.yml # CSS/JS libraries
├── THEME_NAME.breakpoints.yml # Responsive breakpoints
├── components/ # Single Directory Components
│ ├── card/
│ │ ├── card.component.yml
│ │ ├── card.twig
│ │ ├── card.css
│ │ └── card.js
│ └── hero/
│ ├── hero.component.yml
│ ├── hero.twig
│ └── hero.css
├── templates/ # Template overrides
│ ├── layout/
│ ├── node/
│ ├── block/
│ ├── field/
│ └── views/
├── css/ # Global styles
├── js/ # Global scripts
└── images/ # Theme images
Starterkit Theme Generation
php web/core/scripts/drupal generate-theme my_theme --starterkit starterkit_theme
Single Directory Components (SDC)
component.yml Schema
name: Card
status: stable
description: A card component with image, title, and body
props:
type: object
properties:
title:
type: string
title: Card Title
image_url:
type: string
title: Image URL
variant:
type: string
title: Variant
enum: ['default', 'featured', 'compact']
default: 'default'
required:
- title
slots:
body:
title: Card Body
description: The main content of the card
libraryOverrides:
css:
component:
card.css: {}
js:
card.js: {}
dependencies:
- core/drupal
SDC Twig Template
<article class="card card--{{ variant|default('default') }}">
{% if image_url %}
<img src="{{ image_url }}" alt="{{ title }}" class="card__image" />
{% endif %}
<h3 class="card__title">{{ title }}</h3>
<div class="card__body">
{% block body %}{% endblock %}
</div>
</article>
Using SDCs
{% include 'THEME_NAME:card' with {
title: 'My Card',
image_url: '/path/to/image.jpg',
variant: 'featured',
} %}
{% embed 'THEME_NAME:card' with { title: 'Custom Body' } %}
{% block body %}
<p>Custom content in the body slot.</p>
{% endblock %}
{% endembed %}
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 156 lines · 52 tokens per session scan A 787a15283aa8
theme-development is a skill published in the GitHub repository abderrahimghazali/drupal-boost (1 stars, last pushed 5mo ago), licensed MIT. It adds 52 tokens to every session and 1,026 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
drupal-javascript
Drupal JavaScript behaviors, libraries.yml, drupalSettings, attachlibrary(), and custom client-side AJAX commands using Drupal.AjaxCommands.prototype.
drupal-form-ajax
Drupal AJAX form callbacks.
use-agent-browser-for-airi
Test AIRI display-model imports with agent-browser across stage-tamagotchi Electron, stage-web, and stage-pocket mobile web layouts. Use when uploading and verifying contributor-supplied Live2D ZIP, VRM, or MMD ZIP/PMX/PMD files through AIRI's model selector, including onboarding bypass, format-specific import…
opencli-sitemap-author
Use when creating or maintaining OpenCLI site sitemaps: agent-facing navigation, page-state, action, workflow, API-reference, pitfall, and fallback knowledge for a website. Use after browser exploration discovers durable site context, when a sitemap is stale, or when promoting local site knowledge into the repo.
pinchtab-mcp
Use this skill when a task requires browser automation through PinchTab's MCP server connected to a remote browser instance. Covers navigation, element interaction, data extraction, form filling, multi-step flows, and session management via MCP tools.
traceway-setup
Analyze and instrument repositories for Traceway observability. Use when the user wants to plan, add, migrate, or verify Traceway or OpenTelemetry monitoring for backend, browser, full-stack, mobile or iOS, or AI-agent software, including project topology and user-approved setup-plan creation. Backends use OTLP/HTTP…