From project-manager
Generates a project closure report aggregating data from charter, plan-fact report, risk register, and lessons learned. Last artifact of the Closing phase. Summarizes project outcomes, deviations, realized risks, and lessons. Triggers RU: «сформируй отчёт о закрытии», «закрой проект», «подготовь closure report», «отчёт о закрытии проекта». Triggers EN: 'generate closure report', 'close project', 'project closure report', 'prepare closure report'.
npx claudepluginhub kirkruglov/claude-project-managerThis skill uses the workspace's default tool permissions.
**Russian:** «сформируй отчёт о закрытии», «закрой проект», «подготовь closure report», «отчёт о закрытии проекта»
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
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.
Russian: «сформируй отчёт о закрытии», «закрой проект», «подготовь closure report», «отчёт о закрытии проекта» English: "generate closure report", "close project", "project closure report", "prepare closure report"
Determine the language of the user's request:
-ru suffix-en suffixAll output (headings, labels, comments, instructions) must match the detected language.
| Data | Required | Source | Notes |
|---|---|---|---|
| Project charter | yes | knowledge (project-charter.md) | Goal, deliverables, team, sponsor, budget, timeline |
| Plan-fact report | yes | knowledge (plan-fact-report.md) | Deviation summary, actual dates/budget/scope. If multiple files — use the latest by date |
| Lessons learned | yes | chat | User provides in any format: retrospective results, questionnaire answers, free text. Agent structures and assigns categories |
| Risk register | no | knowledge (risk-register.md) | For section 4. If unavailable — agent asks the user about realized risks |
| Open items | no | chat | Tasks/questions remaining after closure. If not provided — replace section with "All items closed" |
| Lessons source | no | chat | team retrospective / questionnaire / PM input in chat. Default: PM input in chat |
If required data is missing — request it (system-prompt-draft.md §3.2):
To generate the project closure report, the following is needed:
1. Project charter (project-charter.md) — in knowledge or paste in chat.
2. Plan-fact report (plan-fact-report.md) — in knowledge or paste in chat.
3. Project lessons — in any format:
— team retrospective results;
— questionnaire answers;
— free-form description: what went well, what went wrong, what to do differently.
Available data: [list what is present].
Missing: [specify].
closure-report from project knowledge. Select the file with the appropriate language suffix based on Language Detection.[clarify].plan-fact-report.md."risk-register.md is available → extract risks with status "realized" or mentioned in user data. Verify: each risk in section 4 must have an ID from the register.risk-register.md is unavailable → use data from user. If user did not specify realized risks — ask: "Which planned risks were realized? If none — I will note 'No realized risks'."deliverable — brief result description.deliverable — reason: [explanation]. If reason not provided by user — [clarify].plan-fact-report.md.Conditional section.
Processes / Technologies / Communications / Resources / Risks.Conditional section.
[clarify].[clarify].Version: 1.0Date: current generation date.File: closure-report.mdDocument status: draft (on generation). After approval — approved.Project manager: from charter.Lessons source: from input data. Default: PM input in chat.Placeholders
{{}}in the template are fill guides, not auto-substitution variables. Replace each with the corresponding value from input data.
| Placeholder | Required | Source | Allowed Values |
|---|---|---|---|
{{project_name}} | yes | charter | text |
{{date}} | yes | system | YYYY-MM-DD |
{{pm_name}} | yes | charter | name |
{{lessons_source}} | yes | chat (default: PM input in chat) | team retrospective / questionnaire / PM input in chat |
{{project_goal}} | yes | charter (section 1) | text |
{{sponsor_name}} | yes | charter | name |
{{planned_start}} | yes | charter (section 3) | YYYY-MM-DD |
{{planned_end}} | yes | charter (section 3) | YYYY-MM-DD |
{{actual_end}} | yes | plan-fact report / chat | YYYY-MM-DD |
{{planned_budget}} | no | charter (section 4) | number + currency |
{{actual_budget}} | no | plan-fact report | number + currency |
{{deliverable_N}} | yes (≥1) | charter (section 2) | deliverable name |
{{status_N}} | yes | plan-fact report / chat | brief result description |
{{excluded_N}} | no | charter / plan-fact report | undelivered deliverable name |
{{reason_N}} | no | chat / plan-fact report | reason or [clarify] |
{{planned_duration}} | yes | plan-fact report (summary) | number + unit |
{{actual_duration}} | yes | plan-fact report (summary) | number + unit |
{{delta_time}} | yes | plan-fact report (summary) | text (e.g., "+1 week (+8%)") |
{{comment_time}} | yes | agent (based on plan-fact report) | closing comment, 1 sentence |
{{delta_budget}} | no | plan-fact report (summary) | text (e.g., "-$3,600 (-4.5%)") |
{{comment_budget}} | no | agent (based on plan-fact report) | closing comment, 1 sentence |
{{planned_scope}} | yes | plan-fact report (summary) | number + unit (deliverables) |
{{actual_scope}} | yes | plan-fact report (summary) | number + unit |
{{delta_scope}} | yes | plan-fact report (summary) | text (e.g., "-1 deliverable") |
{{comment_scope}} | yes | agent (based on plan-fact report) | closing comment, 1 sentence |
{{risk_id}} | no | risk-register / agent | ID (e.g., R001) or empty |
{{risk_description}} | no | risk-register / chat | risk description |
{{impact}} | no | chat / agent | specific project impact |
{{response_result}} | no | chat / agent | response result |
{{lesson_N}} | yes (≥1) | chat (structured by agent) | text — fact/observation |
{{category_N}} | yes | agent | Processes / Technologies / Communications / Resources / Risks |
{{recommendation_N}} | yes | agent | concrete action |
{{open_item_N}} | no | chat | question or task |
{{owner_N}} | no | chat | owner or [clarify] |
{{deadline_N}} | no | chat | YYYY-MM-DD or [clarify] |
Before presenting the result to the user — verify:
{{}} placeholders remain in text (except removed optional rows)[clarify])plan-fact-report.md presentdraftclosure-report.md stated in headerConsumes (input):
project-charter.md — from skill generate-charter (goal, deliverables, team, budget, timeline)plan-fact-report.md — from skill generate-plan-fact-report (deviation summary, actual data)risk-register.md — from skill generate-risk-register (optional, for realized risks)Produces (output): project closure report — the final artifact. Not consumed by other MVP skills.
In Product 1: additionally consumes data from generate-questionnaire (team lessons via questionnaire).
After report approval, user should upload closure-report.md to project knowledge for archival.
User command:
Generate the project closure report. Charter and plan-fact report are in knowledge. Risk register too. Lessons: — Underestimated DB filter complexity, lost a week. Need to budget buffer for unknown tasks. — Formalized change request saved us from scope creep — CEO wanted to add Intercom, but impact assessment stopped it. — Safari testing was done only before release — needs to happen earlier. Open items: — Email integration assigned to Dmitry, deadline July 31. — Pricing — on me, by August 1.
Agent response (after generation):
Generated project closure report for "ClientBoard" based on: charter, plan-fact report, risk register, lessons from chat.
Assumptions:
- Lessons source: PM input in chat.
- Realized risks identified based on risk-register.md and PM data.
Key outcomes:
- Delivered 4 of 5 deliverables (email integration deferred).
- Budget: $76,400 of $80,000 (4.5% savings).
- Timeline: +1 week (13 instead of 12).
Required: approve, provide comments, or reject.
[report text]
| Date | Version | Change |
|---|---|---|
| 2026-03-26 | 1.0 | Skill created. Aggregation from charter + plan-fact report + lessons. Conditional sections 4/6. 1 to 5 lessons |