Skip to content

Suggested comment list

name: Suggested comment list
slug: suggested-comment
agent: fitzy
summary: A fast, paste-ready triage list of leader posts to comment on, each with a draft in the profile's voice.
triggers:
- "generate the suggested comment list"
- "give me N comments to make"
- "find posts we should comment on"
- "engagement opportunities"
- "anything worth commenting on"
- "comments to reply to"
requires_tools:
- linkedin_list_comment_opportunities
requires_docs:
- voice
- knowledge

A teammate wants a list of leader posts the profile should comment on, with a ready-to-paste draft for each. “For the week” or no window named means the 7-day window. (“Comments to reply to” is the same ask out of habit — the action is to comment on the post.)

This output is a fast triage list: see the post, read the draft, paste or skip in seconds. It is NOT an audit. Your selection reasoning, the voice check, the framework names, and how the data was pulled all stay out of it. Deliver the clean list and nothing else.

The bar for a pick: a post where the profile has a specific, credible take anchored in one of their POVs or frameworks. Quality first — a short clean list beats a padded one.

  • Read-and-summarize requests (“what’s been posted about X?”, “has Cy said anything lately?”) — that’s trend reporting, not this.
  • Drafting a single comment on one specific post the user names — just draft it.
  • Post ideas / what to publish — that’s the ideation flows, not commenting.

Pull and select:

  1. Fetch voice and knowledge if not already in thread.
  2. Call linkedin_list_comment_opportunities(profile_id, days=N, max_per_author=3, limit=60). The bench of a few posts per leader gives each leader a backup (so one off-POV top post doesn’t lose them) and headroom to fill a higher count. Pass days=N to match a window the user names (“past 2 days” → days=2); otherwise the 7-day default.
  3. Apply the POV filter to each post. Skip:
    • Posts outside the profile’s established POVs (interesting is not a reason to comment)
    • Posts that would need words put in their mouth the knowledge doc doesn’t support
    • Content-blind image posts (flagged post_type: image, empty body) — you can’t see the image
  4. Draft from the post’s own content and the profile’s POV. Existing comments aren’t collected, so you’re not working off the thread — a rare overlap with something another commenter already said is expected and fine; the rep reviews before posting.
  5. Draft each comment in voice, paste-ready. 1-3 sentences typical, max 4. Moves that fit: agreement-with-extension (“Yes, and…”), concession-and-pivot (“Fair point. The piece I’d push on…”), a reframe through their framework, or a question back.
  6. Run the pre-ship voice check silently on every draft. Do not print it. The one thing that surfaces is the named-entity flag (see format).

Count and diversity:

  • No count named: one pick per leader. Show each leader’s single best-fitting post. The list is however many leaders clear the bar.
  • A count named (“give me 10”): try to hit it, one per leader first. Only after every leader has contributed their best post do you take a second from the most active leaders, then a third, working down. A leader can repeat, but never let two or three leaders carry the whole list. Spread is the point.
  • Can’t reach the number even with second posts? Stop at what cleared the bar and say so in one line. Never pad with off-POV picks, never soften the filter to hit a number.
  • One list = one pull. Never stitch two runs together, and never widen the window to manufacture volume (a wider window changes which post each leader contributes, not how many leaders exist). The only levers for more volume are a second post per leader (above) or adding leaders to the pool.

If asked “is that all / can I get more”: answer in a line or two. The count is one-per-leader across the pool; offer to pull a second post from the most active leaders to reach a target. Don’t print an options menu, don’t explain how the tool works.

Exactly this shape (the code fence is only to show structure, post it as ordinary Slack text, no fence):

*Comment opportunities, week of <Mon D - Mon D>*
*1. <Leader Name>* · <N> likes · <Xd ago>
<one-line context, what the post says, 15 words max>
→ <link>
Draft:
<comment, ready to paste>
Why this one: <one plain-English sentence on the angle>
*2. <Leader Name>* · <N> likes · <Xd ago>
...

Format rules:

  • Why this one is plain English. No framework names, POV numbers, or section refs. “Lets you make the case that recognition without structure backfires,” never “anchors to POV 5 / §2.6.” The framework is the engine, not a label to print.
  • Drafts are bare text under Draft:, with no blockquotes and no surrounding quotation marks, so they paste straight into LinkedIn.
  • If a draft names a person or company, add a line under that draft: ⚠ verify name before posting. That is the only check that surfaces in the list.
  • If nothing clears the bar, drop the template and say it straight: “Scanned the pool for the past 7 days, nothing had a clean anchor for the profile to engage with. Want a wider window or a topic filter?”