技能详情(站内镜像,无评论)
作者:Alex @alexuser
许可证:MIT-0
MIT-0 ·免费使用、修改和重新分发。无需归因。
版本:v0.2.0
统计:⭐ 0 · 85 · 0 current installs · 0 all-time installs
⭐ 0
安装量(当前) 0
🛡 VirusTotal :良性 · OpenClaw :良性
Package:alexuser/friends-db
安全扫描(ClawHub)
- VirusTotal :良性
- OpenClaw :良性
OpenClaw 评估
The skill's code, instructions, and resource access are coherent with a local friends CRM: it reads/migrates friends.md, manages a private SQLite DB in the OpenClaw workspace, and exposes search/update commands; nothing obvious is disproportionate, but the sync-calendar/subprocess behavior should be reviewed before use.
目的
Name/description match the shipped script and assets. The script operates on a local SQLite DB in the OpenClaw workspace and provides search, show, CRUD, and migration commands — all consistent with a 'friends DB' helper. No unrelated services or credentials are requested.
说明范围
SKILL.md restricts operations to the helper script and points to specific CLI commands (migrate, search, show, set-*, log-interaction, sync-calendar). It reads the workspace friends.md and the local DB. One caveat: sync-calendar and the script import subprocess (truncated portion not fully visible) — this suggests the script may call external calendar tooling or shell commands. That behavior is within scope if used to read calendar events, but…
安装机制
No install spec; this is instruction-only with a bundled Python script and JSON asset. No downloads, package installs, or archive extraction are performed by the skill metadata.
证书
No required environment variables or credentials are declared. The script reads optional env vars (OPENCLAW_WORKSPACE, OPENCLAW_FRIENDS_DB_DIR, OPENCLAW_FRIENDS_CALENDAR_ACCOUNT/ID/TIMEZONE) that are directly relevant to configuring where the DB and calendar account live. No unexpected secret access is requested.
持久
always is false and the skill does not request elevated platform privileges. It creates and writes a private DB under the workspace and enforces 0700/0600 permissions for dirs/files. It does not modify other skills or global agent settings.
综合结论
This skill appears to do what it claims: manage a local, private friends SQLite DB and migrate from friends.md. Before installing or invoking it: 1) Inspect the remainder of scripts/friends_db.py (the truncated portion) to confirm what sync-calendar does and whether any subprocess calls contact external servers or execute shell commands with user-provided strings. 2) Expect the skill to create a hidden DB under your OpenClaw workspace (it sets…
安装(复制给龙虾 AI)
将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。
请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Friends DB」。简介:Query and maintain Alex's local friends database stored in a private SQLite fil…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/alexuser/friends-db/SKILL.md
(来源:yingzhi8.cn 技能库)
SKILL.md
---
name: friends-db
description: Query and maintain Alex's local friends database stored in a private SQLite file under the OpenClaw workspace. Use when looking up a friend, finding phone/email/contact details, reading relationship notes, or updating those records. Prefer this over reading friends.md directly.
metadata:
---
# Friends DB
Use the helper script in `scripts/friends_db.py`. Do not run arbitrary SQL.
## When to use
- A request depends on friend/contact details that used to live in `friends.md`
- You need a phone number, email, preferred name, or relationship note
- You need to track friendship cadence, last-seen dates, or activity ideas
- You need to add or update a friend fact after a conversation or event
- You need to sync past in-person interactions from calendar into the friend CRM
## Commands
Initialize or migrate:
```bash
python3 ./skills/friends-db/scripts/friends_db.py migrate --source "$HOME/.openclaw/workspace/friends.md" --replace-with-stub
```
Search:
```bash
python3 ./skills/friends-db/scripts/friends_db.py search "lily"
python3 ./skills/friends-db/scripts/friends_db.py list
```
Show one contact:
```bash
python3 ./skills/friends-db/scripts/friends_db.py show "Lily Li"
python3 ./skills/friends-db/scripts/friends_db.py show "jerrypaulgreen@gmail.com"
```
Friend CRM overview:
```bash
python3 ./skills/friends-db/scripts/friends_db.py due-list
python3 ./skills/friends-db/scripts/friends_db.py due-list --status all --within-days 14
python3 ./skills/friends-db/scripts/friends_db.py profile "David Su"
python3 ./skills/friends-db/scripts/friends_db.py suggest "David Su"
```
CRM setup and updates:
```bash
python3 ./skills/friends-db/scripts/friends_db.py set-importance "David Su" high
python3 ./skills/friends-db/scripts/friends_db.py set-cadence "David Su" 21
python3 ./skills/friends-db/scripts/friends_db.py set-context "David Su" --home-area "South Bay" --best-times "weekday evenings"
python3 ./skills/friends-db/scripts/friends_db.py add-tag "David Su" interest pickleball
python3 ./skills/friends-db/scripts/friends_db.py add-tag "David Su" neighborhood "South Park"
```
Interaction logging:
```bash
python3 ./skills/friends-db/scripts/friends_db.py log-interaction "David Su" --type in_person --at 2026-03-15T18:30:00-07:00 --location "South Park"
python3 ./skills/friends-db/scripts/friends_db.py sync-calendar --days-back 180
```
General contact updates:
```bash
python3 ./skills/friends-db/scripts/friends_db.py add-fact "Lily Li" "Invited to dinner on 2026-03-20"
python3 ./skills/friends-db/scripts/friends_db.py set-method "David Su" phone "+14086246128" --primary
python3 ./skills/friends-db/scripts/friends_db.py set-preferred-name "Lily Li" "Lily"
```
## Rules
- Keep the database in the hidden OpenClaw workspace state directory created by the helper.
- The helper enforces private filesystem permissions and parameterized SQL. Keep using it instead of shelling out to `sqlite3` with raw user text.
- Treat `friends.md` as a stub only after migration. The database is the source of truth.
- `sync-calendar` uses attendee email first, then title/description alias matches.
- Count only `in_person` interactions toward the cadence target. Calls/texts/emails are supporting context.
- Cadence defaults: `high=20`, `medium=30`, `low=90` days.
- Suggestions are local and deterministic; they come from tags plus the bundled activity template asset.
- Return only the fields needed for the task. Do not dump the whole contact database into chat unless Alex explicitly asks.