Skip to content

Add Linked API skills: linkedin, linkedin-growth - #302

Open
vprudnikoff wants to merge 1 commit into
vercel-labs:mainfrom
vprudnikoff:publish-linkedin-skills-20260709121549
Open

Add Linked API skills: linkedin, linkedin-growth#302
vprudnikoff wants to merge 1 commit into
vercel-labs:mainfrom
vprudnikoff:publish-linkedin-skills-20260709121549

Conversation

@vprudnikoff

Copy link
Copy Markdown

Adds the following Linked API agent skills as skill directories.

General LinkedIn automation (linkedin)

  • Path: skills/linkedin
  • Fetch LinkedIn profiles, search people and companies, send messages, manage connections, create posts, react, comment, and run custom LinkedIn workflows from Claude Code, Codex, Cursor, and Windsurf.

Lead pipeline (import → qualify → invites) (linkedin-growth)

  • Path: skills/linkedin-growth
  • Import leads from LinkedIn or Sales Navigator searches, qualify them against an ideal-customer profile, schedule safe connection invites across accounts, track acceptances, and withdraw stale pending requests.

Source: https://github.com/Linked-API/linkedin-skills

@vercel

vercel Bot commented Jul 9, 2026

Copy link
Copy Markdown

@vprudnikoff is attempting to deploy a commit to the Vercel Team on Vercel.

A member of the Team first needs to authorize it.

@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addednpm/​better-sqlite3@​11.10.08810010091100
Addednpm/​croner@​9.1.010010010090100

View full report

});
}

function rename() {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

account.mjs rename updates accounts.name (cascading to leads.owner_account) but leaves runs.account, import_batches.searcher_account, and import_state.last_assigned_account pointing at the old name, desyncing quota/pacing/retry accounting.

Fix on Vercel

Comment on lines +223 to +224
const r = db.prepare('DELETE FROM accounts WHERE name = ?').run(name);
if (r.changes === 0) throw new Error(`Account '${name}' not found`);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
const r = db.prepare('DELETE FROM accounts WHERE name = ?').run(name);
if (r.changes === 0) throw new Error(`Account '${name}' not found`);
// leads.owner_account is NOT NULL with a REFERENCES constraint and no ON DELETE action,
// so with foreign_keys=ON the DELETE below would fail while leads still reference this
// account. To honor the documented "leads remain but become orphaned" behavior, briefly
// disable FK enforcement for the delete (a pragma toggle is a no-op inside a transaction,
// so this is done outside one). When there are no leads, FK stays on as normal.
const orphaning = n > 0;
if (orphaning) db.pragma('foreign_keys = OFF');
try {
const r = db.prepare('DELETE FROM accounts WHERE name = ?').run(name);
if (r.changes === 0) throw new Error(`Account '${name}' not found`);
} finally {
if (orphaning) db.pragma('foreign_keys = ON');
}

account.mjs remove --force throws a FOREIGN KEY constraint failed error instead of orphaning leads, because leads.owner_account is a NOT NULL FK with no ON DELETE action while foreign_keys=ON.

Fix on Vercel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant