Agent skill

Delphi Project Structure

by academiadocodigo in academiadocodigo/SimpleORM

Delphi project file structure reference — .dpr vs .pas, .dproj, .res, .dfm.

MITAuto-check passedDatabases

Install Delphi Project Structure

skills CLI
$ npx skills add academiadocodigo/SimpleORM --skill delphi-project-structure -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install academiadocodigo/SimpleORM delphi-project-structure --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/academiadocodigo/SimpleORM.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/delphi-project-structure .claude/skills/delphi-project-structure && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
delphi-project-structure
GitHub stars
157
Token cost
~1.2k tokens
SKILL.md length
144 words
Files
1
Skills in repo
9
Repo updated
First seen
Licence
MIT

At a glance

Delphi project file structure reference — .dpr vs .pas, .dproj, .res, .dfm.

  • Databases work in your project
  • SKILL.md covers File Types, .dpr vs .pas — Critical…, Console Application Template and VCL Application Template, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Delphi Project Structure is an agent skill from academiadocodigo/SimpleORM. Delphi project file structure reference — .dpr vs .pas, .dproj, .res, .dfm. Templates for console and VCL projects.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Databases. The repository describes itself as: ORM Simples para Aplicações Delphi. The licence is MIT.

When your agent uses it

  • Databases work in your project

Example prompts

  • “/delphi-project-structure”

What it can do on your machine

Read from SKILL.md and the folder at commit 6227399. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are pascal and markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Delphi Project Structure loads about 1.2k tokens when it runs. Until then it costs about 35 tokens; SKILL.md has 144 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~35
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from academiadocodigo/SimpleORM at commit 6227399, republished under its MIT licence (© academiadocodigo). 144 words, ~1,215 tokens.

Download SKILL.mdSave it as .claude/skills/delphi-project-structure/SKILL.md (or your agent's skills folder).
name
delphi-project-structure
description
Delphi project file structure reference — .dpr vs .pas, .dproj, .res, .dfm. Templates for console and VCL projects.
user-invocable
false

Delphi Project Structure

Rules are in .claude/rules/sample-creation.md — this skill provides templates and reference.

File Types

FilePurposeCreated by
.dprProgram file — entry pointDeveloper/Claude
.pasUnit file — source codeDeveloper/Claude
.dprojProject config (MSBuild XML)IDE only
.resCompiled resources (binary)IDE only
.dfmForm layout (visual)IDE only
.groupprojProject groupIDE only

.dpr vs .pas — Critical Difference

.dpr (PROGRAM)                    .pas (UNIT)
─────────────────                 ─────────────────
program MyApp;                    unit MyUnit;

{$APPTYPE CONSOLE}                interface
{$R *.res}                        uses ...;
                                  type ...;
uses
  Unit1 in 'Unit1.pas';          implementation
                                  uses ...;
begin
  // executable code              // implementation code
end.
                                  end.

Key differences:

  • .dpr starts with program, .pas starts with unit
  • .dpr has executable begin/end. block
  • .pas has interface/implementation sections
  • .dpr uses in 'path' syntax for unit paths
  • Only .dpr has {$R *.res} and {$APPTYPE CONSOLE}

Console Application Template

pascal
program SimpleORMFeature;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils,
  System.Generics.Collections,
  SimpleDAO,
  SimpleInterface,
  SimpleQueryFiredac,
  FireDAC.Comp.Client,
  FireDAC.Stan.Def,
  FireDAC.Phys.FB,
  Entidade.Pedido in '..\Entidades\Entidade.Pedido.pas';

var
  LConn: TFDConnection;
  LDAO: iSimpleDAO<TPEDIDO>;
begin
  try
    LConn := TFDConnection.Create(nil);
    try
      LConn.Params.DriverID := 'FB';
      LConn.Params.Database := 'C:\database\MEUBANCO.FDB'; // Ajustar caminho
      LConn.Params.UserName := 'SYSDBA';
      LConn.Params.Password := 'masterkey';
      LConn.Connected := True;

      LDAO := TSimpleDAO<TPEDIDO>.New(
        TSimpleQueryFiredac.New(LConn)
      );

      // === Demonstracao do recurso ===
      Writeln('=== Feature Demo ===');
      // ...

      Writeln('');
      Writeln('Done! Press Enter to exit...');
    finally
      LConn.Free;
    end;
  except
    on E: Exception do
      Writeln('Error: ', E.Message);
  end;
  Readln;
end.

VCL Application Template

pascal
program SimpleORMFeature;

uses
  Vcl.Forms,
  Principal in 'Principal.pas' {FormPrincipal},
  Entidade.Pedido in '..\Entidades\Entidade.Pedido.pas';

{$R *.res}

begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TFormPrincipal, FormPrincipal);
  Application.Run;
end.

VCL Form Unit Template (.pas)

pascal
unit Principal;

interface

uses
  Vcl.Forms, Vcl.StdCtrls, Vcl.Controls, System.Classes,
  Data.DB, FireDAC.Comp.Client, System.Generics.Collections,
  SimpleDAO, SimpleInterface, SimpleQueryFiredac;

type
  TFormPrincipal = class(TForm)
    // Components declared here are created by IDE from .dfm
    // Do NOT manually add component declarations
  private
    FDAO: iSimpleDAO<T>;
  public
    procedure AfterConstruction; override;
  end;

var
  FormPrincipal: TFormPrincipal;

implementation

{$R *.dfm}

procedure TFormPrincipal.AfterConstruction;
begin
  inherited;
  // Initialize DAO here
end;

end.

Sample Directory Structure

samples/FeatureName/
├── SimpleORMFeature.dpr     ← Claude creates
├── [SimpleORMFeature.dproj] ← IDE generates (do not create)
├── [SimpleORMFeature.res]   ← IDE generates (do not create)
├── [Principal.pas]          ← Claude creates (VCL only)
├── [Principal.dfm]          ← IDE generates (VCL only)
└── README.md                ← Claude creates

README Template

markdown
# Feature Name Sample

Demonstrates [feature description].

## Prerequisites

- Delphi 10.3+
- [Database/dependency]
- SimpleORM installed (boss or library path)

## Setup

1. Open `SimpleORMFeature.dpr` in Delphi IDE
2. Configure database connection (adjust path in source)
3. Build and run (F9)

## What It Shows

- [Feature 1]
- [Feature 2]

Uses Clause in .dpr — the in Syntax

In .dpr files, units that are NOT installed in the IDE need the in 'path' syntax:

pascal
uses
  // Installed units (no path needed)
  System.SysUtils,
  Horse,
  SimpleDAO,

  // Non-installed units (need relative path)
  Entidade.Pedido in '..\Entidades\Entidade.Pedido.pas',
  MyLocalUnit in 'SubDir\MyLocalUnit.pas';

The {FormName} comment after in is for form units only:

pascal
Principal in 'Principal.pas' {FormPrincipal}

© academiadocodigo, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/delphi-project-structure of academiadocodigo/SimpleORM.

Open the folder on GitHubat commit 6227399

Compare with similar skills

Delphi Project Structure next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Delphi Project Structure compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Delphi Project Structure this skillacademiadocodigo/SimpleORM157—~1.2kAutomated safety check: PassMIT
Keeper Stress AnalysisClickHouse/ClickHouse50k—~4.7kAutomated safety check: PassApache-2.0
Perf ComparisonClickHouse/ClickHouse50k—~3.9kAutomated safety check: NotesApache-2.0
Patch Release CheckClickHouse/ClickHouse50k—~4kAutomated safety check: NotesApache-2.0
Evolving The Data ModelTriliumNext/Trilium38k—~2.1kAutomated safety check: PassAGPL-3.0
Hybrid Cloud Outboxesgetsentry/sentry46k—~4.8kAutomated safety check: PassCustom licence

Similar skills

  • Keeper Stress Analysis

    ClickHouse/ClickHouse

    Analyze ClickHouse Keeper stress-test results from play.clickhouse.com / keeperstresstests data warehouse.

    50k GitHub stars~4.7k tokensUpdated today
    DatabasesAuto-check passed
  • Perf Comparison

    ClickHouse/ClickHouse

    Evaluate ClickHouse performance test results from existing CI/dashboard data or local perf.py runs.

    50k GitHub stars~3.9k tokensUpdated today
    DatabasesAuto-check: notes
  • Patch Release Check

    ClickHouse/ClickHouse

    Check whether ClickHouse's supported versions (last 3 majors + latest LTS) have recent stable patch releases, diagnose why the scheduled AutoReleases pipeline failed, and identify which releases…

    50k GitHub stars~4k tokensUpdated today
    DatabasesAuto-check: notes
  • Evolving The Data Model

    TriliumNext/Trilium

    A skill your agent uses when adding a DB migration or a new column/field to a Becca entity in Trilium ("add a migration", "new column on notes/attributes", "ALTER TABLE", "add a field to…

    38k GitHub stars~2.1k tokensUpdated today
    DatabasesAuto-check passed
  • Hybrid Cloud Outboxes

    getsentry/sentry

    Official

    Guide for creating and maintaining outbox-based eventually consistent operations in Sentry.

    46k GitHub stars~4.8k tokensUpdated today
    DatabasesAuto-check passed
  • Adaptive Spin Wait

    microsoft/garnet

    Official

    Selects Garnet spin-wait policies based on the slow-path cost.

    12k GitHub stars~1k tokensUpdated today
    DatabasesAuto-check passed

More from academiadocodigo/SimpleORM

All 9 skills in this repo
  • Delphi Patterns

    academiadocodigo/SimpleORM

    Coding conventions and patterns for the SimpleORM Delphi project.

    157 GitHub stars~560 tokensUpdated 2 mo ago
    Auto-check passed
  • Delphi Validator

    academiadocodigo/SimpleORM

    Validates all SimpleORM Delphi source files for Delphi 10.2 Tokyo+ compatibility.

    157 GitHub stars~828 tokensUpdated 2 mo ago
    Auto-check passed
  • Entity Mapping

    academiadocodigo/SimpleORM

    SimpleORM entity-to-database mapping via RTTI attributes. An agent skill from academiadocodigo/SimpleORM.

    157 GitHub stars~816 tokensUpdated 2 mo ago
    Auto-check passed
  • Horse Integration

    academiadocodigo/SimpleORM

    Horse/ExpxHorse integration patterns for SimpleORM — server auto-routing, client REST driver, serialization examples.

    157 GitHub stars~759 tokensUpdated 2 mo ago
    Auto-check passed
  • Isimplequery Contract

    academiadocodigo/SimpleORM

    The exact iSimpleQuery interface contract that all query drivers must implement.

    157 GitHub stars~670 tokensUpdated 2 mo ago
    Auto-check passed
  • Memory Safety

    academiadocodigo/SimpleORM

    Delphi memory management patterns for SimpleORM - ownership, try/finally, interface refs, and common leak scenarios.

    157 GitHub stars~531 tokensUpdated 2 mo ago
    Auto-check passed

Categories

Questions about Delphi Project Structure

What does Delphi Project Structure do?

Delphi project file structure reference — .dpr vs .pas, .dproj, .res, .dfm. Delphi Project Structure is an agent skill from academiadocodigo/SimpleORM.dfm.

When should I use Delphi Project Structure?

Delphi Project Structure fits situations like: databases work in your project.

How do I install Delphi Project Structure in Claude Code?

Run `npx skills add academiadocodigo/SimpleORM --skill delphi-project-structure -a claude-code`. Or copy the skill folder (.claude/skills/delphi-project-structure in academiadocodigo/SimpleORM) into .claude/skills/delphi-project-structure in your project. Claude Code loads it when a task matches its description.

How do I install Delphi Project Structure in Codex?

Run `npx skills add academiadocodigo/SimpleORM --skill delphi-project-structure -a codex`. Or copy the skill folder (.claude/skills/delphi-project-structure in academiadocodigo/SimpleORM) into .agents/skills/delphi-project-structure in your project. Codex loads it when a task matches its description.

Can I use Delphi Project Structure in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add academiadocodigo/SimpleORM --skill delphi-project-structure -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/delphi-project-structure, .gemini/skills/delphi-project-structure, .github/skills/delphi-project-structure and .opencode/skills/delphi-project-structure in your project.

What does Delphi Project Structure need to run?

SKILL.md names no scripts, command-line tools or credentials: Delphi Project Structure is instructions for the agent only.

Does Delphi Project Structure access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Delphi Project Structure safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Delphi Project Structure use?

Delphi Project Structure is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Delphi Project Structure use?

About 1.2k tokens (SKILL.md is roughly 4.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Delphi Project Structure?

Skills that share tags, products or a category with Delphi Project Structure: Keeper Stress Analysis (ClickHouse/ClickHouse, 50k stars), Perf Comparison (ClickHouse/ClickHouse, 50k stars), Patch Release Check (ClickHouse/ClickHouse, 50k stars) and Evolving The Data Model (TriliumNext/Trilium, 38k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Delphi Project Structure?

academiadocodigo (a GitHub organization) maintains it in academiadocodigo/SimpleORM, which has 157 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on August 2, 2026.

Source: academiadocodigo/SimpleORM on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.