Use when transitioning from retro to weekly plan, prioritizing backlog, choosing outcomes for the week, or when user says "план на неделю", "планирование", "W13 plan", "outcomes", "приоритизация". Runs after weekly-retro skill.
Scanned 5/27/2026
Install via CLI
openskills install serejaris/ris-claude-code---
name: weekly-planning
description: Use when transitioning from retro to weekly plan, prioritizing backlog, choosing outcomes for the week, or when user says "план на неделю", "планирование", "W13 plan", "outcomes", "приоритизация". Runs after weekly-retro skill.
---
# Weekly Planning
## Overview
Turn retro findings + existing backlog into a prioritized week with clear outcomes, issues in correct repos, and delegation matrix (founder vs agent).
## When to Use
- After weekly retro is complete
- Monday/Tuesday when planning the week
- When user says "план на неделю", "приоритизация", "что делаем"
## Iron Rule: Planning Is Not Execution
Weekly planning creates a plan. It does not execute the plan.
Allowed during planning:
- Gather context needed to choose outcomes
- Read calendars, issues, project boards, CRM/backlog files, and recent notes
- Draft outcomes, issue proposals, and board updates
Not allowed during planning:
- Start implementation work for a chosen outcome
- Create deliverables, briefs, proposals, content, code, or production changes
- Spawn executor agents for work that belongs to the coming week
If the user asks to "do this now" while planning, finish or pause planning first, then handle that as a separate execution task.
## Process
```dot
digraph planning {
rankdir=TB;
node [shape=box];
collect [label="1. Collect all tasks"];
calendar [label="2. Map calendar"];
group [label="3. Group by surface"];
eisenhower [label="4. Eisenhower split"];
outcomes [label="5. Choose outcomes"];
issues [label="6. Create issues\nin correct repos"];
board [label="7. Add to board\nwith W{NN} label"];
collect -> calendar -> group -> eisenhower -> outcomes -> issues -> board;
}
```
### 1. Collect all tasks
Sources to scan:
- Retro backlog (label `retro:W{NN-1}`)
- Open issues across ALL repos: `gh search issues --owner $YOUR_OWNER --state open`
- GitHub Projects for active initiatives
- Calendar events (meetings, lectures, mentoring)
- User input (new tasks from interview)
### 2. Map calendar
Read known sources before asking the user. Use calendar, existing issues, project boards, and planning files to establish:
- Today's date
- Planned week start/end
- Fixed events
- Known deadlines
- Available capacity
Ask only for facts that are not recoverable from sources, one question at a time.
IMPORTANT: Verify dates before writing outcomes. Do not create deadlines in the past. If the deadline is today, include a time boundary such as "by EOD".
### 3. Group by surface
Group tasks by where work happens. Use the repos and task routing defined in your `CLAUDE.md` config (set up by `project-init`).
Example surfaces:
| Surface | Description |
|---------|-------------|
| Product delivery | Main product/service repos |
| Sales/pipeline | CRM, sales tooling |
| Content | Blog, videos, social media |
| Strategy | Planning, cross-cutting decisions |
| Infrastructure | Internal tools, automation |
### 4. Eisenhower split with delegation
For each task, classify:
| | Urgent | Not Urgent |
|---|--------|-----------|
| **Important** | Founder does TODAY | Founder schedules this week |
| **Not Important** | Agent does async | Parking lot / drop |
Key question per task: "Does this require founder judgment, or can an agent execute it from the issue description?"
### 5. Choose outcomes
Outcomes = results, not tasks. Format: "By Friday, X is true."
Rules:
- NOT limited to 3 — as many as realistic
- Each outcome has a measurable check
- Include both founder-only and agent-delegated work
- Include B2B/sales if there are active deals — these are outcomes, not bonuses
- Outcomes are commitments chosen with the user, not a silent reconstruction from the backlog
- Use the backlog as input, then ask the user to choose or edit outcome options
Example:
```
Outcome: New feature launched
Check: deployed to production, 0 critical bugs by Friday
Founder: final UX decisions, announcement copy
Agent: implementation, tests, deploy script
```
### 6. Create issues in CORRECT repos
CRITICAL: Issue lives where the work happens. Use the task routing from your `CLAUDE.md` config.
```
Issue about backend bug → backend repo
Issue about marketing → marketing repo
Issue about content → content repo
Issue about strategy → main planning repo
```
Before creating any issue:
1. VERIFY current state (check existing issues, files, data)
2. PROPOSE to user
3. CREATE only after verification
Label every issue: `W{NN}` + optionally `retro:W{NN-1}` if from retro.
### 7. Add to unified board
All W{NN} issues → your GitHub Project (from `CLAUDE.md` config: `project_id` and `owner`).
Create or use view "W{NN}" filtered by label.
```bash
# Add to project (use project_id and owner from your config)
gh project item-add $PROJECT_ID --owner $YOUR_OWNER --url $ISSUE_URL
# Verify
gh search issues --owner $YOUR_OWNER --label "W{NN}" --state open
```
## Red Flags — STOP
- Creating all issues in one repo → WRONG, route to correct repo per config
- Creating issue without checking current state → VERIFY FIRST
- Claiming status without checking actual data → VERIFY
- Planning 40h of productive work → budget 60% capacity
- Skipping calendar mapping → leads to conflicts
- Mixing "task" with "outcome" → outcome = result by Friday
- Doing execution work inside planning → finish planning first, execute separately
- Asking the user for facts that are already available in sources → read sources first
- Writing deadlines without checking the actual date → verify current date and week range
## Common Mistakes
| Mistake | Fix |
|---------|-----|
| All issues in one repo | Route to where work happens |
| Issue created without verification | Check issues + files + data first |
| Outcomes = task list | Rewrite as "by Friday, X is true" |
| Ignoring B2B as "bonus" | Active deals with money = outcomes |
| Publishing paid content publicly | Paid content stays in paid repos |
| Assuming data without checking | Verify with `gh issue list` + actual files |
| Fixed 3 outcomes limit | As many outcomes as realistic |
| Executing tasks during planning | Capture as outcomes/issues, execute after planning |
| Asking instead of reading | Check source systems first, ask only for missing facts |
## Integration with weekly-retro
This skill runs AFTER `weekly-retro`. Expected inputs:
- Retro summary with what worked / didn't
- Issues created during retro (label `retro:W{NN-1}`)
- Lessons learned and playbook updates
- New tasks from retro interview
## Setup
This skill reads config from your project's `CLAUDE.md`. Run `project-init` first to generate the config block, or add manually:
```markdown
## Agent Operations Config
### Repos (scanned during retro/planning)
repos:
- owner/repo-1 # what it does
- owner/repo-2 # what it does
### GitHub Project
project_id: N
owner: your-github-handle
### Task Routing
routing:
- pattern: "backend, bugs"
repo: owner/backend-repo
- pattern: "content, marketing"
repo: owner/content-repo
- pattern: "strategy, cross-cutting"
repo: owner/main-repo
```
## Quick Reference
```bash
# All tasks for current week
gh search issues --owner $YOUR_OWNER --label "W{NN}" --state open
# By repo
gh search issues --owner $YOUR_OWNER --label "W{NN}" --state open --json repository,number,title
# Close week (Friday)
gh search issues --owner $YOUR_OWNER --label "W{NN}" --state open --json title,repository
# Review: done / spillover / drop
```
No comments yet. Be the first to comment!