$npx -y skills add michalparkola/tapestry-skills --skill session-logSummarize the current conversation session and append results to the weekly agent-log. Use when user says "log this", "session log", "summarize this session", or asks to write results to the agent-log.
| 1 | # Session Log |
| 2 | |
| 3 | Summarize the current conversation and append to the weekly agent-log file. |
| 4 | |
| 5 | ## Output Location |
| 6 | |
| 7 | `YYYY-wWW Agent Log.md` |
| 8 | |
| 9 | Where `YYYY-wWW` is the ISO week of today's date. Calculate with: |
| 10 | |
| 11 | ```bash |
| 12 | date +%Y-w%V |
| 13 | ``` |
| 14 | |
| 15 | ## Format Rules |
| 16 | |
| 17 | 1. **Reverse chronological order** — newest day on top |
| 18 | 2. **One `##` heading per day** — format: `## YYYY-MM-DD` |
| 19 | 3. **Bullets, not subheadings** — inside a day, use plain bullet `- Topic title` as topic separator, not `###`. No bold, no formatting on topic lines. |
| 20 | 4. **Details as nested bullets** — one sentence per sub-bullet, can nest if needed for details. No bold. Nesting uses a TAB. |
| 21 | 5. **CHUNK markers** — if a topic produced a reusable output (a plan, a summary, a framework, a draft message), add nested bullet: `CHUNK: <descriptive title>` |
| 22 | 6. **No explanatory text** — no intros, no "in this session we discussed", no meta-commentary |
| 23 | 7. **Append, don't replace** — when a day heading already exists, add new bullets under it without removing existing content |
| 24 | |
| 25 | ## Example |
| 26 | |
| 27 | ```markdown |
| 28 | ## 2026-02-28 |
| 29 | |
| 30 | - Analiza strategii X vs framework Y + moje obserwacje |
| 31 | - Strategia jest silna w A i B, słaba w C — brakuje fosy i horyzontu 3+lat. |
| 32 | - Naming produktu "Rescue" implikuje że kupujący jest ofiarą, co blokuje referencje. |
| 33 | - Anty-segment nie jest sprawdzalny z zewnątrz — to opis doświadczenia, nie filtr. |
| 34 | - CHUNK: 3-zdaniowe podsumowanie strategii |
| 35 | - CHUNK: Scorecard po 6 osiach |
| 36 | - Decyzja: follow-up z klientem |
| 37 | - Nie wysyłać feedbacku (nie prosił), wysłać link do artykułu jako wartość bez CTA. |
| 38 | ``` |
| 39 | |
| 40 | ## Step-by-Step Workflow |
| 41 | |
| 42 | ### 1. Determine the target file |
| 43 | |
| 44 | ```bash |
| 45 | WEEK=$(date +%Y-w%V) |
| 46 | ``` |
| 47 | |
| 48 | Target: `${WEEK} agent-log.md` |
| 49 | |
| 50 | ### 2. Read existing file (if any) |
| 51 | |
| 52 | The file may already have entries from earlier sessions this week. Read it first to avoid overwriting. |
| 53 | |
| 54 | ### 3. Review the full conversation and determine dates |
| 55 | |
| 56 | Scan the entire conversation history. Identify: |
| 57 | - **Topics** — distinct subjects discussed (group related back-and-forth into one topic) |
| 58 | - **Decisions** — what was decided or concluded |
| 59 | - **Outputs** — any reusable artifacts (summaries, plans, draft messages, frameworks, scorecards) |
| 60 | |
| 61 | **Date attribution:** A conversation may span multiple days. Determine the correct date for each topic using these signals (in priority order): |
| 62 | 1. **System reminders** about date changes ("The date has changed. Today's date is now...") |
| 63 | 2. **File names** with dates (e.g., `2026-02-26 client email.md` was created/discussed on that date) |
| 64 | 3. **Context from session summaries** — if the session was continued from a compacted conversation, the summary may mention which work happened when |
| 65 | 4. **Default** — if no date signal exists, use today's date |
| 66 | |
| 67 | Group topics by their actual date, not just "today." |
| 68 | |
| 69 | ### 4. Write the log entry |
| 70 | |
| 71 | For each date that has topics: |
| 72 | - If that date's heading (`## YYYY-MM-DD`) already exists in the file, append new topics under it |
| 73 | - If the date heading is not yet in the file, add it in the correct reverse-chronological position |
| 74 | - If the file doesn't exist, create it |
| 75 | |
| 76 | **Cross-week dates:** If a topic belongs to a date in a different ISO week than the target file, note this to the user and ask whether to add it to the current file or the correct week's file. |
| 77 | |
| 78 | **Condensation rules:** |
| 79 | - Multiple related exchanges → one topic bullet |
| 80 | - Back-and-forth refinement → only the final conclusion matters |
| 81 | - If user edited/corrected something → use the corrected version, ignore earlier drafts |
| 82 | |
| 83 | **Append rules:** |
| 84 | - If today's `## YYYY-MM-DD` heading already has bullets, add new ones at the end — never delete or rewrite existing bullets |
| 85 | - If a topic from this session overlaps with an existing bullet, add the new details as additional nested bullets under a new topic bullet — don't merge into existing text |
| 86 | |
| 87 | ### 5. Confirm |
| 88 | |
| 89 | Tell the user what was logged (topic titles only, one line). |
| 90 | |
| 91 | ## Important Notes |
| 92 | |
| 93 | - The user may have a preferred topic title style — if they edited a previous entry, match that style |
| 94 | - Keep bullets ruthlessly short — one sentence, no semicolons chaining multiple thoughts |
| 95 | - CHUNKs reference outputs that exist in the conversation, not in files — they're bookmarks for the user to find later |
| 96 | - Do NOT include the full chunk content in the log — just the marker |
| 97 | - Language: match the language the conversation was conducted in (use the user's language) |