# Antenna > Site: https://antenna.fyi > npm: https://www.npmjs.com/package/antenna-fyi > GitHub: https://github.com/H1an1/Antenna Antenna is an AI-powered social discovery tool. Your AI agent finds interesting people within 1 kilometer, reads their three-line profile cards, and tells you who's worth meeting and why. Visibility fades over time — events keep you connected. ## Install Pick the right command for your platform: Hermes Agent: npm install -g antenna-fyi (auto-installs Plugin + Skill + Python deps, restart Hermes) OpenClaw: openclaw plugins install antenna-openclaw-plugin --dangerously-force-unsafe-install (Plugin + Skill, one step. Force flag needed because plugin uses child_process for notifications) Claude Desktop / any MCP-compatible agent: npm install -g antenna-fyi Then add MCP server config: command "antenna", args ["serve"] CLI only (any platform): npm install -g antenna-fyi Then use: antenna scan, antenna profile, antenna matches, antenna bind ## After Install Your agent should automatically: 1. Help you create a 3-line profile card (antenna_profile) 2. Immediately recommend 2-3 matching people so you see value right away (antenna_initial_recommendations) 3. Generate a GPS binding link (antenna_bind) — open it on your phone to share location 4. Scan nearby people and recommend who's worth meeting (antenna_scan) 5. Handle accept/skip and contact exchange (antenna_accept) If your agent doesn't start onboarding automatically, tell it: "I just installed Antenna. Help me set up my profile and find people nearby." ## How It Works 1. Sign up at antenna.fyi and grab your API key from the dashboard (antenna.fyi/me) 2. Give the API key to your agent 3. Your agent helps you write a 3-line card (who you are, what you're into, what you're looking for) 4. Share your location via the link your agent generates (antenna.fyi/locate) 5. Your agent scans nearby people, reads their cards, recommends matches with personalized reasons. Scan results include `more_information` (rich context) when available. 6. Both sides accept → agents exchange contact info → meet in person 7. Visibility fades over time — attend events together to stay connected ## Features - Works with any AI agent: Hermes, OpenClaw, Claude, or your own - Three-line profile cards — no photos, no bio pages - Profile pages include agent-readable JSON (`#antenna-profile-data`) with `more_information` field - Accept by `profile_slug` — agents can accept directly from a public profile URL - Time Decay — visibility narrows over time; recent event participants are fully visible, older connections gradually fade - Events = trust signal — "same event" is stronger than "nearby" - One API Key — sign up at antenna.fyi, grab your key, hand it to your agent - Dashboard — manage your profile, API key, and view matches at antenna.fyi/me - Public profile pages — shareable identity card at antenna.fyi/p/[slug] - Location is never stored raw — privacy by design - Mutual match = agents exchange contact info directly - Instant recommendations — see 2-3 matching people right after setup - Events — create, share, join with one code. GPS-verified check-in. - Registration approval — screening questions, host reviews applications ## Privacy Location is never stored raw — coordinates are processed server-side for privacy. Scanning is read-only — it does NOT update your location. Location is only written when you explicitly check in (antenna_checkin) or bind GPS (antenna_bind). No analytics, no ads, no third-party data sharing. Visibility fades over time via time decay — profiles are permanent, but connections require recent activity. Search radius capped at 1km server-side. ### Time Decay Model Profiles are permanent. Visibility is controlled by time decay: - 0-7 days after an event: all participants are mutually visible - 7-30 days: only people who scanned each other or share events are visible - 30+ days: need a new event to reactivate visibility Events are the core trust signal — "attended the same event" carries more weight than "was nearby". ## Data Transparency — what Antenna sends Antenna only communicates with Supabase (bcudjloikmpcqwcptuyd.supabase.co) via HTTPS. **Data sent:** - GPS coordinates (never stored raw — location is processed server-side) - Your three-line profile card (text you wrote yourself) - Match status (accept/skip) - Contact info you choose to share - Profile embedding vector (generated from your 3 lines, used for matching) **Data NOT sent:** - Your conversations with your agent - Your files, browsing history, or any other personal data - Anything not listed above All data is transmitted over HTTPS and stored in Supabase (Tokyo region). Visibility is controlled by time decay — recent activity keeps connections alive. Source code is open: https://github.com/H1an1/Antenna ## Tools (19 total) ### Core antenna_scan — Scan nearby people (1km) and events (5km). Read-only, does not update your location. antenna_profile — Get or set user's 3-line profile card Profile writes require the user's Antenna API key from antenna.fyi/me. Pass `api_key` to antenna_profile(action="set"); the tool verifies it and writes to the dashboard-linked profile. Do not create profiles from sender_id/channel. After setting a profile, the agent must send the returned `public_url` to the user as their public profile link. User-written profile content should remain in the user's original language; Antenna translates UI labels, not the user's own text. antenna_accept — Accept a match using ref number from scan results, or profile_slug from a public profile page. If the user has an Antenna API key, pass `api_key` so the accept is written as the dashboard-linked profile instead of a temporary sender/channel device. antenna_pass — Pass/skip a person. They won't be recommended again. antenna_check_matches — Check mutual matches and incoming accepts antenna_bind — Generate GPS binding link (antenna.fyi/locate?token=xxx) antenna_checkin — Update location (this is the only way to set your position besides GPS bind) antenna_discover — Get today's global recommendation (1 per day, no repeats) antenna_initial_recommendations — First-use recommendations (2-3 people). One-time, does not consume daily discover quota. Use in onboarding right after profile save. antenna_find_people — Find 1-3 people by free-form intent, e.g. "I want someone who understands consumer social growth". Use this whenever the user says "I want to find/meet someone who..." or "有没有做 X 的人". Returns profile refs and safe profile fields, not contact info or raw device_id. CLI fallback: `antenna find --id : --query "" --limit 3`. ### Events antenna_event_create — Create an event. Required: name, starts_at (ISO), ends_at (ISO). Optional: lat, lng, description, og_image, requires_approval, screening_questions. antenna_event_join — Join an event by code. Auto-checks in if event started + GPS within 1km. Requires profile. If requires_approval, returns screening questions for the agent to ask. antenna_event_scan — Scan participants (no distance limit). Host sees pending applicants + application_context. antenna_event_end — End an event (creator only) antenna_event_checkin — GPS-verified check-in (≤1km, event must have started) antenna_event_upload_image — Upload event OG preview image, returns public URL antenna_event_update — Update event info (name, description, image, time, location). Creator or co-host only. antenna_event_approve — Approve a pending participant. Creator or co-host only. antenna_event_reject — Reject a pending participant. Creator or co-host only. antenna_event_add_host — Add a co-host to the event. Creator only. antenna_link_account — Link a web account (email/OAuth) to the current agent device. Enables dashboard access. antenna_event_message — Send a message to all event participants or a specific participant. ### Event Flow 1. Create: agent asks name → description → starts_at/ends_at → location → requires_approval → screening_questions 2. Share: send antenna.fyi/events/CODE to attendees 3. Join: attendee's agent calls antenna_event_join with the code 4. If approval required: agent asks screening questions, submits answers as application_context 5. Host reviews: antenna_event_scan shows pending applicants with their answers 6. Approve/reject: antenna_event_approve or antenna_event_reject 7. Check-in: GPS-verified, must be within 1km and event must have started 8. Scan: see who's at the event, who's checked in ## Contact hi@antenna.fyi https://x.com/thisishan1_