A Claude Code plugin that turns the assistant into a senior Delphi expert. 🇧🇷 Leia em Português
delphi-dev activates automatically whenever Claude Code detects Delphi-related content — .pas, .dpr, .dfm, .dpk, .dproj files, or any mention of Object Pascal, FireMonkey, VCL, FireDAC, or RAD Studio. Once active, Claude applies the full Delphi Style Guide, Clean Code principles, and SOLID patterns without being asked.
| Command | Description |
|---|---|
| Auto Delphi Mode | Opening any .pas, .dpr or .dfm file activates the full coding standards context automatically |
/audit |
Generates a complete professional technical audit with per-dimension scoring and a prioritized modernization roadmap |
/review |
Quick code review — detects violations and provides corrected examples |
/write |
Writes new code with all standards applied from the start |
/new-project |
Scaffolds a new project with standardized layered folder structure |
/spec |
Analyzes the current project source code and auto-generates a complete SPEC.md |
/tdd |
Generates a complete DUnitX unit test suite for the project |
/contribute-kb |
Packages local learnings captured by the hooks and opens a PR to the community knowledge base |
/dashboard |
Displays GitHub repository metrics — stars, forks, issues, PRs, commits, releases, contributors |
/about |
Displays plugin info, version, and available commands |
npx delphi-devThis single command:
- Installs the Claude Code plugin
- Downloads the RAG knowledge base
- Installs the VS Code extension (if VS Code is detected)
- Registers automation hooks
Requirements: Node.js 18+, Claude Code CLI, git
npx delphi-dev updatenpx delphi-dev verifyIf you already had an old version (v1.x) installed and want to move to the new version from scratch, first remove the old installation inside Claude Code, then reinstall.
1. Remove the old version — commands run inside Claude Code:
/plugin list # see what is installed
/plugin uninstall delphi-dev@delphi-dev # uninstall the plugin
/plugin marketplace remove delphi-dev # remove the old marketplace
Removing the marketplace also uninstalls plugins that came from it. Short forms
/plugin marketandrmare accepted.
2. (Optional) clear the plugin cache if anything gets stuck:
rm -rf ~/.claude/plugins/cache3. Clean install — in the terminal:
npx delphi-dev4. Reload — restart Claude Code or run /reload-plugins to load the new version.
To test from a local checkout of the repository — useful when developing the plugin itself:
/plugin marketplace add <checkout-path>
/plugin install delphi-dev@delphi-dev
Changes to .md / .json files only take effect after reinstalling. To repeat the test cycle from a clean state, uninstall and re-add:
/plugin uninstall delphi-dev@delphi-dev
/plugin marketplace remove delphi-dev
/plugin marketplace add <checkout-path>
/plugin install delphi-dev@delphi-dev
delphi-dev supports both pt-BR (default) and en-US for everything it shows you — audit reports, SPEC documents, code reviews, prompts, and notifications.
The plugin auto-detects the language of your first message in a session and responds in that language. You can switch any time with an explicit override:
respond in English/in English please/switch to English→ en-USresponda em português/em português por favor→ pt-BR
What changes with the language selection:
- Report templates —
/auditloadsestrutura-laudo.en.mdfor English,estrutura-laudo.mdfor Portuguese;/specdoes the same withspec-template[.en].md. - Severity / classification labels — e.g.
🟢 GOOD / 🟡 FAIR / 🟠 CRITICAL / 🔴 NOT VIABLE(en-US) vs.🟢 BOM / 🟡 REGULAR / 🟠 CRÍTICO / 🔴 INVIÁVEL(pt-BR). - Notifications — e.g.
✅ Tests created in TestePedidoService.pas — 7 test casesvs. the pt-BR equivalent. - All explanatory prose in
/review,/write,/new-project,/tdd, and/about.
What does not change with language:
- Delphi identifiers in example code (
FNome,ACliente,BuscarPorCodigo) — these illustrate the naming convention itself. - Code prefixes (
F,A,L,C_,T,I,E). - Test method names (
Test_<Method>_<Scenario>). - Requirement IDs in SPECs (
RF-001,RNF-001,RN-001,UC-001).
F— fields (private attributes)A— method parametersL— local variablesC_— constants (+ UPPER_CASE body)T— classes and typesI— interfacesE— exceptions
- ✅ 2-space indentation (no tabs)
- ✅ 120-character line limit
- ✅
beginandelseon their own lines - ✅ One variable per line
- ✅ One unit per line in
usesclause (RTL → VCL/FMX → FireDAC → Third-party → Project)
- ❌
with— causes ambiguity and debugging issues - ❌
Break/Continue— use loop conditions instead - ❌
Real— useDoubleorCurrency ⚠️ Exit— allowed only as guard clauses at the top of a method
- ✅ One resource per
try..finallyblock - ✅ No empty
exceptblocks - ✅ SQL always parameterized (no string concatenation)
- ✅
constnever applied to interface parameters (ARC compatibility) - ✅ No global variables — use
class varinstead
btn, edt, lbl, mmo, cbx, grd, qry, cnn, dts, pnl, tmr, and more — see skills/delphi-standards/references/component-prefixes.md
| Skill | Activation |
|---|---|
delphi-standards |
Auto-activated on Delphi file/code detection |
delphi-write |
Activated when writing new Delphi code |
delphi-laudo |
Activated by the /audit command |
delphi-spec |
Activated by the /spec command |
delphi-tests |
Activated by the /tdd command or automatically after delphi-write |
delphi-claudeignore |
Auto-activated on Delphi project detection to optimize token usage |
delphi-encoding |
Auto-activated on encoding/BOM/mojibake issues in Delphi files |
delphi-fmx |
Auto-activated for FireMonkey and Android/iOS mobile development |
delphi-firedac |
Auto-activated for FireDAC data-access code |
delphi-acbr |
Auto-activated for ACBr fiscal components (NFe/NFCe/boleto) |
delphi-async |
Auto-activated for async/threading (TTask, TThread, Synchronize) |
delphi-build |
Auto-activated for command-line build/compilation and build errors |
delphi-spring4d |
Auto-activated for Spring4D DI container and collections |
delphi-legacy |
Auto-activated for legacy code modernization/migration |
| Agent | Purpose |
|---|---|
delphi-auditor |
Deep technical audit — 8 dimensions, scoring, 17-section report |
delphi-writer |
Writes complete, production-ready Delphi code following all standards |
delphi-spec-writer |
Generates the SPEC document from source code analysis |
delphi-tester |
Creates DUnitX unit test suites for Delphi classes |
See ROADMAP.md for what is planned and how to influence priorities. Phases under discussion include automatic encoding handling (UTF-8/BOM), mobile FMX scaffolding, Spring4D dependency injection, and a build/validation pipeline that lets Claude actually compile and verify the code it generates.
- Delphi Coding Standards v4.0.1 — Adriano Santos
- Clean Code and Best Practices in Delphi — Adriano Santos
- Clean Code — Robert C. Martin
- Delphi Style Guide — Embarcadero
MIT © 2026 Adriano Santos