Skip to content

digitarald/team-brainstorm

v1.0.1MIT

Brainstorm together on a small, session-only canvas.

Team brainstorm

A shared, session-only brainstorm board for a person and Copilot.

SkillUse when
team-brainstormExploring ideas, comparing options, or collecting questions and next steps

How it works

The skill opens marketplace-starter-brainstorm. The human edits notes in the page; the agent uses get_board, save_note, and remove_note. Server-sent events keep human and agent changes visible without polling.

There are three columns: Ideas, Questions, Next. Edit a note to change its column. Incoming updates preserve keyboard focus on the same note control, including when a note moves columns. If that note is deleted, focus returns to the input. Each session owns one in-memory board, shared by its panels. Reopening a panel preserves notes. Ending or reloading the extension discards them. No export, disk storage, external services, or credentials.

Node.js 22.12+ and a Copilot host with SDK canvas presentation are required. The runtime resolves @github/copilot-sdk/extension; do not install it into the plugin. Hosts without canvas presentation can still use the skill in chat. The loopback server binds only to 127.0.0.1, rejects foreign Host/Origin headers, and closes when the runtime closes its instance.

Structure

plugin.json
skills/team-brainstorm/SKILL.md
com.github.copilot/extensions/brainstorm/
  extension.mjs     # SDK registration, actions, lifecycle
  board.mjs         # Session-local note model and validation
  server.mjs        # Loopback HTTP and event stream
  index.html        # Plain HTML, CSS, and browser JavaScript

Customize

Change the skill's workflow to match your team's planning habits. Change column names in the board model, page, and skill together. Choose a distinctive canvas ID when copying the plugin so independently installed examples do not collide. Keep server and action input validation in the shared model.