llm-wiki-crm — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited llm-wiki-crm (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
CRM layer on top of the PM wiki. Tracks relationship health, account status, feature asks, and auto-enrichment for people and company entities. Complements Salesforce — this layer captures PM-specific context that CRMs don't: product feedback, feature asks, communication history, strategic relationship signals.
(This skill enriches relationship/CRM context — tier, touchpoint, feature asks. For factual/web enrichment of a stub page, use llm-wiki-research's Auto-Research.)
These fields extend the core wiki SCHEMA.md. Add them to entity pages as relevant. See skills/llm-wiki-crm/templates/SCHEMA-crm-fields.md for a merge-ready patch.
relationship_tier: strategic | active | watch | dormant
last_touchpoint: YYYY-MM-DD
meeting_cadence: daily | weekly | biweekly | monthly | quarterly | ad-hoc
next_meeting: YYYY-MM-DD # optional
influence_level: high | medium | low
enriched_at: YYYY-MM-DD # when auto-enrichment last ranrelationship_tier: strategic | active | watch | dormant
account_health: green | yellow | red
last_touchpoint: YYYY-MM-DD
key_asks: [] # list of feature/product asks from this account
arr_tier: enterprise | mid-market | smb | prospect # optional, no dollar figures
enriched_at: YYYY-MM-DD # when auto-enrichment last ran| Tier | Meaning |
|---|---|
strategic | High-impact relationship. Flag if silent > 14 days. |
active | Regular engagement. Flag if silent > 30 days. |
watch | Relationship at risk or low-signal. Flag if silent > 60 days. |
dormant | No active engagement. Informational only. |
| Value | Meaning |
|---|---|
green | Healthy engagement, no known issues |
yellow | Some friction — risk of churn, unresolved asks, reduced engagement |
red | Needs immediate attention — escalation risk, silent, or major open issue |
WIKI=$(cat .wiki-path 2>/dev/null | tr -d '[:space:]')
WIKI=${WIKI:-${CLAUDE_PLUGIN_OPTION_wiki_path:-${WIKI_PATH:-$(pwd)}}}Trigger: "relationship health", "who haven't I talked to", "dormant accounts", "check relationships"
① Scan all person and company entity pages for last_touchpoint: and relationship_tier:. ② Apply staleness thresholds (strategic >14d, active >30d, watch >60d, dormant = skip). ③ Surface grouped by tier:
"3 strategic contacts need attention: [[X]], [[Y]], [[Z]] (last contact: N days ago)"
④ For each flagged entity: last touchpoint, key_asks, account_health, next_meeting if set. ⑤ Offer to run Pre-Meeting Briefing (core skill §9) for any flagged entity. ⑥ Log: ## [date] crm-health | flagged: N strategic, N active
Trigger: "enrich [entity]", "auto-enrich [person/company]", "fill in [entity] details"
Scope — avoid overlap with `llm-wiki-research`: this operation is a lightweight factual pass whose real job is populating relationship/CRM fields (relationship_tier, last_touchpoint, account_health, key_asks). For a deep factual/web sweep of a company or person, defer to `llm-wiki-research`'s Auto-Research when it's installed — run that first, then layer the CRM fields on top. The steps below are the standalone fallback when research isn't available.
Company enrichment: ① WebSearch: company name + "about", funding, headcount, key products, recent news ② Extract: founded year, HQ, employee count, funding stage, key products, recent press ③ Update entity page. Set enriched_at: today. Add inline: [source: <url>, <date>] ④ Bump coverage: stub → partial if meaningful data found ⑤ Flag time-sensitive data with confidence_decay_days: 90
Person enrichment: ① WebSearch: person name + company + role, LinkedIn (public), recent talks/posts ② Extract: current role, company, background, public positions on relevant topics ③ Update entity page. Only public information — never infer private details. ④ If person is strategic tier and no persona page exists, offer to create one.
Trigger: "account health", "strategic accounts", "how are my accounts"
① Scan company entity pages with relationship_tier: strategic | active. ② Aggregate: account_health distribution, key_asks frequency across accounts, last touchpoint age. ③ Output:
④ Surface cross-account key_asks patterns — high-signal roadmap inputs. ⑤ Offer to file as queries/account-health-<date>.md.
Trigger: "what do customers want", "feature asks", "what are accounts asking for"
① Grep all entity pages for key_asks: frontmatter. ② Aggregate: count asks per feature/theme across accounts. ③ Cross-reference with roadmap-tagged pages — is the ask already on roadmap? ④ Output table:
| Feature ask | Accounts requesting | On roadmap? |
|---|---|---|
| [feature] | N accounts | yes / no / unknown |
⑤ File as queries/feature-asks-<date>.md.
Trigger: "log touchpoint with [person/company]", "update [entity] relationship"
① Read entity page. ② Update: last_touchpoint: to today, relationship_tier: and account_health: if specified. ③ Prompt for notes to add to interaction history section. ④ If meeting just happened, offer to ingest transcript (hands off to core §2).
arr_tier uses tiers only. Never record ARR, deal sizes, or revenue figures.relationship_tier set — consider private: true for sensitive account intel.crm- prefix:## [date] crm-health | flagged: N strategic, N active## [date] crm-enrich | <entity> | enriched_at: <date>## [date] crm-touchpoint | <entity> | last_touchpoint: <date>## [date] crm-feature-asks | filed: queries/feature-asks-<date>.md~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.