Use when the work-journal app asks to summarize a recorded meeting transcript into participants, summary, decisions, and action items.
86%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Headless skill for the work-journal app. The prompt names one input file.
JSON with meeting (id, app, start, end, title), transcript (t, speaker, text), and screens (descriptions of on-screen content).
An imported recording (audio the user recorded on their phone) may also have user_note: {title, context_lines}, the user's own note about the recording; join context_lines with spaces.
Any meeting may also have user_notes: notes the user wrote for the journal, each {kind, from, to, title, context_lines}. Join context_lines with spaces. from/to (HH:MM, to exclusive) is the time range a note covers; both are absent for a note on the whole day. Treat a context note like user_note.
You) is always the user; list it as {"speaker":"You","name":"","confidence":1} unless a name is given.name is "".confidence is 0-1; a self-introduction or a clear label is high, a weak inference below 0.7. Do not guess from voice or role.participants.summary: 2-4 sentences. decisions and action_items only when stated; owner is "" if unclear.user_note is written by the user, not said in the meeting. Use it for context: what the event was, who was there, what the user cares about. Let it shape the summary's focus, but never report as said or decided anything only the note states. A person the note names becomes a speaker's name only when that speaker introduces themselves by it in the transcript. Being addressed by name never names anyone (Speaker 1 asking "Maya, what do you think?" does not say which speaker is Maya), and a matching topic (the note says Maya demoed, a speaker talks about a demo) is not enough, so name stays "".correction in user_notes is the user's own statement about what was recorded and can be used as given: a correction that explicitly names a speaker ("Speaker 2 at 15:00 is Maya") names that speaker, with confidence 1. Speech a correction says to disregard is left out of the summary.{"participants":[],"summary":"","decisions":[],"action_items":[]}.{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "summarize-meeting output",
"type": "object",
"additionalProperties": false,
"required": [
"participants",
"summary",
"decisions",
"action_items"
],
"properties": {
"participants": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"speaker",
"name",
"confidence"
],
"properties": {
"speaker": {
"type": "string"
},
"name": {
"type": "string"
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
}
}
}
},
"summary": {
"type": "string"
},
"decisions": {
"type": "array",
"items": {
"type": "string"
}
},
"action_items": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"text",
"owner"
],
"properties": {
"text": {
"type": "string"
},
"owner": {
"type": "string"
}
}
}
}
}
}chandler767/WorkJournal
a1d9d08
Also appears in
since Oct 20, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.