@adonis0123/weekly-report 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "weekly-report",
3
+ "version": "1.0.6",
4
+ "package": "@adonis0123/weekly-report",
5
+ "files": {
6
+ "references": "references/",
7
+ "src": "src/"
8
+ },
9
+ "targets": {
10
+ "claude-code": {
11
+ "enabled": true,
12
+ "paths": {
13
+ "global": ".claude/skills",
14
+ "project": ".claude/skills"
15
+ }
16
+ },
17
+ "cursor": {
18
+ "enabled": true,
19
+ "paths": {
20
+ "global": ".cursor/skills",
21
+ "project": ".cursor/skills"
22
+ }
23
+ },
24
+ "windsurf": {
25
+ "enabled": false,
26
+ "paths": {
27
+ "global": ".windsurf/skills",
28
+ "project": ".windsurf/skills"
29
+ }
30
+ },
31
+ "aider": {
32
+ "enabled": false,
33
+ "paths": {
34
+ "global": ".aider/skills",
35
+ "project": ".aider/skills"
36
+ }
37
+ },
38
+ "custom": {
39
+ "enabled": false,
40
+ "paths": {
41
+ "global": ".ai-skills",
42
+ "project": ".ai-skills"
43
+ }
44
+ }
45
+ }
46
+ }
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Agent Skill NPM Contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,453 @@
1
+ # Agent Skill NPM Boilerplate
2
+
3
+ > **Distribute AI agent skills like any other npm package**
4
+
5
+ AI coding tools (Claude Code, Cursor, Windsurf) support custom "skills" - reusable instructions that extend agent capabilities. But distributing them means manual file copying, no versioning, and painful updates.
6
+
7
+ **This template lets you publish skills to npm:**
8
+
9
+ ```bash
10
+ # Install
11
+ npm install -g @your-org/git-commit-helper
12
+
13
+ # Update
14
+ npm update -g @your-org/git-commit-helper
15
+
16
+ # It just works - installs to ~/.claude/skills/, ~/.cursor/skills/, etc.
17
+ ```
18
+
19
+ **Why this matters:** Skills become proper software artifacts with semantic versioning, dependency management, private registries, and global discovery. Same infrastructure that distributes React and Express.
20
+
21
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
22
+ [![GitHub Template](https://img.shields.io/badge/Template-Use%20This-brightgreen)](https://github.com/YOUR-USERNAME/agent-skill-npm-boilerplate/generate)
23
+
24
+ ---
25
+
26
+ **Quick start:** Fork this template, edit `SKILL.md`, run `npm publish`. Your skill is now installable worldwide.
27
+
28
+ **Supports:** [Claude Code](https://code.claude.com/docs/en/skills), Cursor, Windsurf, and any tool following similar skill patterns. See [MULTI-TOOL-SUPPORT.md](MULTI-TOOL-SUPPORT.md).
29
+
30
+ ## 💡 Why npm for Skills?
31
+
32
+ Manual skill distribution requires downloading files, copying to `~/.claude/skills/`, and repeating for every update. No versioning, no dependency management, no discovery.
33
+
34
+ **npm solves this:**
35
+
36
+ ```bash
37
+ # Install/update/uninstall with standard commands
38
+ npm install -g @your-org/skill-name
39
+ npm update -g @your-org/skill-name
40
+ npm uninstall -g @your-org/skill-name
41
+
42
+ # Semantic versioning for controlled updates
43
+ npm install @your-org/skill@^2.1.0
44
+
45
+ # Project-specific skills (version-locked, committed to git)
46
+ npm install --save-dev @your-org/skill-name
47
+ ```
48
+
49
+ **Core benefits:**
50
+ - **Version control** - Semantic versioning, upgrade/rollback easily
51
+ - **Global distribution** - Publish once, available worldwide via npm's CDN
52
+ - **Discoverability** - Searchable on npmjs.com
53
+ - **Enterprise ready** - Private registries for internal skills
54
+ - **Ecosystem integration** - Works with CI/CD, monorepos, existing tooling
55
+
56
+ Skills become first-class software artifacts, using the same infrastructure as React, Express, and millions of other packages.
57
+
58
+ ## ✨ Features
59
+
60
+ - ✅ **Official Specification**: Fully compliant with Claude Code skills format
61
+ - ✅ **Multi-Tool Support**: Install to Claude Code, Cursor, Windsurf, and more! (See [Multi-Tool Support](MULTI-TOOL-SUPPORT.md))
62
+ - ✅ **Smart Installation**: Auto-detects global vs project-level installation
63
+ - ✅ **Progressive Disclosure**: Supports main SKILL.md + reference files
64
+ - ✅ **Lifecycle Management**: Install, update, uninstall scripts included
65
+ - ✅ **Best Practices**: Follows all recommended patterns from official docs
66
+ - ✅ **Ready to Publish**: Just customize and publish to npm
67
+
68
+ ## 🚀 Quick Start
69
+
70
+ ### Option 1: Use as GitHub Template (Recommended)
71
+
72
+ This is a **GitHub Template Repository**. The easiest way to use it:
73
+
74
+ 1. **Click the "Use this template" button** at the top of this repository (or [click here](https://github.com/YOUR-USERNAME/agent-skill-npm-boilerplate/generate))
75
+ 2. **Name your new repository** (e.g., `my-awesome-skill`)
76
+ 3. **Clone your new repository**:
77
+ ```bash
78
+ git clone https://github.com/YOUR-USERNAME/my-awesome-skill.git
79
+ cd my-awesome-skill
80
+ ```
81
+ 4. **Customize your skill** (see [Customization Guide](#-customization-guide))
82
+ 5. **Publish to npm**:
83
+ ```bash
84
+ npm login
85
+ npm publish --access public
86
+ ```
87
+
88
+ ### Option 2: Clone Directly
89
+
90
+ ```bash
91
+ # Clone this repository
92
+ git clone https://github.com/YOUR-USERNAME/agent-skill-npm-boilerplate.git my-skill
93
+ cd my-skill
94
+
95
+ # Remove git history and start fresh
96
+ rm -rf .git
97
+ git init
98
+
99
+ # Install dependencies (for development)
100
+ npm install
101
+
102
+ # Customize your skill
103
+ ```
104
+
105
+ ## 📁 Project Structure
106
+
107
+ ```
108
+ agent-skill-npm-boilerplate/
109
+ ├── package.json # npm package configuration
110
+ ├── SKILL.md # Main skill definition (REQUIRED)
111
+ ├── .claude-skill.json # Installation configuration
112
+ ├── install-skill.js # Installation script
113
+ ├── uninstall-skill.js # Uninstallation script
114
+ ├── reference.md # Detailed documentation (optional)
115
+ ├── examples.md # Usage examples (optional)
116
+ ├── scripts/ # Utility scripts (optional)
117
+ │ ├── setup.sh # Post-install setup
118
+ │ └── config.json.example # Configuration template
119
+ ├── README.md # This file (customize for your skill)
120
+ ├── LICENSE # License file
121
+ └── .gitignore # Git ignore rules
122
+ ```
123
+
124
+ ## 🎨 Customization Guide
125
+
126
+ ### Step 1: Update package.json
127
+
128
+ Replace the following placeholders:
129
+
130
+ ```json
131
+ {
132
+ "name": "@your-org/your-skill-name", // Change this
133
+ "version": "1.0.0",
134
+ "description": "YOUR SKILL DESCRIPTION", // Change this
135
+ "author": "YOUR NAME", // Change this
136
+ "repository": {
137
+ "url": "YOUR-REPO-URL" // Change this
138
+ }
139
+ }
140
+ ```
141
+
142
+ **About npm scopes:**
143
+ - Use a scope (`@your-org/skill-name`) if you want to organize skills under your organization
144
+ - Use no scope (`skill-name`) for standalone packages
145
+ - Popular scopes: `@your-company`, `@your-username`, or custom like `@claude-skills`
146
+ - Scopes require configuration: `npm config set @your-org:registry https://registry.npmjs.org/`
147
+
148
+ ### Step 2: Update SKILL.md
149
+
150
+ Edit `SKILL.md` and replace placeholders:
151
+
152
+ ```yaml
153
+ ---
154
+ name: your-skill-name # Must match directory name
155
+ description: Your skill description here. Use when [scenarios].
156
+ allowed-tools: Read, Bash # Tools your skill can use
157
+ ---
158
+ ```
159
+
160
+ ### Step 3: Update .claude-skill.json
161
+
162
+ ```json
163
+ {
164
+ "name": "your-skill-name", // Must match SKILL.md name
165
+ "package": "@your-org/your-skill-name"
166
+ }
167
+ ```
168
+
169
+ ### Step 4: Add Your Logic
170
+
171
+ Edit the "Instructions" section in `SKILL.md`:
172
+
173
+ ```markdown
174
+ ## Instructions
175
+
176
+ When the user [describes scenario]:
177
+
178
+ 1. **Step 1**: Do something
179
+ 2. **Step 2**: Do something else
180
+ 3. **Step 3**: Complete the task
181
+ ```
182
+
183
+ ### Step 5: Test Locally
184
+
185
+ ```bash
186
+ # Test the installation script
187
+ node install-skill.js
188
+
189
+ # Check if installed correctly
190
+ ls -la ~/.claude/skills/your-skill-name/
191
+ cat ~/.claude/skills/your-skill-name/SKILL.md
192
+
193
+ # Open Claude Code and verify
194
+ # Ask Claude: "What skills are available?"
195
+ ```
196
+
197
+ ### Step 6: Publish to npm
198
+
199
+ ```bash
200
+ # Login to npm (first time only)
201
+ npm login
202
+
203
+ # Publish your skill
204
+ npm publish --access public
205
+ ```
206
+
207
+ ## 📖 Skill Development Best Practices
208
+
209
+ ### 1. Write Clear Descriptions
210
+
211
+ The `description` field in SKILL.md is crucial - it determines when Claude uses your skill:
212
+
213
+ ```yaml
214
+ # ❌ Bad: Too vague
215
+ description: Helps with files
216
+
217
+ # ✅ Good: Specific and includes trigger keywords
218
+ description: Analyzes TypeScript files for type errors. Use when checking types, debugging TypeScript issues, or validating .ts files.
219
+ ```
220
+
221
+ ### 2. Use Progressive Disclosure
222
+
223
+ Keep SKILL.md under 500 lines. Put detailed content in separate files:
224
+
225
+ ```markdown
226
+ # In SKILL.md
227
+ For complete API reference, see [reference.md](reference.md)
228
+ For examples, see [examples.md](examples.md)
229
+ ```
230
+
231
+ Claude will only load these files when needed, saving context.
232
+
233
+ ### 3. Limit Tool Access
234
+
235
+ Use `allowed-tools` to restrict what your skill can do:
236
+
237
+ ```yaml
238
+ # Read-only skill
239
+ allowed-tools: Read, Grep, Glob
240
+
241
+ # Can read and execute (but not modify files)
242
+ allowed-tools: Read, Bash
243
+
244
+ # Full access
245
+ allowed-tools: Read, Edit, Write, Bash
246
+ ```
247
+
248
+ ### 4. Include Examples
249
+
250
+ Show concrete examples in your SKILL.md:
251
+
252
+ ```markdown
253
+ ## Examples
254
+
255
+ ### Example 1: Basic Usage
256
+
257
+ User asks: "Check my commit message"
258
+
259
+ Claude will:
260
+ 1. Read the commit message
261
+ 2. Validate format
262
+ 3. Suggest improvements
263
+ ```
264
+
265
+ ## 📦 Installation Behavior
266
+
267
+ ### Global Installation (Recommended)
268
+
269
+ ```bash
270
+ npm install -g @your-org/your-skill
271
+ ```
272
+
273
+ Installs to: `~/.claude/skills/your-skill-name/`
274
+
275
+ Available: Across all projects for the current user
276
+
277
+ ### Project-Level Installation
278
+
279
+ ```bash
280
+ npm install --save-dev @your-org/your-skill
281
+ ```
282
+
283
+ Installs to: `.claude/skills/your-skill-name/`
284
+
285
+ Available: Only in this project (can be committed to git)
286
+
287
+ ### Priority Order
288
+
289
+ When multiple skills exist:
290
+ 1. Enterprise (managed settings)
291
+ 2. Personal (`~/.claude/skills/`)
292
+ 3. Project (`.claude/skills/`)
293
+ 4. Plugin
294
+
295
+ ## How Installation and Uninstallation Work
296
+
297
+ This boilerplate includes automatic installation and uninstallation scripts that run when users install or remove your skill package via npm.
298
+
299
+ ### Installation Process
300
+
301
+ When a user runs `npm install` (or `npm install -g`) on your skill package:
302
+
303
+ 1. **Target Detection**: The script identifies which AI coding tools are configured for installation based on `.claude-skill.json`
304
+ 2. **Scope Prefix Handling**: Extracts the actual skill name by removing any npm scope prefix (e.g., `@your-org/skill-name` becomes `skill-name`)
305
+ 3. **Path Resolution**: For each target tool, it determines the appropriate installation location:
306
+ - Global installation: `~/{tool-path}/skills/` (user's home directory)
307
+ - Project installation: `./{tool-path}/skills/` (project root directory)
308
+ 4. **Directory Setup**: Creates the skill directory using the skill name (without npm scope prefix)
309
+ 5. **File Copying**: Copies essential files:
310
+ - `SKILL.md` (required) - The main skill definition
311
+ - Any additional files specified in `.claude-skill.json`
312
+ 6. **Compatibility Cleanup**: Removes any legacy installation paths for backward compatibility
313
+ 7. **Manifest Update**: Updates the `.skills-manifest.json` to track installed skills
314
+ 8. **Post-install Hooks**: Runs any custom setup scripts defined in `.claude-skill.json`
315
+
316
+ ### Uninstallation Process
317
+
318
+ When a user runs `npm uninstall` (or `npm uninstall -g`) on your skill package:
319
+
320
+ 1. **Target Detection**: Identifies which AI coding tools were configured for the skill
321
+ 2. **Scope Prefix Handling**: Uses both the skill name (without scope prefix) and full package name (with scope prefix) for compatibility
322
+ 3. **Path Resolution**: Determines the appropriate uninstallation locations
323
+ 4. **Directory Removal**: Removes the skill directory from all configured targets:
324
+ - Path using skill name (primary location)
325
+ - Path with full package name (legacy location for compatibility)
326
+ 5. **Manifest Update**: Removes the skill entry from `.skills-manifest.json`
327
+ 6. **Best-effort Cleanup**: Continues even if some steps fail to ensure clean removal
328
+
329
+ ## 🔧 Advanced Features
330
+
331
+ ### Custom Hooks
332
+
333
+ Run scripts during installation:
334
+
335
+ ```json
336
+ // .claude-skill.json
337
+ {
338
+ "hooks": {
339
+ "postinstall": "bash scripts/setup.sh"
340
+ }
341
+ }
342
+ ```
343
+
344
+ ### Multiple Files
345
+
346
+ Support rich documentation:
347
+
348
+ ```json
349
+ // .claude-skill.json
350
+ {
351
+ "files": {
352
+ "reference.md": "reference.md",
353
+ "examples.md": "examples.md",
354
+ "scripts": "scripts/"
355
+ }
356
+ }
357
+ ```
358
+
359
+ ### Configuration
360
+
361
+ Let users customize your skill:
362
+
363
+ ```bash
364
+ # scripts/setup.sh
365
+ cat > scripts/config.json <<EOF
366
+ {
367
+ "option1": "default",
368
+ "option2": true
369
+ }
370
+ EOF
371
+ ```
372
+
373
+ ## 🐛 Troubleshooting
374
+
375
+ ### Skill Not Appearing
376
+
377
+ ```bash
378
+ # Check installation location
379
+ ls -la ~/.claude/skills/
380
+
381
+ # Verify SKILL.md format
382
+ cat ~/.claude/skills/your-skill/SKILL.md
383
+
384
+ # Check manifest
385
+ cat ~/.claude/skills/.skills-manifest.json
386
+ ```
387
+
388
+ ### Permission Errors
389
+
390
+ ```bash
391
+ # Fix npm permissions (recommended)
392
+ mkdir ~/.npm-global
393
+ npm config set prefix '~/.npm-global'
394
+ export PATH=~/.npm-global/bin:$PATH
395
+
396
+ # Or use sudo (not recommended)
397
+ sudo npm install -g @your-org/your-skill
398
+ ```
399
+
400
+ ### Skill Not Triggering
401
+
402
+ - Make sure the `description` includes keywords users would naturally say
403
+ - Test by asking Claude directly: "Use the your-skill-name skill to..."
404
+
405
+ ## 📚 Resources
406
+
407
+ - [Claude Code Skills Documentation](https://code.claude.com/docs/en/skills)
408
+ - [Skills Best Practices](https://docs.claude.com/en/docs/agents-and-tools/agent-skills/best-practices)
409
+ - [npm Package Publishing Guide](https://docs.npmjs.com/packages-and-modules/contributing-packages-to-the-registry)
410
+ - [Conventional Commits](https://www.conventionalcommits.org/)
411
+
412
+ ## 🤝 Contributing
413
+
414
+ Contributions are welcome! Please:
415
+
416
+ 1. Fork this repository
417
+ 2. Create a feature branch
418
+ 3. Make your changes
419
+ 4. Submit a pull request
420
+
421
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for details.
422
+
423
+ ## 📄 License
424
+
425
+ This template is [MIT licensed](LICENSE). Skills you create from this template can use any license you choose.
426
+
427
+ ## 💡 Examples
428
+
429
+ Skills built with this template:
430
+
431
+ - `@your-org/git-commit-helper` - Generate conventional commit messages
432
+ - `@your-org/code-reviewer` - Automated code review assistance
433
+ - `@your-org/test-generator` - Generate test cases from code
434
+
435
+ *(Add your skill here after publishing!)*
436
+
437
+ ## 🙋 Support
438
+
439
+ - **Issues**: [GitHub Issues](https://github.com/yourusername/agent-skill-npm-boilerplate/issues)
440
+ - **Discussions**: [GitHub Discussions](https://github.com/yourusername/agent-skill-npm-boilerplate/discussions)
441
+ - **Documentation**: [Wiki](https://github.com/yourusername/agent-skill-npm-boilerplate/wiki)
442
+
443
+ ## 🌟 Show Your Support
444
+
445
+ If you find this template helpful:
446
+ - ⭐ Star this repository
447
+ - 🐛 Report bugs
448
+ - 💡 Suggest features
449
+ - 📝 Improve documentation
450
+
451
+ ---
452
+
453
+ **Made with ❤️ for the Claude Code community**
package/SKILL.md ADDED
@@ -0,0 +1,174 @@
1
+ ---
2
+ name: weekly-report
3
+ description: 自动读取 Git 提交记录生成周报。用于生成工作周报、项目总结、团队协作汇报。支持多仓库汇总。
4
+ allowed-tools: Read, Write, Bash(git:*), Bash(python:*)
5
+ metadata:
6
+ author: adonis
7
+ version: "1.0.0"
8
+ ---
9
+
10
+ # 周报生成技能
11
+
12
+ 自动读取 Git 提交记录,按项目分组生成结构化周报。
13
+
14
+ ## 功能特性
15
+
16
+ - 自动读取 Git 提交记录
17
+ - 支持多仓库汇总
18
+ - 自动识别当前用户 (`git config user.name`)
19
+ - 按项目分组,生成结构化周报
20
+ - 过滤琐碎提交(typo、merge、format 等)
21
+ - 支持添加补充说明
22
+ - 周报统一存储在 `~/.weekly-reports/` 目录
23
+
24
+ ## 使用方式
25
+
26
+ ### 基本用法
27
+
28
+ 在任意 Git 项目目录中执行:
29
+
30
+ ```
31
+ /weekly-report
32
+ ```
33
+
34
+ ### 执行流程
35
+
36
+ 1. **选择时间范围**
37
+ - 本周 (显示具体日期,如 2026-01-06 ~ 2026-01-12)
38
+ - 上周 (显示具体日期,如 2025-12-30 ~ 2026-01-05)
39
+ - 前半年 (显示具体日期,如 2025-07-13 ~ 2026-01-13)
40
+ - 自定义周报(输入周一日期)
41
+ - 自定义时间段(输入起始日期,截止到今天)
42
+
43
+ **重要**:选择时必须显示具体的日期范围,让用户确认是否正确
44
+
45
+ 2. **选择仓库**(如已配置多仓库)
46
+ - 显示已配置的仓库列表
47
+ - 可多选要包含的仓库
48
+ - 可添加当前目录为新仓库
49
+
50
+ 3. **添加补充内容**(可选)
51
+ - 输入额外的工作内容
52
+ - 如:参与会议、技术分享等
53
+
54
+ 4. **生成周报**
55
+ - 读取选定仓库的 Git 提交(必须覆盖所有分支/远端跟踪分支,避免漏提交)
56
+ - 按项目分组
57
+ - 过滤琐碎提交
58
+ - 生成 Markdown 格式周报
59
+ - 周报保存到 `~/.weekly-reports/{year}/week-{week}.md`
60
+ - 时间段报告保存到 `~/.weekly-reports/periods/{start_date}_to_{end_date}.md`
61
+
62
+ ## Git 提交读取(重要)
63
+
64
+ 为避免“只读取当前分支而漏掉其它分支(例如 `credits-lite*`)”的问题,读取提交时必须使用 `--all`(覆盖本地分支 + 远端跟踪分支),并确保截止时间包含结束日当天:
65
+
66
+ ```bash
67
+ # 关键点:
68
+ # - 用 --all 覆盖所有本地 refs(包含 remotes/origin/*)
69
+ # - --until 用 “结束日 23:59:59” 避免漏掉结束日当天提交
70
+ # - --author 建议用 name + email 联合匹配,避免不同身份写法漏掉本人提交
71
+
72
+ AUTHOR_PATTERN="(your-name|your@email.com)" # 或仅用你的 name/email
73
+ git log --all \
74
+ --author="$AUTHOR_PATTERN" \
75
+ --since="$START_DATE 00:00:00" \
76
+ --until="$END_DATE 23:59:59" \
77
+ --pretty=format:"%H|%s|%an|%ad" \
78
+ --date=short
79
+ ```
80
+
81
+ 如果 `git branch -a` 看不到目标远端分支(说明本地没有对应的远端跟踪引用),需要先 `git fetch --all --prune`(在用户同意且网络可用时执行),否则无法读取到“本地不存在的分支”的提交。
82
+
83
+ ## 输出格式
84
+
85
+ 周报采用层级列表结构,**必须包含日期范围标题**,按项目分组:
86
+
87
+ ### 周报格式
88
+
89
+ ```markdown
90
+ # 周报 (2026-01-06 ~ 2026-01-12)
91
+
92
+ 项目名称
93
+ - 主要工作点(10字以内)
94
+ - 补充说明(可选)
95
+ - 另一个工作点
96
+
97
+ 其他
98
+ - 不属于特定项目的工作内容
99
+ ```
100
+
101
+ ### 时间段报告格式
102
+
103
+ ```markdown
104
+ # 工作总结 (2025-07-13 ~ 2026-01-13)
105
+
106
+ 项目名称
107
+ - 主要工作点(10字以内)
108
+ - 补充说明(可选)
109
+ - 另一个工作点
110
+
111
+ 其他
112
+ - 不属于特定项目的工作内容
113
+ ```
114
+
115
+ ### 示例输出
116
+
117
+ ```markdown
118
+ # 周报 (2026-01-06 ~ 2026-01-12)
119
+
120
+ project-frontend
121
+ - 构建工具升级改造
122
+ - 核心功能开发流程跟进
123
+ - 方案合理性优化
124
+ - 脚本国际化优化
125
+
126
+ project-backend
127
+ - 自定义类型化消息渲染
128
+ - 断线重连流程梳理
129
+
130
+ 其他
131
+ - 新版国际化方案讨论
132
+ ```
133
+
134
+ ## 配置文件
135
+
136
+ 配置文件位于 `~/.weekly-reports/config.json`:
137
+
138
+ ```json
139
+ {
140
+ "repos": [
141
+ {
142
+ "name": "project-a",
143
+ "path": "/home/user/projects/project-a"
144
+ },
145
+ {
146
+ "name": "project-b",
147
+ "path": "/home/user/projects/project-b"
148
+ }
149
+ ],
150
+ "default_author": "auto",
151
+ "output_format": "markdown"
152
+ }
153
+ ```
154
+
155
+ ## 总结原则
156
+
157
+ ### 必须遵守
158
+
159
+ - **事实导向**:只总结实际完成的工作
160
+ - **简洁精炼**:主要工作点控制在 10 字以内
161
+ - **重点突出**:过滤琐碎修改
162
+ - **按项目分组**:相同项目的工作归类
163
+ - **层级清晰**:用缩进表示从属关系
164
+
165
+ ### 过滤规则
166
+
167
+ 以下提交不会单独列出:
168
+ - 纯格式化/代码风格调整
169
+ - 简单的 typo 修复
170
+ - 依赖版本小幅更新
171
+ - Merge 提交
172
+ - 重复性的相似提交
173
+
174
+ 详细格式规范见 [周报格式规范](references/WEEKLY_REPORT_FORMAT.md)