This repository stores the version 1 assets for generating weekly work summaries from:
- GitHub activity exports
- Local exported AI conversations
- Optional employee correction notes
docs/plans/2026-03-10-weekly-summary-design.md- Approved product and prompt design
docs/plans/2026-03-10-weekly-summary-implementation.md- Task-by-task implementation plan
docs/templates/weekly-summary-report.md- Human-readable Markdown weekly summary template
docs/templates/weekly-summary-detail.csv- Structured detail table template
prompts/weekly-summary-system-prompt.md- Main AI instruction block
prompts/weekly-summary-input-template.md- Standard raw input wrapper
examples/weekly-summary/github-activity-example.md- Example GitHub source records
examples/weekly-summary/conversation-example.md- Example AI conversation source records
scripts/README.md- Reserved entry points for future automation
scripts/build-weekly-summary-input.ps1- Build one normalized raw input file from GitHub, conversation, and manual note exports
scripts/build-weekly-summary-package.ps1- Build one complete AI-ready package that includes the system prompt, raw input, and output templates
scripts/normalize-github-export.ps1- Convert raw GitHub CSV exports into the standard
[GitHub]record format
- Convert raw GitHub CSV exports into the standard
scripts/normalize-conversation-export.ps1- Convert raw conversation CSV exports into the standard
[Conversation]record format
- Convert raw conversation CSV exports into the standard
scripts/run-weekly-summary-pipeline.ps1- Run the full local pipeline from raw CSV exports to the final AI-ready package
scripts/collect-private-github-local.ps1- Collect private local git commits into the raw GitHub CSV schema
scripts/merge-github-activity.ps1- Merge local git activity with GitHub API activity while deduplicating commits
scripts/run-weekly-summary-private-pipeline.ps1- Run the private-enhanced local pipeline from local git repos to the final AI-ready package
scripts/collect-private-github-api.ps1- Collect private GitHub pull requests and pull request reviews by using
GITHUB_TOKEN
- Collect private GitHub pull requests and pull request reviews by using
scripts/generate-weekly-summary-report.ps1- Automatically generate final Markdown weekly summary and structured detail CSV from merged activity
- Collect the employee's weekly GitHub activity and normalize it to the example record format.
- Export the employee's AI conversation log to plain text or Markdown and normalize it to the example record format.
- Add optional employee notes for missing context, corrected completion times, and work not visible in GitHub.
- Paste the standardized input into
prompts/weekly-summary-input-template.md. - Use the full text from
prompts/weekly-summary-system-prompt.mdas the AI system prompt. - Ask the AI to produce:
- A Markdown weekly summary
- A structured detail table
- A meeting discussion outline
- Compare the AI output against the two templates in
docs/templates. - Ask the employee to confirm any item marked as pending employee confirmation.
Each work item should preserve two time fields:
system_event_time- GitHub event time or conversation timestamp
actual_completion_time- Employee-confirmed completion time when available
Use time_confidence to record certainty:
highmediumlow
Do not invent completion times. Leave the field blank and mark low confidence when evidence is missing.
The final weekly summary should:
- Group records by work item, not by commit
- Surface high-priority items
- Surface discussion-needed items
- Surface resource escalation needs
- Be readable by a direct manager without opening raw source logs
The structured detail table should:
- Keep one row per work item
- Preserve source traceability through
github_refsandconversation_refs - Match the field names used by the prompt contract
Version 1 is intentionally document-first:
- No Feishu integration
- No required GitHub API access
- No required scheduled automation
This keeps the prompt and schema stable before building scripts.
When scripts are added later, they must preserve:
- The raw input schema from
prompts/weekly-summary-input-template.md - The field names in
docs/templates/weekly-summary-detail.csv - The output sections defined by
prompts/weekly-summary-system-prompt.md
Automation should extend this workflow, not redefine it.
Use the script below to generate one raw input file that matches the prompt contract:
powershell -ExecutionPolicy Bypass -File .\scripts\normalize-github-export.ps1 `
-InputFile .\tests\fixtures\raw-github-export.csv `
-OutputFile .\tests\output\normalized-github-export.md
powershell -ExecutionPolicy Bypass -File .\scripts\normalize-conversation-export.ps1 `
-InputFile .\tests\fixtures\raw-conversation-export.csv `
-OutputFile .\tests\output\normalized-conversation-export.md
powershell -ExecutionPolicy Bypass -File .\scripts\build-weekly-summary-input.ps1 `
-EmployeeName "Alice Zhang" `
-StartDate "2026-03-09" `
-EndDate "2026-03-15" `
-GitHubFile .\tests\output\normalized-github-export.md `
-ConversationFile .\tests\output\normalized-conversation-export.md `
-ManualNotesFile .\tests\fixtures\manual-notes-example.md `
-OutputFile .\tests\output\generated-weekly-summary-input.mdUse the script below to generate one complete AI package after the raw input file exists:
powershell -ExecutionPolicy Bypass -File .\scripts\build-weekly-summary-package.ps1 `
-RawInputFile .\tests\output\generated-weekly-summary-input.md `
-OutputFile .\tests\output\generated-weekly-summary-package.mdOr run the whole local pipeline in one command:
powershell -ExecutionPolicy Bypass -File .\scripts\run-weekly-summary-pipeline.ps1 `
-EmployeeName "Alice Zhang" `
-StartDate "2026-03-09" `
-EndDate "2026-03-15" `
-GitHubCsvFile .\tests\fixtures\raw-github-export.csv `
-ConversationCsvFile .\tests\fixtures\raw-conversation-export.csv `
-ManualNotesFile .\tests\fixtures\manual-notes-example.md `
-OutputDirectory .\tests\output\pipelineIf you want to include private local repositories, use the private-enhanced pipeline:
powershell -ExecutionPolicy Bypass -File .\scripts\run-weekly-summary-private-pipeline.ps1 `
-EmployeeName "Guanming Zhu" `
-StartDate "2026-03-03" `
-EndDate "2026-03-10" `
-RepoPaths .\tests\output\private-pipeline-repo `
-AuthorNames "Guanming Zhu" `
-AuthorEmails "sam@example.com" `
-GitHubLogin "SSSSamZhu" `
-ConversationCsvFile .\tests\fixtures\empty-conversation-export.csv `
-ManualNotesFile .\tests\fixtures\manual-notes-example.md `
-OutputDirectory .\tests\output\private-pipelineThis private-enhanced path currently:
- Collects local private git commits from the repo paths you provide
- Can also collect private GitHub PR and review activity when
GITHUB_TOKENis available - Merges local and API activity into the existing GitHub CSV shape
- Reuses the existing normalization and AI-package scripts
- Automatically generates final Markdown and detail outputs
If you want private PR and review activity, set the token in the same shell first:
$env:GITHUB_TOKEN="your_read_only_token"Then pass explicit repo list values such as SSSSamZhu/SomniaAPP to the private-enhanced pipeline.