Privacy Policy Generator Localization
nisrulz/app-privacy-policy-generator
Adds or updates a language translation in the app privacy policy generator by copying the English locale file, translating its values and building the site.
Implement Lokalise translation data handling, PII management, and compliance patterns.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace lokalise-data-handling --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/lokalise-data-handling .claude/skills/lokalise-data-handling && rm -rf skills-srcUse ~/.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/
Install the "lokalise-data-handling" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/lokalise-data-handling into .claude/skills/lokalise-data-handling/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lokalise-data-handling", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/lokalise-data-handlingType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace lokalise-data-handling --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/.curated/lokalise-data-handling .agents/skills/lokalise-data-handling && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "lokalise-data-handling" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/lokalise-data-handling into .agents/skills/lokalise-data-handling/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lokalise-data-handling", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace lokalise-data-handling --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/.curated/lokalise-data-handling .cursor/skills/lokalise-data-handling && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "lokalise-data-handling" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/lokalise-data-handling into .cursor/skills/lokalise-data-handling/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lokalise-data-handling", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jeremylongshore/tons-of-skills-marketplace.git --path skills/.curated/lokalise-data-handling--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace lokalise-data-handling --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/.curated/lokalise-data-handling .gemini/skills/lokalise-data-handling && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "lokalise-data-handling" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/lokalise-data-handling into .gemini/skills/lokalise-data-handling/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lokalise-data-handling", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jeremylongshore/tons-of-skills-marketplace lokalise-data-handlingInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/.curated/lokalise-data-handling .github/skills/lokalise-data-handling && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "lokalise-data-handling" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/lokalise-data-handling into .github/skills/lokalise-data-handling/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lokalise-data-handling", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace lokalise-data-handling --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/.curated/lokalise-data-handling .opencode/skills/lokalise-data-handling && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "lokalise-data-handling" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/lokalise-data-handling into .opencode/skills/lokalise-data-handling/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lokalise-data-handling", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
lokalise-data-handlingImplement Lokalise translation data handling, PII management, and compliance patterns.
Lokalise Data Handling is an agent skill from jeremylongshore/tons-of-skills-marketplace. Implement Lokalise translation data handling, PII management, and compliance patterns. Use when handling sensitive translation data, implementing data redaction, or ensuring compliance with privacy regulations for Lokalise integrations. Trigger with phrases like "lokalise data", "lokalise PII", "lokalise GDPR", "lokalise data retention", "lokalise privacy", "lokalise compliance".
Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/implementation-guide.md`). Compatibility notes: Designed for Claude Code
It sits in Writing & Content, covering Translation and Privacy and GDPR. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit cfae287. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteEditFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
curljqnpmFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.lokalise.comAlso links to:
developers.lokalise.comcldr.unicode.orgunicode-org.github.ioFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
LOKALISE_API_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Designed for Claude Code
From compatibility in the SKILL.md frontmatter.
Lokalise Data Handling loads about 3k tokens when it runs, and up to ~5k if it reads all its reference files. Until then it costs about 101 tokens; SKILL.md has 515 words of instructions outside code blocks.
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.
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.
The full file from jeremylongshore/tons-of-skills-marketplace at commit cfae287, republished under its MIT licence (© jeremylongshore). 515 words, ~2,961 tokens.
.claude/skills/lokalise-data-handling/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Lokalise manages translation data through keys, translations, snapshots, and branches. This skill covers the translation data lifecycle (create, update, export), key metadata management (tags, descriptions, screenshots), translation snapshots for versioning, branch-based translation isolation, export format handling (JSON flat/nested, XLIFF, PO), character encoding (UTF-8 BOM handling), and plural form support across locales.
@lokalise/node-api SDK installed (npm install @lokalise/node-api)lokalise2 CLI for bulk file operations (optional)Translation data in Lokalise follows this flow: Create keys (with platforms, tags, descriptions) -> Add base translations (source language) -> Translate (manually or via integrations) -> Review (proofread flag) -> Export (download to codebase).
Create keys with metadata that helps translators:
import { LokaliseApi } from "@lokalise/node-api";
const lokalise = new LokaliseApi({ apiKey: process.env.LOKALISE_API_TOKEN! });
// Create keys with rich metadata
await lokalise.keys().create({
project_id: projectId,
keys: [
{
key_name: {
ios: "welcome.title",
android: "welcome_title",
web: "welcome.title",
other: "welcome.title",
},
description: "Main heading on the welcome screen shown after signup",
platforms: ["web", "ios", "android"],
tags: ["onboarding", "v2.1"],
base_translations: [
{ language_iso: "en", translation: "Welcome to {{appName}}" },
],
is_plural: false,
is_hidden: false,
},
],
});Tags, descriptions, and screenshots help translators understand context. Keep metadata current:
// Bulk update tags for release management
await lokalise.keys().bulk_update({
project_id: projectId,
keys: [
{ key_id: 12345, tags: ["release-3.0", "reviewed"] },
{ key_id: 12346, tags: ["release-3.0", "needs-review"] },
],
});
// Add a screenshot for visual context
await lokalise.screenshots().create({
project_id: projectId,
screenshots: [
{
data: base64EncodedImage, // Base64 JPEG/PNG, max 6 MB
title: "Welcome screen — mobile layout",
description: "Shows welcome.title and welcome.subtitle keys",
key_ids: [12345, 12346],
},
],
});
// Retrieve key with all metadata
const key = await lokalise.keys().get(keyId, {
project_id: projectId,
disable_references: 0, // include reference language info
});
console.log(key.key_name, key.tags, key.description);Snapshots capture the entire project state at a point in time. Create them before bulk changes:
// Create a snapshot before a major update
const snapshot = await lokalise.snapshots().create({
project_id: projectId,
title: `Pre-release v3.0 — ${new Date().toISOString()}`,
});
console.log(`Snapshot created: ${snapshot.snapshot_id}`);
// List snapshots
const snapshots = await lokalise.snapshots().list({
project_id: projectId,
limit: 20,
});
snapshots.items.forEach((s) =>
console.log(`${s.snapshot_id}: ${s.title} (${s.created_at})`)
);
// Restore a snapshot (creates a NEW project with the snapshot data)
const restored = await lokalise.snapshots().restore(snapshotId, {
project_id: projectId,
});
console.log(`Restored to new project: ${restored.project_id}`);Snapshots are immutable. Restoring creates a new project — it does not overwrite the current one.
Branches let you work on translations for a feature without affecting production strings:
// Create a feature branch
await lokalise.branches().create({
project_id: projectId,
name: "feature/checkout-redesign",
});
// List branches
const branches = await lokalise.branches().list({ project_id: projectId });
// Work on the branch — use the branch name in file operations
await lokalise.files().upload({
project_id: projectId,
data: base64FileContent,
filename: "en.json",
lang_iso: "en",
use_automations: true,
branch: "feature/checkout-redesign", // target the branch
});
// Merge branch back to main when translations are ready
await lokalise.branches().merge(branchId, {
project_id: projectId,
force_current: false, // false = conflict detection enabled
});Lokalise supports multiple export formats. Choose based on your stack:
// Download as flat JSON (React, Next.js, Vue)
const flatJson = await lokalise.files().download({
project_id: projectId,
format: "json",
original_filenames: false,
bundle_structure: "locales/%LANG_ISO%.json",
json_unescaped_slashes: true,
export_empty_as: "base", // use base language for untranslated
include_tags: ["release-3.0"],
filter_langs: ["en", "fr", "de", "ja"],
});
// Returns { bundle_url: "https://..." } — download the ZIP// Download as nested JSON (common for namespaced i18n)
const nestedJson = await lokalise.files().download({
project_id: projectId,
format: "json",
original_filenames: false,
bundle_structure: "locales/%LANG_ISO%/%FILENAME%.json",
json_unescaped_slashes: true,
export_key_as: "key_name_dots_to_nested", // a.b.c → {a:{b:{c:"..."}}}
});# Export as XLIFF 2.0 (for professional translation agencies)
lokalise2 file download \
--token "$LOKALISE_API_TOKEN" \
--project-id "$PROJECT_ID" \
--format xliff \
--dest ./translations/ \
--include-tags "release-3.0"
# Export as PO/POT (for gettext-based projects)
lokalise2 file download \
--token "$LOKALISE_API_TOKEN" \
--project-id "$PROJECT_ID" \
--format po \
--dest ./locales/ \
--export-empty-as baseAll Lokalise exports use UTF-8. Watch for these encoding issues:
// Remove UTF-8 BOM if present (some editors add it)
function stripBOM(content: string): string {
return content.charCodeAt(0) === 0xfeff ? content.slice(1) : content;
}
// Validate JSON translation files after download
import { readFileSync } from "fs";
function loadTranslations(filePath: string): Record<string, string> {
const raw = readFileSync(filePath, "utf-8");
const clean = stripBOM(raw);
try {
return JSON.parse(clean);
} catch (e) {
throw new Error(
`Invalid JSON in ${filePath}: ${(e as Error).message}. ` +
`Check for encoding issues or unescaped characters.`
);
}
}When uploading files, always specify UTF-8 encoding. Lokalise auto-detects encoding but explicit is safer:
# Upload with explicit encoding
lokalise2 file upload \
--token "$LOKALISE_API_TOKEN" \
--project-id "$PROJECT_ID" \
--file ./locales/en.json \
--lang-iso en \
--convert-placeholders trueLokalise uses CLDR plural rules. Different languages have different plural categories:
// Create a plural key
await lokalise.keys().create({
project_id: projectId,
keys: [
{
key_name: "items.count",
is_plural: true,
platforms: ["web"],
base_translations: [
{
language_iso: "en",
translation: JSON.stringify({
one: "{{count}} item",
other: "{{count}} items",
}),
},
],
},
],
});Plural categories by language:
| Language | Categories | Example |
|---|---|---|
| English | one, other | 1 item / 2 items |
| French | one, many, other | 1 chose / 1000000 choses / 2 choses |
| Arabic | zero, one, two, few, many, other | 6 categories |
| Japanese | other | No plural distinction |
| Polish | one, few, many, other | 1 element / 2 elementy / 5 elementow |
In JSON exports, plural keys appear as objects:
{
"items.count": {
"one": "{{count}} item",
"other": "{{count}} items"
}
}Ensure your i18n framework handles plural objects (i18next, react-intl, vue-i18n all support this natively).
| Issue | Cause | Solution |
|---|---|---|
| Garbled characters in export | BOM or wrong encoding assumed | Strip BOM, ensure UTF-8 |
| Missing plural form | Language requires categories not provided | Check CLDR plural rules for target language |
| Branch merge conflict | Same key modified in both branches | Resolve via Lokalise UI or set force_current: true |
| Snapshot restore fails | Exceeded project limit on plan | Delete unused projects or upgrade plan |
| Empty translations in export | Key has no translation for language | Use export_empty_as: "base" to fall back to source |
| Upload overwrites existing | Default merge behavior is replace | Use replace_modified: false to preserve existing |
import { readFileSync } from "fs";
const fileContent = readFileSync("./locales/en.json", "utf-8");
const base64Content = Buffer.from(fileContent).toString("base64");
await lokalise.files().upload({
project_id: projectId,
data: base64Content,
filename: "en.json",
lang_iso: "en",
convert_placeholders: true,
detect_icu_plurals: true,
replace_modified: false, // preserve manual edits
tags_inserted_keys: ["auto-import"],
});#!/bin/bash
# download-translations.sh
BUNDLE_URL=$(curl -s -X POST \
"https://api.lokalise.com/api2/projects/${PROJECT_ID}/files/download" \
-H "X-Api-Token: ${LOKALISE_API_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"format": "json",
"original_filenames": false,
"bundle_structure": "locales/%LANG_ISO%.json",
"export_empty_as": "base",
"json_unescaped_slashes": true
}' | jq -r '.bundle_url')
curl -sL "$BUNDLE_URL" -o translations.zip
unzip -o translations.zip -d ./src/
rm translations.zip
echo "Translations downloaded and extracted to ./src/locales/"For deploying translations into your CI/CD pipeline, see lokalise-deploy-integration. For handling API errors during data operations, see lokalise-common-errors.
© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in skills/.curated/lokalise-data-handling of jeremylongshore/tons-of-skills-marketplace.
Open the folder on GitHubat commit cfae287
Lokalise Data Handling 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Lokalise Data Handling this skilljeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~3k | Automated safety check: Pass | MIT | |
| Privacy Policy Generator Localizationnisrulz/app-privacy-policy-generator | 4.7k | — | ~526 | Automated safety check: Pass | AGPL-3.0 | |
| Legal Translationlawve-ai/awesome-legal-skills | 847 | — | ~14k | Automated safety check: Pass | Custom licence | |
| Regulatory Deal Card Generator Patrick Munrolawve-ai/awesome-legal-skills | 847 | — | ~2.1k | Automated safety check: Pass | AGPL-3.0 | |
| Route Legal Translationlawve-ai/awesome-legal-skills | 847 | — | ~1.4k | Automated safety check: Pass | AGPL-3.0-or-later | |
| Client Explanation Translator Larissa Meredith Flisterlawve-ai/awesome-legal-skills | 847 | — | ~1.6k | Automated safety check: Pass | Custom licence |
nisrulz/app-privacy-policy-generator
Adds or updates a language translation in the app privacy policy generator by copying the English locale file, translating its values and building the site.
lawve-ai/awesome-legal-skills
Translate legal documents from any language into English while preserving .docx formatting and translating track changes and headers/footers.
lawve-ai/awesome-legal-skills
Generates standalone interactive HTML "deal cards" that translate complex regulations into negotiation-ready reference tools, systematically distinguishing mandatory obligations from negotiable…
lawve-ai/awesome-legal-skills
Pick the right LLM for LEGAL TRANSLATION — translating contracts, statutes, case law, and legal correspondence across languages, including Arabic/MENA.
lawve-ai/awesome-legal-skills
Turn complex legal analysis into clear, commercially useful client-facing advice.
lawve-ai/awesome-legal-skills
Turns a legal question, a set of draft questions, or source material such as a statute, jury instruction, rubric, contract checklist, or coding manual into a battery of narrow questions that…
jeremylongshore/tons-of-skills-marketplace
Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.
jeremylongshore/tons-of-skills-marketplace
Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.
jeremylongshore/tons-of-skills-marketplace
Execute proactive auto-loading: automatically detects and loads agents.md files.
jeremylongshore/tons-of-skills-marketplace
Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.
jeremylongshore/tons-of-skills-marketplace
Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.
jeremylongshore/tons-of-skills-marketplace
Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.
Categories
Implement Lokalise translation data handling, PII management, and compliance patterns. Lokalise Data Handling is an agent skill from jeremylongshore/tons-of-skills-marketplace. Implement Lokalise translation data handling, PII management, and compliance patterns.
Lokalise Data Handling fits situations like: handling sensitive translation data; implementing data redaction; ensuring compliance with privacy regulations for Lokalise integrations; with phrases like lokalise data.
Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a claude-code`. Or copy the skill folder (skills/.curated/lokalise-data-handling in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/lokalise-data-handling in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a codex`. Or copy the skill folder (skills/.curated/lokalise-data-handling in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/lokalise-data-handling in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill lokalise-data-handling -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/lokalise-data-handling, .gemini/skills/lokalise-data-handling, .github/skills/lokalise-data-handling and .opencode/skills/lokalise-data-handling in your project.
Going by SKILL.md and its folder, Lokalise Data Handling needs the command-line tools its instructions call (curl, jq and npm) and credentials named LOKALISE_API_TOKEN. Our summary lists: Node.js; A credential in LOKALISE_API_TOKEN. Its frontmatter pre-approves these tools: Read, Write, Edit. Compatibility (from SKILL.md): Designed for Claude Code.
SKILL.md names 4 domains. In commands or code: api.lokalise.com; the agent is likely to contact it when it follows the instructions. As links in the text: developers.lokalise.com, cldr.unicode.org and unicode-org.github.io. This is read from the text; nothing was executed.
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.
Lokalise Data Handling is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Lokalise Data Handling: Privacy Policy Generator Localization (nisrulz/app-privacy-policy-generator, 4.7k stars), Legal Translation (lawve-ai/awesome-legal-skills, 847 stars), Regulatory Deal Card Generator Patrick Munro (lawve-ai/awesome-legal-skills, 847 stars) and Route Legal Translation (lawve-ai/awesome-legal-skills, 847 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,827 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 10, 2026.
Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.