Ethical people-finding and identity verification via parallel research agents across people-search sites, social media, public records, and reverse phone/email/
复制下面这句话,粘贴给 Claude Code、Codex、Cursor 等 AI 编程工具,它会读取安装说明并在你确认后完成安装。
请阅读 https://ai.atlankj.com/install/asset/gh-privateinvestigator-0dabba2634ac ,按照其中的说明把「PrivateInvestigator」安装到你(当前 AI 工具)中。执行前先告诉我将运行的命令和写入的位置,等我确认。
查看 AI 将读取的安装说明正在读取 GitHub 原文…
内容来自 GitHub 原始文件,由原作者维护。在 GitHub 查看
Before executing, check for user customizations at:
~/.claude/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/PrivateInvestigator/
If this directory exists, load and apply any PREFERENCES.md, configurations, or resources found there. These override default behavior. If the directory does not exist, proceed with skill defaults.
You MUST send this notification BEFORE doing anything else when this skill is invoked.
Send voice notification:
curl -s -X POST http://localhost:31337/notify \
-H "Content-Type: application/json" \
-d '{"message": "Running the WORKFLOWNAME workflow in the PrivateInvestigator skill to ACTION"}' \
> /dev/null 2>&1 &
Output text notification:
Running the **WorkflowName** workflow in the **PrivateInvestigator** skill to ACTION...
This is not optional. Execute this curl command immediately upon skill invocation.
Finds people and verifies identities using public data only. It covers people-search aggregators, social media, public records, and reverse lookups in parallel, then scores results by confidence (HIGH/MEDIUM/LOW/POSSIBLE) and trusts a match only when 3+ independent identifiers align.
Finding a real person from a name, a phone number, or an email is scattered across dozens of sources — people-search sites, county records, court portals, social platforms, reverse-lookup services — and no single one gives you the answer. Common names make it worse: search "John Smith" and you get thousands of people, most of them the wrong one. Run the searches one at a time and you either give up before you've covered enough sources or you act on a single weak match and contact the wrong person. This skill runs the sources in parallel and refuses to call a match real until several independent identifiers line up.
Public data only. No hacking, pretexting, or authentication bypass — every technique here is legal and ethical. The work runs as a parallel investigation across the source categories below; findings get cross-checked and confidence-scored before anything is reported. Choose the fan-out breadth the case needs — a common name across many states wants wide parallel coverage, a rare name in one city wants far less.
| Workflow | Trigger | File |
|---|---|---|
| FindPerson | "find person", "locate", "search for [person]", "reconnect", "lost contact" — full parallel-agent investigation | Workflows/FindPerson.md |
| SocialMediaSearch | "social media search" — cross-platform social media investigation | Workflows/SocialMediaSearch.md |
| PublicRecordsSearch | "public records" — government and official records search | Workflows/PublicRecordsSearch.md |
| ReverseLookup | "reverse lookup" — phone, email, image, username searches | Workflows/ReverseLookup.md |
| VerifyIdentity | "verify identity" — confirm correct person match | Workflows/VerifyIdentity.md |
When executing a workflow, output this notification:
Running the **WorkflowName** workflow in the **PrivateInvestigator** skill to ACTION...
Done = broad, independent coverage. Every source category below is worked, and no key identifier (address, employer, DOB, family, social handle) rests on a single source. Run the categories in parallel — dispatch research agents concurrently in one message — and scale the fan-out to the case: a common name across many states justifies many parallel agents and spelling/location variants; a rare name in one city needs only a few. Independence is the point, not headcount: aggregators that resell the same database count as one source, so weight toward genuinely distinct origins (social the subject created, government records, unrelated aggregators).
| Service | Type | Best For |
|---|---|---|
| TruePeopleSearch | Free | Best free option, fresh data |
| FastPeopleSearch | Free | Basic lookups, no signup |
| Spokeo | Freemium | Social media aggregation (120+ networks) |
| BeenVerified | Paid | Comprehensive background data |
site:linkedin.com "John Smith" "Software Engineer"
site:facebook.com "lives in" "Austin" "marketing"
filetype:pdf resume "Jane Doe" "San Francisco"
Anchor on whatever foundation identifiers the request gives — full name (and variations/maiden names), approximate age or DOB, last known location, context (school, workplace, relationship) — then pull from every source category until identifiers corroborate. Each discovered fact (phone, email, username, address, relative) is itself a new lead to run back through the sources, and every candidate gets a timeline-consistency and cross-source check before it earns a confidence score. The order is yours; the finish line is a match that survives the 3+-independent-identifier bar below.
| Level | Criteria | Action |
|---|---|---|
| HIGH | 3+ unique identifiers match across independent sources | Safe to contact |
| MEDIUM | 2 identifiers match, timeline consistent | Verify before contact |
| LOW | Single source or name-only match | Needs more investigation |
| POSSIBLE | Partial match, requires verification | Do not act without more data |
✅ Search public records (property, court, voter, business) ✅ Access publicly posted social media content ✅ Use people search aggregator sites ✅ Perform reverse lookups on public data ✅ Google dorking with public search operators
❌ Access data behind login walls without authorization ❌ Bypass authentication or security measures ❌ Use pretexting or impersonation ❌ Access private databases (credit, financial, medical) ❌ Stalk, harass, or intimidate subjects ❌ Access PI-only databases without license
Example 1: Finding an Old College Friend
User: "Help me find my college roommate from 2005, John Smith from Austin"
→ Routes to FindPerson.md
→ Fans out parallel research across the source categories
→ Cross-references people search + LinkedIn alumni + property records
→ Verifies identity through timeline analysis
→ Reports findings with HIGH confidence
Example 2: Reverse Phone Lookup
User: "Who called from 512-555-1234?"
→ Routes to ReverseLookup.md
→ Runs phone through CallerID, NumLookup
→ Cross-references with people search aggregators
→ Reports owner name, location, carrier
Example 3: Social Media Investigation
User: "Find Jane Doe's social media, she's a marketing professional in Denver"
→ Routes to SocialMediaSearch.md
→ LinkedIn Boolean search + Google x-ray
→ Username enumeration if handle discovered
→ Reports all accounts with MEDIUM/HIGH confidence
Related Documentation:
Workflows/ directoryAfter completing any workflow, append a single JSONL entry:
echo '{"ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","skill":"PrivateInvestigator","workflow":"WORKFLOW_USED","input":"8_WORD_SUMMARY","status":"ok|error","duration_s":SECONDS}' >> ~/.claude/LIFEOS/MEMORY/SKILLS/execution.jsonl
Replace WORKFLOW_USED with the workflow executed, 8_WORD_SUMMARY with a brief input description, and SECONDS with approximate wall-clock time. Log status: "error" if the workflow failed.