Claude-Tools-for-Delphi: Skill for Claude Code

.claude/skills/light-review-DUnitX/SKILL.md

light-review-DUnitX is a skill for Claude Code from GabrielOnDelphi/Claude-Tools-for-Delphi. It costs 0 tokens per session (1,317 once invoked), scanned A, original, MPL-2.0.

A reference for organizing Delphi unit tests with DUnitX, a testing framework. It covers test fixtures, setup and cleanup, assertions, concrete fakes, and SQLite in-memory integration tests.

In plain words
What is it for?
Use it to structure tests for Delphi domain and service logic, replace collaborators with in-memory fakes, and test database behavior without a permanent database.
Why use it?
It helps tests check real behavior instead of merely running without verifying anything, while keeping user-interface tests out of unit-test projects.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: mentions CLAUDE.md; mentions Claude Code.

This is GabrielOnDelphi/Claude-Tools-for-Delphi's own configuration. It tells Claude Code how to work on Claude-Tools-for-Delphi itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything Claude-Tools-for-Delphi configures →

Reuse

Borrowing it

Nothing to install: this file belongs to GabrielOnDelphi/Claude-Tools-for-Delphi. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/GabrielOnDelphi/Claude-Tools-for-Delphi/main/.claude/skills/light-review-DUnitX/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/GabrielOnDelphi/Claude-Tools-for-Delphi

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for light-review-DUnitX

README.md
[![agentmods](https://agentmods.dev/badge/skills/gabrielondelphi/claude-tools-for-delphi/light-review-dunitx/github.svg)](https://agentmods.dev/skills/gabrielondelphi/claude-tools-for-delphi/light-review-dunitx)
Your own site
<a href="https://agentmods.dev/skills/gabrielondelphi/claude-tools-for-delphi/light-review-dunitx"><img src="https://agentmods.dev/badge/skills/gabrielondelphi/claude-tools-for-delphi/light-review-dunitx/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for light-review-DUnitX

Your own site · 80×15
<a href="https://agentmods.dev/skills/gabrielondelphi/claude-tools-for-delphi/light-review-dunitx"><img src="https://agentmods.dev/badge/skills/gabrielondelphi/claude-tools-for-delphi/light-review-dunitx.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,317 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What 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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00000 $0.01317
Opus 5 $0.00000 $0.00659
Sonnet 5 $0.00000 $0.00263
Haiku 4.5 $0.00000 $0.00132

Measured 7d ago against content hash 24ddd7ac2492, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

light-review-DUnitX 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 7d ago.

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.

.claude/skills/light-review-DUnitX/SKILL.md · 126 lines

How it starts

The opening of the file, as written. The whole thing — 126 lines — stays where its author put it; the contents beside it link to each section on GitHub.

DUnitX testing — reference

For the red-green discipline (failing test first, confirmed red on its assertion) use /light-review-RedGreen. This skill is the structural reference: how a fixture, a fake and an integration test are shaped here.

Non-negotiables (Gabriel's rules)

  • Every [Test] makes a real assertion. Keep FailsOnNoAsserts on in the runner; a zero-assertion or Assert.Pass-only test is a fake test — the exact thing /light-review-FakeTest hunts.
  • No form / UI tests. Restrict DUnitX to domain and service logic. Layout lives in the .dfm/.fmx and is not unit-tested.
  • Compile only via the light-compiler agent (global CLAUDE.md rule); the agent reports compile results only — launching the test EXE to read pass/fail counts is your job.
  • Reuse LightSaber in the code under test before hand-rolling.
  • Test project is usually UnitTesting\Tests.dproj; if none exists, do not guess a layout — ask (template: c:\AI\Claude Code\TEMPLATE FOLDER\UnitTesting (TEMPLATE)\).

Fixture skeleton

type
  [TestFixture]
  TCustomerServiceTest = class
  private
    FService: TCustomerService;
    FRepo: TMemoryCustomerRepository;   // concrete fake, see below
  public
    [Setup]    procedure Setup;
    [TearDown] procedure TearDown;
    [Test]     procedure Create_WithValidData_Succeeds;
    [Test]     procedure Create_WithEmptyName_RaisesValidation;
  end;

procedure TCustomerServiceTest.Setup;
begin
  FRepo := TMemoryCustomerRepository.Create;
  FService := TCustomerService.Create(FRepo);
end;

procedure TCustomerServiceTest.TearDown;
begin
  FService.Free;
  FRepo.Free;
end;

Register the fixture: initialization TDUnitX.RegisterTestFixture(TCustomerServiceTest);

Naming: Method_Scenario_ExpectedBehavior

Name Reads as
Create_WithValidData_Succeeds happy path
Create_WithEmptyName_RaisesValidation validation
GetById_UnknownId_RaisesNotFound not found
Delete_WhenReferenced_RaisesBusinessRule business rule

Read the full file on GitHub · 126 lines

Changes

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.

  1. 7d ago Changed · +2 lines 24ddd7ac2492
  2. 11d ago First seen · 124 lines · 0 tokens per session scan A 6a01bb3f8e82

Subscribe to this mod's changes

light-review-DUnitX is a skill published in the GitHub repository GabrielOnDelphi/Claude-Tools-for-Delphi (18 stars, last pushed 4d ago), licensed MPL-2.0. It costs nothing until one of its globs matches a file; then it loads 1,317 tokens. 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-30.