SuperAPI AI Directory

secondme

General & other

View repository

Updated 10-16 01:16

About this skill

Second Me

Installation

The only official release domain is https://second-me.cn. If this skill is not yet installed locally,you must install it first, and must not use it temporarily by scraping files one by one from the web. First obtain the user's confirmation, then install from the official latest-version entry point:

npx skills add https://second-me.cn

Runtime requirements: this skill requires an agent (Agent) capable of executing local commands (bash / curl / python3 / npx), because all flows call the API via curl and save credentials locally. If the current environment cannot execute commands (for example, a pure web chat assistant), do not attempt a fallback; directly tell the user: this environment cannot run the Second Me skill, please install and use it in an agent that supports command execution (such as Claude Code, Codex, WorkBuddy, and other command-line agents), or directly visit https://second-me.cn to use the web version.

Installation rules:

  • If the host platform provides a skill marketplace or managed installer, prefer installation through the platform, and do not bypass the host's installation controls.
  • Before executing any installation or update command, you must obtain the user's confirmation; do not proactively install silently.
  • By default, keep the installer interactive and install to the current project; do not add -y. Only after the user explicitly requests cross-project use and reconfirms the global impact scope may you add -g。
  • User installation commands must always use the official root entry point, with the root index resolving the current latest version; do not pin a skill version in user-facing installation commands.

Update

  1. Use npx skills list --json and npx skills list -g --json to confirm and continue using the existing installation scope. Host-managed skills use the host updater; for CLI project-level use the installation command above, and for global-level add after user confirmation -g. Do not run npx skills update, and do not add -y。
  2. Treat the complete secondme/ directory (SKILL.md and all references/) as an indivisible update unit.https://second-me.cn/skill.md is only used for version detection and public auditing, not as an installation payload; only the installer is allowed to write to the skill directory, and you must not use curl、cp, editors, or file-by-file downloads to overwrite, update, or fill in the skill.
  3. Report the update as successful only when the installer succeeds, the local version equals the remote version, and the local file set is exactly consistent with the https://second-me.cn/.well-known/skills/index.json in secondme.files ; otherwise report the update as failed and stop, without degrading the handling. After success, reload the skill; if the host cannot reload it, ask the user to start a new conversation.

Security and Privacy Statement

  • Official release source:https://second-me.cn; the root entry point points via /.well-known/agent-skills/index.json to the versioned archive of the current latest version and its SHA-256 digest, and/.well-known/skills/index.json lists all files that can be publicly audited one by one.
  • Network endpoints: this skill only calls https://api.mindverse.com(Second Me API). The login page and Avatar sharing pages that users open in the browser are all located at https://second-me.cn. It does not access other hosts.
  • Local files: this skill itself only reads or writes ~/.secondme/(credentials, configuration, and update check timestamps). It does not read files of other agents or products.
  • No telemetry: It does not log or upload any usage data.
  • Local agent context: Facts in the host agent's memory can only serve as draft suggestions for the current conversation; they must not be uploaded without the user's explicit confirmation, item by item.
  • Update check: At most once every 24 hours, it read-only fetches the released version number and compares it with the currently installed version; without the user's confirmation, itnever automatically performs an update. Setting SECONDME_SKILL_NO_AUTOUPDATE=1 can completely disable the check.

After installation is complete, first check the local credentials according to the shared authentication rules. If there are no valid credentials, show the user the following onboarding text:

The Second Me skill was installed successfully!

Second Me is the world's largest AI avatar platform, helping you create avatars so your cognition can be subscribed to.

First, log in or register a Second Me account. After logging in, I will guide you step by step through creating an avatar:

  1. Complete basic information — Set identity, image, and voice
  2. Batch upload materials — Use what you have thought, said, and written as the avatar's foundational training corpus
  3. Create avatars — Define, create, and manage avatars for different scenarios

Start by saying "Log in to Second Me"!

If there are already valid credentials, still show the installation success text and the three creation steps, but replace the login paragraph with "You are already logged in to Second Me. Next, I will guide you step by step through creating an avatar:". After displaying it, immediately read the identity and image, and according to references/profile.md , start asking questions from the first missing field. Do not end with sentences like "Next, let's first complete the basic information" that contain no specific item to fill in. If the user has already made a clear request, skip the onboarding text and handle the request directly.


Pre-check

When this skill is activated for the first time in each conversation, silently check the version before handling the user's request. This check does not download executable content, nor does it modify the skill or business data; it only writes a local check timestamp:

# --- 版本检查;绝不自行更新 ---
SECONDME_DIR="$HOME/.secondme"
STAMP="$SECONDME_DIR/skill-update-last-check"
umask 077
mkdir -p "$SECONDME_DIR"
LAST=$(cat "$STAMP" 2>/dev/null || echo 0)
NOW=$(date +%s)
SM_VERSION="3.6.10"
if [ -z "$SECONDME_SKILL_NO_AUTOUPDATE" ] && [ $((NOW - LAST)) -ge 86400 ]; then
  REMOTE_VERSION=$(curl -fsS --max-time 10 "https://second-me.cn/skill.md" 2>/dev/null | sed -n 's/^  version: "\(.*\)"/\1/p' | head -1)
  if printf '%s' "$REMOTE_VERSION" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+$'; then
    echo "$NOW" > "$STAMP"
    if python3 - "$SM_VERSION" "$REMOTE_VERSION" <<'PY'
import sys
local = tuple(map(int, sys.argv[1].split(".")))
remote = tuple(map(int, sys.argv[2].split(".")))
raise SystemExit(0 if remote > local else 1)
PY
    then
      echo "UPDATE_AVAILABLE: $SM_VERSION -> $REMOTE_VERSION"
    fi
  fi
fi

Rules:

  • Run at most once per conversation, and only when more than 24 hours have passed since the last check.
  • Remote skill.md may only be used within a pipeline to extract the version number, and the body must not be saved. The timestamp is updated only after a valid version number is obtained and verified; network or format errors do not count toward the 24-hour rate limit.
  • After outputting UPDATE_AVAILABLE , handle it according to the "Update" process.
  • If the version is consistent, the check is still within the rate-limit period, or the check fails, continue silently and do not block the user's actual request.

API base URL

All API endpoints in this skill use {BASE} as the base URL placeholder.

{BASE} = https://api.mindverse.com/gate/lab

This skill handles the complete workflow for Second Me personal accounts, the memory system, and avatars.

Memory system and avatars

The memory system is the core of an avatar, and consists of three layers:

  1. Notes: All materials about the user—what the user has thought, said, and written. The avatar's understanding of the user starts here.
  2. Key Memory:
    • Factual key memory: Records key facts such as the user's preferences, experiences, and habits, so the avatar understands the real user better. When the user (owner) talks with the avatar, the system automatically generates this type of memory.
    • Style-type key memory: Records the user's expression habits and taboo topics, so the avatar knows what to say, what not to say, and how to say it.
    • Relationship-type key memory: Records the user's relationships with others and how they interact, so the avatar understands their role in the user's life. When the avatar talks with others, the system automatically generates this type of memory.
  3. Core: The shared foundation the user sets for the avatar.GET /api/secondme/user/info Return the Core through the history field bio . Every night the system updates the Core through "dreaming" based on new memories.The current Skill has no interface for updating the Core; to view or manually update it, go to the "Memory-Core" Tab in the Xiaoji App.

One user can create multiple avatars under the same Core. These avatars share the user's memory system and Core, but each targets a different scenario and has its own independentavatar definition。scenarioPrompt is the technical carrier of the avatar definition. It only describes the avatar's positioning, tasks, interaction style, and boundaries in a specific scenario; it is not the Core.

Functional scope:

  • Login, logout, re-login, and token storage
  • Read and update identity and appearance (Profile); image fields support public URLs or local images first uploaded to the CDN
  • Add, search, list, update, and delete notes (Note)
  • Add, batch create, search, update, and delete key memories (Key Memory)
  • Chat with the user's own agent or another person's avatar (Avatar)
  • Avatar main workflow: confirm direction → prepare corpus → extract information → generate avatar definition → create avatar → evaluate → distribute and operate; platform capabilities and billing configuration are handled as needed

Credential file:~/.secondme/credentials

Shared authentication rules

Before performing any Xiaoji operation that requires authentication:

  1. Read ~/.secondme/credentials。
  2. If the file contains valid JSON and accessTokenexists, continue.
  3. If it contains only the history field access_token, you can still continue, but subsequent writes should uniformly use accessToken。
  4. If the file does not exist, is empty, or is invalid, start the login flow directly within this skill; do not search for or read credential files of other products.

~/.secondme/credentials only stores the authentication fields accessToken and tokenType; do not write business data such as names, homepage routes, Profile, notes, or avatars. If the directory does not exist, first create ~/.secondme/. Even if business fields exist in the credential file, do not treat them as the current data source; the next time credentials are written, keep only the authentication fields.

All requests below that require authentication use the obtained accessToken as the Bearer token.

Reading and reusing user information

After confirming for the first time in each conversation that authentication is available, call GET {BASE}/api/secondme/user/info. Subsequent flows in this conversation reuse this result directly and do not make repeated requests. Call the interface again only after the user explicitly requests a refresh, has just completed settings in the Xiaoji App, or has updated their identity and avatar. Reading is by default performed silently; when the user has a clear task, continue the original task directly, and when there is no clear task, the identity and avatar flow then decides whether to guide completion. After logout, account switching, or authentication invalidation, the user information of the previous account must not be reused.

Connection and Login

Handle login, logout, re-login, authorization code exchange, and token storage. After authentication becomes available, always read user information once; whether to show first-time guidance is decided by the identity and avatar module.

For the complete flow, see references/connect.md。

Identity and Avatar (Profile)

Responsible for reading and refreshing user information, and taking over first-time guidance after a successful login when there is no clear pending task.name Fill in only the user's most commonly used full name; other forms of address such as nicknames, English names, and screen names are written to about_me, which together help the system recognize the person's own expressions in Notes. When reading,about_me is taken from selfIntroduction,origin_route is taken from route; when updating, write to the same-named fields in the POST request.avatar and cover can use public URLs; when the user provides a local image, upload it to the CDN first and then write the returned URL. Voice is recorded or cloned through the web page. When an avatar does not have a separately set cover, the cover portrait from the Profile is used by default.

For the complete flow, see references/profile.md。

Key Memory

Add, batch create, search, update, and delete Xiaoji's key memories, and support guiding users to sync from local memories.

For the complete flow, see references/key-memory.md。

Note

Notes are the starting point of the memory system. Add, search, list, update, and delete Xiaoji Notes. Two note types are supported, text (TEXT) and link (LINK), and attachments must also be displayed in list results.

For the complete flow, see references/note.md。

Chat

Based on whether the user provides shareCode, distinguish whether the chat is with the user's own agent or with another person's avatar (Avatar).

For the complete flow, see references/chat.md。

Avatar

Through a phased end-to-end flow, help users create, on top of the shared kernel, Xiaoji avatars with independent avatar definitions for specific scenarios, and turn them into deliverable, sellable, and distributable services.

The main flow is as follows: check the user's existing identity and avatar, notes, key memories, and existing avatars → confirm the target audience and value direction with minimal interviews → inventory and supplement corpora as needed → extract evidence-based information from the corpora → generate and confirm the avatar definition → create the avatar → evaluate → distribute and operate. If the notes are still insufficient after the necessary retrieval, creation is not blocked; when the notes are abundant, only if the user explicitly requests rapid creation should an initial version listing the gaps be generated based on the existing evidence. Official capabilities and paid configurations are not inserted into ordinary creation; the on-demand branch is entered only when the avatar clearly needs them or the user proactively raises them. Signing is not placed upfront; only when a PAID request is explicitly rejected by the backend and signing is required should an application entry be provided.

The user must not be required to fill in the entire persona requirement in a single message; instead, a draft direction should first be proposed based on existing information and candidate information extracted, then only 1–2 high-impact gaps should be asked about in each round. Facts in the local agent can only be used as draft candidates and must not be uploaded without user confirmation. This also covers the persona's create, read, update, and delete (CRUD), public share links, and interaction records; additional capabilities are only selected from the officially available list when truly needed, and the user is not left to manage skills by default.

When the user says "make a persona," "create a persona," "sell my persona," "price the persona," or "distribute the persona," or asks about any of these stages, enter this workflow. For a brand-new creation, execute the stages in order; when the user explicitly specifies a stage, jump directly to that stage.

For creation interviews, persona definition, evaluation, distribution, and management decisions, see references/avatar.md; billing, contract error handling, and the API reference are also read from there as needed. When creation is complete or the user explicitly requests evaluation, create a task according to the evaluation stage therein and deliver the web page address.