Skip to content

v1.1.0

Latest

Choose a tag to compare

@sergebulaev sergebulaev released this 13 Sep 12:50

A twelfth skill, and the first one that works for someone who has never posted.

Every writing skill in this bundle demands specifics: an odd-precision number with a named referent, a dated moment, a position somebody would argue with. When the input has none, the humanizer's own rule is to ask the user rather than invent. That ask was happening on every single request, unstructured, and the answers died with the session. Tell it about the $4,730 Vercel overage once and it is gone tomorrow.

How this was found

Not from a report. From reading what people do in forks.

A user midway through a career change had no LinkedIn archive to analyse, so he built a GitHub Actions workflow that drafts a post every two days, and pasted thirty lines of career history into the YAML to feed it: employers, dates, 400+ clients, 98% CSAT, seven housing projects at 750+ flats each.

That is exactly the material a good post is made of, and the Voice Profile could not hold a line of it. Its section for who you are is three bullets: role, ICP, pillars. He had the substance and nowhere to put it, so he put it in a workflow file.

The Story Bank

references/story-bank.md is that place. Nine sections, each chosen because a draft reaches for it:

Section What a draft does with it
Timeline anchors a post on a real month rather than "recently"
Receipts the one concrete figure that makes a post read as human
Shipped proof that survives someone checking
Turning points the reversal most strong posts open on
Scars what a win cannot supply: cost
Positions the claim, and who disagrees
Recurring stories the three you already tell, pre-tested out loud
Names you can use stops a draft going vague, or naming the wrong client
Off limits subjects that stay out regardless of how well they would perform

It defaults to gitignored. It holds career detail, figures, failures and named people, and a tracked file follows any push, including to a public fork. v1.0.47 fixed the same blind spot in the Voice Profile.

The interviewer

linkedin-interviewer fills it, in two modes. Bank mode runs a broad interview, 20 to 40 minutes, resumable, and keeps the result. Post mode runs five to eight questions on one topic and hands a spine to the post writer.

The technique is the point, not the section list:

  • Press every soft answer once. "We improved performance" becomes "by how much, measured how, over what period". Once. Twice is an interrogation.
  • Chase the reversal, not the win. What did you believe a year ago that you no longer believe, and what did it cost to find out. Those sections carry posts better and are the hardest to fabricate.
  • Make them price the position. A claim with no cost to holding it is not a position and will not produce a post worth reading.
  • Never fill a gap with a plausible number. An unverified figure in the bank becomes an unverified figure in a published post. The line stays empty and the section is marked thin.
  • Do not run it as a form. If they are talking, follow them. The material is in the tangent more often than in the answer.

references/question-bank.md carries the questions that reliably produce usable material and, just as usefully, the ones that feel productive and yield adjectives. "Tell me about yourself" returns a CV read aloud. "What did you spend most of last week actually doing?" returns a post.

Two halves of one user model

Voice Profile Story Bank
Holds how you sound what you have to say
Built from 3-6 posts you already wrote an interview
Built by linkedin-humanizer --mode profile linkedin-interviewer

Run both. Someone new to LinkedIn cannot fill the first and can always fill the second, which is the usual reason a first draft comes out generic.

The four writing skills that already load the Voice Profile now load the bank beside it and take concrete details from there rather than interrupting a draft to ask. The humanizer deliberately does not: it rewrites existing text rather than sourcing new facts.

Note on the version

Minor rather than patch, and the bundle is now 12 skills. The count is asserted in CI against the plugin manifest, so a thirteenth cannot arrive quietly.