Chris Olson c2854ba163 Anthropic OAuth LLM, entitlements (feature 1), renewals, + 7 enhancements
- LLM: Anthropic Sonnet 5 (effort=low) via OAuth Bearer (Claude Code keychain
  token, expiry-aware); NVIDIA/LM Studio endpoints kept commented for switch-back.
- Entitlements: scripts/import_entitlements.py joins ACL export to accounts by
  normalized parent name (324/342 matched; ID column Excel-corrupted), maps
  products->capabilities via data/product_capability_map.json. Raw ACL csv and
  entitlements.json are gitignored (confidential); accounts.json carries derived
  currentProducts + ownedCapabilityIds. Owned capabilities tag briefs EXPANSION.
- Renewals: local renewal-proximity score boost (window 365d, max +0.10) +
  'renewals' report; briefs/digests show RENEWAL WINDOW context.
- Batch runs: loop --limit/--rep with persistent cursor (strategic + stale-first).
- Digests: per-rep HTML export; timestamped digest_<date>_<time>.md kept forever.
- Account narrative memory fed into relevance/synthesis; synthesis maintains it.
- Signal quality gate drops PR fluff pre-LLM; SEC EDGAR filings connector.
- Citation verification: talking points must cite [S#] signals or are dropped.
- Brief filenames use account-name slug; whitespace report + installed-base view.
- USAGE.md: full command/flag/env reference.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-11 19:12:36 -04:00

Prospecting Agent Loop

A closed-loop, account-intelligence system for enterprise sales prospecting: it monitors a list of target accounts, harvests business signals (news/web today; LinkedIn, job postings, and filings to come), evaluates them against a structured Capability Library of sellable products, and routes scored, signal-grounded opportunity briefs to the right rep — with rep feedback flowing back into scoring.

Contents

Status (MVP)

  • End-to-end loop runs: harvest → normalize/dedup → relevance filter → synthesize → score → deliver → feedback → recalibrate.
  • Capability Library seeded with 40 real Broadcom + VMware capabilities.
  • News connector: live Exa.ai with hard request ceilings (free-plan safe).
  • LLM reasoning: provider-agnostic (Gemini or Anthropic), with an offline mock fallback so the pipeline runs without a key.
  • Pilot accounts: 7 real companies wired in (~200 to follow).

Secrets live in sales-agent/.env (gitignored). See sales-agent/.env.example.

Quick start

cd sales-agent
cp .env.example .env      # add your keys (Exa, Gemini/Anthropic)
python3 run.py loop       # run the loop
python3 run.py digest     # per-rep daily digest
Description
No description provided
Readme 310 KiB
Languages
Python 100%