Skip to content

Engagement

Canopy → Engagement is where you handle everything that happens after a post goes live — comments, target-account activity, and auto-reply drafting.

Three tabs:

  • Inbox — comments on your published posts.
  • Feeds — target accounts whose new posts you want to see (or comment on) early.
  • Auto-reply — AI-drafted replies to incoming comments.

Inbox

Every comment on every post you’ve published lands here, newest first. Comments are pulled from LinkedIn into Canopy’s own database on each visit — so replied-state, reactions, and AI drafts persist across reloads.

Each comment row shows:

  • Commenter — name, headline, avatar, link to their LinkedIn profile.
  • Comment text — full text.
  • On post — the first line of your post they commented on.
  • Replied? — green check once you’ve replied through Canopy. Replies you make directly on linkedin.com aren’t reflected here; the check is sourced from CommentReply rows we write ourselves.

Replying

Click Reply on any comment → an inline composer opens. Type and Post Reply. Your reply posts to LinkedIn within seconds.

Reacting

Click React on any comment to pick one of six LinkedIn reactions:

EmojiName
👍Like
👏Celebrate
❤️Love
🙌Support
💡Insightful
😄Funny

Re-clicking the active reaction removes it. LinkedIn allows one reaction per person per comment, so picking a different emoji replaces the previous one.

AI draft (on demand)

Click the AI Reply button on any comment to generate a reply with Claude. The draft considers:

  • The comment text.
  • The full post they commented on.
  • A baseline professional-and-friendly tone.

The draft loads into the composer; review, edit, send. Drafts cost 1 AI credit.

For automatic draft generation (no click required), turn on Auto-reply below.

Feeds

Target accounts whose posts you want surfaced. Useful for:

  • Early commenting — being one of the first 10 commenters on a big creator’s post is a known LinkedIn growth trick.
  • Competitive monitoring — see what your category leaders post.
  • Industry signals — track key accounts that move markets in your niche.

Adding an account

Engagement → Feeds → Add account → paste a LinkedIn profile URL (https://linkedin.com/in/<slug>). Canopy resolves the profile through Unipile, saves it as a TrackedAccount, and queues it for polling.

The poller runs in-process inside canopy-api, ticking every 5 minutes and polling each tracked account at most once per 15 minutes. So a freshly-added account’s first posts appear in the Feeds tab within ~5 minutes; subsequent updates land on the 15-min cadence.

What you see

A reverse-chronological feed of every post by every account you’ve added. The sidebar lets you filter to one account at a time. For each post:

  • Author + headline + relative timestamp.
  • Post body (collapsed at 320 characters; Show more to expand).
  • Stats (likes / comments / shares).
  • First-N badge — green if you’d be the 10th commenter or earlier; grey otherwise.
  • Comment button — opens an inline composer to comment without leaving Canopy. The comment count bumps optimistically; the poller reconciles the real count on its next tick.

Removing an account

Hover a tracked account in the sidebar → trash icon. Cascades to its FeedPost rows.

Auto-reply

The Auto-reply tab is where you configure AI-drafted replies to incoming comments on your posts. Canopy ships suggest mode only — drafts are queued in the Inbox for human review and send. There is no auto-send and no cancellable countdown; nothing fires unless you click Use draftPost Reply.

Setup

Toggle Enable auto-reply drafts: on.

Configure:

  • Tone notes — free text. “Casual, founder voice. Always thank by name.” The drafter combines this with your last 5 sent replies as a style anchor.
  • Daily cap — max drafts generated per UTC day (default 50). Hard cap, enforced at the start of every drafter tick.
  • Skip comments shorter than N characters — default 5. Filters out pure-ack noise like “ok” and ”👍”.

How it works

A drafter scheduler runs in-process every 5 minutes. On each tick:

  1. For each LinkedIn account with auto-reply enabled, count today’s drafts. If already at dailyCap, skip.
  2. Find Inbox comments where: no reply yet, no draft pending, not previously dismissed, text length ≥ minCommentLength, commented in the last 24 hours.
  3. Build context: the comment, the full post, your tone notes, and your last 5 sent replies on this account.
  4. Generate a draft with Claude (1 AI credit per successful draft).
  5. Quality gate — reject drafts shorter than 15 characters, drafts containing template placeholders ({, [), or drafts that echo back >70% of the original comment.
  6. Persist the draft on the Comment row. It surfaces in the Inbox as a green ✨ AI draft ready pill.

Using a draft

In the Inbox, the pill shows:

  • Use draft — pre-loads the draft into the composer. Edit if you want; Post Reply sends it. Sending an unedited draft records source = "ai_draft" on the CommentReply row (so you can later measure how often drafts were sent verbatim vs. rewritten).
  • Discard — dismisses the draft permanently for that comment. The drafter won’t regenerate one (draftDismissed is sticky).

Frequently asked questions

Why don’t I see comments on a recently-published post?

The Inbox pulls comments live from Unipile when you open it. If a comment was posted on linkedin.com seconds ago, click the Refresh button — Unipile’s mirror of LinkedIn data has a small propagation lag.

Can Canopy reply to comments on someone else’s post (not mine)?

Not via Auto-reply — that mode is scoped to comments on your published posts. To engage on others’ posts, use Feeds (manual commenting from inside Canopy) or LinkedIn directly.

Does Auto-reply count as the Reply Agent?

No. Outpilot’s Reply Agent handles LinkedIn DMs (private messages). Canopy’s Auto-reply handles comments on your published Canopy posts. Different surfaces, similar mechanism.

Why is the “Replied?” green check missing for a comment I replied to on linkedin.com?

The check is sourced from CommentReply rows that Canopy writes when you reply through Canopy. Replies you make directly on linkedin.com aren’t reflected. Reply through Canopy (or use the AI draft flow) for the check to appear.