| name | copy-my-profile |
| description | Extract a standardized cross-tool user profile from any AI agent's long-term memory (USER.md, MEMORY.md, AGENTS.md, CLAUDE.md, .cursorrules, etc.) so you can re-use it in another AI tool without retraining. Output is a portable Markdown document with five categories — instructions, identity, profession, projects, preferences. Works with Claude Code, OpenClaw, Codex CLI, Cursor, Cline, Continue, Aider, or any LLM agent. 适用场景:生成我的画像/导出 profile/ 拷贝到其他 AI 工具/跨工具同步偏好/换 agent 不丢记忆。
|
Copy My Profile
Generate a portable Markdown profile from one AI tool's long-term memory and
re-use it in another. Solves the "I just trained Tool A to know me, now I want
to use Tool B" problem without retraining.
Why this skill
Modern developers use multiple AI tools: Claude Code at home, Cursor at work,
ChatGPT for brainstorming, OpenClaw for backend automation, etc. Each tool
accumulates its own memory of who you are — but none of them talk to each
other. This skill defines a portable Markdown format (like vCard for
contacts, or ICS for calendars) so your "AI profile" can move with you.
- Zero infrastructure: no cloud, no account, no sync server
- Privacy-controlled: you see the full output before copying anywhere
- Standard format: 5 categories that any LLM can parse reliably
Output categories (5 in order)
Detailed format examples and filtering rules live in
references/profile-template.md (read it during step 2-3).
- Instructions — Explicit rules the user wants followed (tone, format,
behavior corrections, ⚠️-marked rules in memory files)
- Identity — Name, education, interests, non-sensitive personal info
- Profession — Role, company, skill domains
- Projects — Projects the user actually built or invested effort in
- Preferences — Broadly-applicable work style and taste preferences
Execution steps
Step 1 — Pick execution path
Choose based on the current runtime environment.
Path A — Memory-search-capable environment (Claude Code, OpenClaw, Codex
CLI, or any agent that exposes a memory_search / file-read tool):
- Run
memory_search for topics like "instructions", "preferences",
"projects"
- Read key files based on the host tool:
- Claude Code:
~/.claude/CLAUDE.md, project CLAUDE.md
- OpenClaw:
USER.md, MEMORY.md, AGENTS.md, memory/*.md
- Codex CLI:
AGENTS.md, ~/.codex/instructions.md
- Cursor: project
.cursorrules, .cursor/rules/*.md
- Cline: project
.clinerules
- Continue:
~/.continue/config.json (system message), workspace
.continue/*.md
- Aider:
CONVENTIONS.md, .aider.conf.yml
- See
references/tools-memory-map.md for the full table.
- Read the most recent N daily memory logs (if the tool keeps them) to
capture recent context
Path B — No memory-search tool (Cline without filesystem, web ChatGPT,
fresh Cursor session, etc.):
- Ask the user to provide files or paste relevant content (see
references/tools-memory-map.md for what to ask for)
- If the user only supplies an old profile, normalize the format and note at
the end: "Based on existing profile, not re-extracted from raw memory"
Degradation strategy (both paths):
- If a key file is missing, continue with what's available and list "missing
sources" at the bottom
- If a category has zero data, output
(no data) — don't skip the category
- If
memory_search returns empty, fall back to Path B
Step 2 — Filter
- Instructions: Only items clearly identifiable as rules in memory files;
don't fabricate. Distinction rules in
profile-template.md
- Identity: Only non-sensitive info the user has actively shared. Privacy
filter rules in
profile-template.md
- Projects: One line per project — function, status, key decisions
- Preserve the user's original phrasing as much as possible
Step 3 — Output format
Write the profile to ./my-profile.md (current directory) and also reply to
the user inline. Format:
- Each line:
[YYYY-MM-DD] - entry content
- Use
[unknown] if the date is unclear
- Within each category, sort by date ascending
- Wrap the entire profile in a single fenced Markdown code block (so the user
can copy-paste in one click)
Step 4 — Closing notes
After the code block, add a brief note covering:
- Whether all relevant info from current memory was included
- Any categories that had no data or used degradation
- Any dimensions or uncertain entries excluded (so the user can decide whether
to add them)
- Import hint: which file to paste this into for the target tool — see
references/import-prompts.md for ready-to-use prompts
Tips for cross-tool transfer
- Pull (export): Run this skill in your source tool → copy
my-profile.md
- Push (import): In the target tool, paste the profile with a prompt from
references/import-prompts.md
- The Markdown is plain text — works through clipboard, email, Notion, GitHub
gist, file transfer, anything
See also
references/profile-template.md — full output format example + filtering
rules + privacy rules
references/tools-memory-map.md — where each AI tool stores its memory
(where to read FROM and where to write TO)
references/import-prompts.md — copy-paste prompts for importing the
profile into each target tool