From my-claude
Performs vault health checks: analyzes agent workflow patterns from logs, detects session gaps with recovery summaries, syncs profiles, proposes persona rules.
npx claudepluginhub sehoon787/my-claude --plugin my-claudeThis skill uses the workspace's default tool permissions.
Vault health check skill. Analyzes workflow patterns, syncs profile, recovers from session gaps, and proposes persona rules based on temporal agent call sequences.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Vault health check skill. Analyzes workflow patterns, syncs profile, recovers from session gaps, and proposes persona rules based on temporal agent call sequences.
Relationship with other skills:
briefing-vaulthandles vault templates and initializationboss-briefinghandles sync, analysis, and pattern detectionstop-profile-update.jsstill runs as a fallback if this skill was not invoked during the session
Execute all 9 steps in order. If any step fails due to missing data, log the issue and continue to the next step.
Read .briefing/state.json to get session metadata:
date — last session dateworkCounter — file edit count this sessionsessionMessageCount — user message count this sessionlastVaultSync — ISO timestamp of last /boss-briefing runsessionStartHead — git HEAD or YYYY-MM-DD:cwd identifierIf state.json does not exist or is empty, use defaults: { date: "", workCounter: 0, sessionMessageCount: 0, lastVaultSync: "", sessionStartHead: "" }.
Compare the date field from state.json with today's date.
If the gap is >= 1 day:
.briefing/sessions/ for the most recent session file (by filename date prefix)If gap is 0 (same day), skip this step.
Read .briefing/agents/agent-log.jsonl. Parse all entries from the last 30 days.
Group entries by date. For each day, extract the ordered sequence of agent_type values.
Frequency patterns: Identify any agent_type that appears >= 3 times in the last 7 days.
Sequence patterns: Look for recurring ordered sub-sequences (length >= 2) that appear in >= 2 different sessions/days. Examples:
Report both frequency and sequence patterns.
Rewrite .briefing/persona/profile.md with:
---
date: YYYY-MM-DD
type: persona
version: 2
session_count: <incremented count>
---
Sections to include:
## Philosophy — Infer work style from data. Only populate if >= 10 agent calls exist in the last 30 days. Examples: "Prefers thorough exploration before implementation", "Review-heavy workflow with security focus".
## Workflow Patterns — Total agent calls (30d), most active agent type, average calls per session.
## Workflow Sequences — Detected temporal patterns from Step 3. Format: "Explore → executor → code-reviewer (seen 3 times)". This section is new and distinguishes boss-briefing from the old profile update.
## Agent Affinity — Percentage breakdown by agent_type over the 30-day rolling window.
## Active Persona Rules — List all .md files from .briefing/persona/rules/ directory. Format: - rule-name: <first line of description>.
## History — Append a one-line entry every 5th session (based on session_count % 5 === 0). Format: "Session N (YYYY-MM-DD): ".
Session count idempotency: If sessionStartHead is empty (no git repo), use YYYY-MM-DD:cwd as the session identifier to avoid double-counting.
For each detected SEQUENCE pattern from Step 3 that appears >= 2 times:
.briefing/persona/rules/workflow-<slug>.md:---
date: YYYY-MM-DD
type: persona-rule
source: boss-briefing
pattern: "<sequence description>"
occurrences: <count>
---
Followed by a description of the workflow pattern and when it should be applied.
If no new sequence patterns are detected, or all existing patterns already have rules, skip this step.
Check .briefing/sessions/ for files matching YYYY-MM-DD-*.md (today's date, excluding files containing -auto).
If no matching file exists AND either:
workCounter > 0, orsessionMessageCount >= 3Then warn the user: "No session summary found for today. Consider writing .briefing/sessions/YYYY-MM-DD-.md before ending the session."
Read all files from these directories:
.briefing/sessions/.briefing/decisions/.briefing/learnings/Rebuild these sections in .briefing/INDEX.md:
## Recent Sessions — newest 5 files with [[wiki-links]]## Recent Decisions — newest 5 files with [[wiki-links]]## Recent Learnings — newest 5 files with [[wiki-links]]Update the date field in INDEX.md frontmatter to today.
Preserve any other existing sections (Overview, Open Questions, Key Links).
Read .briefing/state.json, merge in { lastVaultSync: "<current ISO timestamp>" }, and write back.
This timestamp is checked by hooks to determine whether /boss-briefing has been run today.
This is not a separate step but a cross-cutting concern for all steps above:
sessionStartHead is empty, use YYYY-MM-DD:cwd format for session identification.git directory