Turn transcribed meetings into alignment-grade markdown records — a Claude Code plugin. Your organization already transcribes meetings; the transcripts go unanalyzed. LetPeopleAlign is the analysis layer: transcript in → grounded meeting note, owned actions with follow-up drafts, missing-action flags, cross-meeting position-change observations, a decision ledger with lead-times — so you can align people with what was actually said instead of arguing memories.
Transcription itself is not this tool's job (Teams/Zoom/whatever does that). Recording is never this tool's job. And exposure is never this tool's purpose.
This tool reads what colleagues said in meetings. That is only ever legitimate openly and with permission. The posture below is built into the agents — not a disclaimer:
- Consent-first, no covert mode. Every meeting series has a
profile.mdthat must record who permitted the analysis and when, before the first run. Without it, the agents ask and stop. There is no flag, mode, or phrasing that skips this. For use inside an organization, we recommend the profile line reference written permission (e.g. a works-council agreement or a documented team decision) — and that everyone whose meetings are analyzed knows the analysis exists. - Local and gitignored. Everything stays on your machine. Real transcripts and notes never enter
version control:
meetings/is gitignored except the committed fictionalEXAMPLE-*series. Verify this before your first real transcript — the repo ships with the ignore rule in place. - Align, never expose. Every artifact is written as if every person named in it will read it — because they should be able to. All agents refuse "build a case against X", "list everything X got wrong", dossier-building, and covert-analysis framings, and redirect to alignment. Position change across meetings is framed as the normal, often good thing it is — with an alignment question, never a "flip-flopper" verdict. The meeting coach critiques the meeting as a system and will not produce talk-time tallies, "who dominated" verdicts, or participant rankings.
- No network, no telemetry. The plugin reads and writes local markdown files. It sends nothing anywhere, ever. Follow-up drafts are text you copy — there is no send integration.
- Your employer's transcripts are your responsibility. The consent rule applies to them exactly as to any others; no exception exists.
If that posture doesn't fit how you intend to use it, this is not the tool for that.
# from the marketplace manifest
claude plugin marketplace add LetPeopleWork/LetPeopleAlign
claude plugin install let-people-align
# or run it straight from a checkout
git clone https://github.com/LetPeopleWork/LetPeopleAlign
cd LetPeopleAlign
claude --plugin-dir .| Agent | What it does |
|---|---|
analyze |
One transcript → a grounded note (Summary, Decisions, Actions, Missing actions, Follow-up drafts, Open topics) where every claim traces to what was said; maintains the series' cumulative actions.md ledger; on 2nd+ meetings the note opens with carried-over open actions and their age. Honest refusal on unusable input — no fabricated analysis, ever |
drift |
Reads ≥ 2 analyzed notes of one series → both-sides-grounded position-change observations in patterns.md, framed change-as-positive, each ending in an alignment question, written so the named person could read it |
improve |
Reads one existing note → critique of the meeting as a system (purpose/outcome, time-boxing, decision latency, circular discussion, loop-closure, meeting-vs-async) — never a scorecard of the people |
prep |
Before the next meeting of a series: open actions to chase (with age), topics left undecided, position shifts worth confirming together — an alignment sheet you could show everyone named in it |
decisions |
Maintains the series' decisions.md: each decision, when it was decided, when its topic was first raised, and the lead-time between — computed only where the notes ground it, honestly "not computable" otherwise. Strictly single-series |
| Skill | What it holds |
|---|---|
analysis-practices |
The method library the agents cite by slug: grounding discipline, decision-vs-open-topic routing, alignment-framed follow-ups, drift framing, prep framing, meeting-effectiveness system lenses, decision lead-time. Add a practice by dropping a markdown file in practices/ |
meetings/<series-alias>/
profile.md # participants, cadence, optional speaker map — and the REQUIRED consent posture
transcripts/ # your inputs — read-only, never modified, never committed
notes/ # one grounded note per meeting (analyze); improve critiques land here too
actions.md # cumulative action ledger — the single source of truth for open/done
patterns.md # drift observations — the align-never-expose surface
decisions.md # decision ledger with lead-times
prep-<date>.md # pre-meeting prep sheets
Real series are gitignored; the committed fictional meetings/EXAMPLE-project-horizon/ series
(invented people: Sarah, Mark, Elena, David — clearly marked fictional) shows every artifact type.
Start claude --plugin-dir . in the checkout, then invoke each agent in plain language:
# analyze — transcript → grounded note + ledger update
Analyze meetings/EXAMPLE-project-horizon/transcripts/project-horizon-followup.md into series EXAMPLE-project-horizon
# drift — what changed across the series?
What changed in EXAMPLE-project-horizon?
# improve — meeting-as-system critique of one analyzed meeting
How could we improve the EXAMPLE-project-horizon meeting from 2026-06-12?
# prep — before the next meeting of the series
Prep me for the next EXAMPLE-project-horizon meeting
# decisions — keep the decision ledger current
Update the decisions log for EXAMPLE-project-horizon
Expected outputs for all five already live in meetings/EXAMPLE-project-horizon/ — compare what you
get against them to see the intended shape.
MIT for the whole repository — agents, templates, skill, practice content, and the fictional
example data (see LICENSE). The practice files are original expression written for this
project; no third-party framework text or branded instrument is reproduced.