Reports and briefs
Structured cards in the family inbox. Reports (detailed analyses) and briefs (scannable digests).
What you'll build
A structured card lands in the family inbox. Two flavors with the same plumbing:
- Report: detailed analysis of something that happened. Themes, gaps, next move. Usually event-triggered.
- Brief: scannable summary at a cadence. Morning brief, weekly digest, end-of-day recap.
The artifact is an auditable, scrollable card the parent can return to. Posted via skill.post_result.
Pieces you'll combine
- Skill (
home_agentcategory) that does the analysis or digest. skill.post_resultpublishes the structured payload.- Read tools:
task.list,task.describetoday;resources/subscribe sprout://family/activitySoon.
Build it
Three movements:
1. Author the analyzer or digest skill. Reusable: same skill runs tomorrow's data, next week's, on a different kid.
skill.write({
name: "<Analyzer name>",
description: "Read X, produce Y as a structured card.",
category: "home_agent",
prompt: `For {{input.child_name}} ({{input.child_id}}):
1. Read the relevant tasks via task.list / task.describe.
2. Extract: <your specific structure: themes, scores, gaps, etc.>.
3. Phrase in parent-readable language.
4. skill.post_result with the structured payload below.`,
handsReferenced: ["task_list", "task_describe", "skill_post_result"],
inputVariables: [
{ name: "child_name" }, { name: "child_id" }, { name: "scope" }
]
})
# Returns { skillId }2. Invoke it. Your agent renders the prompt and does the work in conversation.
skill.invoke({
skillId: "<analyzerSkillId>",
input: { child_name: "<name>", child_id: "<kidId>", scope: "last 7 days" }
})3. Publish the result.
skill.post_result({
skillId: "<analyzerSkillId>",
result: {
summary: "<one-line headline>",
themes: [...],
gaps: [...],
next_topic: "<recommendation>"
}
})
# Returns { resultId, threadId, postedAt }Trigger options. Run ad-hoc with skill.invoke for one-offs ("summarize this week"). Pair with Autonomous loop for cadenced output (daily brief at 6am, weekly digest Sunday night).
When to use it
- Output worth saving next to the raw activity that produced it.
- Daily/weekly summaries, end-of-session recaps, threshold alerts.
- Anti-pattern: chatty side commentary that doesn't merit an inbox card. Keep the bar high.
Tools touched
skill.write,skill.invoke,skill.post_result.task.list,task.describefor reading what happened.- Subscriptions for push-based reads (Soon).
Recommended skills
Drop these into your library to compose with this pattern.
Seen in walkthroughs
Solar system learning loop Weekly family brief
Related patterns
- Autonomous loop: pair to run on cadence.
- Context bridge: inverse direction (outside → in vs. in → parent).