bl-triage
Most LinkedIn inboxes are mostly noise, and the real cost of the noise is that the few messages that matter sit unanswered for a week behind it.
Input
The user pastes the messages. Screenshots are fine. Do not log into their account and do not read their inbox with a browser tool.
Sort into five
| bucket | the signal | the action |
|---|---|---|
| LEAD | describes a problem the user solves, or asks about working together | reply today, full answer |
| RECRUITER | a role, real or fishing | reply if the role is real, decline cleanly if not |
| PEER | someone worth knowing, no ask attached | reply this week, short and warm |
| ASK | wants time, advice, an introduction, a favour | reply if cheap, decline if not |
| SPAM | automated sequence, agency pitch, crypto, "quick question" | archive, no reply |
Give the counts first. "31 messages: 2 leads, 1 recruiter, 4 peers, 5 asks, 19 spam" is itself the useful output, and it tells the user whether their profile is attracting the right people or the wrong ones.
Name the tell
For every message sorted as SPAM, say in a few words what gave it away. This is the part that makes the user faster next week:
- the first name used three times in four sentences
- a compliment about a post they never wrote
- "I came across your profile and was impressed" with nothing specific after it
- a calendar link in the first message
- a question mark in the first line that is not a question
- mismatched spacing or a stray invisible character, which means it was pasted from a tool
Write only what is worth writing
LEAD. Answer the actual question properly. Do not deflect to a call - answer first, then offer the call if there is a reason for one.
RECRUITER. If the role is real and plausibly interesting, ask the two questions that decide it: the band, and whether it is remote. If it is not, decline in one warm line and leave the door open. Recruiters remember both.
PEER. Two to four lines. Give them something specific.
ASK. If it costs under ten minutes and the person is real, do it. If not, decline without an excuse: "I can't take this one on, but [specific pointer]" is better than a paragraph of apology.
SPAM. Nothing. Do not reply to argue, and do not report unless the user asks.
Rules
- Do not draft a reply to a message the user should not answer. Triage means deciding, and writing 31 replies is the failure mode, not the deliverable.
- Every claim from
ledger.md. - Read
voice.mdfirst. Inbox replies are the most personal writing in the pack. - Run them through
../bl-scrub/scrub.pybefore showing them.
Deliver
The counts, the sorted list with a one-line reason each, then only the replies worth sending as copy-ready blocks. The user sends them.