Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Add

ASecurity

Save a peer's retalk user id (their 32-hex fingerprint), optionally under a local name, so you can message them by name. Use when you have a peer's fingerprint to record. Add --verify to fetch and pin their keys now. If the fingerprint is missing, ask with AskUserQuestion.

184 stars
0 votes
0 copies
0 views
Added 9/22/2026
tools

Works with

cli

Security Analysis

A100/100

Scanned 9/22/2026

Install to Claude Code

$npx -y skills add xhluca/agent-talk --skill add --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Add?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Add
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/xhluca-add/badge)](https://www.skillsdirectory.com/skills/xhluca-add)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: add
description: Save a peer's retalk user id (their 32-hex fingerprint), optionally under a local name, so you can message them by name. Use when you have a peer's fingerprint to record. Add --verify to fetch and pin their keys now. If the fingerprint is missing, ask with AskUserQuestion.
---

# add — save a peer

```
retalk add <fingerprint> --peer <name> --dir "<user>/identity"
retalk add <fingerprint> --peer <name> --verify --dir "<user>/identity" --passphrase-path "<user>/passphrase"   # also fetch + pin their keys now
```

A plain `add` is local and needs no passphrase. `--verify` fetches from the
relay, so on an encrypted identity add `--passphrase-path "<user>/passphrase"`,
which names the file instead of reading it and keeps the call one flat command
(retalk 0.3.0+; **init** Session rule 8).

`<fingerprint>` is the peer's 32-hex id, obtained out-of-band — it's the positional
argument. `--peer <name>` is an optional local label (yours alone; the peer never
learns it); omit it to refer to the peer by fingerprint. If the fingerprint is
missing, use **AskUserQuestion**. Re-adding the same fingerprint updates its name.
Target the identity inline with `--dir "<user>/identity"`.

**Is a manual add still the right step?** This skill is for a peer who sent you
their fingerprint. If you are onboarding someone new, the shorter path is an
**invite code**: you issue one, they register themselves, and the contact is
saved for you with their keys already pinned (**id** skill, *Invite codes*;
needs retalk 0.3.0 or newer). Use `add` when the peer replied with a
fingerprint, when their retalk is older than that, or when the user hands you an
id from somewhere else.

By default this saves an *incomplete* contact (fingerprint + optional name); keys
are fetched/verified on first `send`/`receive`, or run **verify** now — or pass
**`--verify`** to fetch and pin the peer's keys in the same step.

## After adding: honor the delivery mode (init → *Session rules*)
Read `<user>/check-mode` and **act — never end an add asking "want me to start
a listener?"**: `auto` → make sure `<user>/receive-from` covers this peer, then
silently start the follower + Monitor (blocks: **receive** skill) and note that
replies will surface automatically; `manual` → nothing; missing → ask once
(Auto-receive "(Recommended)" first), record to `<user>/check-mode`, act.

**Covering the peer means widening the scope, not only filling a blank.** Write
this peer's name if `receive-from` is unset, but if it already names *someone
else*, write `*contacts*` instead. A follower's peer list is fixed when it
starts, so also **stop and restart** it with the new peer included rather than
leaving the running one alone: `follow.sh start` reports "already following"
and changes nothing, so a peer added afterwards is never drained and their
first message sits on the relay. `invite watch` does this for itself when a
peer registers with a code.

## After adding: share your address back (off-band) — ALWAYS show the message
A peer you `add` still needs YOUR address to reach you — unless they already have
it (e.g. this add came from *their* invite and you already handed back a reply).
**Show the message for the user verbatim, unprompted** — never just mention that
an invite exists. Compose it **in agent-talk terms** (the peer is most likely on
the plugin, not the raw CLI) using the invite/reply template in the **init**
skill, with values from `retalk id --card --dir "<user>/identity"`; introduce it
as *"Copy and send the following message to your peer (the person you want to
communicate with)."* Use the **no code** variant of that template here: this
peer is already set up and only needs your address, so an invite code would give
them nothing to redeem. Only for a raw-CLI peer use the retalk-generic blocks:
```
retalk id --invite-message --as <your-name> --dir "<user>/identity"   # peer not on retalk yet
retalk id --invite-reply --as <your-name> --dir "<user>/identity"     # replying to a peer's invite
```
Or share your identity as JSON for them to **import**:
`retalk id --card --dir "<user>/identity"`. The same invite also walks a peer who
isn't on retalk/agent-talk yet through installing it. The relay comes from your
saved relay; if it moved since init, pass `--relay <URL>` first (it can change —
see the relay note in **init**).

> `<user>` = this session's **user directory** — an absolute path resolved at **init** (e.g. `~/.agent-talk/users/alice` (global) or `<project>/.agent-talk/users/alice` (local)). Each session uses a distinct, isolated user, so parallel sessions never collide.

## Next
- **verify** — pin the peer's keys off-band.
- **send** — message the peer you just added.
- **id** — hand over your id, or issue an invite code so the next peer registers
  themselves instead.

Attribution

xhlucaxhluca
View sourceMore from xhluca →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

ucoz-landing-skill

Playbook for creating and editing uCoz landing pages via MCP tools (`templates_tool`, `ftp_tool`, `modules_tool`). Use for tasks such as: "build a landing page", "update the homepage as a landing page", "create a promo page on the homepage", "add a lead form / menu / SEO to the homepage". Homepage: `page_list`, `page_get`; first publish — `page_update` with full `page_tmpl`; HTML edits after generation — `patch_template` (module_id=2, template_id=1), not `update_template`. Activate the mail f...

107 votes

Paperclip

Interact with the Paperclip control plane API for task coordination and governance. Use when checking assignments, updating issue status, posting comments, delegating work, managing routines, or calling Paperclip API endpoints.

805541 votes

Instantly Rdsthomas Mission Control

Instantly.ai cold email outreach API - manage campaigns, leads, accounts, and analytics. Use for cold email automation, lead management, campaign creation/monitoring, and email account warmup.

761 votes

Daw Music

Digital Audio Workstation usage, music composition, interactive music systems, and game audio implementation for immersive soundscapes.

761 votes

Caveman Compress

Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format to save input tokens. Preserves all technical substance, code, URLs, and structure. Compressed version overwrites the original file. Human-readable backup saved as FILE.original.md. Trigger: /caveman-compress FILEPATH or "compress memory file"

1066600 votes
View all in tools →