Khamlao — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Khamlao (Plugin) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
Aggregate score unchanged between these scans.
The primary manifest — the file an agent reads to learn what this artifact does.
Modular Lao language skill for Claude.
KhamLao makes Claude write authentic, concise Lao instead of slow Thai-influenced verbose text. It cuts ~40-60% of output tokens while enforcing correct Lao register, script, and idiom.
Inspired by pordee (Thai compression skill), KhamLao adds Lao-specific quality rules on top of compression.
KhamLao is a single skill (/khamlao). The data is kept split by domain in data/*.json for ease of editing, but build_skills.py merges everything into one SKILL.md — so users see just one command, never a domain picker.
skills/khamlao/SKILL.md (~26 KB)
├─ Quality rules + critical false-friends (always)
└─ Vocabulary reference
├─ Everyday time, family, numbers, common verbs/adj
├─ Cooking food, herbs, methods, utensils, dishes
├─ School education vocabulary
├─ Nature animals, body parts, nature
└─ Web / UI auth, actions, nav, booking, forms, statusTotal vocabulary: 390 entries, sourced from:
Note on scale: the whole vocabulary loads into context with the skill. That's fine at this size; once it grows past ~1–2K entries the plan is to move the long tail to a lookup tool (see "What's next").
claude plugin marketplace add nouvath07/khamlao
claude plugin install khamlao@khamlaonpx skills addnpx skills add https://github.com/nouvath07/KhamLao --skill khamlaoThis installs the single khamlao skill to your universal agents directory.
Copy skills/khamlao/ to your ~/.claude/skills/.
| Command | Effect |
|---|---|
/khamlao | Enable full mode (default) |
/khamlao full | Enable full mode explicitly |
/khamlao lite | Enable lite mode (gentler compression) |
/khamlao stop | Disable |
| Keyword | Effect |
|---|---|
ຄຳລາວ | Enable |
ໃຊ້ລາວ | Enable |
ຕອບເປັນລາວ | Enable |
ຢຸດຄຳລາວ | Disable |
ປ່ຽນເປັນປົກກະຕິ | Disable |
The single khamlao skill loads when Lao output is requested. It contains:
One skill, one command — no domain picker. The whole skill (~21 KB) loads together. Most response latency for Lao comes from generating Lao output tokens (Lao tokenizes to ~5–10× English), not from this context, so a single merged skill keeps the UX simple without a meaningful speed cost at the current size.
ຂ້ອຍ/ເຈົ້າ for conversation; never archaic ຂ້ານ້ອຍສິ for future (not Thai-influenced ຈະ)່ and ້ໃຜ not ใคร, ໃສ not ที่ไหน, ບໍ່ not ไม่ໄຟລ໌, ເຊັດຊັນ, ຄອມພິວເຕີ້ເນື່ອງຈາກ → ເພາະ)lite (gentle) and full (aggressive)khamlao/
├── data/ ← Source-of-truth (edit here)
│ ├── critical_fixes.json
│ ├── everyday.json
│ ├── cooking.json
│ ├── school.json
│ └── nature.json
├── skills/ ← Generated (do not edit directly)
│ └── khamlao/SKILL.md ← Single merged skill (all domains)
├── tools/
│ ├── build_skills.py ← Merge data/*.json into the single SKILL.md
│ ├── khamlao_checker.py ← Quality detector (Thai-leak, register, tone)
│ ├── scrape_lao_corpus.py ← Corpus pipeline (PDF → OCR → JSONL)
│ └── archive/ ← Historical one-off scripts
├── .claude-plugin/ ← Plugin metadata
├── .github/ ← Issue & PR templates
├── README.md, CONTRIBUTING.md, LICENSEdata/*.json filepython tools/build_skills.pydata/ change and the regenerated skills/khamlao/SKILL.mdKhamLao is community-driven. Native and fluent Lao speakers — your help is essential.
See CONTRIBUTING.md. You don't need to be a programmer — language data is most valuable.
KhamLao today is a prompt-injected skill — it corrects Claude/Gemini's Lao output at generation time. The next step is to make those same rules usable outside an LLM, as a standalone quality layer for any Lao NLP system:
A Python library + eval suite that any Lao OCR, TTS, or translation pipeline can call to check its own output. Three components:
┌─────────────────────────────────────────────┐
│ Layer 3: Eval suite (benchmark runner) │ → measure model output quality
├─────────────────────────────────────────────┤
│ Layer 2: Detector library (Python pkg) │ → Thai-leak + register checks
├─────────────────────────────────────────────┤
│ Layer 1: Rules + test data (JSON) │ → already 80% in data/*.json
└─────────────────────────────────────────────┘Detector example:
from khamlao_checker import check
check("ຂ້ອຍຈະໄປເຮັດວຽກ")
# → {"thai_word_leaks": ["ຈະ"], "suggested": "ສິ",
# "register": "modern", "score": 0.72}Why it matters: ML teams optimize average accuracy, but no one currently checks whether Lao output is actually good Lao — free of Thai-script leaks, archaic pronouns, or wrong tense markers. That gap is what KhamLao's rules already encode for LLMs; the next step is exposing them as a reusable checker.
tools/scrape_lao_corpus.py — download → render → Gemini OCR → quality-filter → JSONL. Used to harvest Lao text from MOE textbooks (ປ.1–ມ.7) for training and evaluation. See data/corpora/README.md.
See ROADMAP.md — 6 themes, prioritized, with effort estimates. Contributors welcome at any tier of complexity.
/khamlao trigger to force the core skill.MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.