- GraphQL `messages` resolver requires `conversationId` passed directly to the `messages()` field, not just the parent `conversation()`.
Resources
6Install
npx skillscat add imoonkey/openweb/src-sites-angellist Install via the SkillsCat registry.
This skill provides read-only access to AngelList Venture for reviewing deal invites, inbox messages, and syndicate posts via GraphQL queries. It solves the problem of needing to manually navigate the AngelList Venture dashboard to retrieve structured data about deals, conversations, and posts. Developers should use it when building agents that need to programmatically access an authenticated user's AngelList Venture data, such as deal room documents or message threads.
AngelList Venture
Overview
AngelList Venture (venture.angellist.com) — investor-side dashboard for syndicates, deals, and LP messaging. Logged-in only. Read-only coverage.
Workflows
Review pending deal invites
listInvites→ all current invites with deal id, name, syndicate, statusgetInvite(virtualDealId)→ data room: memo, deck, slides, attachments (via portal.angellist.com)
Read inbox messages
listMessages→ paginated message threads with participants, last message, unread statusgetMessage(conversationId)→ full thread with all messages
Read syndicate posts
listPosts→ paginated syndicate posts with title, author, dategetPost(postId)→ full post body, syndicate, documents
Operations
| Operation | Intent | Key Input | Key Output | Transport |
|---|---|---|---|---|
| listInvites | current deal pipeline | — | id, dealName, virtualDealId, syndicateName, canInvest, investUrl | adapter (page, Apollo) |
| getInvite | deal data room | virtualDealId ← listInvites | senderOrgHandle, sections[].header, sections[].content, sections[].files[] | adapter (page, intercept portal) |
| listMessages | inbox threads | limit?, cursor? | conversations[].id, participants, lastMessage, isUnread | adapter (page, Apollo) |
| getMessage | thread messages | conversationId ← listMessages | participants, messages[].text, messages[].sentAt, messages[].sentBy | adapter (page, Apollo) |
| listPosts | syndicate posts | limit?, cursor? | posts[].id, title, fromName, publishAt, isUnread | adapter (page, Apollo) |
| getPost | full post | postId ← listPosts | title, body, fromName, syndicateName, documents | adapter (page, Apollo) |
Known Limitations
- Logged-in only; session cookies from default Chrome profile.
getInvitenavigates to portal.angellist.com (cross-origin); fund-type and deal-type invites may have different data room layouts.x-al-gqlsigning header requires Apollo client.query() via main-world CDP — patchright's isolated evaluate cannot access__APOLLO_CLIENT__.- GraphQL
messagesresolver requiresconversationIdpassed directly to themessages()field, not just the parentconversation().