Skip to content
Back to skills

Cowork Session Planner

ASecurity

Generate a pre-session brief for Cowork: current status, session goal, and prioritised work plan from local project files — before your first real message. Use when starting a session, returning after a break, or needing focus. Triggers: 'session brief', 'prepare my session', 'start my cowork session', 'бриф сессии', 'подготовь сессию', 'что делать в этой сессии'.

  • 18 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added May 27, 2026
data-aigo

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add KirKruglov/claude-skills-kit --skill cowork-session-planner --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cowork Session Planner?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Cowork Session Planner
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kirkruglov-cowork-session-planner/badge)](https://www.skillsdirectory.com/skills/kirkruglov-cowork-session-planner)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: cowork-session-planner
description: "Generate a pre-session brief for Cowork: current status, session goal, and prioritised work plan from local project files — before your first real message. Use when starting a session, returning after a break, or needing focus. Triggers: 'session brief', 'prepare my session', 'start my cowork session', 'бриф сессии', 'подготовь сессию', 'что делать в этой сессии'."
version: 1.0.0
---

# Cowork Session Planner

This skill generates a pre-session brief for non-technical Cowork users by scanning available project files (context.md, logs, tasks, CLAUDE.md) and producing a minimal structured brief: current project status, recommended session goal, and a prioritised work plan. It runs at the very start of a session — before any real work task is requested — so the user knows exactly where to focus.

**Input:** Current workspace / project folder. Optional: explicit session goal as free text.

**Output:** Structured markdown brief (inline response). Optionally saved to `output/session-brief.md` on user request.

---

## Language Detection

Detect the user's language from their message:
- If Russian (or contains Cyrillic): respond in Russian
- If English (or other Latin-script language): respond in English
- If ambiguous: respond in the language of the trigger phrase used

---

## Instructions

### Step 1: Parse Input

1. Check if the user provided an explicit session goal (free text after the trigger phrase).
   - If yes: store as `stated_goal`; use it as the primary session focus in Step 4.
   - If no: `stated_goal` is empty; derive focus from project files in Step 3.

2. Identify the project folder to scan.
   - Default: current workspace / selected folder.
   - If user specifies a path, use that path.

---

### Step 2: Scan Project Files

1. Look for the following files in the workspace (in order of priority):
   - `context.md` or `CLAUDE.md` — project overview and status
   - `logs/log.md` — recent activity log
   - `TASKS.md` or any file containing open tasks
   - Any `output/skill-spec.md` or in-progress output files

2. For each found file, extract:
   - **context.md / CLAUDE.md:** project name, current status, open questions
   - **logs/log.md:** last log entry (date + action description)
   - **TASKS.md:** open tasks (status: pending or in_progress)
   - **skill-spec.md:** if present, note "skill spec in progress"

3. Note any missing files for the Notes section of the brief.

**Edge Cases:**
- If no context.md or CLAUDE.md found: proceed without project overview; flag as missing in Notes.
- If log file is empty or absent: skip last-action extraction; open brief with "No activity log found."
- If multiple task files found with conflicting state: list all sources; flag conflict in Notes.

---

### Step 3: Determine Session Focus

1. If `stated_goal` is set: use it as the session goal. Skip to Step 4.

2. Otherwise, derive focus from extracted data:
   - Check open tasks (status: pending / in_progress) — select the highest-priority item.
   - If no tasks, check last log entry — infer next logical step from last completed action.
   - If neither available: propose "Define session goal" as the first task.

3. Compile a prioritised work list (max 5 items):
   - Item 1: derived or stated session goal
   - Items 2–5: remaining open tasks or logical next steps

---

### Step 4: Assemble Brief

1. Build the pre-session brief with these sections:
   - **Project / Status:** project name + 1-sentence current state
   - **Session Goal:** recommended or stated goal (1 sentence)
   - **Work Plan:** numbered list, max 5 items
   - **Blockers:** any open blockers or conflicts from Step 2; "None" if clean
   - **Notes:** any missing files, file conflicts, or flags from Step 2

2. Use bilingual headers (EN + RU) if Russian was detected; English-only otherwise.

3. Display the brief inline. Do not save to file unless user explicitly requests it.

---

### Step 5: Handle Save Request

1. If user says "save" or "save to file": write brief to `output/session-brief.md`.
2. Confirm file written and provide path.

---

## Negative Cases

- **No project files found (empty workspace):** Return: "No project files found. Please select your project folder or provide a session goal to get started." Do not generate an empty or partial brief.
- **User invokes mid-session (active tasks detected):** Detect in-progress tasks or recent log entries (within last hour). Note: "It looks like you're already mid-session." Offer a **re-focus brief** instead of an initial brief (same format, but titled "Re-focus Brief").

---

## Output Format

Inline markdown response:

```
## Сессионный бриф / Session Brief
**Проект / Project:** [project name or folder]
**Статус / Status:** [1-sentence current state]

### Фокус сессии / Session Goal
[Recommended or stated session goal — 1 sentence]

### План работы / Work Plan
1. [Task 1 — highest priority]
2. [Task 2]
3. [Task 3]
...

### Блокеры / Blockers
- [Blocker 1 if any, otherwise: None]

### Заметки / Notes
- [Missing files, conflicts, or flags — if any]
```

**Field rules:**
- Work Plan: 1–5 items; each item is a specific, actionable task (not a vague category)
- Blockers: specific obstacle or "None"
- Notes: only populated when something is flagged (missing file, conflict, mid-session detection)

Files in this skill

  • README.md3.4 KB
  • README.ru.md5.4 KB
  • SKILL.md5.3 KB
  • docs/USER-GUIDE.md6 KB
  • docs/USER-GUIDE.ru.md9.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.