Agent skill

Dto Implementation

by hmislk in hmislk/hmis

DTO implementation guidelines for the HMIS project. An agent skill from hmislk/hmis.

GPL-3.0Auto-check passed

Install Dto Implementation

skills CLI
$ npx skills add hmislk/hmis --skill dto-implementation -a claude-code

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

GitHub CLI
$ gh skill install hmislk/hmis dto-implementation --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/hmislk/hmis.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/dto-implementation .claude/skills/dto-implementation && 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
dto-implementation
GitHub stars
236
Token cost
~689 tokens
SKILL.md length
124 words
Files
1
Skills in repo
33
Repo updated
First seen
Licence
GPL-3.0

At a glance

DTO implementation guidelines for the HMIS project. An agent skill from hmislk/hmis.

  • Works in 3 steps: NEVER modify existing constructors -… → Use direct DTO queries - avoid… → JPQL PERSISTED FIELDS ONLY: NEVER use…
  • Writing JPQL constructor queries
  • SKILL.md covers Critical Rules, Direct DTO Query Pattern, Navigation Pattern: Use IDs,… and Null Relationship Handling, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Dto Implementation is an agent skill from hmislk/hmis. DTO implementation guidelines for the HMIS project. Use when creating or modifying DTOs, writing JPQL constructor queries, implementing DTO-based reports, converting entity code to DTO patterns, or troubleshooting DTO query issues. Covers constructor rules, facade methods, null relationship handling, and navigation patterns.

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

The repository describes itself as: This is an Open Source Java EE based Hospital Information Management System. The licence is GPL-3.0.

When your agent uses it

  • Writing JPQL constructor queries
  • Implementing DTO-based reports
  • Converting entity code to DTO patterns
  • Troubleshooting DTO query issues

Example prompts

  • “/dto-implementation”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. NEVER modify existing constructors - only add new ones
  2. Use direct DTO queries - avoid entity-to-DTO conversion loops
  3. JPQL PERSISTED FIELDS ONLY: NEVER use derived properties like nameWithTitle, age, displayName in JPQL

What it can do on your machine

Read from SKILL.md and the folder at commit d5d2020. 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 java).

    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

Dto Implementation loads about 689 tokens when it runs. Until then it costs about 86 tokens; SKILL.md has 124 words of instructions outside code blocks.

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

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 hmislk/hmis at commit d5d2020, republished under its GPL-3.0 licence (© hmislk). 124 words, ~689 tokens.

Download SKILL.mdSave it as .claude/skills/dto-implementation/SKILL.md (or your agent's skills folder).
name
dto-implementation
description
DTO implementation guidelines for the HMIS project. Use when creating or modifying DTOs, writing JPQL constructor queries, implementing DTO-based reports, converting entity code to DTO patterns, or troubleshooting DTO query issues. Covers constructor rules, facade methods, null relationship handling, and navigation patterns.
user-invocable
true

DTO Implementation Guidelines

Critical Rules

  1. NEVER modify existing constructors - only add new ones
  2. Use direct DTO queries - avoid entity-to-DTO conversion loops
  3. JPQL PERSISTED FIELDS ONLY: NEVER use derived properties like nameWithTitle, age, displayName in JPQL

Direct DTO Query Pattern

java
// CORRECT - Direct DTO query from database
String jpql = "SELECT new com.divudi.core.data.dto.StockDTO("
    + "s.id, s.itemBatch.item.name, s.itemBatch.item.code, "
    + "s.itemBatch.retailsaleRate, s.stock, "
    + "s.itemBatch.dateOfExpire, s.itemBatch.batchNo) "
    + "FROM Stock s WHERE ...";

// MUST use findLightsByJpql() with cast
List<StockDTO> dtos = (List<StockDTO>) facade.findLightsByJpql(jpql, params, TemporalType.TIMESTAMP);
java
// WRONG - Never do entity-to-DTO loops
List<Stock> stocks = stockFacade.findByJpql(sql, params);
List<StockDTO> dtos = new ArrayList<>();
for (Stock stock : stocks) { dtos.add(new StockDTO(stock.getField1(), ...)); }

Navigation Pattern: Use IDs, Not Entities

java
// CORRECT - IDs and names for navigation
public class OpdSaleSummaryDTO {
    private Long categoryId;      // For navigation
    private String categoryName;  // For display
    private Long itemId;          // For navigation
    private String itemName;      // For display
    private Double total;
}

Null Relationship Handling

Accessing properties through nullable relationships causes silent query failures (0 results, no exception):

java
// WRONG - Fails silently if cancelledBill is null
"b.cancelledBill.createdAt"

// CORRECT - Use LEFT JOIN
"FROM Bill b LEFT JOIN b.cancelledBill cb "
// Then use cb.createdAt with COALESCE

Constructor Rules

  • Always use wrapper types (Boolean, Integer, Long) for null safety
  • Parameter count and order must match JPQL SELECT exactly
  • Keep existing constructors intact; add new ones

Common Non-Persisted Properties (Cannot Use in JPQL)

EntityNon-PersistedUse Instead
PersonnameWithTitlename (or title, name separately)
Personagedob (calculate in Java)
ItemdisplayNamename

For complete reference, read developer_docs/dto/implementation-guidelines.md.

© hmislk, GPL-3.0. 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 .codex/skills/dto-implementation of hmislk/hmis.

Open the folder on GitHubat commit d5d2020

Compare with similar skills

Dto Implementation 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.

Dto Implementation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Dto Implementation this skillhmislk/hmis236—~689Automated safety check: PassGPL-3.0
Writing Guidelinessickn33/agentic-awesome-skills47k1 repos~438Automated safety check: PassMIT
Web Design Guidelinesnexu-io/open-design100k—~601Automated safety check: PassMIT
Writing Guidelinesvercel-labs/agent-skills32k7 repos~309Automated safety check: PassNone
Brand Guidelinesalirezarezvani/claude-skills28k1 repos~1.3kAutomated safety check: PassMIT
Brand Guidelinesnexu-io/open-design100k—~346Automated safety check: PassApache-2.0

Similar skills

  • Writing Guidelines

    sickn33/agentic-awesome-skills

    Curated upstream guidance for Writing Guidelines; use when the workflow matches the user goal.

    47k GitHub starsUsed in 1 repo~438 tokens
    Writing & ContentAuto-check passed
  • Web Design Guidelines

    nexu-io/open-design

    Review UI code for Web Interface Guidelines compliance by the Vercel engineering team.

    100k GitHub stars~601 tokensUpdated today
    Frontend & DesignAuto-check passed
  • Writing Guidelines

    vercel-labs/agent-skills

    Official

    Review docs/prose for Writing Guidelines compliance. An agent skill from vercel-labs/agent-skills.

    32k GitHub starsUsed in 7 repos~309 tokens
    Writing & ContentAuto-check passed
  • Brand Guidelines

    alirezarezvani/claude-skills

    When the user wants to apply, document, or enforce brand guidelines for any product or company.

    28k GitHub starsUsed in 1 repo~1.3k tokens
    Writing & ContentAuto-check passed
  • Brand Guidelines

    nexu-io/open-design

    Apply Anthropic's official brand colors and typography to artifacts for consistent visual identity and professional design standards.

    100k GitHub stars~346 tokensUpdated today
    Media & CreativeAuto-check passed
  • Warp GUI UI Guidelines

    warpdotdev/warp

    Guidelines for writing UI code in Warp's GUI desktop client, centered on reusing shared components and themes instead of adding one-off styling.

    65k GitHub starsUsed in 1 repo~947 tokens
    Frontend & DesignAuto-check passed

More from hmislk/hmis

All 33 skills in this repo
  • API Usage

    hmislk/hmis

    Reference for calling existing HMIS REST APIs. An agent skill from hmislk/hmis.

    236 GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Application configuration options reference for the HMIS project.

    236 GitHub stars~474 tokensUpdated today
    Auto-check passed
  • Caveman

    hmislk/hmis

    Ultra-compressed communication mode. An agent skill from hmislk/hmis.

    236 GitHub starsUsed in 21 repos~946 tokens
    Auto-check passed
  • Database Guide

    hmislk/hmis

    MySQL database development guide for the HMIS project. An agent skill from hmislk/hmis.

    236 GitHub stars~664 tokensUpdated today
    Auto-check passed
  • Demo Video

    hmislk/hmis

    A skill your agent uses when asked to make a demo, training, how-to or tutorial video with sound or voice-over showing an HMIS function or configuration (e.g.

    236 GitHub stars~3.9k tokensUpdated today
    Auto-check passed
  • Deploy QA

    hmislk/hmis

    Sync development into QA/testing environment branches (QA1-QA4, local RH staging) via PR + merge on GitHub.

    236 GitHub stars~2.1k tokensUpdated today
    Auto-check: notes

Questions about Dto Implementation

What does Dto Implementation do?

DTO implementation guidelines for the HMIS project. An agent skill from hmislk/hmis. Dto Implementation is an agent skill from hmislk/hmis. DTO implementation guidelines for the HMIS project.

When should I use Dto Implementation?

Dto Implementation fits situations like: writing JPQL constructor queries; implementing DTO-based reports; converting entity code to DTO patterns; troubleshooting DTO query issues.

How do I install Dto Implementation in Claude Code?

Run `npx skills add hmislk/hmis --skill dto-implementation -a claude-code`. Or copy the skill folder (.codex/skills/dto-implementation in hmislk/hmis) into .claude/skills/dto-implementation in your project. Claude Code loads it when a task matches its description.

How do I install Dto Implementation in Codex?

Run `npx skills add hmislk/hmis --skill dto-implementation -a codex`. Or copy the skill folder (.codex/skills/dto-implementation in hmislk/hmis) into .agents/skills/dto-implementation in your project. Codex loads it when a task matches its description.

Can I use Dto Implementation 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 hmislk/hmis --skill dto-implementation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dto-implementation, .gemini/skills/dto-implementation, .github/skills/dto-implementation and .opencode/skills/dto-implementation in your project.

What does Dto Implementation need to run?

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

Does Dto Implementation 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 Dto Implementation 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 Dto Implementation use?

Dto Implementation is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Dto Implementation use?

About 689 tokens (SKILL.md is roughly 2.8k 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 Dto Implementation?

Skills that share tags, products or a category with Dto Implementation: Writing Guidelines (sickn33/agentic-awesome-skills, 47k stars), Web Design Guidelines (nexu-io/open-design, 100k stars), Writing Guidelines (vercel-labs/agent-skills, 32k stars) and Brand Guidelines (alirezarezvani/claude-skills, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Dto Implementation?

hmislk (a GitHub organization) maintains it in hmislk/hmis, which has 236 GitHub stars. The repository holds 33 skills in this directory. The repository was last updated on October 8, 2026.

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