Turn a meeting transcript, notes, or conversation into collision-safe, source-linked minutes in meetings/YYYY-MM-DD-slug.md. Use for project meeting records, attendance, discussion, stated information, decisions, action candidates, and open questions. Saving minutes never changes PROJECT.md, decisions/, or TASKS.md; promote only user-selected items afterward.
npx skills add https://github.com/AlpacaLabsLLC/skills-for-architects --skill meeting-minutes
Create an auditable record of what occurred in a meeting without silently turning discussion into project facts, durable decisions, or assigned tasks.
/as:meeting-minutes from notes/owner-meeting.md
/as:meeting-minutes turn this transcript into minutes
/as:meeting-minutes revise meetings/2026-07-21-design-team.md
PROJECT.md, decisions/*.md, or TASKS.md.Unknown or Not recorded. Ask only when a missing value materially changes the record.Run the shared resolver and follow skills/project/references/context-resolution.md. Resolve exactly one validated project before reading sources or choosing a target. A studio-picker result requires one structured project-selection gate; do not ask first in prose. Stop on invalid, no-projects, or no-context. Resolve all inputs, the meeting target, and links relative to the selected project.
Read the supplied transcript, notes, agenda, files, and relevant conversation. Preserve each source as a project-relative reference. If the source exists only in conversation, record Current conversation (not separately archived); do not invent a file.
Determine independently:
Never infer the event date from filesystem mtime or artifact creation time. Preserve conflicting dates as a visible limitation rather than silently choosing one.
Extract only what the source supports and assign stable labels within the meeting:
S1, S2 — stated information: claims, updates, or representations made by a participant; not automatically verified project facts.CD1, CD2 — confirmed decisions: choices the source clearly records as made. Confirmation in minutes still does not create a durable /as:project record-decision record.PD1, PD2 — proposed decisions: options, recommendations, or choices still awaiting authorization.T1, T2 — proposed tasks: actions discussed or assigned in the meeting. They are not canonical tasks until selected and added through /as:tasklist.Q1, Q2 — open questions.Keep ordinary discussion in a chronological or topic-based summary without promoting it to one of these sections. Attribute stated information and consequential discussion to a participant when the source supports attribution. Preserve Unknown rather than guessing.
A task candidate may include a proposed owner and due date, but label missing values Unassigned and No due date. Do not treat them as approved merely because the transcript uses imperative language.
Use:
meetings/YYYY-MM-DD-<descriptive-slug>.md
Use the event date in the filename. If the event date is unknown, ask for it before writing because the canonical path requires a date.
Resolve and show the exact project-relative target. If it already exists:
-02, -03, and so on. Check the suffixed path before writing. Never overwrite merely because the title and date match.Resolve the bundled template relative to the loaded skills/meeting-minutes/SKILL.md when the harness exposes that path. On Claude Code, ${CLAUDE_PLUGIN_ROOT}/skills/meeting-minutes/templates/meeting-minutes.md is the fallback. If bundled resources are unavailable, reproduce every section listed in Step 3 plus meeting metadata, attendance, agenda, sources, discussion, and limitations.
Write the minutes completely. Confirm the saved path. At this point, stop all mutation and verify that PROJECT.md, decisions/, and TASKS.md were not changed by the save operation.
After saving, present three separate candidate lists:
S# items that may warrant verification and entry through /as:project remember.CD# or PD# items worth recording through /as:project record-decision, preserving whether each is decided or proposed.T# items that may be imported through /as:tasklist.Do not characterize every item as promotion-worthy. Explain that no downstream record has changed. Ask the user to select exact labels, for example S2, CD1, T1, or choose none. “Promote the useful items,” “continue,” or approval of the minutes as a whole is not item-level selection; ask for exact labels.
Before handing off a selected item, search the owning record for the same project-relative meeting link and item label. If a match exists, show it and offer link/update/new as appropriate; never silently duplicate it.
Each handoff must preserve a backlink to meetings/YYYY-MM-DD-slug.md#<item-heading-or-label> and must carry only selected items. Do not promote unselected siblings.
When direct skill invocation is supported, invoke the owning skill once per selected record type and pass the saved meeting path plus exact labels. The destination skill owns its confirmation and mutation rules.
When direct invocation is unavailable, leave the minutes intact and print copyable commands in this exact form, substituting the actual path and selected labels:
/as:project remember selected stated information S2 from meetings/2026-07-21-design-team.md; verify it as a project fact and preserve the source backlink
/as:project record-decision selected item CD1 from meetings/2026-07-21-design-team.md; preserve its decided status and source backlink
/as:tasklist import selected items T1, T3 from meetings/2026-07-21-design-team.md; preview duplicates and changes before writing
Print only the commands for item types the user selected. If nothing is selected, finish with the meeting record only.
Internal minutes that only document discussion do not require the professional disclaimer. Avoid converting participant statements into findings about code compliance, zoning compliance, occupancy, life safety, structural or MEP adequacy, concealed conditions, or environmental risk.
If the minutes include such analysis or any output the user might submit to a client or authority, append the canonical block below at the very end of the artifact. If uncertain whether the output will be submitted, include it.
> Disclaimer: This is an AI-generated analysis for preliminary planning purposes. All findings must be verified by a licensed professional before use in design, permitting, or regulatory submissions.
<!-- architecture-studio:requires-disclaimer -->
Analyzes meeting transcripts and recordings to uncover behavioral patterns, communication insights, and actionable feedback. Identifies when you avoid conflict, use filler words, dominate conversations, or miss opportunities to listen. Perfect for professionals seeking to improve their communication and leadership skills.
Toolkit for creating animated GIFs optimized for Slack, with validators for size constraints and composable animation primitives. This skill applies when users request animated GIFs or emoji animations for Slack from descriptions like "make me a GIF for Slack of X doing Y".
Analyzes your recent Claude Code chat history to identify coding patterns, development gaps, and areas for improvement, curates relevant learning resources from HackerNews, and automatically sends a personalized growth report to your Slack DMs.
Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like "make me a GIF of X doing Y for Slack.
A skill that creates new Claude skills and automatically shares them on Slack using Rube for seamless team collaboration and skill discovery.
Automate Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify, etc.) using agent-browser via Chrome DevTools Protocol. Use when the user needs to interact with an Electron app, automate a desktop app, connect to a running app, control a native app, or test an Electron application. Triggers include "automate Slack app", "control VS Code", "interact with Discord app", "test this Electron app", "connect to desktop app", or any task requiring automation of a native Electron application.
Prepare meeting materials with Notion context and Codex research; use when gathering context, drafting agendas/pre-reads, and tailoring materials to attendees.
Interactive daily standup/meeting update generator. Use when user says 'daily', 'standup', 'scrum update', 'status update', 'what did I do yesterday', 'prepare for meeting', 'morning update', or 'team sync'. Pulls activity from GitHub, Jira, and Claude Code session history. Conducts 4-question interview (yesterday, today, blockers, discussion topics) and generates formatted Markdown update.
Take alpacalabsllc/meeting-minutes from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.