Wat is het KGL-bestandsformaat?
Een .kgl-bestand is een gecompileerde bibliotheek voor de KAGSA-programmeertaal, een geïnterpreteerde taal gebouwd op Python en uitgebracht onder de MIT-licentie. Ontwikkelaars schrijven Kagsa-code in .kg-bronbestanden en verpakken herbruikbare functies in een .kgl-bibliotheek zodat andere programma's deze kunnen aanroepen.
Onder de motorkap is een .kgl-bestand een .zip-archief dat een andere extensie heeft gekregen. Het bevat altijd ten minste twee Python-bestanden: main.py, het gecompileerde startpunt, en __memory__.py, dat de opgeslagen namespace-gegevens van de bibliotheek bevat. Eventuele extra hulpmodules worden samen met deze bestanden ingepakt. Omdat de container een standaard ZIP is, begint het bestand met de bekende PK-handtekening.
Beveiliging & veiligheid
RISICO: MEDIUMA .kgl is a ZIP archive containing executable Python code that the Kagsa interpreter runs when the library is imported. Extracting the archive is safe, but importing or running a library from an untrusted source executes its code, so only use .kgl files you trust.
Formaatdetails
in een notendop- kglab / kgl (Python graph library) - The 'kgl' name is also used by DerwenAI's kglab knowledge-graph package, but it does not define a .kgl file type.
- kgl.exe (generic executable) - Various unrelated Windows programs ship an executable named kgl.exe; unrelated to the Kagsa library format.
Programma's die KGL-bestanden openen
Technische details
diepe specificaties| Encoding | Binary (ZIP archive) |
| Byte order | Little-endian (ZIP fields) |
| Container | ZIP archive with the .kgl extension instead of .zip |
| Compression | Standard ZIP compression (DEFLATE or stored), inherited from the ZIP container |
| Encryption | None by default; a KGL is a plain archive with no built-in encryption |
| Typical size | A few kilobytes to a few hundred kilobytes, depending on the amount of compiled code |
| Structure | A ZIP archive holding the Python files produced when a Kagsa source library is compiled. It always contains main.py (the compiled library entry point) and __memory__.py (the library's stored state/namespace data), plus any additional helper .py files. |
| Integrity | CRC-32 per entry, provided by the ZIP format |
| Platforms | Windows, Linux, Termux (Android), macOS |
| Notes | Generated by the Kagsa interpreter with the command kagsa -l lib.kg -o lib.kgl. The input must be a .kg source file and the output name must end in .kgl. Because it is just a renamed ZIP, renaming a copy to .zip lets any archiver inspect the contents. |
| Produced By | kagsa command-line interpreter |
| Consumed By | Kagsa runtime when a .kg program imports the library |
| Uitgebracht | 2022 |
| Laatste versie | Kagsa 1.2.0 (2023) |
| Specificatie | www.kagsa.org |
KGL conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over KGL-bestanden.