Message Subject

Fetch the parent resource that a message is about.

When your bot receives a comment on a Linear issue or GitHub PR, message.subject resolves the parent resource so your handler knows what the conversation is about.

Usage

lib/bot.ts
bot.onNewMention(async (thread, message) => {
  const subject = await message.subject;

  if (subject) {
    await thread.post(
      `This is about: ${subject.title} (${subject.status})\n${subject.url}`
    );
  }
});

On Linear and GitHub, comment webhooks deliver the comment text but not the parent issue or pull request — message.subject fetches it from the platform API on first access. The result is cached on the message instance. On chat platforms (which have no parent-resource concept), or if the API call fails, it returns null.

See MessageSubject for the full type shape.

Platform support

Platformmessage.subject returns
LinearParent issue (from comment webhooks)
GitHubParent issue or PR (from comment webhooks)

All other platforms return null.

User info

For user profile details, use bot.getUser:

lib/bot.ts
bot.onNewMention(async (thread, message) => {
  const user = await bot.getUser(message.author);
  if (user) {
    await thread.post(`Hi ${user.fullName} (${user.email})`);
  }
});

For anything beyond message.subject, access the platform's typed API client via bot.getAdapter(...).client.

On this page

GitHubEdit this page on GitHub