Skip to content

Commit b0e9cfd

Browse files
committed
update agentics
1 parent aacd04c commit b0e9cfd

20 files changed

Lines changed: 733 additions & 486 deletions

.github/aw/actions-lock.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,11 @@
5454
"repo": "github/gh-aw/actions/setup",
5555
"version": "v0.49.4",
5656
"sha": "bf34f9947505c887fdc597a13b8ff277cccd9c20"
57+
},
58+
"github/gh-aw/actions/setup@v0.49.7": {
59+
"repo": "github/gh-aw/actions/setup",
60+
"version": "v0.49.7",
61+
"sha": "0ea0cf123dda697de607a0cd6e3315746680eb86"
5762
}
5863
}
5964
}

.github/workflows/daily-repo-goals.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ timeout-minutes: 30
1313

1414
network: defaults
1515

16-
engine: copilot
1716

1817
permissions: read-all
1918

.github/workflows/daily-workflow-sync.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ safe-outputs:
4848
add-comment:
4949
max: 1
5050

51-
engine: copilot
5251
---
5352

5453
# Daily Workflow Sync from github/gh-aw

README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,8 @@ You can use the "/plan" agent to turn the reports into actionable issues which c
5757
- [🗜️ Documentation Unbloat](docs/unbloat-docs.md) - Automatically simplify documentation by reducing verbosity while maintaining clarity
5858
- [✨ Code Simplifier](docs/code-simplifier.md) - Automatically simplify recently modified code for improved clarity and maintainability
5959
- [🔍 Duplicate Code Detector](docs/duplicate-code-detector.md) - Identify duplicate code patterns and suggest refactoring opportunities
60-
- [⚡ Daily Progress](docs/daily-progress.md) - Automated daily feature development following a structured roadmap
61-
- [🧪 Daily Test Coverage Improver](docs/daily-test-improver.md) - Improve test coverage by adding meaningful tests to under-tested areas
62-
- [⚡ Daily Performance Improver](docs/daily-perf-improver.md) - Analyze and improve code performance through benchmarking and optimization
60+
- [🧪 Daily Test Improver](docs/daily-test-improver.md) - Improve test coverage by adding meaningful tests to under-tested areas
61+
- [⚡ Daily Perf Improver](docs/daily-perf-improver.md) - Analyze and improve code performance through benchmarking and optimization
6362

6463
## Security Workflows
6564

docs/daily-perf-improver.md

Lines changed: 73 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22

33
> For an overview of all available workflows, see the [main README](../README.md).
44
5-
**Analyze code performance, identify bottlenecks, and implement optimizations through benchmarking**
6-
7-
The [Daily Performance Improver workflow](../workflows/daily-perf-improver.md?plain=1) analyzes your codebase for performance issues, runs benchmarks, and creates draft pull requests with optimizations.
5+
The [Daily Performance Improver workflow](../workflows/daily-perf-improver.md?plain=1) is a performance-focused repository assistant that runs daily to identify and implement performance improvements. It can also be triggered on-demand via `/perf-assist <instructions>` to perform specific tasks. It discovers build/benchmark commands, identifies optimization opportunities, implements improvements with measured impact, maintains its own PRs, comments on performance issues, invests in measurement infrastructure, and maintains a monthly activity summary for maintainer visibility.
86

97
## Installation
108

@@ -22,21 +20,70 @@ This walks you through adding the workflow to your repository.
2220

2321
```mermaid
2422
graph LR
25-
A[Analyze Codebase] --> B[Identify Bottlenecks]
26-
B --> C[Run Benchmarks]
27-
C --> D{Improvements Found?}
28-
D -->|Yes| E[Implement Optimizations]
29-
E --> F[Create Draft PR]
30-
D -->|No| G[Report: Performance OK]
23+
A[Read Memory] --> B[Discover Commands]
24+
A --> C[Identify Opportunities]
25+
A --> D[Implement Improvements]
26+
A --> E[Maintain PRs]
27+
A --> F[Comment on Issues]
28+
A --> G[Invest in Infrastructure]
29+
A --> H[Update Activity Summary]
30+
B --> H
31+
C --> H
32+
D --> H
33+
E --> H
34+
F --> H
35+
G --> H
36+
H --> I[Save Memory]
3137
```
3238

33-
The workflow searches for performance optimization techniques and best practices online to inform its analysis.
39+
The workflow operates through seven coordinated tasks each run:
40+
41+
### Task 1: Discover and Validate Build/Test/Perf Commands
42+
43+
Analyzes the repository to discover build commands, test commands, benchmark commands, lint/format tools, and profiling tools. Cross-references against CI files and validates by running them. Stores validated commands in memory for future runs.
44+
45+
### Task 2: Identify Performance Opportunities
46+
47+
Researches the performance landscape: current tooling, user-facing concerns, system bottlenecks, and development workflow issues. Prioritizes opportunities by impact (user-facing > internal), feasibility (low-risk > high-risk), and measurability.
48+
49+
### Task 3: Implement Performance Improvements
50+
51+
Selects optimization goals from the backlog, establishes baseline measurements, implements optimizations, and measures impact. Creates draft PRs with evidence of performance gains, trade-offs documented, and reproducibility instructions.
52+
53+
### Task 4: Maintain Perf Improver Pull Requests
54+
55+
Keeps its own PRs healthy by fixing CI failures and resolving merge conflicts. Uses `push_to_pull_request_branch` to update PR branches directly.
56+
57+
### Task 5: Comment on Performance Issues
58+
59+
Reviews open issues with `performance` label or mentioning performance. Suggests profiling approaches, measurement strategies, and offers to investigate. Maximum 3 comments per run.
60+
61+
### Task 6: Invest in Performance Measurement Infrastructure
62+
63+
Assesses existing benchmark suites, profiling tools, and CI performance regression detection. Discovers real-world performance priorities from user issues. Proposes or implements infrastructure improvements like new benchmarks or measurement harnesses.
64+
65+
### Task 7: Update Monthly Activity Summary
66+
67+
Every run, updates a rolling monthly activity issue that gives maintainers a single place to see all performance work and suggested actions.
68+
69+
### Guidelines Perf Improver Follows
70+
71+
- **Measure everything**: No performance claim without data
72+
- **No breaking changes**: Never changes public APIs without explicit approval
73+
- **No new dependencies**: Discusses in an issue first
74+
- **Small, focused PRs**: One optimization per PR for easy measurement and revert
75+
- **Read AGENTS.md first**: Before starting work, reads project-specific conventions
76+
- **AI transparency**: Every output includes robot emoji disclosure
77+
- **Build, format, lint, and test verification**: Runs all checks before creating PRs
78+
- **Exclude generated files**: Performance reports go in PR description, not commits
3479

3580
## Usage
3681

82+
The main way to use Daily Perf Improver is to let it run daily and perform its tasks autonomously. You will see its activity summarized in the monthly activity issue it maintains, and you can review its PRs and comments as they come in.
83+
3784
### Configuration
3885

39-
The first run creates a pull request with inferred action pre-steps requiring approval and an issue with a performance improvement plan. Subsequent runs implement optimizations based on the plan.
86+
This workflow requires no configuration and works out of the box. It uses repo-memory to track work across runs and avoid duplicate actions.
4087

4188
After editing run `gh aw compile` to update the workflow and commit all changes to the default branch.
4289

@@ -54,6 +101,20 @@ To run repeatedly:
54101
gh aw run daily-perf-improver --repeat 30
55102
```
56103

104+
### Usage as a General-Purpose Performance Assistant
105+
106+
You can also trigger Perf Improver on-demand by commenting on any issue or PR:
107+
108+
```text
109+
/perf-assist <instructions>
110+
```
111+
112+
When triggered this way, Perf Improver focuses exclusively on your instructions instead of running its normal scheduled tasks. For example:
113+
114+
- `/perf-assist profile this function and suggest optimizations`
115+
- `/perf-assist add benchmarks for the new API endpoints`
116+
- `/perf-assist investigate why CI is slower after this PR`
117+
57118
### Triggering CI on Pull Requests
58119

59120
To automatically trigger CI checks on PRs created by this workflow, configure an additional repository secret `GH_AW_CI_TRIGGER_TOKEN`. See the [triggering CI documentation](https://github.github.com/gh-aw/reference/triggering-ci/) for setup instructions.
@@ -63,3 +124,4 @@ To automatically trigger CI checks on PRs created by this workflow, configure an
63124
- Review performance improvement PRs and benchmark results
64125
- Validate performance gains through independent testing
65126
- Assess code quality and maintainability of optimizations
127+
- Provide feedback via comments on the monthly activity issue

docs/daily-progress.md

Lines changed: 0 additions & 55 deletions
This file was deleted.

docs/daily-test-improver.md

Lines changed: 80 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
# 🧪 Daily Test Coverage Improver
1+
# 🧪 Daily Test Improver
22

33
> For an overview of all available workflows, see the [main README](../README.md).
44
5-
**Analyze test coverage and add tests to improve coverage in under-tested areas**
6-
7-
The [Daily Test Coverage Improver workflow](../workflows/daily-test-improver.md?plain=1) analyzes your test coverage, writes new tests, and submits draft PRs with coverage improvements.
5+
The [Daily Test Improver workflow](../workflows/daily-test-improver.md?plain=1) is a testing-focused repository assistant that runs daily to improve test quality and coverage. It can also be triggered on-demand via `/test-assist <instructions>` to perform specific tasks. It discovers build/test/coverage commands, identifies high-value testing opportunities, implements test improvements with measured impact, maintains its own PRs, comments on testing issues, invests in test infrastructure, and maintains a monthly activity summary for maintainer visibility.
86

97
## Installation
108

@@ -22,26 +20,70 @@ This walks you through adding the workflow to your repository.
2220

2321
```mermaid
2422
graph LR
25-
A[Research Testing Setup] --> B[Analyze Coverage]
26-
B --> C[Select Target Area]
27-
C --> D[Write New Tests]
28-
D --> E[Validate Tests]
29-
E --> F{Tests Pass?}
30-
F -->|Yes| G[Create Draft PR]
31-
F -->|No| H[Create Bug Issue]
23+
A[Read Memory] --> B[Discover Commands]
24+
A --> C[Identify Opportunities]
25+
A --> D[Implement Tests]
26+
A --> E[Maintain PRs]
27+
A --> F[Comment on Issues]
28+
A --> G[Invest in Infrastructure]
29+
A --> H[Update Activity Summary]
30+
B --> H
31+
C --> H
32+
D --> H
33+
E --> H
34+
F --> H
35+
G --> H
36+
H --> I[Save Memory]
3237
```
3338

34-
The workflow operates in two phases:
39+
The workflow operates through seven coordinated tasks each run:
40+
41+
### Task 1: Discover and Validate Build/Test/Coverage Commands
42+
43+
Analyzes the repository to discover build commands, test commands, coverage generation commands, lint/format tools, and testing frameworks. Cross-references against CI files and validates by running them. Stores validated commands in memory for future runs.
44+
45+
### Task 2: Identify High-Value Testing Opportunities
46+
47+
Researches the testing landscape: current organization, frameworks, coverage reports, and open issues. Focuses on value, not just coverage numbers - prioritizes bug-prone areas, critical paths, untested edge cases, and integration points. Records maintainer priorities from comments.
48+
49+
### Task 3: Implement Test Improvements
50+
51+
Selects testing goals from the backlog aligned with maintainer priorities. Implements new tests, edge case coverage, regression tests, or test refactoring. Creates draft PRs with coverage impact documented.
52+
53+
### Task 4: Maintain Test Improver Pull Requests
54+
55+
Keeps its own PRs healthy by fixing CI failures and resolving merge conflicts. Uses `push_to_pull_request_branch` to update PR branches directly.
56+
57+
### Task 5: Comment on Testing Issues
58+
59+
Reviews open issues mentioning tests or coverage. Suggests testing approaches, points to related patterns, and offers to implement. Maximum 3 comments per run.
60+
61+
### Task 6: Invest in Test Infrastructure
62+
63+
Assesses existing test utilities, fixtures, and CI configuration. Identifies infrastructure gaps like missing helpers or slow test suites. Proposes or implements improvements like shared fixtures or coverage reporting.
3564

36-
**Phase 1 - Testing Research:** On the first run, researches the testing landscape, identifies build and coverage commands, and creates a discussion with the plan. Memory notes are stored in a `memory/daily-test-improver` branch.
65+
### Task 7: Update Monthly Activity Summary
3766

38-
**Phase 2 - Test Development:** On subsequent runs, consults memory notes, selects a coverage area to improve, writes new tests, and submits draft PRs.
67+
Every run, updates a rolling monthly activity issue that gives maintainers a single place to see all testing work, maintainer priorities noted, and suggested actions.
68+
69+
### Guidelines Test Improver Follows
70+
71+
- **Value over coverage**: A test that catches real bugs beats tests that just increase coverage numbers
72+
- **No breaking changes**: Never changes public APIs without explicit approval
73+
- **No new dependencies**: Discusses in an issue first
74+
- **Small, focused PRs**: One testing goal per PR for easy review
75+
- **Read AGENTS.md first**: Before starting work, reads project-specific conventions
76+
- **AI transparency**: Every output includes robot emoji disclosure
77+
- **Build, format, lint, and test verification**: Runs all checks before creating PRs
78+
- **Exclude generated files**: Coverage reports go in PR description, not commits
3979

4080
## Usage
4181

82+
The main way to use Daily Test Improver is to let it run daily and perform its tasks autonomously. You will see its activity summarized in the monthly activity issue it maintains, and you can review its PRs and comments as they come in.
83+
4284
### Configuration
4385

44-
The first run creates a discussion with a research summary and plan. Review the plan and provide feedback via comments.
86+
This workflow requires no configuration and works out of the box. It uses repo-memory to track work across runs and avoid duplicate actions.
4587

4688
After editing run `gh aw compile` to update the workflow and commit all changes to the default branch.
4789

@@ -53,12 +95,33 @@ You can start a run immediately:
5395
gh aw run daily-test-improver
5496
```
5597

98+
To run repeatedly:
99+
100+
```bash
101+
gh aw run daily-test-improver --repeat 30
102+
```
103+
104+
### Usage as a General-Purpose Testing Assistant
105+
106+
You can also trigger Test Improver on-demand by commenting on any issue or PR:
107+
108+
```text
109+
/test-assist <instructions>
110+
```
111+
112+
When triggered this way, Test Improver focuses exclusively on your instructions instead of running its normal scheduled tasks. For example:
113+
114+
- `/test-assist add tests for this new feature`
115+
- `/test-assist investigate why this test is flaky`
116+
- `/test-assist add edge case tests for error handling`
117+
56118
### Triggering CI on Pull Requests
57119

58120
To automatically trigger CI checks on PRs created by this workflow, configure an additional repository secret `GH_AW_CI_TRIGGER_TOKEN`. See the [triggering CI documentation](https://github.github.com/gh-aw/reference/triggering-ci/) for setup instructions.
59121

60122
### Human in the Loop
61123

62-
- Review the initial research discussion and provide feedback
124+
- Review test improvement PRs and coverage results
63125
- Validate that new tests properly cover edge cases
64-
- Ensure tests are meaningful and not just coverage-padding
126+
- Ensure tests are meaningful and maintainable
127+
- Provide feedback via comments on the monthly activity issue

docs/plan.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,4 +52,3 @@ After editing run `gh aw compile` to update the workflow and commit all changes
5252

5353
- [Issue Triage](issue-triage.md) - For triaging incoming issues
5454
- [Daily Plan](daily-plan.md) - For strategic project planning
55-
- [Daily Progress](daily-progress.md) - For automated feature development

docs/q.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ Example commands:
4848

4949
```
5050
/q Analyze all workflows and suggest optimizations
51-
/q Fix the missing tools in the daily-progress workflow
51+
/q Fix the missing tools in the repo-assist workflow
5252
/q Investigate why the CI doctor workflow is failing
5353
/q Extract common patterns from coding workflows into a shared config
5454
/q Optimize workflows with high token usage

workflows/ci-coach.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,18 @@ on:
66
- cron: daily
77
workflow_dispatch:
88

9-
permissions:
10-
contents: read
11-
actions: read
12-
pull-requests: read
13-
issues: read
9+
network:
10+
allowed:
11+
- defaults
12+
- dotnet
13+
- node
14+
- python
15+
- rust
16+
- java
1417

15-
tracker-id: ci-coach-daily
18+
permissions: read-all
1619

17-
engine: copilot
20+
tracker-id: ci-coach-daily
1821

1922
tools:
2023
github:

0 commit comments

Comments
 (0)