Agent Templates
Meeting prep

Meeting prep agents that act on-behalf-of your users

Pulls agenda, participant context, and open action items before every meeting.

Meeting prep
Sample Agent for Acme
May 22 · 10:00 AM ·
47s
Prep me for my 10:00 with Acme corp
J
Pulling your next meeting
Next calender event
google_calender
Contact & deal stage
hubspot_search
Recent threads
gmail_messages
Brief - Jane smith - Acme corp
Email (may 18)
"Re: Scalekit eval": token isolation Q
Send arch diagram before call
Talking points
Lead with token isolation
Auth depth vs connector breadth
Message Claude...
Trusted by teams shipping agents to production
Meeting prep
Sample Agent for Acme
May 22 · 10:00 AM ·
47s
Prep me for my 10:00 with Acme corp
J
Pulling your next meeting
Next calender event
google_calender
Contact & deal stage
hubspot_search
Recent threads
gmail_messages
Brief - Jane smith - Acme corp
Email (may 18)
"Re: Scalekit eval": token isolation Q
Send arch diagram before call
Talking points
Lead with token isolation
Auth depth vs connector breadth
Message Claude...

How agent builders go from zero to user-authorized in seven steps

A real working agent you can deploy

This repo uses a single SCALEKIT_USER_ID env var to simulate one user. In production, pass each user's real ID as the identifier on every Scalekit call, and send them an authorization link whenever their connector status is not ACTIVE.

01
Authorize Calendar, Gmail, HubSpot, and Slack
main.py
Bootstrap Scalekit and verify each user's four connections are ACTIVE. Locally, USER_ID comes from .env; in production, pass your end user's ID as identifier and surface auth links from your app.
main.py
from dotenv import load_dotenv
from scalekit.client import ScalekitClient

load_dotenv()

client = ScalekitClient(
    env_url=os.environ["SCALEKIT_ENV_URL"],
    client_id=os.environ["SCALEKIT_CLIENT_ID"],
    client_secret=os.environ["SCALEKIT_CLIENT_SECRET"],
)
USER_ID = os.environ["SCALEKIT_USER_ID"]

CONNECTORS = [
    ("Google Calendar", "meeting-prep-google-calendar"),
    ("HubSpot", "meeting-prep-hubspot"),
    ("Gmail", "meeting-prep-gmail"),
    ("Slack", "meeting-prep-slack"),
]

def check_all_connectors():
    missing = []
    for label, name in CONNECTORS:
        acct = client.actions.get_or_create_connected_account(
            connection_name=name, identifier=USER_ID,
        ).connected_account
        if acct.status != "ACTIVE":
            link = client.actions.get_authorization_link(
                connection_name=name, identifier=USER_ID,
            ).link
            missing.append((label, link))
    if missing:
        for label, link in missing:
            print(f"  {label}:\n    {link}\n")
        raise SystemExit(1)

def main():
    check_all_connectors()
    for meeting in get_external_meetings():
        process_meeting(meeting)
02
Find external meetings in the next 48 hours
filter_meetings.py
03
Look up the attendee in HubSpot
lookup_contact.py
04
Pull recent Gmail threads
lookup_gmail.py
05
Find the company Slack channel
lookup_slack.py
06
Generate the meeting brief
generate_brief.py
07
Deliver the brief
deliver_brief.py

Agents that do real work, without the auth plumbing

Three things you'd otherwise build: OAuth, token storage, refresh. Handled.

1
Install
claude plugin marketplace add scalekit-inc/claude-code-authstack && claude plugin install agent-auth@scalekit-auth-stack
terminal
curl -fsSL https://raw.githubusercontent.com/scalekit-inc/codex-authstack/main/install.sh | bash
terminal
copilot plugin marketplace add scalekit-inc/github-copilot-authstack
copilot plugin install agent-auth@scalekit-auth-stack
terminal
curl -fsSL https://raw.githubusercontent.com/scalekit-inc/cursor-authstack/main/install.sh | bash
terminal
npx skills add scalekit-inc/skills --skill integrating-agent-auth
2
Clone github.com/scalekit-inc/meeting-prep-agent-example and adapt it for my agent product.

I am building for: my sales org (or: external customers as a product)   ← edit this line
Connectors my users need: Google Calendar, HubSpot, Gmail, Slack   ← edit this line
Trigger: before every external meeting. Deliver: post the brief to each user’s Slack.

Steps:
1. Create Scalekit AgentKit connections named meeting-prep-{tool}. The code resolves connections by name.
2. Map identifier to our user IDs from our auth system (not a single shared service account).
3. For any connector I changed, mirror an existing lookup_*.py module:
   get_or_create_connected_account → execute_tool(tool_name, identifier,
   connected_account_id, tool_input) → read resp.data.
4. When a user’s connector is not ACTIVE, return our app’s authorization link from get_authorization_link.
5. Wire each new step into process_meeting() in main.py.
6. Run python main.py locally with one test user in .env, then describe how to deploy for many users.
Why choose Scalekit

Delegated identity. Not service accounts.

Credentials never touch agent code or LLM context. The agent acts as the user, not as a shared bot.
Delegated OAuth - Agent reads your calendar, your inbox — scoped to the authorizing identity, not org-wide.
Credentials outside agent runtime  -  Tokens never touch agent code or LLM context. Both failure modes covered.
Token lifecycle automatic  -  Refresh, expiry, rotation across all connectors. One SDK call. Zero management code.
200+ prebuilt connectors  -  Google, Slack, HubSpot, GitHub, Jira, Notion, Salesforce — same auth pattern everywhere.
Try other Agent Templates

Prebuilt agents you can ship today

Each one runs on delegated identity, scoped per user.

GTM
CRM AI agent
Log calls, update opportunity stages, and surface stalled deals across HubSpot or Salesforce. No manual data entry.
SALES
Deal intelligence agent
Combine Gong, Attio, and Slack signals to surface deal risks and next-best actions. Updated after every call.
ENGINEERING
DevOps assistant agent
Triage GitHub incidents, open Linear tickets, and notify the on-call channel in Slack with context already attached.
OPS
Email-to-calendar scheduling agent
Parse scheduling intent from Gmail threads and create Google Calendar events with the right attendees and timezone.
ENGINEERING
Engineering standup agent
Aggregate GitHub and GitLab activity, link to Jira, and post a daily standup digest to Slack. No async updates.
SUPPORT
Freshdesk CSAT follow-up agent
Google ADK agent that watches low CSAT scores in Freshdesk and drafts personalised follow-ups for support leads.

Build your own
multi-connector agent

Add connectors. Change the LLM. Same delegated auth pattern.