Skip to content

Releases: Siddardth7/networking-agent

v1.0.0 — Public release 🚀

Choose a tag to compare

@Siddardth7 Siddardth7 released this 02 Jul 15:43
39a8c2b

Networking Agent 1.0: referral-first job networking, for any field, on your own Claude tokens.

The job funnel is flooded with AI-generated noise — recruiters spot generic outreach in seconds and bin it. What still works is a warm referral (~28.5% vs ~2.7% hire rate for cold applicants). This agent exists for exactly that: five personalized messages to the right people beat fifty generic ones.

What you get

  • Guided onboarding, any field/network-setup interviews you and builds your profile (school, employers, target roles, a focus taxonomy for your domain), your voice doc, field-adapted persona templates, and a provenance-tagged resume library. A backend engineer, a nurse, and an aerospace stress analyst run the same pipeline with different profiles.
  • Two front doors — Campaign mode (/network-run) builds a bench at a target company; Application mode (/network-jobs) finds referral candidates per job posting you're applying to and answers "do I have a referral for this req yet?". One engine, cross-deduped.
  • The right people, ranked and explained — deterministic referral-likelihood scoring (confirmed alumni 40 pts, warm connections, recruiters, role-team match) with every point's reason attached.
  • Your voice, never fabricated — drafts follow a validated 4-part model with a hard specificity gate; facts come only from your resume library with provenance (coursework is never dressed up as employment, no invented metrics); an anti-AI-tell critic holds anything that smells generated.
  • The full loop — capped follow-ups (2 touches, 4–7-day gap), timezone-aware send windows, reply-aware next moves (thank-the-intro / sponsorship / referral-ask / schedule-call), outcome tracking, and per-posting referral status.
  • A coach, not just a tool/network-coach explains the strategy in terms of the agent's real mechanics, and the pipeline explains its choices as it presents them.
  • Runs on your Claude session's tokens — no Anthropic API topup. A free-tier Serper key (or Apify) for discovery is the only hard requirement. The human always reviews and sends; the agent never touches LinkedIn.

Trust

1,270 hermetic tests at 98.97% line+branch coverage (CI-gated at 98), plus opt-in live-API smoke tests, live accuracy scorecards (classify 100%/100%, ranking 100% concordance), and a live end-to-end trial on a non-aerospace profile (trial doc). Full history in CHANGELOG.md; how to contribute in CONTRIBUTING.md.

Get started

claude plugin install https://github.com/Siddardth7/networking-agent
/network-setup
/network-run <company>

🤖 Generated with Claude Code

v0.10.5 — Public polish (B4)

Choose a tag to compare

@Siddardth7 Siddardth7 released this 02 Jul 15:40
e43634c

The pre-1.0 polish pass (ROADMAP B4). Three things a public project needs:

  • Live-API smoke tests (#26). The suite was 100% mocked; nothing caught provider contract drift until a real run broke. tests/test_live_smoke.py adds three doubly-gated live checks (opt-in flag + key; CI always skips): a real Serper LinkedIn search parsed into candidates, the free Apify auth check, and a 1-token Anthropic ping. Run live at release time: Serper + Anthropic PASS.
  • Contributor + listing polish (#83). New CONTRIBUTING.md (setup, the CI-enforced coverage/lint bar, conventions, and the architecture ground rules: host-token inversion, profile-driven never person-driven, no silent caps, fact discipline). README brought current (badges were six versions stale; prerequisites now say the truth — no Anthropic key needed, a free discovery key is the only hard requirement; multi-domain examples). plugin.json description rewritten field-agnostic.
  • Live non-aerospace E2E trial — PASS (#84). A wizard-built backend-SWE persona ran the real pipeline against Cloudflare on live discovery: custom taxonomy in classification, hooks from real profile snippets, the target_focus +10 rank signal firing on live data for the first time, and a first-pass-clean draft through gate + critic. The trial caught (and this release fixes) a real defect: the setup wizard now creates field-adapted persona templates (/network-setup step 3.5), so a non-aerospace user's drafts never carry the built-in aerospace identity.

Quality: 1270 tests (+3 opt-in live), 98.97% line+branch coverage (gate 98), ruff clean. Full details in CHANGELOG.md.

🤖 Generated with Claude Code

v0.10.0 — Guided onboarding + coaching

Choose a tag to compare

@Siddardth7 Siddardth7 released this 02 Jul 13:33
08d8837

The onboarding release (ROADMAP B3, epic #75): a stranger in any field can now self-onboard through a guided conversation — and be coached on the networking strategy as the agent works. This closes the last functional gap before B4 public polish → v1.0.

Highlights

  • /network-setup — guided onboarding wizard (#77). A conversational interview on host tokens builds your profile.yaml (identity, school signals, employers, target roles, and a focus taxonomy the host proposes for your field), your voice.md (only the [CUSTOMIZE] sections are interviewed; the validated message mechanics stay intact), and your resume_library.yaml from pasted resume text under strict fact discipline — provenance types never inflated, no invented metrics. Status-aware and re-runnable: updates rewrite only what you ask, with automatic timestamped backups. API keys never pass through the chat. The README quick start now leads with it.
  • Deterministic setup bridge (#76). network_setup_host status | scaffold | write — validation uses the real runtime loaders (the profile parser, the ResumeLibrary model), so "valid at setup" means "loads at runtime". Raw-text writes preserve your YAML comments; invalid content is refused with the validator's message and your existing file untouched.
  • /network-coach + explain-as-it-works (#78). The strategy playbook grounded in this repo's actual mechanics — the ranker's real weights (confirmed alumni 40 pts), the hook ladder, the one-ask rule + ask rotation, follow-up cadence, send windows, and the reply → next-move precedence table. /network-run and /network-jobs now explain each candidate and draft in one line as they present them, straight from the data on the rows.

Validated end to end in-Claude with a synthetic ICU-nurse persona: the wizard-built files drove classification, all three hook tiers, the taxonomy resolver, the rank team-match signal, and achievement matching.

Quality: 1270 tests, 98.97% line+branch coverage (gate 98), ruff clean. Full details in CHANGELOG.md.

🤖 Generated with Claude Code

v0.9.5 — Application mode (per-posting referrals, profile-driven)

Choose a tag to compare

@Siddardth7 Siddardth7 released this 02 Jul 08:13
5d1e652

The Application-mode release: a second input front door. Where Campaign mode targets a company, Application mode reads a scored job feed and finds referral candidates for a specific posting — the role's team, hiring manager, recruiter, and warm personas — linked to a job_id the consumer polls for "referral yet?". Runs end to end on host tokens, and the whole agent is now profile-driven, not person-driven.

Highlights (epic #57, P1–P4)

  • P1 (#58)applications + application_contacts tables (migration 009), Application model, feed parser with drop/error reporting.
  • P2 (#59)/network-jobs: parse feed → per posting persist → role-biased discovery (--keywords) → classify (host subagent) → ingest → link to job_id, with cross-mode dedup via canonical LinkedIn URL.
  • P3 (#60) — role-aware drafting (drafts name the specific role via --job-id), per-job_id referral status rollup (/network-jobs --status), ask-rotation scoped by posting.
  • P4 (#61) — profile-driven generalization: new src/core/profile.py + ~/.networking-agent/profile.yaml (feed profile_ref selects profiles/<ref>.yaml; NETWORKING_AGENT_PROFILE activates a named profile pipeline-wide). The ~8 hardcoded aerospace/UIUC spots moved into the default profile — byte-identical zero regression for existing installs. Free-form function/target_keywords resolve against the profile taxonomy to wire the ranker's target_focus (+10 team match). A backend SWE, a nurse, or a finance analyst use the same feed schema — only the profile differs. Closes ROADMAP B1 + B2.

Hardening (post-merge review, PRs #72#73)

Named-profile activation end to end, clean ProfileError on malformed profile.yaml, explicit empty lists honored (no fabricated employer hooks), mtime-cached profile loading, one shared focus-label validator, plain-string focus labels pipeline-wide, ingest-boundary label validation.

Quality: 1255 tests, 98.94% line+branch coverage (gate 98), ruff clean. Full details in CHANGELOG.md.

🤖 Generated with Claude Code

v0.9.0 — Host-token architecture

Choose a tag to compare

@Siddardth7 Siddardth7 released this 01 Jul 03:50
46b1401

The full outreach pipeline now runs on the host Claude's tokens by default — no ANTHROPIC_API_KEY topup needed (#50). The Anthropic-API orchestrator is retained as the explicit --api headless fallback.

Highlights

  • Host-token everything: find→classify→ingest, drafting, next-move, critic, and the default /network-run orchestration all run on host tokens via deterministic Bash bridges + model: sonnet subagents. Python stays the deterministic tool layer (context builders + safety gates + persistence).
  • network_run_host planner drives the loop (plan/select); /network-run is host-default, --api falls back to run_pipeline.
  • Validated end-to-end in-Claude; two bugs found & fixed (#64 loop-stall, #65 came-across critic contradiction).
  • Folds in #24 (import-layer hardening), #20 (exit-gate harness — partial), #19 (reply-aware next-move).

Notes

  • #20's live exit-gate run is waived for this release (harness ships; live run deferred on Anthropic credit).

Repo 98.85% line+branch, 1139 tests green. See CHANGELOG for full detail.