Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
4944013
feat: add return meeting context skill
Gandy2025 Jul 28, 2026
65df000
refactor: make meeting context artifact driven
yuezengwu Jul 28, 2026
17351cf
fix: bind meeting evidence and routing
yuezengwu Jul 28, 2026
43e4104
fix: route meeting writes through interpreter
yuezengwu Jul 28, 2026
85a2475
test: compose meeting routing eval
yuezengwu Jul 28, 2026
eb9e365
fix: require validator execution in routing eval
yuezengwu Jul 28, 2026
313f2d8
refactor: make meeting analysis a standalone skill
yuezengwu Jul 29, 2026
c848514
refactor: distribute meeting synthesis as an experimental skill
yuezengwu Jul 29, 2026
227ef39
fix: harden standalone meeting synthesis
yuezengwu Jul 29, 2026
f0c3c99
fix: exercise privacy scanning on packet fields
yuezengwu Jul 29, 2026
7544d2c
fix: harden standalone meeting eval oracles
yuezengwu Jul 29, 2026
a0b0655
fix: grade standalone providers consistently
yuezengwu Jul 29, 2026
2cb0c7c
fix: parse standalone eval shell execution
yuezengwu Jul 29, 2026
bc98a39
fix: retain substitution path provenance
yuezengwu Jul 29, 2026
735461a
fix: isolate partial meeting eval artifacts
yuezengwu Jul 29, 2026
366271c
fix: record partial artifact access attempts
yuezengwu Jul 29, 2026
c137729
fix: verify raw access monitors after runs
yuezengwu Jul 29, 2026
ae9349e
fix: make monitor teardown exception safe
yuezengwu Jul 29, 2026
0e07292
fix: monitor partial sentinel continuity
yuezengwu Jul 29, 2026
6b3636e
fix: protect full sentinel paths
yuezengwu Jul 29, 2026
9ea9273
fix: avoid recreating moved sentinels
yuezengwu Jul 29, 2026
b6ce583
test: scope meeting skill gate to codex
yuezengwu Jul 29, 2026
fe5a78e
test: detect protected path metadata changes
yuezengwu Jul 29, 2026
15482f6
test: keep meeting validator outside model workspace
yuezengwu Jul 29, 2026
d8ca853
test: separate host and model eval evidence
yuezengwu Jul 29, 2026
4a806fd
test: lock retained meeting eval artifacts
yuezengwu Jul 29, 2026
d10b73a
test: guard host meeting eval reads
yuezengwu Jul 29, 2026
0b0f7be
test: guard meeting eval ancestor paths
yuezengwu Jul 29, 2026
0f63362
test: open meeting eval files beneath trusted roots
yuezengwu Jul 29, 2026
9dda0fd
test: contain meeting eval process trees
yuezengwu Jul 29, 2026
b1984f9
test(skill-evals): guard workspace before deeper scans
yuezengwu Jul 29, 2026
72c4d4a
test(skill-evals): cover all guarded workspace roots
yuezengwu Jul 29, 2026
0da2dad
fix(eval): guard raw monitor finalization
yuezengwu Jul 29, 2026
62e75be
fix(eval): guard post-failure metrics
yuezengwu Jul 29, 2026
7265b60
fix(skill): reject phone contact details
yuezengwu Jul 29, 2026
888fd59
refactor(skill): keep meeting synthesis minimal
yuezengwu Jul 29, 2026
cabaf1e
refactor(skill): sync meeting records to tree
yuezengwu Jul 29, 2026
c881fdb
refine(skill): filter durable meeting claims first
yuezengwu Jul 29, 2026
903fa4f
rename(skill): meeting-to-tree
yuezengwu Jul 29, 2026
7c06c23
fix: keep meeting confirmations in one chat
yuezengwu Aug 12, 2026
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
136 changes: 136 additions & 0 deletions skills/.experimental/meeting-to-tree/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
---
name: meeting-to-tree
description: Turn exact meeting records that the user supplies into durable Context Tree updates. Use when a user asks to sync meeting minutes, transcripts, AI notes, decision records, or related meeting artifacts into the team's Context Tree: read the exact sources, reconcile chronology, identify durable decisions and constraints, map relevant participants to First Tree members, confirm only unsettled claims, and hand the meeting source material to first-tree-write. Do not use for a summary-only request, calendar discovery, meeting search, provider authorization, or scheduled capture.
---

# Meeting to Tree

Turn one logical meeting's exact source artifacts into reviewable Context Tree
updates. Use existing readers, First Tree member communication, and
`first-tree-write`; do not build a parallel reader, confirmation store, or Tree
writer.

## Establish the meeting source

- Require at least one concrete meeting artifact and clear intent to update the
Context Tree. If either is missing, ask for it and stop.
- Process one logical meeting at a time. When supplied artifacts may belong to
different meetings, separate them using explicit source evidence or ask the
user to group them.
- Use the environment's ordinary reader for each exact provider document,
attachment, local file, or pasted record. For a Feishu source, use the
available Feishu reader or CLI; keep provider authorization, download, OCR,
parsing, completeness, and revision handling in that reader layer.
- Do not use a calendar, search for related meetings, scan a time window, or
follow links embedded in a source to discover adjacent material.
- Preserve the user-declared or document-visible order. If order is unknown,
do not infer that one artifact overrides another.
- If an artifact is unreadable or incomplete, identify the gap. When the gap
could contain a correction or later decision, do not call the affected point
settled.
- Use the exact source through the ordinary reader in the current task. If the
reader already provides a transient local file, reuse it. Do not create or
retain an additional raw copy solely for this Skill. Never write raw meeting
content to the Context Tree, a source repository, or parallel persistent
state.

## Identify durable Tree candidates

Read the available artifacts in order and identify claims that may change
durable team context:

- a decision or explicit non-choice and its surviving rationale;
- a constraint future work must respect;
- a durable ownership or responsibility change;
- a cross-domain relationship.

For every candidate:

1. Separate proposals, discussion, and final statements.
2. Scan all later material for correction, withdrawal, replacement,
disagreement, completion, or cancellation.
3. Keep only the surviving current statement.
4. Preserve the surviving rationale, qualifiers, and consequences.
5. Distinguish supported conclusions from uncertain interpretations.

Progress, plans, actions, blockers, risks, and other member-specific updates
are signals, not required output categories. Consider them only when they
establish or change a durable candidate above. Do not create a complete meeting
summary before applying the Tree write bar.

Evidence strength matters:

- Human-confirmed minutes or an explicit decision record may confirm an item
when wording is unambiguous and no later material overrides it.
- AI-generated notes may identify an item but cannot alone prove human
confirmation.
- A transcript confirms only what it explicitly records. Do not infer speaker
identity, authority, or agreement from participation.
- When provenance or wording is ambiguous, state the uncertainty instead of
promoting it to a fact.

Before mapping members or sending any confirmation, apply the Context Tree
Double Test as a preliminary filter. Keep a claim only when it both establishes
or changes context future agents must respect and would remain durable if the
meeting's implementation work were rewritten. `first-tree-write` will reapply
the normal write gate after any confirmation reply.

## Match members and confirm unsettled claims

- Identify participants only from the supplied meeting record. When routing a
confirmation or evaluating responsibility context, match them to First Tree
members using member context available in the current environment. Do not
guess when names or identities are ambiguous.
- Treat member mapping as routing information, not permission to change Context
Tree ownership.
- Keep every confirmation for this meeting in the originating task chat. Never
use `chat create` to open a confirmation chat for an individual member or to
split the meeting's confirmations across chats.
- Request confirmation only for a claim that is AI-only, ambiguous, disputed,
weakly attributed, changes ownership or durable responsibility, or is
otherwise not settled by the source. Do not repeat confirmation for a clear
human-confirmed minute or explicit decision record, except that an ownership
or durable responsibility change still requires confirmation from the
affected human.
- Send each relevant member a concise claim-level question in that same chat.
Use a separate, individually addressed tracked question for every human whose
answer a claim's Tree write depends on; the questions may remain outstanding
independently in the shared timeline. Incorporate each correction into the
source bundle.
- An unanswered, disputed, or unresolved claim blocks only itself. Keep it out
of normal Tree content and continue with independently settled durable
candidates.
- A needed human must already participate in the originating task chat. If the
environment cannot address them there, report the unresolved claim and
prepared confirmation prompt; do not create another chat as a fallback. Stop
before the Tree write only when no independently settled durable candidate
remains.

## Sync durable context

- Treat the exact meeting artifacts, relevant confirmation replies, and the
user's Tree-write intent as one meeting source bundle for `first-tree-write`.
Do not reimplement its Tree-read, target-selection, verification, branch, or
PR workflow.
- Let `first-tree-write` apply the Context Tree Double Test. Sync only durable
decisions, constraints, ownership or responsibility changes confirmed by the
affected humans, and cross-domain relationships that future agents must
respect.
- Do not dump the transcript, the complete meeting summary, routine progress,
temporary plans, task lists, or transient blockers into normal Tree content.
Those remain in their source systems unless they establish durable context.
- If nothing passes the Tree write bar, create no Tree change and explain why.
- Let `first-tree-write` verify the Tree and prepare the Tree PR or MR. Stop
before review or merge.

## Finish

Report:

- the Context Tree nodes changed and the Tree PR or MR, or why no Tree write
was warranted;
- any durable candidate still blocked on identity, attribution, conflict, or
confirmation.

Never maintain discovery watermarks, processed ledgers, provider profiles,
organizer gates, schedules, or a parallel approval state.
1 change: 1 addition & 0 deletions skills/.experimental/meeting-to-tree/VERSION
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.0.1
4 changes: 4 additions & 0 deletions skills/.experimental/meeting-to-tree/agents/openai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
interface:
display_name: "Meeting to Tree"
short_description: "Turn meeting records into reviewed Tree changes"
default_prompt: "Use $meeting-to-tree to sync durable context from the meeting records I supplied into the team's Context Tree."
Loading