Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion agentcon/application-and-approval-process.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,6 @@ outline: deep
- Support and promotional strategies

5. **Slack Setup**
You’ll be added to the **AgentCon Slack channel** for ongoing coordination.
HQ adds approved co-organizers to the **private AgentCon Slack channel** in the Global AI HQ workspace for internal event coordination. If you have not received access, email [hq@globalai.community](mailto:hq@globalai.community) with your event and organizer details. [Discord](/chapter-playbook/discord#discord-and-internal-slack) remains the primary space for community connection and general chapter support.

AgentCon 2027 does not have an open application form. Chapters seeking an open 2027 conference format should use the [Global AI Conference application process](/global-ai-conference/application-and-timeline).
3 changes: 2 additions & 1 deletion agentcon/eligibility-and-roles.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ Chapters that want to organize an open conference format in 2027 should apply fo

## Communication with HQ

- **Primary contact channel:** Slack (Global AI HQ workspace)
- **Internal organizer coordination:** Private AgentCon Slack channel (Global AI HQ workspace). Invited, approved co-organizers receive access during HQ onboarding; email [hq@globalai.community](mailto:hq@globalai.community) if access is missing.
- **Community connection and general chapter support:** [Discord](/chapter-playbook/discord#discord-and-internal-slack).
- **Regular updates:** Progress checkpoints every 2–3 weeks
- **Pre-event review call:** 2–4 weeks before event
4 changes: 3 additions & 1 deletion chapter-playbook/advisory-board.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ Members should be:

Serving on the Advisory Board is an **unpaid volunteer role**. By accepting a seat, members commit to contributing the time needed to fulfil their responsibilities throughout the year. This includes preparing for and attending meetings, participating actively in Slack, following up on agreed actions, and communicating promptly when they cannot meet a commitment.

The Advisory Board Slack space is private and used for internal board work. Elected members who need access should contact [hello@globalai.community](mailto:hello@globalai.community). For community connection and general chapter support, use [Discord](/chapter-playbook/discord#discord-and-internal-slack); joining Discord does not grant Advisory Board access.

## Term

Each seat is held for **one year**, from **1 October until 1 October of the following year**.
Expand All @@ -46,7 +48,7 @@ You can nominate:
- yourself; or
- another active chapter lead or long-time community member.

[Submit a nomination](https://gaic.io/nominate) during the nomination period. The selection timeline and updates are shared with chapter leads in Slack.
[Submit a nomination](https://gaic.io/nominate) during the nomination period. For the selection timeline and updates, contact [hello@globalai.community](mailto:hello@globalai.community); access to the private Advisory Board Slack space is not required to ask about nominations.

## Meetings

Expand Down
14 changes: 14 additions & 0 deletions chapter-playbook/discord.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,20 @@ As a **Global AI Chapter Lead**, you get access to the official Global AI Discor

This is the primary space to connect directly with **Global AI HQ** and chapter leads from across the world.

## Discord and internal Slack

Discord is now the primary place to stay connected with the community and get general chapter support. Slack is used for internal coordination and restricted tool access, not as the general community chat.

| Purpose | Current space | How to request access |
| --- | --- | --- |
| Community connection and general chapter support | [Global AI Discord](https://gaic.io/discord) | Join Discord; chapter leads can request the Chapter Lead role using the steps below. |
| AgentCon organizer coordination | Private AgentCon channel in the Global AI HQ Slack workspace | Invited, approved co-organizers receive access during HQ onboarding. Contact [hq@globalai.community](mailto:hq@globalai.community) if access is missing. |
| Global AI Conference organizer coordination | Private conference channel in the Global AI HQ Slack workspace | Approved organizers receive access during HQ onboarding. Contact [hq@globalai.community](mailto:hq@globalai.community) if access is missing. |
| Advisory Board work | Private Advisory Board Slack space | Elected members can contact [hello@globalai.community](mailto:hello@globalai.community) for access. |
| StreamYard access | Restricted `#streamyard-pin` channel in Slack | Email [support@globalai.community](mailto:support@globalai.community) from your Global AI chapter email address; see the [StreamYard guide](/streamyard). |

These internal Slack uses are separate from the community chat migration announced in the [January 2026 meeting recap](/chapter-leads-meeting/january-2026). That recap is a historical announcement, not the current access guide. Joining Discord does not grant access to private Slack spaces; request access through the relevant contact above.

## Chapter Lead Role (Badge)

We have a dedicated **Chapter Lead role** on Discord.
Expand Down
2 changes: 1 addition & 1 deletion event-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,4 +47,4 @@ Global AI HQ leads a small number of strategic event programs. Participation, lo

---

Questions? Feel free to connect with us on Slack or email [hq@globalai.community](mailto:hq@globalai.community).
Questions? Connect with the community on [Discord](https://gaic.io/discord) or email [hq@globalai.community](mailto:hq@globalai.community). Slack is used for internal coordination; see the [community and internal access routes](/chapter-playbook/discord#discord-and-internal-slack).
2 changes: 1 addition & 1 deletion global-ai-conference/application-and-timeline.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ outline: deep
1. **Submit the application form** — include chapter name and lead contact, proposed city and venue, estimated date, and expected audience size.
2. **Wait for HQ approval** — HQ verifies there are no duplicate events in your region, checks venue and timeline feasibility, and confirms chapter activity status.
3. **Meet with Global AI HQ** — a 30–45 minute call to review the event plan, roles and responsibilities, and support and promotional strategies.
4. **Slack setup** — you'll be added to the Slack channel for ongoing coordination.
4. **Slack setup** — HQ adds approved organizers to the private conference Slack channel in the Global AI HQ workspace for internal event coordination. If you have not received access, email [hq@globalai.community](mailto:hq@globalai.community) with your chapter and event details. [Discord](/chapter-playbook/discord#discord-and-internal-slack) remains the primary space for community connection and general chapter support.

## Planning Timeline

Expand Down
3 changes: 2 additions & 1 deletion global-ai-conference/eligibility-and-roles.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Only **official Global AI Chapters** can organize a Global AI Conference. Each c

## Communication with HQ

- **Primary channel:** Slack (Global AI HQ workspace)
- **Internal organizer coordination:** Private conference Slack channel (Global AI HQ workspace). Approved organizers receive access during HQ onboarding; email [hq@globalai.community](mailto:hq@globalai.community) if access is missing.
- **Community connection and general chapter support:** [Discord](/chapter-playbook/discord#discord-and-internal-slack).
- **Regular updates:** Progress checkpoints every 2–3 weeks
- **Pre-event review call:** 2–4 weeks before event
20 changes: 5 additions & 15 deletions streamyard.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,39 +4,29 @@

## How to use this benefit:

"Login credentials"

|Site|Login|PIN|
| ----- | ---- | ---- |
| [streamyard.com](https://www.streamyard.com) | stream@globalai.community | Follow the instructions [below](#how-to-get-access-to-the-streamyard-pin-channel) |
Request access using the steps [below](#how-to-get-access-to-the-streamyard-pin-channel). Support provides the login details privately. Do not post credentials, PINs, or restricted invitation links in public documentation or Discord.


## How to get access to the StreamYard-pin channel

1. Get invited to the *#streamyard-pin* channel in the Global AI community Slack workspace.
You can request access by sending email to **[support@globalai.community](mailto:support@globalai.community)** using your Global AI chapter email address only.
1. Request access to the restricted *#streamyard-pin* channel in the internal Global AI Slack workspace by emailing **[support@globalai.community](mailto:support@globalai.community)** using your Global AI chapter email address only. Include your chapter name and request StreamYard access, Slack workspace access if needed, and the current login instructions.
2. **After** you are added to the *#streamyard-pin* channel (you will see the channel in your channel list in Slack), you can go ahead and login to StreamYard.

![streamyard channel in list](/media/streamyard/streamyard-channel-in-list.png)
This restricted Slack channel is an internal tool-access exception. [Discord](/chapter-playbook/discord#discord-and-internal-slack) is the primary community space, but joining it does not grant StreamYard access or provide login PINs. If you cannot see the Slack channel, contact support before attempting to log in.

## Logging in to StreamYard
> [!IMPORTANT]
> Make sure you have access to the *#streamyard-pin* channel. Request access by sending email to _support@globalai.community_ using your Global AI chapter email address only.

**Step 1:** Join the StreamYard Pin channel in Slack.

![streamyard slack channel](/media/streamyard/streamyard-pin-channel.png)

**Step 2:** Go to [streamyard.com](https://www.streamyard.com) and log in using the **stream@globalai.community** email address.
**Step 2:** Go to [streamyard.com](https://www.streamyard.com) and use the login details supplied privately by support.

**Step 3:** Click the Log in button.

**Step 4:** In Slack, open the _#streamyard-pin_ channel.

**Step 5:** Wait for your PIN to appear in the channel. It will look like this:
Hi your pin for streamyard is: XXXXXX

![streamyard sample pin](/media/streamyard/streamyard-sample-pin.png)
**Step 5:** Wait for your login PIN to appear in the restricted channel. Keep it private.
Comment thread
codewithsimon marked this conversation as resolved.
Resolved

**Step 6:** Enter this PIN in the StreamYard login prompt and click Log in.

Expand Down
39 changes: 39 additions & 0 deletions tests/site.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,45 @@ test('archived offers, meeting recaps, drafts and contradictory guidance are vis
assert.throws(() => metadataFor('unclassified.md'), /Assign a section/);
});

test('current chat guidance distinguishes community Discord from internal Slack access', async () => {
const discord = pages.get('chapter-playbook/discord.md');
assert.match(discord.plainText, /Discord is now the primary place/);
for (const purpose of ['general chapter support', 'AgentCon organizer coordination', 'Global AI Conference organizer coordination', 'Advisory Board work', 'StreamYard access']) {
assert.ok(discord.plainText.includes(purpose), purpose);
}
for (const [path, contact] of [
['agentcon/eligibility-and-roles.md', 'hq@globalai.community'],
['agentcon/application-and-approval-process.md', 'hq@globalai.community'],
['global-ai-conference/eligibility-and-roles.md', 'hq@globalai.community'],
['global-ai-conference/application-and-timeline.md', 'hq@globalai.community'],
['chapter-playbook/advisory-board.md', 'hello@globalai.community'],
['streamyard.md', 'support@globalai.community'],
]) {
const page = pages.get(path);
assert.match(page.plainText, /private|restricted/i, path);
assert.ok(page.links.includes(`mailto:${contact}`), path);
assert.ok(page.links.includes('/chapter-playbook/discord.html#discord-and-internal-slack'), path);
assert.ok(!metadataFor(path).review.some(note => note.includes('whether this program retains')), path);
}
const formats = pages.get('event-format.md');
assert.ok(formats.links.includes('https://gaic.io/discord'));
assert.match(metadataFor('streamyard.md').review.join(' '), /retired Umbraco dashboard/);
assert.match(metadataFor('agentcon/eligibility-and-roles.md').review.join(' '), /300 attendees/);
assert.match(metadataFor('global-ai-conference/application-and-timeline.md').review.join(' '), /application form is not linked/);
});

test('StreamYard access instructions keep login details private and preserve access anchors', async () => {
const page = pages.get('streamyard.md');
assert.match(page.plainText, /Global AI chapter email address only/);
assert.match(page.plainText, /Slack workspace access if needed/);
assert.match(page.plainText, /login details supplied privately by support/);
assert.doesNotMatch(page.content, /stream@globalai\.community|streamyard-sample-pin\.png|streamyard-pin-channel\.png/);
const html = await htmlFor('streamyard.md');
assert.match(html, /id="how-to-get-access-to-the-streamyard-pin-channel"/);
assert.match(html, /id="logging-in-to-streamyard"/);
assert.match(pages.get('chapter-leads-meeting/january-2026.md').content, /Slack will remain active only until \*\*February 28th\*\*/);
});

test('Markdown renders nested details, notices, alerts, badges and responsive tables', async () => {
const renderer = createMarkdown(new Set(['sample.md']));
const page = renderer.render(`# Test
Expand Down
11 changes: 3 additions & 8 deletions web/content.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,6 @@ export const navigation = {
const reviewNotes = {
application: 'The start-a-chapter and onboarding guides currently link to different application forms. Confirm the current application route with support@globalai.community before applying.',
meetup: 'This guide still refers to setting up a Meetup group, but later community updates announce the retirement of Meetup support. Confirm current setup instructions with support@globalai.community.',
slack: 'This page refers to Slack. The January 2026 update announced a move to Discord; whether this program retains a separate Slack workspace needs confirmation from HQ.',
attendance: 'The general AgentCon guidance specifies 300 attendees, while confirmed event targets vary, including 150 and 400. Confirm the requirements and commitments for your event with HQ.',
schedule: 'The standard event hours differ from some confirmed event listings. Use the agreed local schedule and confirm it with HQ.',
};
Expand All @@ -90,31 +89,27 @@ export const overrides = {
'agentic-nights.md': { headingAliases: { 'organizing-your-event': 'organizer-checklist' } },
'branding/index.md': { headingAliases: { 'typography-specifications': 'typography', 'primary-colors': 'colors', 'accent-colors': 'colors', 'gray-scale': 'colors', 'color-usage-guidelines': 'accessibility' } },
'new-chapter.md': { review: [reviewNotes.application], summary: 'Eligibility, responsibilities, and the application process for a new local chapter.' },
'event-format.md': { review: [reviewNotes.slack] },
'chapter-playbook/onboarding.md': { review: [reviewNotes.application, reviewNotes.meetup] },
'chapter-playbook/requirements.md': { review: ['The escalation process at the end of this page is a proposal, not an approved policy.'] },
'chapter-playbook/offboarding.md': { status: 'draft' },
'chapter-playbook/transferring.md': { status: 'draft' },
'chapter-playbook/code-of-conduct.md': { review: ['The linked chapter offboarding process is still a draft. The official Code of Conduct remains the authoritative reference.'] },
'chapter-playbook/advisory-board.md': { review: [reviewNotes.slack] },
'chapter-benefits/meetup.md': { status: 'archived', section: 'updates', title: 'Meetup retirement notice' },
'chapter-benefits/canva.md': { review: ['The request process is marked as being updated. Confirm availability and current eligibility with support before relying on this benefit.'] },
'streamyard.md': { review: [reviewNotes.slack, 'The asset-download instructions reference the retired Umbraco dashboard. Request the current workflow from support.'] },
'streamyard.md': { review: ['The asset-download instructions reference the retired Umbraco dashboard. Request the current workflow from support.'] },
'platform-event-management.md': { status: 'draft', summary: 'A placeholder for future event publishing, registration, check-in, and reporting guidance.' },
'partnerships/overview.md': { review: ['Community reach figures are not dated and differ across documents. Confirm current audience metrics with HQ when preparing an agreement.'] },
'partnerships/agentcon-sponsorship.md': { review: [reviewNotes.attendance, 'The description of events hosted by 200+ chapters needs reconciliation with the invite-only 2027 program.'] },
'partnerships/partnership-proposal.md': { review: [reviewNotes.attendance], summary: 'A specific partnership proposal, not the standard public partnership terms.' },
'agentcon/index.md': { navTitle: 'Organizer guide', summary: 'The HQ-led, invite-only conference series for developers building with AI agents.' },
'agentcon/eligibility-and-roles.md': { review: [reviewNotes.attendance, reviewNotes.slack] },
'agentcon/eligibility-and-roles.md': { review: [reviewNotes.attendance] },
'agentcon/event-overview.md': { review: [reviewNotes.attendance, reviewNotes.schedule] },
'agentcon/core-requirments.md': { review: [reviewNotes.attendance] },
'agentcon/venue-logistics.md': { review: [reviewNotes.attendance] },
'agentcon/application-and-approval-process.md': { review: [reviewNotes.slack] },
'agentcon/events.md': { navTitle: 'Events & locations', summary: 'Confirmed and proposed AgentCon locations, dates, venues, and attendance targets.' },
'global-ai-conference/index.md': { navTitle: 'Organizer guide' },
'global-ai-conference/call-for-speaker-content.md': { navTitle: 'Call for speakers template' },
'global-ai-conference/eligibility-and-roles.md': { review: [reviewNotes.slack] },
'global-ai-conference/application-and-timeline.md': { review: [reviewNotes.slack, 'The application form is not linked in this guide yet. Contact hq@globalai.community for the current application route.'] },
'global-ai-conference/application-and-timeline.md': { review: ['The application form is not linked in this guide yet. Contact hq@globalai.community for the current application route.'] },
'agentcamp/index.md': { summary: 'The Global AI Bootcamp season for February–April 2027. Organizer materials are still to be announced.' },
'agentcamp/register.md': { title: 'AgentCamp 2026 · registration' },
'agentcamp/content.md': { title: 'AgentCamp 2026 · workshops & talks' },
Expand Down
Loading