Research Infrastructure

drupal
core-bot

Voice profiles, positions, and philosophy of 66 Drupal core contributors — extracted from real issue queue activity, not summaries.

Built from 53,102+ issue queue comments, 14,042 commits,
and 20+ years of Drupal history

66 Contributors
53K+ Comments mined
143 Claude Skills
12 Analysis Tools

What is drupal-core-bot?

A research infrastructure for understanding how Drupal core is shaped — the people, positions, and philosophies behind 20+ years of architectural decisions.

66 Voice Profiles

Extracted positions, terminology, and stylometrics from real issue queue activity. Not summaries — pattern models trained on thousands of comments per author, with fidelity gates and adversarial validation.

Cross-Author Analysis

Who reviews whom on what. Where the fault lines are. Which contributors align on caching but split on API design. A philosophy graph across 40 topics, 1,711 author pairs, mined from 68K+ commits.

143 Claude Skills

Install and ask "What would catch say about X?" or "How would xjm and Crell differ on API design?" for any of the 66 contributors. Query, review, and compare skills — all installable via one command.

66 Contributors Profiled

Gold tier: 2,000+ comments. Silver: 500+. Bronze: 200+. Profiles are stratified by data volume — richer evidence, higher fidelity.

Showing 66 contributors across all tiers

Gold (2K+ comments)
Silver (500+)
Bronze (200+)
catch
gold
caching entity system
xjm
gold
release mgmt security
quietone
gold
migration documentation
smustgrave
gold
media layout
sun
gold
documentation
webchick
gold
release mgmt mentoring
tim.plunkett
gold
routing views
Wim Leers
gold
REST/JSON:API caching
berdir
gold
entity system testing
larowlan
gold
security testing
joachim
gold
documentation
alexpott
gold
config mgmt entity system
longwave
gold
testing entity system
andypost
gold
testing entity system
Dries
gold
strategic vision community
phenaproxima
gold
media experience builder
plach
gold
multilingual entity system
pwolanin
gold
access control security
tedbow
gold
auto updates layout
dawehner
silver
views routing
Crell
gold
API design PHP standards
bnjmnm
gold
frontend accessibility
tstoeckler
gold
routing entity
nicxvan
gold
migration entity
cilefen
gold
documentation accessibility
mglaman
gold
commerce testing
Cottser
gold
frontend theme system
aspilicious
gold
testing
amateescu
gold
entity system workflows
agentrickard
gold
routing REST
mondrake
gold
database layer testing
mgifford
silver
accessibility security
claudiu.cristea
gold
field API entity
penyaskito
gold
multilingual translation
borisson_
gold
facets search
damiankloip
gold
cache entity
hooroomoo
silver
accessibility layout
donquixote
gold
routing DI
dereine
silver
views
fago
gold
rules entity
drumm
gold
documentation API
dww
gold
update manager node access
e0ipso
gold
REST/JSON:API decoupled
heddn
gold
migration
jhedstrom
gold
testing entity
jibran
gold
testing
jhodgdon
gold
documentation hooks API
jurgenhaas
bronze
ECA automation
lauriii
gold
frontend theme
benjifisher
gold
accessibility migration
nod_
gold
JavaScript accessibility
Fabianx
gold
caching BigPipe
David_Rothstein
gold
security LTS
f.mazeikis
bronze
experience builder AI
grimreaper
silver
testing
jessebaker
silver
JavaScript accessibility
kevinquillen
thin
AI module
kristen pol
silver
AI module frontend
marcus_johansson
gold
AI module LLM integration
mrdalesmith
silver
AI module
pdureau
silver
experience builder layout
scott_euser
silver
AI module decoupled
svendecabooter
bronze
experience builder
valthebald
silver
AI module

12 Analysis Tools

Data-driven tools for patch authors, reviewers, and community researchers. All tools read from the local corpus — no API calls needed.

find-reviewers
Recommend reviewers by subsystem, topic, or diff — ranked by expertise and review history
simulate-review
Predict how specific maintainers would react to a patch, with confidence scores and evidence
map-debate
Identify camps and fault lines on any topic — where the community splits and why
consensus-check
Is this topic settled or contested? Surface blockers and dissenting voices before you propose
position-timeline
How has a contributor's position evolved from D7 to D11? Terminal and HTML output
compare-eras
How have priorities shifted across Drupal major versions? Cross-era heatmap analysis
generate-contributor-card
One-page HTML profile card with SVG radar chart for any contributor, or batch-generate all 66
expertise-gaps
Subsystem coverage heatmap — where is corpus data thin and reviewer expertise sparse?
check-precedent
Prior debate search with evidence URLs — find if this question was already litigated
self-audit
Compare a text sample against a contributor's extracted voice profile — stylometric diff
validate-profile
Profile completeness scoring (0–100) across all data dimensions for any author
export-author
Package a standalone single-author bundle — profiles, corpus, skills — as a directory or tarball

Install & Use

All 143 skills install in one command. Ask any contributor a question directly from your terminal.

bash
# Clone and install all 143 skills
git clone https://github.com/zivtech/drupal-core-bot
bash install-skills.sh

# Then ask any contributor about any topic
claude "What would catch say about entity caching?"
claude "How would xjm and Crell differ on API design?"
claude "Simulate a core team review of this patch"

Ethics & Provenance

Public source data

All data sourced from public drupal.org issue queues (CC BY-SA 2.0). Every corpus entry tracks its original URL, comment ID, issue ID, and date. Master index at corpus/provenance-index.json.

Research tools, not authority

Profiles are research instruments, not authoritative statements about any individual. They model patterns in public writing — they cannot substitute for direct communication with contributors.

AI-synthesized summaries

All synthesized summaries are AI-generated from evidence — not direct quotes. Profile outputs represent observed patterns in the corpus, with fidelity scores and confidence intervals documented.

Removal requests

Any contributor can request removal of their profile. Open an issue on GitHub with the subject "Profile removal request" — we will process it within 5 business days without requiring justification.

Limitations & Future Directions

🔍

Missing: Drupal Slack

The most significant gap in the corpus is Drupal Slack, where a substantial portion of core development discussion happens informally. Architecture debates, review coordination, mentoring, and real-time decision-making all occur in Slack channels that are not publicly accessible or archivable. Profiles are built exclusively from drupal.org issue queues, git commits, change records, and blog posts. For contributors whose primary engagement is through Slack, the profiles may underrepresent their actual influence and positions.

If Drupal Slack data were accessible through community-sanctioned exports or a public archive, it would improve position accuracy, debate coverage, relationship mapping, and mentoring pattern detection.

Search Infrastructure

The current pipeline routes queries to relevant experts but cannot perform full-text search across the 853 MB corpus. Questions like "what does contributor X specifically think about topic Y?" require search-indexed infrastructure (e.g., Solr) to enable direct evidence retrieval from the 300K+ comments.