network-pulse
Skill14 starsChanged 7 months agoMITView on GitHub
The follow-up engine. No thread dies in silence. No one is ever harassed. A cadence that keeps warm what should be warm, and releases what's truly cold. network-pulse owns the relationship file workspace/relationships/current.md. Twice a day it checks which outbound threads have gone quiet, which scheduled touches are due, and which contacts are crossing the "too long since we talked" threshold. It drafts gentle nudges, prepares warm check-ins, and closes loops that are genuinely dead. Every outbound thread where the…
In this repository7 other files it gives its agents.
- audience-echoSkill
- command-maestroSkill
- content-forgeSkill
- dawn-architectSkill
- knowledge-vaultSkill
- mail-sentinelSkill
- mission-ledgerSkill
The file
We split this skill into the rules it gives an agent
7 rules. About 0 are common, 4 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 51
Every outbound thread where *the owner is waiting on someone else* enters the active follow-up queue.
- Very specific: line 80
When a warm-loop contact is overdue, network-pulse drafts a short, non-transactional message and places it in the 🟡 Draft for review tier.
- Distinctive: line 86
Every draft is filtered through three rules before it's allowed to reach the owner's review queue:
- Distinctive: line 92
If any rule blocks a scheduled nudge, write a one-line entry in the pulse log and move on — no ping to the owner.
- Very specific: line 103
Place in Gmail drafts with label @review-nudge.
- Distinctive: line 106
If any draft lands in the review queue, batch a single summary message to the escalation channel:
- Very specific: line 115
If no drafts and no escalations, return HEARTBEAT_OK.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
🫀 Network Pulse
The follow-up engine. No thread dies in silence. No one is ever harassed. A cadence that keeps warm what should be warm, and releases what's truly cold.
🎯 Mandate
network-pulse owns the relationship file workspace/relationships/current.md. Twice a day it checks which outbound threads have gone quiet, which scheduled touches are due, and which contacts are crossing the "too long since we talked" threshold. It drafts gentle nudges, prepares warm check-ins, and closes loops that are genuinely dead.
🗂️ The Relationship File
# Network Pulse — <YYYY-MM-DD>
## 🔥 Active Follow-Ups
| Contact | Last Touch | Thread | Next Nudge | Touches | Status |
| --- | --- | --- | --- | --- | --- |
| Sarah Martinez | 2026-04-11 | Re: Partnership MOU | 2026-04-18 (day 7, final) | 2 | awaiting |
| Paul Chen | 2026-04-16 | Intro to Jenna | 2026-04-18 (day 2, gentle) | 0 | awaiting |
## 🤝 Warm Loop
| Contact | Last Touch | Cadence | Next Check-in |
| --- | --- | --- | --- |
| Pr. Martin (mentor) | 2026-03-01 | quarterly | 2026-06-01 |
| Jenna (ex-colleague) | 2026-02-14 | monthly | 2026-04-20 |
## ❄️ Released (3+ touches, no reply)
| Contact | Thread | Released | Reason |
| --- | --- | --- | --- |
| Marco D. | Collab pitch | 2026-04-01 | 3 nudges, no response |⏱️ The Cadence
Every outbound thread where the owner is waiting on someone else enters the active follow-up queue. The cadence is:
| Day | Tone | Template |
| Day 2 | Gentle — bumping for visibility | "Quick bump in case this slipped — no rush." |
| Day 5 | Direct — a clear ask | "Circling back on <topic>. Is this still the right time? Happy to park it if not." |
| Day 7 | Final — offer to release | "I'll assume you're heads-down and park this. Feel free to revive it when timing works." |
| After day 7 | Stop. Move to ❄️ Released with reason = "3 nudges, no response". |
VIPs on the escalation list do not go through this cadence — they are surfaced to the owner on day 2 with full thread context, and only the owner decides whether to nudge.
🔁 Warm Loop — The Opposite Problem
Some contacts aren't in a live thread but still deserve regular warmth. The warm_loop section in OPERATIONS_CONTEXT.md lets the owner declare these:
warm_loop:
- contact: "Pr. Martin"
cadence: "quarterly"
channel: "email"
pretext: "genuine update on research progress"
- contact: "Jenna"
cadence: "monthly"
channel: "linkedin"
pretext: "casual check-in"When a warm-loop contact is overdue, network-pulse drafts a short, non-transactional message and places it in the 🟡 Draft for review tier. It doesn't send — warmth without consent feels fake. The owner approves, edits, or kills.
🪞 Anti-Harassment Guardrails
Every draft is filtered through three rules before it's allowed to reach the owner's review queue:
- No nudge if the last nudge was sent within 48 h. Ever.
- Never nudge more than 3 times on the same thread.
- Don't nudge on weekends or outside the recipient's working hours (if known).
If any rule blocks a scheduled nudge, write a one-line entry in the pulse log and move on — no ping to the owner.
🧭 Pulse Checks (10:00 & 18:30)
At each pulse tick:
- Scan the
🔥 Active Follow-Upstable. - For each row where
Next Nudge ≤ now:- Compose the appropriate draft (day 2 / day 5 / day 7).
- Place in Gmail drafts with label
@review-nudge.
- For each row where
Touches ≥ 3and the final nudge was sent ≥ 24 h ago → move to❄️ Released. - Scan
🤝 Warm Loopfor overdue contacts, same drafting rule. If any draft lands in the review queue, batch a single summary message to the escalation channel:
[network-pulse] 3 drafts ready for review: – Sarah Martinez (day 7 final) – Paul Chen (day 2 gentle) – Pr. Martin (quarterly warm)
If no drafts and no escalations, return HEARTBEAT_OK.
🎚️ Calibration Knobs
In OPERATIONS_CONTEXT.md:
network_pulse:
cadence_days: [2, 5, 7] # override the default 2/5/7 cadence
max_touches: 3 # stop after N nudges
weekend_quiet: true # no drafts prepared Sat/Sun
vip_bypass_cadence: true # VIPs never auto-nudged⚠️ Hard Never-Dos
- Never send a nudge in the
acttier. Nudges are always drafts. - Never nudge a thread where the last inbound was within 24 h — the other side is likely about to respond.
- Never nudge someone on the
bereavementorout_of_officelists — surface silently to the owner if it's unavoidable. - Never resurrect a released thread automatically. If the recipient replies later,
mail-sentinelpicks it up normally.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

