situate-daily-notes

Generates situation reports and Obsidian-style daily summary notes from chat message history.

847|79|Updated Feb 17, 2026
One-click install
npx skills add https://github.com/rcarmo/piclaw --skill situate-daily-notes
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: situate-daily-notes
Source: https://github.com/rcarmo/piclaw/tree/main/skel/.pi/skills/situate-daily-notes
Command: npx skills add https://github.com/rcarmo/piclaw --skill situate-daily-notes

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Long-running agent workspaces accumulate thousands of chat messages across sessions and branches, making it hard to catch up on what happened, what was decided, and what remains unresolved. This Skill turns the message database into a one-page situation report plus rolling daily notes and memory files.

Core Features & Use Cases

  • Situation reports: Runs situate.ts to print a one-page briefing covering recent context, partial or missing summaries, environment details, scheduled tasks, and available skills.
  • Daily note generation: Runs daily-notes.ts to create or refresh Obsidian-style notes at notes/daily/YYYY-MM-DD.md with YAML front matter watermarks (summarised_until) tracking summarization progress.
  • Rolling agent memory: Refreshes notes/memory/current-state.md, recent-context.md, and MEMORY.md so the agent always has a compact, current view of recent work.
  • Use Case: After a weekend away, ask the agent to catch you up; it aggregates all web session trees, flags days needing summaries, and writes terse narrative summaries grouped by theme.

Quick Start

Ask the agent to run the situate script to generate a situation report and refresh daily notes for the past week.

Frequently Asked Questions about situate-daily-notes

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate a situation report from chat history?

Run `bun run /workspace/.pi/skills/situate-daily-notes/situate.ts` to print a one-page report aggregating recent activity, note status, environment details, and scheduled tasks. Use `--days <n>` to control the history window and `--out <path>` to set the output file.

How do I create daily summary notes from chat messages?

Run `daily-notes.ts` to generate Obsidian-style notes under `notes/daily/YYYY-MM-DD.md` with YAML front matter tracking message counts and a `summarised_until` watermark. Existing summaries are preserved; only placeholders and partial updates are flagged.

Does the skill handle multiple chat sessions or branches?

Yes. For `web:*` scopes it aggregates all web session trees, including root chats and branch chats, and labels them so parallel conversations stay distinguishable in reports and notes.

What happens when a daily note is only partially summarized?

The script appends a `Summary update` section with a `NEEDS_SUMMARY_UPDATE` marker and reports the note as stale. You then write a short update covering messages after the watermark and advance `summarised_until` to the last message timestamp.

What are the limitations of the daily notes approach?

Daily notes are summaries only; the message database remains the source of truth for full transcripts. The scripts require the Bun runtime and a SQLite messages database, and they do not write narrative summaries automatically.