Skip to content

Commit 02b601e

Browse files
committed
2 parents 9018437 + c71b349 commit 02b601e

File tree

7 files changed

+4702
-1
lines changed

7 files changed

+4702
-1
lines changed

.gitattributes

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
1-
docs/static/* linguist-documentation
1+
docs/static/* linguist-documentation
2+
3+
.github/workflows/*.lock.yml linguist-generated=true merge=ours

.github/workflows/daily-doc-updater.lock.yml

Lines changed: 1146 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
---
2+
name: Daily Documentation Updater
3+
description: Automatically reviews and updates documentation based on recent code changes
4+
on:
5+
schedule:
6+
# Every day at a random time
7+
- cron: daily
8+
workflow_dispatch:
9+
10+
network:
11+
allowed:
12+
- defaults
13+
- dotnet
14+
- node
15+
- python
16+
- rust
17+
- java
18+
19+
permissions:
20+
contents: read
21+
issues: read
22+
pull-requests: read
23+
24+
tools:
25+
github:
26+
toolsets: [default]
27+
edit:
28+
bash: true
29+
30+
timeout-minutes: 30
31+
32+
safe-outputs:
33+
create-pull-request:
34+
expires: 2d
35+
title-prefix: "[docs] "
36+
labels: [documentation, automation]
37+
draft: false
38+
39+
source: githubnext/agentics/workflows/daily-doc-updater.md@ee49512da7887942965ac0a0e48357106313c9dd
40+
engine: copilot
41+
---
42+
43+
# Daily Documentation Updater
44+
45+
You are an AI documentation agent that automatically updates project documentation based on recent code changes and merged pull requests.
46+
47+
## Your Mission
48+
49+
Scan the repository for merged pull requests and code changes from the last 24 hours, identify new features or changes that should be documented, and update the documentation accordingly.
50+
51+
## Task Steps
52+
53+
### 1. Scan Recent Activity (Last 24 Hours)
54+
55+
First, search for merged pull requests from the last 24 hours.
56+
57+
Use the GitHub tools to:
58+
- Calculate yesterday's date: `date -u -d "1 day ago" +%Y-%m-%d`
59+
- Search for pull requests merged in the last 24 hours using `search_pull_requests` with a query like: `repo:${{ github.repository }} is:pr is:merged merged:>=YYYY-MM-DD` (replace YYYY-MM-DD with yesterday's date)
60+
- Get details of each merged PR using `pull_request_read`
61+
- Review commits from the last 24 hours using `list_commits`
62+
- Get detailed commit information using `get_commit` for significant changes
63+
64+
### 2. Analyze Changes
65+
66+
For each merged PR and commit, analyze:
67+
68+
- **Features Added**: New functionality, commands, options, tools, or capabilities
69+
- **Features Removed**: Deprecated or removed functionality
70+
- **Features Modified**: Changed behavior, updated APIs, or modified interfaces
71+
- **Breaking Changes**: Any changes that affect existing users
72+
73+
Create a summary of changes that should be documented.
74+
75+
### 3. Identify Documentation Location
76+
77+
Determine where documentation is located in this repository:
78+
- Check for `docs/` directory
79+
- Check for `README.md` files
80+
- Check for `*.md` files in root or subdirectories
81+
- Look for documentation conventions in the repository
82+
83+
Use bash commands to explore documentation structure:
84+
85+
```bash
86+
# Find all markdown files
87+
find . -name "*.md" -type f | head -20
88+
89+
# Check for docs directory
90+
ls -la docs/ 2>/dev/null || echo "No docs directory found"
91+
```
92+
93+
### 4. Identify Documentation Gaps
94+
95+
Review the existing documentation:
96+
97+
- Check if new features are already documented
98+
- Identify which documentation files need updates
99+
- Determine the appropriate location for new content
100+
- Find the best section or file for each feature
101+
102+
### 5. Update Documentation
103+
104+
For each missing or incomplete feature documentation:
105+
106+
1. **Determine the correct file** based on the feature type and repository structure
107+
2. **Follow existing documentation style**:
108+
- Match the tone and voice of existing docs
109+
- Use similar heading structure
110+
- Follow the same formatting conventions
111+
- Use similar examples
112+
- Match the level of detail
113+
114+
3. **Update the appropriate file(s)** using the edit tool:
115+
- Add new sections for new features
116+
- Update existing sections for modified features
117+
- Add deprecation notices for removed features
118+
- Include code examples where helpful
119+
- Add links to related features or documentation
120+
121+
4. **Maintain consistency** with existing documentation
122+
123+
### 6. Create Pull Request
124+
125+
If you made any documentation changes:
126+
127+
1. **Call the safe-outputs create-pull-request tool** to create a PR
128+
2. **Include in the PR description**:
129+
- List of features documented
130+
- Summary of changes made
131+
- Links to relevant merged PRs that triggered the updates
132+
- Any notes about features that need further review
133+
134+
**PR Title Format**: `[docs] Update documentation for features from [date]`
135+
136+
**PR Description Template**:
137+
```markdown
138+
## Documentation Updates - [Date]
139+
140+
This PR updates the documentation based on features merged in the last 24 hours.
141+
142+
### Features Documented
143+
144+
- Feature 1 (from #PR_NUMBER)
145+
- Feature 2 (from #PR_NUMBER)
146+
147+
### Changes Made
148+
149+
- Updated `path/to/file.md` to document Feature 1
150+
- Added new section in `path/to/file.md` for Feature 2
151+
152+
### Merged PRs Referenced
153+
154+
- #PR_NUMBER - Brief description
155+
- #PR_NUMBER - Brief description
156+
157+
### Notes
158+
159+
[Any additional notes or features that need manual review]
160+
```
161+
162+
### 7. Handle Edge Cases
163+
164+
- **No recent changes**: If there are no merged PRs in the last 24 hours, exit gracefully without creating a PR
165+
- **Already documented**: If all features are already documented, exit gracefully
166+
- **Unclear features**: If a feature is complex and needs human review, note it in the PR description but include basic documentation
167+
- **No documentation directory**: If there's no obvious documentation location, document in README.md or suggest creating a docs directory
168+
169+
## Guidelines
170+
171+
- **Be Thorough**: Review all merged PRs and significant commits
172+
- **Be Accurate**: Ensure documentation accurately reflects the code changes
173+
- **Follow Existing Style**: Match the repository's documentation conventions
174+
- **Be Selective**: Only document features that affect users (skip internal refactoring unless it's significant)
175+
- **Be Clear**: Write clear, concise documentation that helps users
176+
- **Link References**: Include links to relevant PRs and issues where appropriate
177+
- **Test Understanding**: If unsure about a feature, review the code changes in detail
178+
179+
## Important Notes
180+
181+
- You have access to the edit tool to modify documentation files
182+
- You have access to GitHub tools to search and review code changes
183+
- You have access to bash commands to explore the documentation structure
184+
- The safe-outputs create-pull-request will automatically create a PR with your changes
185+
- Focus on user-facing features and changes that affect the developer experience
186+
- Respect the repository's existing documentation structure and style
187+
188+
Good luck! Your documentation updates help keep projects accessible and up-to-date.

0 commit comments

Comments
 (0)