Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Boom-Vitt/claude-thai-skills --skill thai-id-validategit clone --depth 1 https://github.com/Boom-Vitt/claude-thai-skillsWrote 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.
[](https://agentmods.dev/skills/boom-vitt/claude-thai-skills/thai-id-validate)<a href="https://agentmods.dev/skills/boom-vitt/claude-thai-skills/thai-id-validate"><img src="https://agentmods.dev/badge/skills/boom-vitt/claude-thai-skills/thai-id-validate/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.
<a href="https://agentmods.dev/skills/boom-vitt/claude-thai-skills/thai-id-validate"><img src="https://agentmods.dev/badge/skills/boom-vitt/claude-thai-skills/thai-id-validate.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.02402 |
| Opus 5.5 | $0.00000 | $0.00961 |
| Sonnet 5.5 | $0.00000 | $0.00480 |
| Haiku 4.5 | $0.00000 | $0.00240 |
Grade A, and why
thai-id-validate 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 1mo 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.
How it starts
The opening of the file, as written. The whole thing — 95 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Thai ID / Phone / PromptPay (ตรวจเลขบัตร เบอร์ พร้อมเพย์)
Overview
ตรวจสอบ checksum ของเลขบัตรประชาชนไทย / เลขประจำตัวผู้เสียภาษี (13 หลัก), แปลงเบอร์โทรระหว่างรูป +66 กับ 0X, และสร้าง payload สำหรับ PromptPay QR (รูปแบบ EMVCo TLV). Algorithm and TLV layout follow the official Thai Revenue Department and ITMX PromptPay specifications.
When to use
- ตรวจ checksum เลขบัตรประชาชน 13 หลัก (citizen ID / individual tax ID share the same algorithm)
- Normalize เบอร์โทร: ผู้ใช้ป้อน
+66 81 234 5678แต่ระบบเก็บ0812345678 - สร้าง QR สำหรับรับเงิน PromptPay จากเบอร์มือถือหรือเลขบัตรประชาชน
- DO NOT use for company tax IDs that follow non-standard formats, or for verifying that an ID belongs to a real person (checksum only proves format, not existence).
Example prompts
- "ตรวจเลขบัตร 1-1017-00230-70-X ให้หน่อย"
- "เบอร์ 081-234-5678 แปลงเป็น E.164 ให้ที"
- "สร้าง PromptPay QR เบอร์ 0812345678 จำนวน 250 บาท"
Quick reference
| Function | ภาษาไทย | Returns |
|---|---|---|
is_valid_thai_id(s) |
ตรวจ checksum | bool |
normalize_phone(s) |
แปลงเป็น +66XXXXXXXXX |
str |
format_phone_thai(s) |
แปลงเป็น 0XX-XXX-XXXX |
str |
build_promptpay_payload(target, amount?) |
สร้าง QR payload | str |
Thai ID checksum algorithm
ให้ตัวเลข 12 หลักแรก คูณด้วยน้ำหนัก [13,12,11,10,9,8,7,6,5,4,3,2] แล้วรวมกัน. นำผลรวม mod 11, เอา 11 ลบ, แล้ว mod 10 อีกครั้ง = check digit (หลักที่ 13).
Phone format rules
- หลังจาก strip เครื่องหมายเว้นวรรค
-()แล้ว - ขึ้นต้น
+66,66, หรือ0ถือว่าเทียบเท่ากัน - มือถือ: 10 หลักรวม 0 (06, 08, 09 หลังจาก 0)
- บ้าน Bangkok: 9 หลักรวม 0 (เช่น 02-880-1234)
PromptPay TLV (key tags)
00Payload Format Indicator0101POI Method:11static /12dynamic (with amount)29Merchant Account Info → sub-tag00AIDA000000677010111, sub-tag01phone (0066+ เบอร์, pad to 13 chars) or02national ID (13 digits)53Currency764(THB)54Amount (optional)58CountryTH63CRC-16/CCITT-FALSE (uppercase 4-hex) over the entire payload including the6304tag/length prefix
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 1mo ago First seen · 95 lines · 0 tokens per session scan A 42d741f84bd3
thai-id-validate is a skill published in the GitHub repository Boom-Vitt/claude-thai-skills (58 stars, last pushed 5d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 2,402 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.
Other skills, from other repositories
astro-dso-doc
Bootstraps a deep-sky object (DSO) astrophotography project from raw acquisition frames (own rig, not a smart telescope), AND generates a complete, polished HTML documentation page, a processing checklist, an AstroBin post JSON, a PixInsight process icon set (XPSM), and a ready-to-paste PixInsight project Description…
logo-design
Professional logo and brand-mark design, from brief to production files. Guides discovery and the design brief, concept generation, choosing a mark type (wordmark, monogram, letterform, pictorial, abstract, emblem, mascot, combination), building clean geometric SVG logos, optical refinement, colour and typography…
llm-council
Run any question, idea, or decision through a council of 5 AI advisors who independently analyze it, peer-review each other anonymously, and synthesize a final verdict. Based on Karpathy's LLM Council methodology. MANDATORY TRIGGERS: 'council this', 'run the council', 'war room this', 'pressure-test this'…
document-code
Apply Google Style documentation standards to Python, Go, TypeScript, and Terraform code. Use when writing or reviewing code that needs docstrings/comments/JSDoc, when asked to "document this code", "add docstrings", "follow Google Style", or when improving code documentation quality. Supports Python docstrings, Go…
work-on-ticket
Fetches Jira ticket details, creates an appropriately named branch, and initiates the task planning workflow. Use when the user says "work on [TICKETID]" or similar phrases.
datadog
Use this skill when you need to search Datadog logs, query metrics, tail logs in real-time, trace distributed requests, investigate errors, compare time periods, find log patterns, check service health, or export observability data.