← 返回 Skills 市场
ivangdavila

Face

作者 Iván · GitHub ↗ · v1.0.0 · MIT-0
linuxdarwinwin32 ✓ 安全检测通过
302
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install face
功能描述
Put a human face on your agent with fast avatar shortlists, gender control, transparent options, and reusable profile links. Use when the user wants an avata...
使用说明 (SKILL.md)

Put a Face on Your Agent

Use this skill to give an agent, persona, group, or Telegram surface a real human-looking face fast.

The job is simple:

  • open a stable face listing URL
  • extract a small shortlist of faces
  • send the options to the user to choose
  • if one is approved, reuse that link as the avatar or suggest saving it in identity

Core Workflow

1. Start from the stable URL

Default to:

https://generated.photos/faces/beautified/{gender}/young-adult

Notes:

  • beautified and young-adult are the best default for this use case
  • gender is the main parameter that usually matters
  • the site may also accept .../young-adult/{gender}, but the canonical form resolves to .../{gender}/young-adult

2. Only trust filters the site already exposes

From the page HTML, the route families that were verified as stable are:

  • head pose: front-facing, left-facing, right-facing
  • race: asian-race, black-race, latino-race, white-race
  • eye color: brown-eyes, grey-eyes, blue-eyes, green-eyes
  • hair color: brown-hair, black-hair, blond-hair
  • hair length: short, medium, long
  • emotion: joy, neutral

Do not invent deeper URL combinations from memory. If the user wants narrower filtering, open the base page and follow the exact links that page emits.

3. Extract faces from HTML before using a browser

The page already contains:

  • /face/... detail links
  • data-image-id
  • https://images.generated.photos/... preview URLs

Use a direct fetch first. Return 3 to 6 options max.

python3 - \x3C\x3C'PY'
import json
import re
from urllib.request import Request, urlopen

url = "https://generated.photos/faces/beautified/female/young-adult"
raw = urlopen(Request(url, headers={"User-Agent": "Mozilla/5.0"})).read().decode()

cards = re.findall(
    r'href="(/face/[^"]+)".*?data-image-id="([^"]+)".*?src="(https://images.generated.photos[^"]+)"',
    raw,
    re.S,
)
transparent = {
    image_id: thumb.replace("\\u002F", "/")
    for image_id, thumb in re.findall(
        r'id:"([^"]+)".*?transparent:\{thumb_url:"([^"]+)"',
        raw,
    )
}

for n, (detail, image_id, thumb) in enumerate(cards[:6], 1):
    print(json.dumps({
        "n": n,
        "detail": "https://generated.photos" + detail,
        "thumb": thumb,
        "transparent": transparent.get(image_id),
    }))
PY

4. Treat background as extraction, not routing

Do not model background as a clean route parameter.

What was verified:

  • the page UI shows a background area
  • the route itself does not expose a simple stable public background parameter
  • transparent versions appear in embedded data as transparent.thumb_url

Rule:

  • if the user wants a transparent avatar, prefer transparent.thumb_url
  • if the user wants a bigger preview, open the chosen detail page and use the 512px og:image or twitter:image

5. Always keep the user in the loop

Default output should be:

  • 3 to 6 numbered options
  • one normal preview per option
  • transparent preview too when available
  • the detail page link

Do not auto-pick unless the user asks.

6. Reuse the chosen face properly

Once the user chooses one:

  • propose using it as the avatar for the agent, group, Telegram profile, or similar
  • if it is their long-term face, suggest storing the chosen link in identity
  • keep the detail page link, not just the image preview URL

Recommended Response Shape

When you answer, keep it compact:

I found 4 options for your agent face.

1. Option A
   Detail: ...
   Preview: ...
   Transparent: ...

2. Option B
   Detail: ...
   Preview: ...
   Transparent: ...

Tell me which one you want and I’ll prepare it as the avatar.

Common Mistakes

  • guessing URL variants instead of following the page's real filters
  • trying to control background through the route
  • showing too many faces at once
  • saving only the preview URL instead of the detail link
  • changing an avatar without explicit approval

External Endpoints

Endpoint Data Sent Purpose
https://generated.photos Filter path segments and face detail page requests Find faces and open detail pages
https://images.generated.photos Image GET requests only Preview and transparent preview retrieval

No other data is sent externally.

安全使用建议
This skill scrapes generated.photos web pages and images.urls to build avatar shortlists; it does not request credentials. Before installing, consider: (1) generated.photos' terms of service and whether scraping is permitted or whether you should use their official API; (2) privacy and ethical concerns when using human-like faces for agent identities; (3) the skill performs network GETs so ensure your environment permits outbound requests; and (4) the metadata mentions 'curl' but the runtime snippet uses python3 — confirm that python3 is available and network access is allowed. If you need stricter guarantees, ask the author to use an official API or include explicit rate-limiting and TOS compliance instructions.
功能分析
Type: OpenClaw Skill Name: face Version: 1.0.0 The 'Face' skill is a legitimate tool designed to help users find and select AI-generated avatars from generated.photos. The included Python script in SKILL.md is a straightforward web scraper that extracts image URLs and metadata using standard libraries, and the instructions emphasize keeping the user in the loop and obtaining explicit approval before making changes.
能力评估
Purpose & Capability
The skill's purpose (fetching avatar shortlists from generated.photos) matches the instructions and required tools. Minor mismatch: the metadata lists 'curl' as a required binary but the SKILL.md uses python3/urllib for fetching; curl appears unnecessary but not dangerous.
Instruction Scope
SKILL.md confines actions to fetching HTML and images from generated.photos and images.generated.photos, extracting preview/transparent URLs, and presenting 3–6 options to the user. It does not instruct reading local files, other environment variables, or sending data to unexpected endpoints. It explicitly warns not to auto-pick without user approval.
Install Mechanism
This is an instruction-only skill with no install spec or code files, so nothing is written to disk. That is proportionate for the task.
Credentials
No credentials or environment variables are requested (appropriate). The only minor oddity is the declared dependency on 'curl' despite the provided code using python3 for network requests.
Persistence & Privilege
The skill is not 'always' enabled and does not request any persistent system-wide privileges or configuration changes. It recommends storing chosen links in identity but does not require writing them automatically.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install face
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /face 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Refines the positioning around putting a human face on the agent with faster avatar selection.
元数据
Slug face
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Face 是什么?

Put a human face on your agent with fast avatar shortlists, gender control, transparent options, and reusable profile links. Use when the user wants an avata... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 302 次。

如何安装 Face?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install face」即可一键安装,无需额外配置。

Face 是免费的吗?

是的,Face 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Face 支持哪些平台?

Face 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(linux, darwin, win32)。

谁开发了 Face?

由 Iván(@ivangdavila)开发并维护,当前版本 v1.0.0。

💬 留言讨论