Agent skill

Meeting Brief

by gooseworks-ai in gooseworks-ai/goose-skills

Daily meeting preparation system that checks your calendar each morning, deeply researches external attendees (LinkedIn, company info, GitHub, past notes), and sends you personalized briefs via…

MITAuto-check passedProductivity & Automation

Install Meeting Brief

skills CLI
$ npx skills add gooseworks-ai/goose-skills --skill meeting-brief -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install gooseworks-ai/goose-skills meeting-brief --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/sales/composites/meeting-brief .claude/skills/meeting-brief && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
meeting-brief
GitHub stars
1.2k
Used in
1 other repo
Token cost
~2.3k tokens
SKILL.md length
732 words
Files
12 (incl. scripts)
Skills in repo
273
Repo updated
First seen
Licence
MIT

At a glance

Daily meeting preparation system that checks your calendar each morning, deeply researches external attendees (LinkedIn, company info, GitHub, past notes), and sends you personalized briefs via…

  • Works in 2 steps: Configure Team Members → Run Daily (Manual or Scheduled)
  • You want automated preparation for upcoming meetings with context about each person youre meeting
  • SKILL.md covers What It Does, Setup, How It Works and Research Process, plus 7 more sections
  • Runs Shell and JavaScript scripts from its folder; calls node; reaches hooks.slack.com

What it does

Meeting Brief is an agent skill from gooseworks-ai/goose-skills. Daily meeting preparation system that checks your calendar each morning, deeply researches external attendees (LinkedIn, company info, GitHub, past notes), and sends you personalized briefs via email (1 per person). Use when you want automated preparation for upcoming meetings with context about each person you're meeting.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including scripts (for example `EXAMPLE.md`, `SETUP.md` and `scripts/check_calendar.sh`).

It sits in Productivity & Automation, covering Scheduled and recurring tasks. It works with GitHub, LinkedIn and Slack. The repository describes itself as: Library of Growth & GTM skills + data APIs for Claude Code, Codex, Cursor to run ads, social, content, lead gen, seo and data scraping. The licence is MIT.

When your agent uses it

  • You want automated preparation for upcoming meetings with context about each person youre meeting
  • Tasks that involve Scheduled and recurring tasks

Example prompts

  • “/meeting-brief”

Requirements

  • Node.js
  • A Bash shell

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. Configure Team Members
  2. Run Daily (Manual or Scheduled)

What it can do on your machine

Read from SKILL.md and the folder at commit c650c6d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 6 files in scripts/ (Shell and JavaScript), which the agent can run.

    Shell commands in SKILL.md call:

    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • hooks.slack.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Meeting Brief loads about 2.3k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 732 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~85
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from gooseworks-ai/goose-skills at commit c650c6d, republished under its MIT licence (© gooseworks-ai). 732 words, ~2,287 tokens.

Download SKILL.mdSave it as .claude/skills/meeting-brief/SKILL.md (or your agent's skills folder). This skill also uses 11 other files; get the full folder from GitHub.
name
meeting-brief
description
Daily meeting preparation system that checks your calendar each morning, deeply researches external attendees (LinkedIn, company info, GitHub, past notes), and sends you personalized briefs via email (1 per person). Use when you want automated preparation for upcoming meetings with context about each person you're meeting.

Meeting Brief

Automated daily meeting preparation system that researches meeting attendees and sends you personalized briefs.

What It Does

Every morning (configurable time):

  1. Checks your calendar for today's meetings (via gcalcli)
  2. Extracts attendees from each meeting
  3. Filters out your team members (configurable)
  4. Deep researches each external person:
    • LinkedIn profile (web search)
    • Company information
    • GitHub profile (if engineer)
    • Past interactions/notes (memory search)
    • Recent news/activity
  5. Generates AI-powered brief per person
  6. Sends 1 email per person to your inbox

Setup

1. Configure Team Members

Edit config.json to list your team members (these will be skipped):

json
{
  "team_members": [
    "alice@yourcompany.com",
    "bob@yourcompany.com",
    "team@yourcompany.com"
  ],
  "team_domains": [
    "@yourcompany.com"
  ],
  "schedule": "0 7 * * *",
  "timezone": "America/Los_Angeles",
  "your_email": "you@yourcompany.com",
  "brief_from": "Meeting Brief <briefbot@yourcompany.com>",
  "slack_webhook": "https://hooks.slack.com/services/YOUR/WEBHOOK/URL",
  "send_email": true,
  "send_slack": true,
  "include_calendar_details": true,
  "research_depth": "standard"
}

Config options:

  • team_members: Emails to skip (exact match)
  • team_domains: Domain patterns to skip (e.g., skip all @yourcompany.com)
  • schedule: Cron expression for daily run (default: 7am)
  • timezone: Timezone for schedule
  • your_email: Where to send briefs
  • brief_from: From address for briefs
  • slack_webhook: Slack incoming webhook URL (optional)
  • send_email: Whether to send email briefs (default: true)
  • send_slack: Whether to send Slack notifications (default: false)
  • include_calendar_details: Include meeting time/location in brief
  • research_depth: quick (web only), standard (web + GitHub), deep (web + GitHub + past notes)
2. Run Daily (Manual or Scheduled)

Run manually each morning:

bash
cd skills/meeting-brief
./scripts/run_daily.sh

How It Works

Main Workflow (scripts/run_daily.sh)
  1. Fetch today's meetings (scripts/check_calendar.sh)

    • Uses gcalcli to get today's agenda
    • Parses meeting times, titles, attendees
    • Outputs JSON with meeting details
  2. Filter external attendees (built into run_daily.sh)

    • Loads config.json
    • Filters out team members and team domains
    • Creates list of people to research
  3. Research each person (scripts/research_person.js)

    • Web search: LinkedIn profile, company info
    • GitHub search: Profile and repos (if applicable)
    • Memory search: Past interactions/notes
    • News search: Recent activity
    • Outputs structured research JSON
  4. Generate brief (scripts/generate_brief.js)

    • Uses AI agent to generate the brief
    • Inputs: research data + meeting context
    • Outputs: Two formats:
      • Email: Concise bullet-point brief
      • Slack: Rich paragraph-style story with deeper context and narrative
  5. Send brief

    • Email: Uses Gmail skill (send_email: true)
    • Slack: Uses webhook (send_slack: true, scripts/send_slack.sh)
    • Subject: "Meeting Brief: [Person Name] - [Meeting Title]"
    • Body: AI-generated brief with research
  6. Save to personal CRM (supernotes/people/)

    • Each researched person saved as markdown file
    • Includes: research data, meeting context, date
    • Builds personal relationship database over time
  7. Track sent briefs (logs to data/sent/YYYY-MM-DD.json)

    • Prevents duplicates
    • Enables analytics

Research Process

For each external attendee, the system researches:

Web Search (Always)
  • LinkedIn profile (name + company)
  • Company information
  • Recent news mentions
  • Professional background
GitHub (If research_depth is standard or deep)
  • GitHub profile lookup (by name/email)
  • Recent repos and contributions
  • Technical focus areas
Memory/Past Notes (If research_depth is deep)
  • Search MEMORY.md and daily notes
  • Past meeting notes
  • Previous interactions
  • Context from past conversations
Output Format

Research is structured as JSON:

json
{
  "person": {
    "name": "Jane Doe",
    "email": "jane@example.com",
    "company": "Example Corp",
    "title": "VP Engineering"
  },
  "linkedin": {
    "url": "...",
    "bio": "...",
    "experience": [...]
  },
  "github": {
    "username": "janedoe",
    "profile_url": "...",
    "recent_repos": [...]
  },
  "company": {
    "name": "Example Corp",
    "industry": "...",
    "recent_news": [...]
  },
  "past_interactions": [
    "Met at conference in 2024",
    "Discussed partnership opportunity"
  ]
}

Brief Generation

The AI-generated brief comes in two formats:

Show full SKILL.md (293 more words)Show less
Email Format (Concise Bullets)
  1. Quick Overview

    • Who they are (name, title, company)
    • Why you're meeting (meeting title/description)
  2. Background

    • Professional background (LinkedIn)
    • Company context
    • Technical expertise (GitHub, if applicable)
  3. Conversation Starters

    • Based on recent activity
    • Shared interests/connections
    • Relevant topics
  4. Action Items / Notes

    • Past interactions (if any)
    • Things to remember
    • Follow-up items
Slack Format (Rich Story)

Deeper, narrative-driven brief with:

  • Paragraph-style storytelling about the person
  • Context about their journey and recent work
  • Compelling hooks and conversation angles
  • More background color and detail
  • Stronger narrative flow than bullet points

Example Brief:

Subject: Meeting Brief: Jane Doe - Product Partnership Discussion

Hi,

You're meeting with Jane Doe today at 2pm.

## Quick Overview
Jane is VP of Engineering at Example Corp, a B2B SaaS company in the dev tools space. She's been there for 3 years and previously worked at GitHub and Microsoft.

## Background
- Strong background in developer tooling and infrastructure
- Recently led Example Corp's API platform overhaul (launched Q4 2025)
- Active on GitHub (janedoe) - maintains several open-source CLI tools
- Technical blog focuses on API design and developer experience

## Conversation Starters
- Their new API platform (just launched, getting good traction)
- Recent blog post on GraphQL vs REST (published last week)
- Shared interest in developer experience (noted in her LinkedIn)

## Notes
- You met briefly at DevTools Summit 2024
- She mentioned interest in partnering on integration opportunities

---
Meeting: Product Partnership Discussion
Time: Today at 2:00 PM
Location: Zoom (link in calendar)

Manual Usage

Run for a specific person:

bash
# Research a person
node scripts/research_person.js "Jane Doe" "jane@example.com" "Example Corp"

# Generate brief
node scripts/generate_brief.js research_output.json meeting_context.json

# Send brief
./scripts/send_brief.sh brief.html "Jane Doe"

Run for today's meetings:

bash
./scripts/run_daily.sh

Data & Logs

meeting-brief/
├── data/
│   ├── sent/              # Sent brief logs (by date)
│   │   └── 2026-02-21.json
│   ├── research/          # Research cache (by person)
│   │   └── jane-doe.json
│   └── meetings/          # Meeting data (by date)
│       └── 2026-02-21.json
└── logs/
    └── run.log            # Execution logs

Tips

  1. Test with dry-run first: Set DRY_RUN=true in run_daily.sh to preview without sending
  2. Adjust research depth: Start with quick, upgrade to standard or deep as needed
  3. Refine team filter: Add domains/emails to skip internal meetings
  4. Review briefs: Check data/sent/ logs to see what's being sent
  5. Iterate on prompts: Edit generate_brief.js to customize AI prompt

Troubleshooting

No briefs sent:

  • Check gcalcli authentication (gcalcli agenda today tomorrow)
  • Verify calendar has events with external attendees
  • Check logs in logs/run.log

Briefs missing information:

  • Increase research_depth in config.json
  • Check web_search and GitHub CLI are working
  • Review research data in data/research/

Duplicate briefs:

  • Check data/sent/ for already-sent tracking
  • Verify cron job isn't running multiple times

Tools Used

  • gcalcli: For fetching today's meetings from Google Calendar
  • web_search: For LinkedIn and company research
  • GitHub CLI (gh): For GitHub profile lookup (optional)
  • Gmail: For sending brief emails (optional — can also output to file)

Privacy & Security

  • Research data is cached locally in data/research/
  • No external APIs (uses web_search, GitHub CLI, memory_search)
  • Briefs sent only to configured email
  • Team member filtering prevents leaking internal info
  • All data stored in skill directory (no cloud storage)

© gooseworks-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 11 other files (scripts) in skills/sales/composites/meeting-brief of gooseworks-ai/goose-skills.

  • SKILL.md
  • .gitignore
  • EXAMPLE.md
  • SETUP.md
  • config.json.example
  • scripts/check_calendar.sh
  • scripts/format_for_slack.sh
  • scripts/generate_brief.js
  • scripts/research_person.js
  • scripts/run_daily.sh
  • scripts/send_slack.sh
  • skill.meta.json

Open the folder on GitHubat commit c650c6d

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in gooseworks-ai/goose-skills, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Meeting Brief next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Meeting Brief compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Meeting Brief this skillgooseworks-ai/goose-skills1.2k1 repos~2.3kAutomated safety check: PassMIT
Superset Automatesuperset-sh/superset15k—~1.4kAutomated safety check: PassCustom licence
Building LoopsPostHog/posthog40k—~3.6kAutomated safety check: PassCustom licence
Connect Apps with ComposioComposioHQ/awesome-claude-skills77k3 repos~557Automated safety check: PassNone
Composio Cloud Toolsquarqlabs/argus279—~543Automated safety check: PassApache-2.0
GitHub Repo MonitorOpenHands/extensions163—~3.1kAutomated safety check: PassMIT

Similar skills

  • Superset Automate

    superset-sh/superset

    Turns a recurring chore into a scheduled or event-triggered Superset agent, drafting its prompt, picking a target and trigger, and reviewing the first run.

    15k GitHub stars~1.4k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Building Loops

    PostHog/posthog

    Official

    Build a Loop for PostHog Desktop: a workflow that creates an AI task each time its trigger fires, optionally followed by a Slack or email notification with the task's result.

    40k GitHub stars~3.6k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Connect Apps with Composio

    ComposioHQ/awesome-claude-skills

    Connects an agent to 1000+ external apps through the Composio Tool Router plugin, so it can actually send emails, create issues and post messages instead of only drafting them.

    77k GitHub starsUsed in 3 repos~557 tokens
    Productivity & AutomationAuto-check passed
  • Composio Cloud Tools

    quarqlabs/argus

    Routes requests to external SaaS apps such as GitHub, Gmail, Google Calendar, Slack, Notion and Linear through cloud tools, with safeguards on irreversible actions.

    279 GitHub stars~543 tokensUpdated 4 mo ago
    Productivity & AutomationAuto-check passed
  • GitHub Repo Monitor

    OpenHands/extensions

    This skill should be used when the user asks to "monitor a GitHub repository", "watch GitHub for issues or PRs", "respond to @OpenHands mentions on GitHub", "set up an OpenHands GitHub integration"…

    163 GitHub stars~3.1k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Auto Promote

    xiaotonng/pikiloom

    无人值守推广总入口。按 promo/orchestrate.md 跨所有启用渠道(GitHub / Twitter / Reddit)跑一轮:发现→去重→起草→自我批判→护栏→按 posture 发布→记录→度量。供每日 cron(schedule / loop)调用,也可手动运行。传 "post-approved" 只执行 batch 待发队列。

    294 GitHub stars~629 tokensUpdated 5 days ago
    Productivity & AutomationAuto-check: notes

More from gooseworks-ai/goose-skills

All 273 skills in this repo
  • Reddit Post Finder

    gooseworks-ai/goose-skills

    Scrape and search Reddit posts using Apify. An agent skill from gooseworks-ai/goose-skills.

    1.2k GitHub starsUsed in 1 repo~1.2k tokens
    Auto-check passed
  • Create Image Fal

    gooseworks-ai/goose-skills

    Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent.

    1.2k GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Render Hook Replacement

    gooseworks-ai/goose-skills

    Replace an existing video's opening with a supplied clip or free kinetic text hook while retaining and verifying every original body frame, audio, captions and ending.

    1.2k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Blog Feed Monitor

    gooseworks-ai/goose-skills

    Scrape blog posts via RSS feeds (free, no API key) with Apify fallback for JS-heavy sites.

    1.2k GitHub starsUsed in 1 repo~578 tokens
    Auto-check passed
  • Competitor Post Engagers

    gooseworks-ai/goose-skills

    Find leads by scraping engagers from a competitor's top LinkedIn posts.

    1.2k GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check: notes
  • Render Chatgpt Chat

    gooseworks-ai/goose-skills

    Assemble a ChatGPT chat-reveal video ad from a thread + timeline JSON — one continuous Playwright recording of a ChatGPT mobile chat (user types with the iOS keyboard up → taps send → keyboard…

    1.2k GitHub stars~2.3k tokensUpdated today
    Auto-check passed

Questions about Meeting Brief

What does Meeting Brief do?

Daily meeting preparation system that checks your calendar each morning, deeply researches external attendees (LinkedIn, company info, GitHub, past notes), and sends you personalized briefs via…. Meeting Brief is an agent skill from gooseworks-ai/goose-skills. Daily meeting preparation system that checks your calendar each morning, deeply researches external attendees (LinkedIn, company info, GitHub, past notes), and sends you personalized briefs via email (1 per person).

When should I use Meeting Brief?

Meeting Brief fits situations like: you want automated preparation for upcoming meetings with context about each person youre meeting; tasks that involve Scheduled and recurring tasks.

How do I install Meeting Brief in Claude Code?

Run `npx skills add gooseworks-ai/goose-skills --skill meeting-brief -a claude-code`. Or copy the skill folder (skills/sales/composites/meeting-brief in gooseworks-ai/goose-skills) into .claude/skills/meeting-brief in your project. Claude Code loads it when a task matches its description.

How do I install Meeting Brief in Codex?

Run `npx skills add gooseworks-ai/goose-skills --skill meeting-brief -a codex`. Or copy the skill folder (skills/sales/composites/meeting-brief in gooseworks-ai/goose-skills) into .agents/skills/meeting-brief in your project. Codex loads it when a task matches its description.

Can I use Meeting Brief in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add gooseworks-ai/goose-skills --skill meeting-brief -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/meeting-brief, .gemini/skills/meeting-brief, .github/skills/meeting-brief and .opencode/skills/meeting-brief in your project.

What does Meeting Brief need to run?

Going by SKILL.md and its folder, Meeting Brief needs a shell and JavaScript for the scripts in its folder and the command-line tools its instructions call (node). Our summary lists: Node.js; A Bash shell.

Does Meeting Brief access the network?

SKILL.md names 1 domain. In commands or code: hooks.slack.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Meeting Brief safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Meeting Brief use?

Meeting Brief is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Meeting Brief use?

About 2.3k tokens (SKILL.md is roughly 9.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Meeting Brief?

Skills that share tags, products or a category with Meeting Brief: Superset Automate (superset-sh/superset, 15k stars), Building Loops (PostHog/posthog, 40k stars), Connect Apps with Composio (ComposioHQ/awesome-claude-skills, 77k stars) and Composio Cloud Tools (quarqlabs/argus, 279 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Meeting Brief?

gooseworks-ai (a GitHub organization) maintains it in gooseworks-ai/goose-skills, which has 1,240 GitHub stars. The repository holds 273 skills in this directory. The repository was last updated on October 8, 2026.

Source: gooseworks-ai/goose-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.