Wiki › Project

Glossary Forge

Project · agent skill · 2026

Glossary Forge is a free, open-source agent skill, written in Python, for translators of game mods and apps. It builds a translation glossary from the translations that already exist, and finds every term that has been translated in more than one way. It is part of his Localization Kit, alongside Loc Translate.

What it does

  • Mines terms from three sources:
    • name keys such as item.name and npc.*;
    • "ไทย (English)" pairs written in the text;
    • statistical alignment, which also works for languages without spaces between words, such as Thai, Japanese and Chinese.
  • Checks consistency. For each term it counts how many strings use the approved translation, and shows the ones that don't.
  • Builds a review page, l10n/glossary.html, that can be searched, filtered by status and sorted by issues or usage.
  • Exports CSV for the rest of the kit, TBX for CAT tools, or JSON. A strict check mode can block a release when terms are inconsistent.

A real run

The example in the README mines the Thai translation of the Stardew Valley mod GI Extra Locations – Redux. It found 146 terms, and caught Difficulty translated one way in three places and two different ways elsewhere, as "monster toughness" in one and "shop difficulty" in the other.

The Localization Kit

SkillWhat it does
loc-translate (free)Translates locale files without breaking tokens, comments or layout
glossary-forge (free)Mines a glossary and finds inconsistent terms
loc-qa (paid)A release check for broken tokens, structure, glossary use, overflow and Thai particles
loc-sync (paid)Finds new, changed and removed strings after the original mod updates

All four share one project file (.l10n.json) and one glossary (l10n/glossary.csv). The kit grew out of his Stardew Valley Thai translations.

See also

In the knowledge graph

Glossary Forge and the 14 things it is linked to. Open any dot for its page, or explore it in the full graph.

When
2023202420252026
Oct 2026 · 2 commits

As data

Everything on this page is read from triples in the knowledge graph. These are the 27 it states about Glossary Forge, and 6 more its ontology implies; the console runs SPARQL over the whole graph, here in your browser.

Download
@prefix id: <https://ask.chaipat.cc/id/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix cj: <https://ask.chaipat.cc/ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

id:GlossaryForge
    a cj:Project ;
    rdfs:label "Glossary Forge" ;
    cj:description "Agent skill that builds a translation glossary from existing translations and flags terms translated two ways." ;
    cj:context id:OpenSource ;
    cj:repository "https://github.com/AppleBoiy/glossary-forge"^^xsd:anyURI ;
    cj:firstCommit "2026-10-27"^^xsd:date ;
    cj:lastCommit "2026-10-27"^^xsd:date ;
    cj:commitCount 2 ;
    cj:kind "agent skill" ;
    cj:license "MIT" ;
    cj:theme id:ThemeAgentSkills , id:ThemeLocalisation ;
    cj:uses id:Python , id:AgentSkillsStd , id:Localisation ;
    cj:tier 2 ;
    cj:implements id:TermMining ;
    cj:handles id:CSVFormat , id:TBXFormat , id:JSONFormat ;
    cj:about id:StardewValley ;
    cj:partOf id:LocalizationKit ;
    cj:mentions id:LocTranslate , id:StardewThai ;
    cj:article "https://ask.chaipat.cc/wiki/GlossaryForge"^^xsd:anyURI ;
    cj:activeIn id:Y2026 ;
    cj:activity _:b67 .