Token导航 LogoToken导航TokenDH.com
研究检索执行命令github未标认证来源可访问许可证需确认审计提醒

weekly-report每周报告

Agent Skill

weekly-report 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

315

周安装

13

GitHub Stars

11

下载量

103
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:weekly-report(每周报告)
来源仓库:https://github.com/niracler/skill
仓库路径:skills/weekly-report
安装命令:
npx skills add https://github.com/niracler/skill --skill weekly-report
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/niracler/skill --skill weekly-report

简介

用于查找、检索和筛选相关信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词快速定位结果。
  • 通过 npx 命令安装,具体用法需结合原始 README 进一步确认。
  • 使用前应确认权限范围、维护状态及是否触发联网或命令执行。
  • weekly-report 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Weekly Report

软件研发周报生成助手。自动扫描 ~/code/ 下所有项目的 schedule YAML 和 git log, 结合前几周周报做对比,生成结构化的三段式周报,写入 Obsidian 日记。

Prerequisites

ToolTypeRequiredInstall
gitcliYesbrew install git
reminders-clicliYesbrew install keith/formulae/reminders-cli
macOS CalendarsystemYesBuilt-in, access via osascript
ghcliNobrew install gh then gh auth login — for GitHub PR/Issue data
yunxiaoskillNoFor 云效 MR/Task/Bug data (invoke via Skill tool)

Path Dependencies

PathPurposeRequired
~/code/*/Monorepo workspaces (git repos + schedule YAMLs)Yes
~/code/*/planning/schedules/*.yamlProject schedule definitionsNo (skip projects without schedule)
~/code/*/repos/*/Sub-repos within each monorepo workspaceNo (scanned automatically if present)
Obsidian daily notes directoryDaily diary files with Work Log entries + report outputYes

The Obsidian vault path is auto-detected by scanning ~/Library/Mobile Documents/iCloud~md~obsidian/. If not found, ask the user.

Do NOT proactively verify tools or paths on skill load. If a command fails due to a missing tool, skip that data source and continue with what's available.

Workflow Overview

  1. Confirm → 2. Find previous → 3. Collect data (parallel) → 4. Draft → 5. Review + write → 6. Schedule next week
┌──────────────────────────────────────────────────────────────────┐
│                weekly-report 完整流程(~20min)                    │
└──────────────────────────────────────────────────────────────────┘

  ┌──────────────┐
  │ 用户触发周报  │
  └──────┬───────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 1. 确认周期 + 定位文件    (~1min)   │
  └──────┬─────────────────────────────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 2. 查找前几周周报         (~1min)   │
  │    提取上周「下周工作计划」         │
  └──────┬─────────────────────────────┘
         │
         ▼
  ┌─────────────────────────────────────────────────┐
  │ 3. 并行数据收集(subagent)          (~3-5min)   │
  │    ┌─ 本周日记 Work Log(各工作日)              │
  │    ├─ Schedule YAML(本周 + 下周模块)           │
  │    ├─ Git log(~/code/*/ 全扫描)                │
  │    ├─ GitHub PR/Issue(gh CLI)                  │
  │    └─ 云效 MR/Task/Bug(yunxiao skill)          │
  └──────┬──────────────────────────────────────────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 4. 交叉比对 + 生成草稿    (~3min)   │
  │    上周计划 vs 本周实际             │
  └──────┬─────────────────────────────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 5. 用户审阅 + 修改        (~5min)   │
  │    展示草稿 → 用户调整 → 写入日记  │
  └──────┬─────────────────────────────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 6. 创建下周日程 + 提醒    (~3min)   │
  │    Calendar time block             │
  │    Reminders 任务列表              │
  └──────┬─────────────────────────────┘
         │
         ▼
      ┌──────┐
      │ 完成  │
      └──────┘

Step 1: Confirm Period and Target File

  • Report period: Current week's Monday through Friday
  • Target file: The day's daily note (usually last workday of the week)
  • Write location: Under ## 2 Work Log, as ### 软件研发周报(M/D - M/D)
  • Diary path: Scan for Obsidian vault in ~/Library/Mobile Documents/iCloud~md~obsidian/ or ask the user if not found

If today is Saturday/Sunday, default to the previous Friday's daily note. Confirm with the user before proceeding.

Step 2: Find Previous Reports

Scan recent daily notes (previous 14 days) for the heading pattern ### 软件研发周报.

From the most recent previous report, extract:

  1. 「下周工作计划」section → baseline for accountability check (what was planned vs what happened)
  2. Format and style → maintain consistency (project groupings, level of detail, bold patterns)

If no previous report found, skip comparison and proceed — this is normal for the first report.

Step 3: Parallel Data Collection

Launch subagents concurrently. The five data sources are independent — run as many in parallel as possible. If any source fails or is unavailable, skip it and continue.

3a. Daily Notes (Work Log)

Read the daily notes for each workday in the report period (Monday through Friday). Extract content under ## 2 Work Log from each day's note.

This is the richest data source — daily work logs often contain context, decisions, and details that git commits and PR titles don't capture. Prioritize this content when writing the report.

3b. Schedule YAML Scan

Scan ~/code/*/planning/schedules/*.yaml — same directory structure as code-sync (~/code/*/ monorepo workspaces).

For each YAML found:

  1. Read project, title, timeline.start, phases, modules
  2. Calculate the current week number: ceil((today - timeline.start) / 7)
  3. Extract modules where weeks includes current week → this week's work
  4. Extract modules where weeks includes next week → next week's plan
  5. Count status: done modules in current phase → progress fraction (e.g., 4/6)

3c. Git Log Collection

Scan ~/code/*/ and ~/code/*/repos/*/ for git repos (same candidates as code-sync's scan.sh pattern), then for each:

git log --oneline --since="{monday}" --until="{saturday}" --author="{user}" --all

Where {user} is from git config user.name.

Group commits by workspace → repo. This supplements the daily notes — useful for catching work the user forgot to log in their diary.

3d. GitHub Activity (if gh available)

# PRs authored this week
gh search prs --author=@me --created="{monday}..{saturday}" --json repository,title,number,state,url

# Issues authored/assigned this week
gh search issues --author=@me --created="{monday}..{saturday}" --json repository,title,number,state,url

Include merged PRs, open PRs, and closed issues in the report. PR numbers and titles provide concrete references for the boss.

3e. 云效 Activity (if yunxiao skill available)

Spawn a subagent to invoke yunxiao skill via Skill tool:

Agent tool:
- subagent_type: general-purpose
- prompt: |
    Invoke the yunxiao skill to query work activity from {monday} to {friday}.
    Get: MRs authored (merged + open), Tasks assigned (modified this week),
    Bugs assigned (modified this week).
    Return: list of items with identifier, title, status, and dates.

MR numbers (e.g., MR#67) and task identifiers (e.g., YWQO-4) add traceability to the report.

Data Source Priority

When the same work appears in multiple sources, merge intelligently:

PrioritySourceStrength
1Daily notesMost context, user's own words, decisions and reasoning
2Schedule YAMLStructured progress, phase tracking, module status
3GitHub / 云效Concrete references (PR#, MR#, issue#, task ID)
4Git logCatch unreported work, verify claims

The daily notes provide the narrative; schedule YAML provides structure; GitHub/云效 provide traceability; git log fills gaps.

Data Source Degradation

Source unavailableBehavior
Daily notes missing for some daysUse available days, note gaps
No schedule YAML for a projectInclude project based on git/daily notes alone, omit progress fraction
gh not installed or auth failedSkip GitHub data, note "GitHub 数据未获取"
yunxiao skill unavailableSkip 云效 data, note "云效数据未获取"
Git log returns nothingProject may have had non-code work (meetings, design) — check daily notes
All remote sources failProceed with daily notes + git log only

Step 4: Cross-Reference and Draft

Accountability Check (when previous report exists)

Compare last week's 「下周工作计划」 against this week's actual output:

Last week plannedThis week statusHow to handle
CompletedDoneInclude in 本周总结
Partially doneIn progressNote progress in 本周总结, carry forward to 下周计划
Not startedMissedFlag in 其他事项 with reason if known
Unplanned work doneNewAdd to 本周总结 as new item

Project Grouping

Do not hardcode groups. Instead, derive grouping from:

  1. Previous report (if exists): reuse the same project display names and grouping
  2. Schedule YAML title field: use as display name
  3. Common sense merging: repos under the same ~/code/<workspace>/ that share a schedule can be grouped together

Omit projects with zero activity this week.

Draft Generation

Generate three sections following report-template.md.

本周工作总结:

  • Group by project, each header includes phase progress (e.g., 进度 4/6) when available
  • Each project 1-2 bullets max, compress into core deliverables
  • Each bullet: **bold key phrase**: + business-language description
  • Use domain numbers (接口数、页面数、参数个数), NOT internal numbers (commit 数、PR#)
  • Skip entirely: CI/CD changes, version bumps, SDK sub-releases, upstream open-source contributions, internal process improvements (CLAUDE.md, openspec schema)
  • sunlite and sylsmart are separate projects — never merge them

下周工作计划:

  • Source from schedule YAML next-week modules + carry-forward items
  • Include time estimates when known (e.g., (2.5 天))
  • Each bullet: **bold key phrase**: + expected outcome in business terms
  • sunlite and sylsmart must have separate headers with separate time allocations

其他事项:

  • Carry-forward items from last week's plan that didn't get done, with brief reason
  • Handoffs, blockers, cross-team coordination
  • Keep it concise — no technical explanations in parentheses

Step 5: User Review and Write

  1. Present the full draft
  2. Wait for user feedback
  3. Apply changes — important: if user doesn't mention an item, it's fine as-is, do NOT remove it
  4. Write final version to the daily note under ## 2 Work Log

Step 6: Schedule Next Week

After the report is written, parse the 「下周工作计划」 section and create Calendar events and Reminders for next week. This closes the loop — what you wrote in the plan becomes actionable items on your schedule.

Parse Plan Items

From each bullet in 下周工作计划, extract:

  • Task name: the bold key phrase
  • Project: the project header it belongs to
  • Time estimate: if (N 天) is specified

Create Reminders

First check available lists with reminders show-lists, then create items in an appropriate list (prefer "提醒" or the first available work-related list):

reminders add "提醒" "{project}: {task name}" --due-date "next monday"

If a task has a specific day mentioned (e.g., "周三前完成"), use that date instead.

Create Calendar Time Blocks (optional)

If time estimates are available per project, suggest Calendar time blocks. Calculate actual next-week dates (not relative offsets) to ensure accuracy:

# Example: create a time block for next Monday (2026-03-16) 9:00-17:00
osascript -e '
tell application "Calendar"
    tell calendar "工作"
        set startDate to date "2026年3月16日 09:00:00"
        set endDate to date "2026年3月16日 17:00:00"
        make new event with properties {summary:"sylsmart: auth 接口适配", start date:startDate, end date:endDate}
    end tell
end tell'

Defaults

  • Calendar name: "Work " (note trailing space) (with trailing space — verify with osascript -e 'tell application "Calendar" to get name of calendars')
  • Time block: 9:30-11:45 (morning focus block, not full day)
  • No all-day events: Always create timed events, never all-day
  • Reminders list: 提醒

Date calculation

Use current date with day offsets to calculate next week's dates. Do not use hardcoded date strings — they cause locale-dependent parse errors on macOS.

set baseDate to current date
set time of baseDate to 0
set nextMon to baseDate + ({offset} * days)
set startTime to nextMon + (9 * hours) + (30 * minutes)
set endTime to nextMon + (11 * hours) + (45 * minutes)

Present the proposed schedule to the user first — only create after confirmation:

下周日程建议(Work 日历,9:30-11:45):
  周一 3/23: sylsmart - xxx(1 天)
  周二-周三 3/24-3/25: sunlite - xxx(2 天)
  周四 3/26: HA 集成 - xxx(1 天)
  周五 3/27: buffer / 周报

确认创建到 Calendar 和 Reminders 吗?

Important Behaviors

Do not remove items the user didn't mention. During review, the user will only call out things that need changing. Silence means approval. This is a lesson learned from real usage: removing "good" items to make room for user corrections breaks the report.

Business language, not technical jargon. The boss does NOT read code. Write what was done and what it enables, using domain terms (接口、页面、配置参数、用户可以...). Never use: implementation details (Router Factory, Playwright E2E, migration downgrade), internal process names (CLAUDE.md, openspec review schema), version bumps (v0.2.0→v0.2.1), commit/PR counts, or CI/CD details. These are valuable data for collection but must be translated to business outcomes in the final report.

Concrete with business numbers. Use domain-relevant numbers: 14 个接口, 17 个页面, 4 个配置参数, 18 个待确认问题. NOT: 13 commits, PR#78, 91% coverage.

Match previous report style. If a previous report exists, mirror its voice, detail level, and formatting choices. The goal is consistency across weeks so the boss sees a coherent narrative, not a different writing style each time.

Common Issues

IssueFix
No daily notes foundVerify Obsidian vault path, check iCloud sync status
Schedule YAML parse errorValidate YAML syntax, check timeline.start date format
Previous report not foundNormal for first week — skip accountability check
gh search returns 0 resultsCheck date range format, verify gh auth status
Calendar "工作" not foundRun osascript -e 'tell application "Calendar" to get name of calendars' to list available calendars, use an existing one
Reminders list not foundRun reminders show-lists and use an available list
Git log shows upstream commitsFilter by --author to exclude upstream noise

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.68%
按下载量换算39

Claude

31.38%
按下载量换算32

Cursor

19.26%
按下载量换算20

Gemini CLI

9.17%
按下载量换算9

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

可疑

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/niracler/skill --skill weekly-report 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills