migrate
Skill0 starsChanged 7 months agoMITView on GitHub
Migrate to Athena from ANY previous AI setup — another Claude Code assistant, ChatGPT exports, Gemini history, Apple Notes, documents, or anything. Use when the user says 'migrate', 'bring over my old assistant', 'import my data', 'I have an existing assistant', 'I have ChatGPT history', 'I want to bring over my context', 'switch to Athena', or when the user mentions they have existing AI context they want to preserve. Also triggers when personal/me.md is empty and the user mentions having prior context. Handles everything: detects what they are coming from, imports what matters, sets up private infrastructure, gets the bot running. No re-onboarding needed if enough context is imported.
- Reads credentials
- Commits and pushes
65 other projects use a version of this.
Adopted by
Most recently taken up by
- focusreactive/webflow-to-sanity-migrationtheir own version, first seen Nov 15, 2026
- nazmirket/skillstheir own version, first seen Nov 15, 2026
- atomicinnovation/acceleratortheir own version, first seen Nov 14, 2026
- tuist/agent-plugintheir own version, first seen Nov 8, 2026
- dsifry/metaswarmtheir own version, first seen Nov 8, 2026
- codewithmukesh/dotnet-claude-kittheir own version, first seen Nov 8, 2026
Used with
Projects with it also use incident, sdd and 9 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
JkudjoSkillincident
Production incident response — structured triage, hypothesis tree, safe remediation, incident record
Also in 4 projects that use this
liatrio-labsSkillsdd
Execute the Liatrio Spec-Driven Development (SDD) workflow when explicitly invoked by the user. NOTE: this skill is NOT intended to be dynamically loaded or automatically triggered; it should only ever be explicitly called by the user.
Also in 4 projects that use this
BerryKuipersSkillscaffold
Detect project stack, apply architecture patterns, wire quality gates, and scaffold features. Use when bootstrapping a project, adding a vertical slice, wiring CI/CD, adding Docker compose, or setting up quality gates.
Also in 4 projects that use this
MicrosoftSkillinit
Also in 8 projects that use this
agenticnotetakingSkillupgrade
Apply plugin knowledge base updates to an existing generated system. Consults the Ars Contexta research graph for methodology improvements, proposes skill upgrades with research justification. Never auto-implements. Triggers on "/upgrade", "upgrade skills", "check for improvements", "update methodology".
Also in 3 projects that use this
genomewalkerSkillcheckpoint
Save a checkpoint of task status, decisions, active files, and next steps
Also in 5 projects that use this
Other versions65 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 65
- garrytan/gbrain★ 33ksame name
- tuist/tuist★ 5.9ksame name
- parcadei/Continuous-Claude★ 3.9ksame name
- parcadei/Continuous-Claude-v2★ 3.9ksame name
- parcadei/Continuous-Claude-v3★ 3.9ksame name
- codewithmukesh/dotnet-claude-kit★ 808same name
- dsifry/metaswarm★ 432same name
- pipecat-ai/gradient-bang★ 420same name
- govctl-org/govctl★ 276same name
- AsiaOstrich/universal-dev-standards★ 84same name
55 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository57 other files it gives its agents.
- .claude/rules/agents.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- knowledge/CLAUDE.mdCLAUDE.md
- agent-harness-constructionSkill
- agentic-engineeringSkill
- ai-first-engineeringSkill
- api-designSkill
- backend-patternsSkill
- blueprintSkill
- bookmarkSkill
- brain-dumpSkill
- building-explainerSkill
- calendar-managerSkill
- code-engineerSkill
- compileSkill
- continuous-agent-loopSkill
- continuous-learningSkill
- copywriterSkill
- cost-aware-llm-pipelineSkill
- councilSkill
- database-migrationsSkill
- day-plannerSkill
- debriefSkill
- deep-researchSkill
- deployment-patternsSkill
- docker-patternsSkill
- e2e-testingSkill
- claude-apiSkill
- coding-standardsSkill
- eng-inboxSkill
- updateSkill
- enterprise-agent-opsSkill
- eval-harnessSkill
- frontend-patternsSkill
- humanizerSkill
- iterative-retrievalSkill
- log-expenseSkill
- memory-auditSkill
- minimalist-uiSkill
- onboardSkill
- full-output-enforcementSkill
- postgres-patternsSkill
- redesign-existing-projectsSkill
- regex-vs-llm-structured-textSkill
- researchSkill
- search-firstSkill
- security-reviewSkill
- security-scanSkill
- self-upgradeSkill
- high-end-visual-designSkill
- spending-summarySkill
- design-taste-frontendSkill
- tdd-workflowSkill
- transcribeSkill
- verification-loopSkill
- video-ideasSkill
- weekly-reviewSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
50 rules. 0 are common, 33 are distinctive, and 17 are very specific to this project.
0
Common
Most of the 51 edited versions we read keep these.
33
Distinctive
This author's own choices. Worth a look.
17
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 35
If auto-detected, ask: "It looks like this is a fresh start.
- Very specific: line 41
NEVER delete or modify files in any source folder.
- Very specific: line 42
NEVER copy system files (rules, skills, configs) from another Claude Code assistant.
- Distinctive: line 43
If credentials are found, show variable names (NOT values) and ask for confirmation before copying.
- Distinctive: line 44
If anything fails, explain in plain English and offer to retry or skip.
- Distinctive: line 51
If the user provides a path and asks you to "scan" their old assistant, skip the detection questions.
- Very specific: line 53
Scan everything: Read all files in the old assistant's personal/ folder, decisions/ folder, and any other folders that contain personal …
- Distinctive: line 87
Wait for confirmation: Do NOT execute until the user says go.
- Distinctive: line 97
If the user does not provide a specific path, guide them through detection.
- Distinctive: line 101
Ask: "What are you coming from?
- Distinctive: line 108
If they are unsure, help them figure it out:
- Distinctive: line 125
Ask for the folder path. Verify it exists and has personal data:
- Very specific: line 126
Check for personal/me.md with content (not just a template placeholder)
- Very specific: line 127
Check for personal/goals.md, personal/patterns.md, personal/snapshot.md
- Very specific: line 132
Read each file, verify it has meaningful content, write to Athena:
- Very specific: line 145
Do NOT copy: .claude/rules/, .claude/skills/, bot/bot.js, scripts/, CLAUDE.md, or any system files.
- Very specific: line 149
Check for [old-path]/bot/.env.
- Very specific: line 152
If yes: copy to bot/.env in Athena.
- Distinctive: line 153
If no: set up fresh credentials during infrastructure setup.
- Very specific: line 157
Check personal/me.md for an assistant name.
- Distinctive: line 160
Update all name references if they choose a new name (same list as onboard skill Block 1).
- Distinctive: line 164
No onboarding needed. Personal data is migrated.
- Distinctive: line 181
Read the conversations. Extract ONLY user messages — ignore AI responses.
- Distinctive: line 182
Look for: name, role, timezone, goals, projects, relationships, work patterns, communication preferences, recurring topics, decisions made
- Distinctive: line 189
Read the images. Extract any personal context visible.
- Very specific: line 196
Use the extracted context to pre-fill Athena's personal files:
- Distinctive: line 209
Ask only about gaps
- Distinctive: line 224
Read all provided documents.
- Distinctive: line 234
Write extracted context to personal files.
- Distinctive: line 242
No prior context. Route to the full onboard skill:
- Distinctive: line 260
Check if they have a GitHub account.
- Distinctive: line 261
Create a new private repository.
- Distinctive: line 269
Verify: visit the repo URL in a browser, confirm "Private" badge.
- Distinctive: line 276
Create a bot via @BotFather on Telegram
- Distinctive: line 281
If they already have credentials (from Path A migration): skip this step.
- Distinctive: line 283
If no: "No problem. You can set this up any time later.
- Very specific: line 289
If they want Telegram: guide through the full Hetzner setup from docs/DEPLOYMENT.md:
- Distinctive: line 291
Create server (Ubuntu 24.04, CAX11 ARM, $4/month)
- Distinctive: line 296
Start the bot with PM2
- Very specific: line 299
If they do not want Telegram yet: skip the server.
- Distinctive: line 303
If GitHub is set up, configure auto-sync so changes flow between their Mac and GitHub every 60 seconds:
- Very specific: line 304
Update the sync script path in scripts/mac-auto-sync.sh
- Distinctive: line 305
Create and load the launchd job
- Very specific: line 308
Follow the steps in docs/DEPLOYMENT.md Phase 5.
- Distinctive: line 312
If anyone else helped set up their server:
- Very specific: line 313
Remove helper's SSH key from ~/.ssh/authorized_keys
- Distinctive: line 315
Verify the helper is locked out
- Distinctive: line 323
Run through the checklist:
- Distinctive: line 356
If they seem nervous: "I have done this before.
- Very specific: line 358
Do not rush. If they want to pause, save progress to personal/.migrate-state.json and pick up later.
“Common” is measured: kept by at least 6 in 10 of the 51 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Skill: Migrate
What This Skill Does
Brings a user into Athena from wherever they are coming from — whether that is a previous Claude Code assistant, ChatGPT conversation history, Gemini exports, personal documents, or nothing at all. Detects what they have, imports what matters, skips what Athena already handles better, and gets them up and running with the minimum number of questions.
The goal: nobody starts from zero if they do not have to.
Dependencies (Load Before Running)
docs/DEPLOYMENT.md— full infrastructure setup guide (reference during infrastructure setup).claude/SYSTEM.md— current system manifest.claude/skills/onboard/SKILL.md— onboarding flow (used when import covers some but not all context)
How to Activate
Explicit triggers:
- "Scan my old assistant at [path]" — goes straight to autonomous scan-and-plan mode
- "Migrate from my old assistant" / "Bring over my data"
- "I have ChatGPT history" / "I have exports from [AI tool]"
- "Import from [path]" / "Switch to Athena" / "Move everything over"
/migrate- User pastes the kickoff prompt from
KICKOFF.md
Auto-detection:
- User opens Athena and
personal/me.mdis empty - User mentions they have an existing AI assistant or prior context
- If auto-detected, ask: "It looks like this is a fresh start. Are you coming from another AI assistant, or is this your first one? If you have any existing context — chat exports, notes, documents — I can use them to skip the basics."
CRITICAL RULES
- NEVER delete or modify files in any source folder. Only READ from it, WRITE to Athena.
- NEVER copy system files (rules, skills, configs) from another Claude Code assistant. Only personal data migrates. Athena's system IS the upgrade.
- If credentials are found, show variable names (NOT values) and ask for confirmation before copying.
- If anything fails, explain in plain English and offer to retry or skip.
- The user may be nervous about switching. Reassure them: "Your data comes with you."
SCAN-AND-PLAN MODE (Kickoff Prompt)
If the user provides a path and asks you to "scan" their old assistant, skip the detection questions. Go autonomous:
- Scan everything. Read all files in the old assistant's
personal/folder,decisions/folder, and any other folders that contain personal information (check for folders likecontext/,notes/,journal/,logs/, or anything non-system). Also checkbot/.envfor credentials. - Build a profile summary. Present everything you found about the user:
- Who they are (name, role, timezone, work schedule)
- Their goals (short-term and long-term)
- Their behavioral patterns (productivity patterns, avoidance patterns, strengths)
- Key relationships (people mentioned, roles, context)
- Key decisions made (from decision log)
- Daily history (how many days of plans/debriefs exist, recent themes)
- Anything unique (custom categories, special files, data that does not fit standard categories)
Present the migration plan. Map every piece of personal context to its destination in Athena:
MIGRATION PLAN [Old file] → [Athena file] — [what it contains, any adaptations needed] [Old file] → [Athena file] — [...] ITEMS WITH NO CLEAR HOME: [File or data] — [description, ask user where it should go] CREDENTIALS FOUND: [Variable names only, never values] — [ask to copy yes/no] WILL NOT MIGRATE (system files — Athena's versions are the upgrade): [List of skipped system files so user knows nothing was lost by accident]- Ask follow-up questions:
- "Did I miss anything? Is there context you shared with [old assistant name] that I did not find in the files?"
- "Anything in the 'no clear home' list you want to keep? Tell me where."
- "Want me to copy the bot credentials so your Telegram bot keeps working?"
- Wait for confirmation. Do NOT execute until the user says go.
- Execute the migration. Copy everything according to the confirmed plan. Adapt content to Athena's file format where the structure differs — do NOT change Athena's file structure, adapt the content to fit it.
- Summarize what was done. Then move to infrastructure setup (Phase 2 below).
INTERACTIVE MODE (When No Path Is Given)
If the user does not provide a specific path, guide them through detection.
STEP 1: Detect What They Have
Ask: "What are you coming from? Pick whichever fits:"
- A) I have another Claude Code assistant (folder on this computer with personal files, a bot, maybe a server)
- B) I have been using ChatGPT, Gemini, or another AI (conversation history, exports, or just memory of what I told it)
- C) I have documents about myself (bio, resume, notes, goals, business plan, anything)
- D) I am starting fresh (nothing to import)
If they are unsure, help them figure it out:
# Check for Claude Code assistant folders on Desktop
ls -d ~/Desktop/*/personal/me.md 2>/dev/null
ls -d ~/Desktop/*/.claude/rules/ 2>/dev/nullBased on their answer, route to the appropriate migration path below.
PATH A: Migrating from Another Claude Code Assistant
This is the most complete migration. The old assistant has structured personal data in the same format Athena uses.
A1: Find and Verify
Ask for the folder path. Verify it exists and has personal data:
- Check for
personal/me.mdwith content (not just a template placeholder) - Check for
personal/goals.md,personal/patterns.md,personal/snapshot.md - Report what was found: "I can see your profile, goals, [X] behavioral patterns, and [X] days of history."
A2: Copy Personal Data
Read each file, verify it has meaningful content, write to Athena:
| Source | Destination | What It Contains |
personal/me.md | personal/me.md | Identity, role, preferences |
personal/goals.md | personal/goals.md | Goals and targets |
personal/patterns.md | personal/patterns.md | Behavioral patterns |
personal/snapshot.md | personal/snapshot.md | Current state and priorities |
personal/day-ledger.md | personal/day-ledger.md | Daily plans and debriefs |
personal/inbox.md | personal/inbox.md | Pending thoughts and tasks |
personal/personal-life/ | personal/personal-life/ | All files (relationships, etc.) |
decisions/log.md | decisions/log.md | Decision history |
Do NOT copy: .claude/rules/, .claude/skills/, bot/bot.js, scripts/, CLAUDE.md, or any system files. Athena's versions are the upgrade.
A3: Copy Credentials (if they exist)
Check for [old-path]/bot/.env. If found:
"I found your old bot credentials: Telegram token, user ID, Groq key. Want me to copy them? Your existing Telegram bot will keep working — same bot, same chat history, new brain behind it."
If yes: copy to bot/.env in Athena.
If no: set up fresh credentials during infrastructure setup.
A4: Assistant Name
Check personal/me.md for an assistant name. If the user had renamed their old assistant:
"Your old assistant was called [name]. Want to keep that, go with Athena, or pick something new?"
Update all name references if they choose a new name (same list as onboard skill Block 1).
A5: Skip to Infrastructure Setup (Phase 2 below)
No onboarding needed. Personal data is migrated. Go straight to setting up their private GitHub, server, and sync.
PATH B: Coming from ChatGPT, Gemini, or Another AI
The user has been using another AI and has context they do not want to re-explain. They may have:
- Exported conversation history (JSON, HTML, or text files)
- Screenshots of important conversations
- Memory of what they told the other AI but no exports
B1: Check for Exports
"Do you have any exported files from your old AI? ChatGPT lets you export your data (Settings > Data Controls > Export Data). Gemini has a Google Takeout option. If you have those files, drop them here."
If they have ChatGPT exports:
- The export is usually a ZIP containing
conversations.json - Read the conversations. Extract ONLY user messages — ignore AI responses.
- Look for: name, role, timezone, goals, projects, relationships, work patterns, communication preferences, recurring topics, decisions made
- Summarize what was found: "From your ChatGPT history, I can see you work in [field], you have been focused on [project], you mentioned [people], and you tend to ask about [topics]."
If they have Gemini exports:
- Similar approach. Read the export, extract user context.
If they have screenshots:
- Read the images. Extract any personal context visible.
If they have no exports but remember what they shared:
- "No worries. Tell me the key things your old AI knew about you. The top 3-5 things. I will take it from there."
B2: Pre-Fill Personal Files
Use the extracted context to pre-fill Athena's personal files:
personal/me.md— identity, role, timezone, preferencespersonal/goals.md— goals mentioned in conversationspersonal/patterns.md— any behavioral patterns visible in the history
B3: Run a Compressed Onboarding
The imports probably did not capture everything. Run a shortened version of the onboard flow:
"I got a lot from your history. Let me confirm what I know and fill in the gaps. This should only take 5 minutes instead of 15."
For each onboarding block (Identity, Goals, How You Work, Communication):
- State what was learned from the import
- Ask only about gaps
- "From your history I can see [X]. Anything wrong or missing?"
B4: Continue to Infrastructure Setup (Phase 2 below)
PATH C: They Have Documents
The user has documents about themselves — a resume, bio, business plan, meeting notes, goal lists, journal entries, anything.
C1: Receive and Read
"Drop whatever you have. I will read everything and extract what I need. Resumes, bios, business plans, notes, spreadsheets, anything."
Read all provided documents. Extract:
- Name, role, company, industry
- Goals (business and personal)
- Projects, clients, stakeholders
- Skills, background, experience
- Schedule patterns, preferences
- Relationships mentioned
C2: Pre-Fill and Confirm
Write extracted context to personal files. Then run a compressed onboarding (same as Path B, Step B3) to fill gaps.
C3: Continue to Infrastructure Setup (Phase 2 below)
PATH D: Starting Fresh
No prior context. Route to the full onboard skill:
"Fresh start it is. Let me get to know you."
Trigger the onboard skill (/onboard). The updated onboard flow will ask upfront if they have any documents to share before starting the interview.
Skip the infrastructure setup below — the onboard skill handles tool connections in its Phase 2.
PHASE 2: Infrastructure Setup (Paths A, B, C)
This phase sets up the user's private infrastructure. It is the same regardless of which import path they took.
Step 1: Private GitHub Repository
"Your personal data needs a private home. Let's set up your own GitHub repo so nobody else can see your files."
- Check if they have a GitHub account. If not, guide through signup (github.com/signup).
- Create a new private repository.
- Disconnect from the template repo and connect to theirs:
git remote remove origin git remote add origin https://github.com/THEIR_USERNAME/THEIR_REPO.git git branch -M main git push -u origin main - Verify: visit the repo URL in a browser, confirm "Private" badge.
Step 2: Telegram Bot
"Want to talk to me from your phone? We can set up Telegram access. It takes 5 minutes."
If yes:
- Create a bot via @BotFather on Telegram
- Get their user ID via @userinfobot
- Get a Groq API key for voice messages (console.groq.com, free)
- Save credentials to
bot/.env
If they already have credentials (from Path A migration): skip this step.
If no: "No problem. You can set this up any time later. Just say 'let us set up Telegram.'"
Step 3: Server (Hetzner VPS)
"For Telegram to work 24/7 and for everything to stay in sync, you need a small server. It costs $4 a month."
If they want Telegram: guide through the full Hetzner setup from docs/DEPLOYMENT.md:
- Create Hetzner account
- Create server (Ubuntu 24.04, CAX11 ARM, $4/month)
- Add SSH key
- SSH in and run setup script
- Copy
.envto server - Install and auth Claude on server
- Start the bot with PM2
- Test
If they do not want Telegram yet: skip the server. Athena works fully from VS Code / terminal without it.
Step 4: Mac Auto-Sync
If GitHub is set up, configure auto-sync so changes flow between their Mac and GitHub every 60 seconds:
- Update the sync script path in
scripts/mac-auto-sync.sh - Create and load the launchd job
- Verify sync works
Follow the steps in docs/DEPLOYMENT.md Phase 5.
Step 5: Privacy Handover
If anyone else helped set up their server:
- Remove helper's SSH key from
~/.ssh/authorized_keys - Change root password (have the user type it, do not see it)
- Verify the helper is locked out
"Your server, your GitHub, your Telegram, your data. Nobody else can access any of it."
PHASE 3: Verify and Close
Run through the checklist:
| Check | How to Verify |
| Athena knows who you are | "Tell me about myself" — should reference profile |
| GitHub is private | Visit repo URL, confirm "Private" badge |
| Telegram bot responds (if set up) | Send a message from phone |
| Voice messages work (if set up) | Send a voice note |
| Mac sync running (if set up) | Make a change, wait 2 min, check server |
| Morning briefing scheduled (if server set up) | Check crontab on server |
Close with confidence: "You are set up. Athena knows who you are, what you are working on, and how you like to communicate. [If migrated: Everything from your old setup carried over.] Your data is private. Say 'plan my day' tomorrow morning and see what happens."
If Something Goes Wrong
| Problem | Solution |
| Cannot find old assistant folder | Search Desktop, Documents, home dir. ls ~/Desktop/*/personal/me.md |
| Old assistant was never set up (empty files) | Skip import, run /onboard instead. |
| ChatGPT export is too large to read | Read the most recent 50 conversations. Extract themes, not details. |
| Telegram bot not responding | pm2 logs athena-bot --lines 30. Check token, check Claude auth. |
| Git push fails | Check remote URL. May need personal access token for HTTPS. |
| Claude not authed on server | Run claude on server, follow browser auth. |
Tone
Be confident. This is an upgrade, not a risk. Their data comes with them. The whole point is that switching is painless.
If they seem nervous: "I have done this before. Your data moves over, nothing gets lost, and the new system is strictly better. If anything goes wrong, your old setup is still sitting right where you left it."
Do not rush. If they want to pause, save progress to personal/.migrate-state.json and pick up later.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

