Token导航 LogoToken导航TokenDH.com
研究检索需要联网clawhub未标认证来源可访问clear审计提醒

anyone-skill任何人技能

Agent Skill

anyone-skill 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,982

周安装

123

GitHub Stars

公开资料未说明

下载量

974
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:anyone-skill(任何人技能)
来源仓库:https://github.com/neiljo-gy/anyone-skill
安装命令:
openclaw skills install anyone-skill
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install anyone-skill

简介

用于将真实或虚构人物转化为可运行的 OpenPersona 技能包。

  • 收集聊天记录、文档与公开资料构建个性化代理行为模型。
  • 适用于历史人物模拟、虚拟助手定制等场景。anyone-skill 属于研究检索类 Skill,可作为该场景下的辅助能力补充。
  • 使用时需尊重隐私边界,避免滥用个人数据或制造虚假身份。
  • 安装前应评估数据来源合法性及潜在伦理风险。

SKILL.md

name
anyone-skill
description
Distill anyone into a runnable OpenPersona skill pack — real or fictional, personal or public, living or historical. Collects chat logs, documents, and public content, extracts a 4-dimension persona, and generates a portable OpenPersona pack via skills/open-persona. Use when asked to distill, clone, or create a persona for any person or character.
license
MIT
compatibility
Designed for Claude Code, Cursor, or OpenClaw. Requires Python 3. Uses WebSearch for public figures and fictional characters.
allowed-tools
Read Write Edit Bash WebSearch
metadata
version
1.1.2
author
acnlabs

anyone.skill — Distill Anyone

Every person is a unique decision system, an irreplicable voice, a finite set of memories. anyone-skill distills that uniqueness into a portable, evolvable OpenPersona skill pack.

anyone-skill is a distillation front-end for OpenPersona. It handles data collection, 4-dimension extraction, and evidence grading. The final output is a full OpenPersona persona pack generated via skills/open-persona.

Dependency chain: anyone-skillskills/open-personaopenpersona create Extended chain (local model): anyone-skillpersona-knowledgepersona-model-trainer → runnable persona model

Optional integration: When persona-knowledge is installed (skills/persona-knowledge/), anyone-skill uses it for persistent storage, semantic search, and Knowledge Graph instead of writing directly to training/raw/. Detection:

# Check at start of Phase 3 — if this directory exists, use persona-knowledge integration
ls skills/persona-knowledge/SKILL.md 2>/dev/null && echo "persona-knowledge detected"

When detected, data flow becomes: source → persona-knowledge ingest → MemPalace + KG + wiki → persona-knowledge export → training/

Trigger phrases

  • /create-anyone
  • "distill X into a skill"
  • "create a persona for X"
  • "make a skill pack for X"
  • "I want to talk to X as an AI"
  • "clone X's personality"

To evolve an existing persona:

  • "I have more data" / "add this to X"
  • "that's not right" / "X wouldn't say that"
  • /update-anyone {slug}

Tools

TaskTool
Read any text / JSON / CSV / PDF / imageRead (native — use for most chat exports)
Search public figures / fictional charactersWebSearch
Extract SQLite databases (iMessage / WeChat)Bashpython3 ${CLAUDE_SKILL_DIR}/scripts/preprocess.py --input <file.db>
Sample oversized files (>5000 messages)Bashpython3 ${CLAUDE_SKILL_DIR}/scripts/preprocess.py --input <file> --max 3000
Write / update filesWrite / Edit
Version managementBashpython3 ${CLAUDE_SKILL_DIR}/scripts/version_manager.py
List existing personasBashpython3 ${CLAUDE_SKILL_DIR}/scripts/skill_writer.py --action list
Reading strategy: use Read directly for all text-based exports — WhatsApp _chat.txt, Telegram result.json, Slack/Discord JSON, email .eml, Twitter/X archive, Feishu/DingTalk export, plain text, CSV. The agent understands any readable format natively; no parser needed. Use preprocess.py only for: (1) binary SQLite .db files, (2) files too large to fit in context (auto-samples down to --max).

Phase 0: Classify the Subject

Determine which category the subject falls into — different categories use different data strategies and ethical rules:

Who do you want to distill?

  [1] Yourself           — full digital self
  [2] Someone you know   — colleague, friend, family, partner, ex
  [3] Public figure      — entrepreneur, artist, athlete, politician
  [4] Fictional character — game, anime, novel, film, series
  [5] Historical figure  — relies on documents, biographies, speeches
  [6] Archetype          — composite persona, no single real subject

Phase 1: Ethics & Copyright Check

Full rules: references/ethics.md. Key points by category:

Someone you know — confirm personal use only; no harassment, impersonation, or deception; all data stored locally.

Public figure — use only publicly traceable sources; generated skill must include disclaimer on first run: *"Based on public information. Not the real person. For reference only."*

Fictional character

  • Personal local use → no restrictions, direct roleplay mode
  • Distributing to others → activate Inspired-by mode (reinterpret, don't replicate)
  • The key criterion is distribution intent, not release year

Historical figure — publicly published sources only; mark uncertain claims as inferred (L3/L4).

Archetype — inform user this is a synthetic persona with no real-world counterpart.


Phase 2: Intake (exactly 3 questions)

Ask only these 3 questions, in order. Summarize answers before proceeding.

Q1: Codename (required)

What should we call them? Doesn't need to be their real name. e.g. Alex · Jobs · Geralt · Grandma Rose

Q2: Basic info (one sentence, skippable)

Age / era, role / identity, where they're from — whatever comes to mind. e.g. 28, product designer, Berlin · Apple co-founder, 1955–2011, Silicon Valley · The Witcher, monster hunter, medieval fantasy world

Q3: Personality impression (one sentence, skippable)

What's your core impression? MBTI, traits, contradictions, a moment that defined them. e.g. INTJ, perfectionist, publicly harsh but privately warm · quiet until it matters, never explains their moves

Phase 3: Collect Source Material

Guide the user based on subject type:

Someone you know / Yourself

How would you like to provide source material?
More data = higher fidelity.

  [A] Chat export
      iMessage (macOS) · WhatsApp export · Telegram export
      Signal export · Slack export · Discord export
      WeChat (WeChatMsg / PyWxDump) · Feishu / DingTalk

  [B] Documents / email
      Notes, diaries, letters, essays, .eml / .mbox

  [C] Social media archive
      Twitter/X data export · Instagram archive · LinkedIn export
      Facebook data download

  [D] Paste / describe
      Paste text directly, or describe from memory

For each file provided:

  • Text / JSON / CSV exports → use Read directly. The agent reads and understands any format.
  • SQLite .db files (iMessage chat.db, WeChat PyWxDump) → run preprocess.py --input <file.db>
  • Very large files (>5 MB or clearly >5000 messages) → run preprocess.py --input <file> --max 3000

Path A: persona-knowledge detected

If persona-knowledge is installed, ingest each source via its pipeline:

python skills/persona-knowledge/scripts/ingest.py \
  --slug {slug} --source <path> --persona-name "{Name}"

This automatically handles PII scanning, deduplication, MemPalace storage, KG extraction, and sources/ backup. No manual training/raw/ writing needed.

Report after each source: ✅ [N] messages from [source] → persona-knowledge/{slug}

Path B: no persona-knowledge (default)

After processing each source, immediately save a copy to training/raw/ (do not wait for Step 6-D):

Source type           → save as training/raw/…
─────────────────────────────────────────────────────────────
Chat export (any)     → whatsapp.jsonl / imessage.jsonl / …  [{role, content}, …]
Essay / diary / notes → essays.txt                           plain text paragraphs
Interview / Q&A       → interviews.jsonl                     [{role:"user"|"assistant", content}]
Social posts          → social.jsonl                         [{role:"assistant", content}]
  • Keep original wording — do NOT paraphrase in raw/
  • Redact obvious PII before saving (phone numbers, SSNs, addresses)

Report after processing each source: ✅ [N] messages from [source] ([date range if known]) → saved to training/raw/[filename]

Public figure / Historical figure

Will search the following automatically via WebSearch:

  → Interviews and transcripts (video subtitles / text)
  → Books, speeches, open letters, earnings calls
  → Authorized biographies and academic studies
  → Public social media posts (X / LinkedIn / Instagram)
  → Documentary reviews and analytical essays

Report: [N] sources indexed, ~[M] words of coverage

User may also provide: book PDFs / video transcripts / interview screenshots.

Save all collected text to training/raw/ as plain .txt or structured .jsonl (interviews as {role:"user"|"assistant", content}).

Fictional character

Will collect via:

  [A] WebSearch → character wiki (Fandom / IMDB / game databases)
  [B] User-provided: script, lore book, novel text, dialogue list
  [C] User-described: memorable quotes, behavioral patterns

Activate copyright guard: ask *"Will this skill be shared with others?"*

  • Yes → Inspired-by mode
  • No → direct roleplay mode

Save all collected text to training/raw/ (scripts → script.jsonl, lore/wiki → lore.txt).

Archetype

Skip data collection. Proceed directly to Phase 4 based on Phase 2 impressions.


Phase 4: 4-Dimension Extraction

After all source material is processed, extract along 4 dimensions.

persona-knowledge integration (when detected)

Before extraction, query MemPalace for an overview and use the wiki as a starting point:

# Get a ~170-token overview of what's been ingested
mempalace wake-up --wing {slug}

Then read existing wiki pages for structured knowledge using the Read tool:

  • ~/.openpersona/knowledge/{slug}/wiki/identity.md
  • ~/.openpersona/knowledge/{slug}/wiki/voice.md
  • ~/.openpersona/knowledge/{slug}/wiki/values.md
  • ~/.openpersona/knowledge/{slug}/wiki/thinking.md

Use the wiki content as evidence-grounded starting points for each dimension. Fill gaps with semantic search: mempalace search "decision making style" --wing {slug}

After extraction, update the wiki pages with new insights (following Phase 3 of persona-knowledge's SKILL.md).

Dimension 1: Procedure — *How do they think?*

  • Mental models: 3–6 frameworks they habitually use (e.g. first principles, inversion, analogical reasoning)
  • Decision heuristics: their rule-of-thumb judgments ("always X before Y", "never trust Z unless...")
  • Information preference: data-driven or intuitive? big-picture or detail-oriented?
  • Risk posture: where are they bold, where are they cautious?

Dimension 2: Interaction — *How do they speak?*

  • Vocabulary: high-frequency words, catchphrases, words they never use, signature sentence structures
  • Rhythm and density: fast/slow, high/low information density, use of silence or pauses
  • Emotional temperature: composed vs. expressive; what silence means for them
  • Conflict style: how they express frustration; how they respond to being challenged
  • Humor: self-deprecating / ironic / dry / none

Dimension 3: Memory — *What shaped them?*

  • Key events: 3–5 specific moments that formed their character (with date/context when possible)
  • Relationship network: the people who influenced them most, and the pattern of those relationships
  • Fixations / avoidances: themes they return to or deliberately avoid
  • Anchors of pride: what they are most proud of

Dimension 4: Personality — *What are their hard limits?*

  • Core values: 3 non-negotiable principles they won't compromise on
  • Internal contradictions: the biggest tension within their character
  • Immutable traits: qualities that stay constant regardless of context
  • Layer 0 prohibitions: things they would never say or do under any circumstances

Phase 5: Evidence Grading

Tag each extracted piece with a confidence level:

LevelStandardTag
L1 Direct quoteVerbatim, traceable source[L1: source]
L2 ReportedCited or paraphrased by others, verifiable[L2]
L3 InferredReasonably inferred from multiple signals[L3: inferred]
L4 InspiredBased on impression / fictional canon / archetype[L4: inspired]

Conflict resolution: higher level wins. Equal-level conflicts are listed side by side with source noted.


Phase 6: Generate OpenPersona Skill Pack

Field mapping reference: references/output-format.md

Step 6-A: Build persona.json

Map extraction results to OpenPersona v0.17+ format:

{
  "soul": {
    "identity": {
      "personaName": "Display name",
      "slug": "lowercase-hyphenated-slug",
      "bio": "2–4 sentence background. Key events. L1/L2 evidence preferred.",
      "sourceIdentity": "Real name or 'CharacterName from WorkTitle' (real/fictional subjects only)"
    },
    "aesthetic": {
      "visualDescription": "Appearance / visual style (omit if unknown)"
    },
    "character": {
      "personality": "Core traits, 3–5 descriptive tags. From Personality dimension.",
      "speakingStyle": "Vocabulary, rhythm, emotional temperature, catchphrases. From Interaction dimension.",
      "boundaries": [
        "Layer 0 constraint 1 (L1/L2 evidence)",
        "Layer 0 constraint 2"
      ]
    }
  },
  "body": {
    "runtime": {
      "framework": "openclaw",
      "modalities": ["text"]
    }
  },
  "evolution": {
    "instance": {
      "enabled": true,
      "boundaries": {
        "immutableTraits": ["Immutable trait 1", "Immutable trait 2"]
      }
    }
  }
}

Filling rules:

  • Use L1/L2 evidence for bio, personality, speakingStyle
  • L3/L4 content stays in persona.md only — not in persona.json
  • sourceIdentity: real people → their name; fictional → "CharacterName from WorkTitle"; archetypes → omit
  • Public figures / historical figures: add to boundaries: "Based on public information. Not the real person."

Step 6-B: Generate skill pack via skills/open-persona

Load skills/open-persona/SKILL.md and run with the persona.json from Step 6-A:

npx openpersona create --config persona.json --output ./{slug}-skill

Output is a full OpenPersona persona pack:

{slug}-skill/
├── SKILL.md          ← Soul/Body/Faculty/Skill index
├── persona.json      ← Declaration (derived fields stripped)
├── state.json        ← Initial runtime state
├── soul/
│   ├── injection.md  ← Self-awareness injection
│   └── constitution.md
├── agent-card.json
└── scripts/
    └── state-sync.js ← Body nervous system

Step 6-C: Install (optional)

npx openpersona install ./{slug}-skill
npx openpersona switch {slug}

Step 6-D: Export Training Data (for persona-model-trainer)

Full procedure and file templates: references/training-export.md

Export a training/ directory with raw source files, distilled conversation turns, a character profile, and metadata. If persona-knowledge is available, run export_training.py; otherwise build files manually from Phase 3–4 outputs.

With persona-knowledge (versioned export — preferred):

python skills/persona-knowledge/scripts/export_training.py \
  --slug {slug} --output training/
# Auto-assigns version (v1, v2, …). Override with --version v2.
# Writes export_version + export_hash to training/metadata.json.
# persona-model-trainer will record these as dataset_version + dataset_export_hash
# in training_summary.json, forming a complete provenance chain.

View export history at any time:

python skills/persona-knowledge/scripts/export_training.py --slug {slug} --list

→ To train a local model, pass the exported probes.json to persona-model-trainer:

bash skills/persona-model-trainer/scripts/pipeline.sh \
  --slug {slug} \
  --model google/gemma-4-E4B-it \
  --source ./training \
  --method mlx \       # or: unsloth (NVIDIA) / colab (no GPU)
  --preset gemma4 \
  --probes ./training/probes.json
Full walkthrough: persona-model-trainer/references/pipeline-guide.md

persona.md (always keep locally)

Alongside persona.json, maintain a persona.md with the full 4-dimension extraction + all evidence tags. Used for Phase 7 evolution. Not included in the skill pack.


Phase 7: Evolve

Enter evolution mode when the user says — don't restart from scratch:

  • Add material: "I found more chat logs" / "here's another source"

→ Preprocess new source → save to training/raw/ → merge into persona.md → conflict check → update persona.json → re-run Step 6-D (update conversations.jsonl + metadata.json) → re-run Phase 6-B → bump version

  • Correct: "they wouldn't say that" / "that description is wrong"

→ Locate persona.md section → revise → adjust evidence level → sync persona.json → update affected turns in training/conversations.jsonl → bump version

  • Rollback: /rollback {slug} {version}

python3 scripts/version_manager.py --action rollback --slug {slug} --version {version}

Print a diff summary after each update:

🔄 v0.1.0 → v0.1.1
  + 3 new L1 evidence items (Interaction dimension)
  ✏️  Revised speakingStyle — removed inaccurate catchphrase
  ↻  Regenerated skill pack → {slug}-skill/

Layer 0 Safety (hard rules — always enforced)

  1. Someone you know: not for harassment, stalking, or deception; does not replace real human connection; if unhealthy obsession is detected, gently suggest professional support
  2. Public figures: disclaimer required on first run; do not fabricate political views or private life details they haven't expressed
  3. Fictional characters (when distributing): Inspired-by mode required; output must differ meaningfully from the original IP
  4. Universal: the generated skill never speaks words the subject would absolutely never say — unless supported by L1/L2 evidence

Subject Strategy Reference

SubjectData strategyOutput modeCopyright guard
YourselfChat · diary · social archiveFull persona
Someone you knowChat · documentsFull persona
Public figureWebSearch · public documentsMental models + voiceDisclaimer mode
Fictional (personal use)Wiki · user-providedDirect roleplay
Fictional (distributing)Wiki · user-providedInspired-by mode✅ Active
Historical figureDocuments · biographies · WebSearchMental models + reconstructionDisclaimer mode
ArchetypeUser description onlySynthetic persona

List existing personas

When the user says /list-anyone:

python3 ${CLAUDE_SKILL_DIR}/scripts/skill_writer.py --action list --base-dir ./.claude/skills

Display: codename · version · last updated · subject type.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

92.87%
按下载量换算905

安全审计

VirusTotal

可疑

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills