Agent skill

Has Anonymizer

by LeoYeAI in LeoYeAI/openclaw-master-skills

HaS (Hide and Seek) on-device text and image anonymization. An agent skill from LeoYeAI/openclaw-master-skills.

MITAuto-check passed

Install Has Anonymizer

skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill has-anonymizer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install LeoYeAI/openclaw-master-skills has-anonymizer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/has-anonymizer .claude/skills/has-anonymizer && rm -rf skills-src

Use ~/.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/

Facts

Skill name
has-anonymizer
GitHub stars
2.2k
Token cost
~4.5k tokens
SKILL.md length
1,712 words
Files
35 (incl. scripts, references)
Skills in repo
1,235
Repo updated
First seen
Licence
MIT

At a glance

HaS (Hide and Seek) on-device text and image anonymization. An agent skill from LeoYeAI/openclaw-master-skills.

  • Works in 3 steps: hide to produce anonymized text plus… → send anonymized text to the cloud model… → restore the model response with the…
  • Anonymizing text before sending to cloud LLMs then restoring the response
  • SKILL.md covers Agent Decision Guidelines, Shared CLI Contract, Core Text Concepts and Text Runtime Prerequisites, plus 12 more sections
  • Runs Python and Shell scripts from its folder; reaches modelscope.cn

What it does

Has Anonymizer is an agent skill from LeoYeAI/openclaw-master-skills. HaS (Hide and Seek) on-device text and image anonymization. Text: 8 languages (zh/en/fr/de/es/pt/ja/ko), open-set entity types. Image: 21 privacy categories (face, fingerprint, ID card, passport, license plate, etc.). Use when: (1) anonymizing text before sending to cloud LLMs then restoring the response, (2) anonymizing documents, code, emails, or messages before sharing, (3) scanning text or images for sensitive content, (4) anonymizing logs before handing to ops/support, (5) masking faces/IDs/plates in photos…

Its SKILL.md is about 4.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 39 other files, including scripts and reference files (for example `_meta.json`, `references/DESIGN.md` and `references/eval/eval.py`).

The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.

When your agent uses it

  • Anonymizing text before sending to cloud LLMs then restoring the response
  • Anonymizing documents
  • Messages before sharing
  • Images for sensitive content

Example prompts

  • “/has-anonymizer”

Requirements

  • Python 3
  • A Bash shell

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. hide to produce anonymized text plus mapping
  2. send anonymized text to the cloud model with a tag-format explanation (see below)
  3. restore the model response with the mapping

What it can do on your machine

Read from SKILL.md and the folder at commit e5199b5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 9 files in scripts/ (Python and Shell, from the files we listed), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • modelscope.cn

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Has Anonymizer loads about 4.5k tokens when it runs, and up to ~33k if it reads all its reference files. Until then it costs about 141 tokens; SKILL.md has 1,712 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~141
When it runs · the whole SKILL.md, loaded when a task matches
~4.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~33k

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.

Safety

Auto-check passed

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); the scripts in this folder are not scanned.

SKILL.md

The full file from LeoYeAI/openclaw-master-skills at commit e5199b5, republished under its MIT licence (© LeoYeAI). 1,712 words, ~4,513 tokens.

Download SKILL.mdSave it as .claude/skills/has-anonymizer/SKILL.md (or your agent's skills folder). This skill also uses 34 other files; get the full folder from GitHub.
name
has-anonymizer
description
HaS (Hide and Seek) on-device text and image anonymization. Text: 8 languages (zh/en/fr/de/es/pt/ja/ko), open-set entity types. Image: 21 privacy categories (face, fingerprint, ID card, passport, license plate, etc.). Use when: (1) anonymizing text before sending to cloud LLMs then restoring the response, (2) anonymizing documents, code, emails, or messages before sharing, (3) scanning text or images for sensitive content, (4) anonymizing logs before handing to ops/support, (5) masking faces/IDs/plates in photos before publishing or sharing.

HaS Privacy

HaS exposes a single umbrella CLI:

  • has text ... for text anonymization, restoration, and scanning
  • has image ... for image scanning, masking, and category discovery

Use it when you need to remove private data locally before sending content elsewhere, inspect a directory for privacy risks, or mask visual privacy targets in photos and screenshots.

Agent Decision Guidelines

  • Prefer has text for plaintext and has image for raster images. For mixed directories, run both and combine the results into one report.
  • For PDFs, Word documents, or scanned pages, extract text first and then use has text. For screenshots/photos where the goal is simply to hide visible carriers such as faces, screens, paper, labels, or QR codes, use has image. If the goal is to reason about the text content inside an image, run OCR first and then use has text.
  • Do not overwrite or delete the original files. Text commands can restore later, image masking is irreversible.
  • Proactively mention configurable knobs when the user intent is clear: has text uses repeated --type; has image uses repeated --type, plus --method and --strength.
  • If the user intent is ambiguous, start with scan before hide.
  • After batch scans, summarize text file count, image file count, findings by type/category, high-risk items, and the suggested next step.
  • If timing matters to the user, add --timing and report the elapsed result in plain language afterward.
  • For qr_code and barcode, the default mosaic strength is automatically raised based on the detection size to ensure the encoding is destroyed. The agent does not need to manually increase --strength for these categories. If a detection output includes effective_strength, report it to the user.

Shared CLI Contract

The current CLI contract is designed for agents first:

  • Success returns compact JSON.
  • Failure also returns compact JSON with error.code and error.message.
  • Returned path fields are absolute.
    • This includes file, output, mapping_output, and skipped[].file.
  • Invalid combinations fail fast instead of silently falling back.
  • Directory mode is non-recursive. Only immediate children are processed.
  • Batch results can include skipped and skipped_count.
    • Treat skipped entries as unprocessed files, not as clean files.

Shared command layout:

bash
{baseDir}/scripts/has.sh <text|image> <command> [options]

Shared options can be placed before or after the subcommand.


Part 1: has text

has text is the plaintext namespace. It supports:

  • scan
  • hide
  • restore

It runs entirely on-device and uses a local llama-server plus the HaS text model when model inference is required.

Core Text Concepts

Semantic tags

Anonymized text uses semantic tags such as:

text
<EntityType[ID].Category.Attribute>

This preserves structure better than a flat [REDACTED] token and is the reason restored downstream LLM output can remain usable.

Open-set types

Repeated --type flags are open-set. They are not limited to a fixed catalog. Natural language type names such as "person name", "address", "phone number", or "numeric values (transaction amounts)" are valid.

Public/private distinction

Type wording matters. For example, "personal location" is usually safer than "location" if you want to preserve public places but hide private addresses. Public/private person-name distinctions remain less stable and should not be trusted without verification.

Multilingual support

The text model supports Chinese, English, French, German, Spanish, Portuguese, Japanese, and Korean, including mixed-language text.

Type name language

Match the --type language to the source text language:

  • Chinese text → use Chinese type names: --type "人名" --type "电话号码" --type "地址"
  • Non-Chinese text (English, French, German, etc.) → use English type names: --type "person name" --type "phone number" --type "address"

Text Runtime Prerequisites

has text auto-starts a local llama-server when needed.

  • Default model path: ~/.openclaw/tools/has-anonymizer/models/has_text_model.gguf
  • Override model path: HAS_TEXT_MODEL_PATH=/abs/path/to/has_text_model.gguf
  • Override parallel cap: HAS_TEXT_MAX_PARALLEL_REQUESTS
  • If HuggingFace downloads fail, see Model Download Mirrors below.

Text Usage

bash
{baseDir}/scripts/has.sh text [--timing] [--verbose] <scan|hide|restore> [options]

Namespace options:

OptionDescription
--timingInclude elapsed_ms in the JSON output
--verboseEmit runtime status and progress messages to stderr

Input methods:

MethodDescription
--text '<text>'Pass text directly
--file <path>Read text from a file
--dir <path>Process immediate plaintext files in a directory
stdinFor single-text mode when no --text, --file, or --dir is provided

Rules:

  • --text, --file, and --dir are mutually exclusive.
  • Empty --type values are rejected.
  • Directory mode only accepts batch output flags.
  • Single-file hide requires --mapping-output.
  • Single-file restore requires --mapping.
  • In text directory mode, skipped can include unprocessed files (binary, encoding, or read errors).

has text scan

Finds sensitive entities without replacing them.

bash
{baseDir}/scripts/has.sh text scan --type "person name" --type "phone number" --file report.txt
{baseDir}/scripts/has.sh text scan --type "person name" --type "phone number" --dir ./reports/

Parameters:

ParameterRequiredDescription
--typeyesEntity type to scan for; repeat to add more
--text / --file / --dirone inputInput source
--max-chunk-tokensMax tokens per chunk, default 5000
--max-parallel-requestsMax scan chunks in parallel, default 4

Output:

  • Single-text mode returns {"entities": ...}
  • Directory mode returns {"results":[...],"count":N,"summary":{...}}
  • Batch output may include skipped and skipped_count

has text hide

Replaces sensitive entities with semantic tags.

bash
{baseDir}/scripts/has.sh text hide --type "person name" --type "address" --text "John lives in Brooklyn" --mapping-output ./mapping.json
{baseDir}/scripts/has.sh text hide --type "person name" --file note.txt --output ./note.anonymized.txt --mapping-output ./note.mapping.json
{baseDir}/scripts/has.sh text hide --type "person name" --dir ./docs/

Parameters:

ParameterRequiredDescription
--typeyesEntity type to anonymize; repeat to add more
--text / --file / --dirone inputInput source
--mapping-outputsingle-file: yesOutput path for generated mapping JSON
--outputsingle-fileOutput path for anonymized text
--mappingsingle-fileExisting mapping JSON file for incremental anonymization
--output-dirbatchOutput directory for anonymized files (default: <dir>/.has/anonymized/)
--mapping-dirbatchOutput directory for per-file mapping JSON files (default: <output-dir>/mappings/)
--max-chunk-tokensMax tokens per chunk, default 3000
--max-parallel-requestsMax files in parallel for --dir, default 4
--no-tool-pairDisable diff-based pair extraction; always use Model-Pair (slower but more robust)

Behavior:

  • Single-file mode never emits the mapping table inline.
  • Single-file mode returns either:
    • {"text":"...","mapping_output":"/abs/path/to/map.json"}
    • {"output":"/abs/path/to/out.txt","mapping_output":"/abs/path/to/map.json"}
  • Batch mode does not accept shared --mapping.
  • Mapping files are sensitive assets. Protect them.

has text restore

Restores anonymized text using mapping JSON.

bash
{baseDir}/scripts/has.sh text restore --mapping mapping.json --text "<person name[1].personal.name> lives in ..."
{baseDir}/scripts/has.sh text restore --mapping mapping.json --file anonymized.txt --output restored.txt
{baseDir}/scripts/has.sh text restore --dir ./.has/anonymized/ --output-dir ./.has/restored/

Parameters:

ParameterRequiredDescription
--mappingsingle-file: yesMapping JSON file path
--text / --file / --dirone inputInput source
--outputsingle-fileOutput path for restored text
--mapping-dirbatchPer-file mapping directory (default: <dir>/mappings/)
--output-dirbatchOutput directory for restored files (default: sibling restored/ under .has/, or <dir>/.has/restored/)
--max-chunk-tokensMax tokens per chunk when model restore is needed, default 3000
--max-parallel-requestsMax model-backed restore chunks in parallel

Behavior:

  • Single-file mode returns inline text unless --output is provided.
  • restore --dir uses per-file mapping JSON files. It does not accept a shared --mapping.
  • restore --dir expects mapping files at <mapping-dir>/<filename>.mapping.json (matching the naming convention produced by hide --dir).

Typical Text Workflow

Anonymize text before sending it to a cloud LLM, then restore the answer:

  1. hide to produce anonymized text plus mapping
  2. send anonymized text to the cloud model with a tag-format explanation (see below)
  3. restore the model response with the mapping

For multi-line text, prefer file-based intermediates over shell variables.

Show full SKILL.md (662 more words)Show less
Prompting the cloud LLM with anonymized text

When forwarding anonymized text to a cloud LLM, the agent must prepend a brief explanation of the tag format so the model understands and preserves the tags. Include wording equivalent to the following (adjust language to match the conversation):

The text below has been anonymized. Sensitive entities are replaced by tags in the format <EntityType[ID].Category.Attribute>:

  • EntityType — the kind of entity (matches the --type value, e.g. person name, address, phone number).
  • [ID] — a numeric identifier. The same type + same ID always refers to the same real-world entity (e.g. every <person name[1]> is the same person; <person name[2]> is a different person).
  • .Category.Attribute — additional semantic classification of the entity.

Rules:

  1. Preserve every tag exactly as-is in your response — do not modify, translate, paraphrase, omit, or expand any tag.
  2. When referring to an anonymized entity, reuse the original tag with the correct ID.
  3. Do not attempt to guess the real values behind the tags.

Omitting this explanation may cause the cloud model to strip, rewrite, or misinterpret the tags, which will break the restore step.

Model Download Mirrors

If HuggingFace downloads fail, use these ModelScope mirrors:

  • text model: https://modelscope.cn/models/TencentXuanwu/HaS_Text_0209_0.6B_Q8
  • image model: https://modelscope.cn/models/TencentXuanwu/HaS_Image_0209_FP32

Part 2: has image

has image is the image namespace. It supports:

  • scan
  • hide
  • categories

It loads the YOLO segmentation model directly and does not require llama-server.

Image Usage

bash
{baseDir}/scripts/has.sh image [--timing] [--model MODEL] <scan|hide|categories> [options]

Namespace options:

OptionApplies toDescription
--timingall image commandsInclude elapsed_ms in the JSON output
--model PATHscan, hideOverride the image model path

Image Privacy Categories

Common categories include biometric_face, id_card, passport, license_plate, qr_code, mobile_screen, and paper.

Use has image categories when you need the full catalog of 21 supported classes.

--type accepts:

  • English names
  • Chinese names
  • numeric IDs
  • unique partial matches such as face

Rules:

  • Empty --type values are rejected.
  • Ambiguous partial matches fail fast.
  • Omit --type to scan or mask all supported categories.
  • In image directory mode, skipped can include unprocessed files.

has image scan

Finds privacy regions without modifying the image.

bash
{baseDir}/scripts/has.sh image scan --image photo.jpg --type face --type id_card
{baseDir}/scripts/has.sh image scan --dir ./photos/ --type face

Parameters:

ParameterRequiredDescription
--image / --dirone inputSingle image or batch directory
--typeCategory filter; repeat to add more
--confConfidence threshold, default 0.25
--modelOverride image model path

Output:

  • Single-image mode returns detections and summary
  • Directory mode returns results, count, summary, and optional skipped

has image hide

Detects and masks privacy regions in images.

bash
{baseDir}/scripts/has.sh image hide --image photo.jpg --type face --method blur --strength 25
{baseDir}/scripts/has.sh image hide --dir ./photos/

Parameters:

ParameterRequiredDescription
--image / --dirone inputSingle image or batch directory
--outputsingle-imageOutput image path
--output-dirbatchOutput directory
--typeCategory filter; repeat to add more
--methodmosaic, blur, or fill; default mosaic
--strengthMosaic block size or blur radius; default 15
--fill-colorFill color for fill; default #000000
--confConfidence threshold; default 0.25
--modelOverride image model path

Behavior:

  • Refuses to overwrite the source image.
  • Directory mode accepts --output-dir, not --output.
  • For qr_code and barcode detections with --method mosaic, the block size is automatically raised to max(strength, bbox_short_side // 10, 20) to prevent the encoding from surviving pixelation. After masking, a lightweight verification confirms the code is no longer machine-readable; if it is, the strength is escalated further (up to a fill fallback). Each affected detection includes an effective_strength field in the output.
  • A cv2-based fallback supplements YOLO detection for QR codes and barcodes. When YOLO misses a code (e.g. large codes on plain backgrounds), cv2.QRCodeDetector and cv2.barcode.BarcodeDetector provide additional coverage. When YOLO misclassifies a code region as a different category (e.g. monitor_screen), cv2 corrects the category before --type filtering, so --type qr_code catches all QR codes regardless of YOLO's label. Corrected detections include a "corrected_from" field; new detections include "cv2_fallback": true.

has image categories

Lists all supported image privacy categories.

bash
{baseDir}/scripts/has.sh image categories
{baseDir}/scripts/has.sh image categories --timing

Behavior:

  • Returns {"categories":[...]}
  • Supports --timing

Suggested Combined Scan

For a mixed workspace:

  1. run has text scan ... --dir <dir> for plaintext
  2. run has image scan --dir <dir> for images
  3. merge the two JSON results into one privacy report

If the user wants masking after that, use hide on the specific files or directories you already identified.

© LeoYeAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 34 other files (scripts, references) in skills/has-anonymizer of LeoYeAI/openclaw-master-skills.

  • SKILL.md
  • _meta.json
  • references/DESIGN.md
  • references/eval/eval.py
  • references/eval/test_case/text_long_cases.json
  • references/eval/test_case/text_medium_cases.json
  • references/eval/test_case/text_short_cases.json
  • scripts/has-image.sh
  • scripts/has-text.sh
  • scripts/has.sh
  • scripts/has_image.py
  • scripts/has_text/__init__.py
  • scripts/has_text/__main__.py
  • scripts/has_text/chunker.py
  • scripts/has_text/cli_utils.py
  • scripts/has_text/client.py
  • … and 19 more

Open the folder on GitHubat commit e5199b5

Compare with similar skills

Has Anonymizer 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.

Has Anonymizer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Has Anonymizer this skillLeoYeAI/openclaw-master-skills2.2k—~4.5kAutomated safety check: PassMIT
Foundation Models On Deviceaffaan-m/ECC276k4 repos~2.1kAutomated safety check: PassMIT
Mdm Device Managementsickn33/agentic-awesome-skills47k1 repos~3kAutomated safety check: NotesMIT
Seek And Analyze Videosickn33/agentic-awesome-skills47k2 repos~997Automated safety check: PassMIT
Element Hidingthedaviddias/Front-End-Checklist74k—~596Automated safety check: PassMIT
Foundation Models On Deviceaffaan-m/ECC276k3 repos~1.5kAutomated safety check: PassMIT

Similar skills

  • Apple FoundationModels framework for on-device LLM — text generation, guided generation with @Generable, tool calling, and snapshot streaming in iOS 26+.

    276k GitHub starsUsed in 4 repos~2.1k tokens
    AI & LLM EngineeringAuto-check passed
  • Mdm Device Management

    sickn33/agentic-awesome-skills

    Manage and secure company devices with MDM solutions. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 1 repo~3k tokens
    DevOps & CloudAuto-check: notes
  • Seek And Analyze Video

    sickn33/agentic-awesome-skills

    Seek and analyze video content using Memories.ai Large Visual Memory Model for persistent video intelligence

    47k GitHub starsUsed in 2 repos~997 tokens
    Auto-check passed
  • Element Hiding

    thedaviddias/Front-End-Checklist

    A skill your agent uses when reviewing a website for layout and functionality issues caused by adblocker filter rules targeting common ad-related class names and IDs.

    74k GitHub stars~596 tokensUpdated 3 days ago
    Legal & ComplianceAuto-check passed
  • 苹果FoundationModels框架用于设备上的LLM——文本生成、使用@Generable进行引导生成、工具调用,以及在iOS 26+中的快照流。

    276k GitHub starsUsed in 3 repos~1.5k tokens
    MobileAuto-check passed
  • Official

    Provides guidance and instructions on managing remote devices on Developer Device Platform (DDP).

    21k GitHub stars~2.5k tokensUpdated yesterday
    MobileAuto-check passed

More from LeoYeAI/openclaw-master-skills

All 1,235 skills in this repo
  • DevOps Pipeline Management

    LeoYeAI/openclaw-master-skills

    Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.

    2.2k GitHub stars~4.2k tokensUpdated 2 mo ago
    Auto-check: notes
  • Feishu Document Collaboration

    LeoYeAI/openclaw-master-skills

    Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.

    2.2k GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Files Memory System

    LeoYeAI/openclaw-master-skills

    Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.

    2.2k GitHub stars~3.8k tokensUpdated 2 mo ago
    Auto-check passed
  • GEO-Claw AI Visibility Agent

    LeoYeAI/openclaw-master-skills

    Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.

    2.2k GitHub stars~4.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Google Workspace CLI

    LeoYeAI/openclaw-master-skills

    Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.

    2.2k GitHub stars~2.6k tokensUpdated 2 mo ago
    Auto-check: notes
  • HealthFit Health Advisors

    LeoYeAI/openclaw-master-skills

    Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.

    2.2k GitHub stars~4.4k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Has Anonymizer

What does Has Anonymizer do?

HaS (Hide and Seek) on-device text and image anonymization. An agent skill from LeoYeAI/openclaw-master-skills. Has Anonymizer is an agent skill from LeoYeAI/openclaw-master-skills. HaS (Hide and Seek) on-device text and image anonymization.

When should I use Has Anonymizer?

Has Anonymizer fits situations like: anonymizing text before sending to cloud LLMs then restoring the response; anonymizing documents; messages before sharing; images for sensitive content.

How do I install Has Anonymizer in Claude Code?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill has-anonymizer -a claude-code`. Or copy the skill folder (skills/has-anonymizer in LeoYeAI/openclaw-master-skills) into .claude/skills/has-anonymizer in your project. Claude Code loads it when a task matches its description.

How do I install Has Anonymizer in Codex?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill has-anonymizer -a codex`. Or copy the skill folder (skills/has-anonymizer in LeoYeAI/openclaw-master-skills) into .agents/skills/has-anonymizer in your project. Codex loads it when a task matches its description.

Can I use Has Anonymizer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LeoYeAI/openclaw-master-skills --skill has-anonymizer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/has-anonymizer, .gemini/skills/has-anonymizer, .github/skills/has-anonymizer and .opencode/skills/has-anonymizer in your project.

What does Has Anonymizer need to run?

Going by SKILL.md and its folder, Has Anonymizer needs Python and a shell for the scripts in its folder. Our summary lists: Python 3; A Bash shell.

Does Has Anonymizer access the network?

SKILL.md names 1 domain. In commands or code: modelscope.cn; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Has Anonymizer safe to install?

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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Has Anonymizer use?

Has Anonymizer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Has Anonymizer use?

About 4.5k tokens (SKILL.md is roughly 18k 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 29k tokens, read only when the agent opens those files.

What are the alternatives to Has Anonymizer?

Skills that share tags, products or a category with Has Anonymizer: Foundation Models On Device (affaan-m/ECC, 276k stars), Mdm Device Management (sickn33/agentic-awesome-skills, 47k stars), Seek And Analyze Video (sickn33/agentic-awesome-skills, 47k stars) and Element Hiding (thedaviddias/Front-End-Checklist, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Has Anonymizer?

LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,160 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.

Source: LeoYeAI/openclaw-master-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.