Skip to content

Commit fdce03c

Browse files
committed
Log onboarding issues for newcomers
1 parent 7a4d46f commit fdce03c

27 files changed

+2594
-192
lines changed

.github/labels.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,15 @@
1919
- name: help wanted
2020
color: 008672
2121
description: Extra attention is needed
22+
- name: onboarding
23+
color: 1d76db
24+
description: First-run setup and activation experience
25+
- name: ux
26+
color: fbca04
27+
description: User experience and interface improvements
28+
- name: docs
29+
color: 0e8a16
30+
description: Documentation changes or requests
31+
- name: community
32+
color: 5319e7
33+
description: Community process and contributor experience

.github/pull_request_template.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,12 @@
1616

1717
-
1818

19+
## Contributor Recognition
20+
21+
- Preferred public name (optional):
22+
- Preferred link (optional):
23+
- OK to feature in `CONTRIBUTORS.md`: [ ] Yes
24+
1925
## Checklist
2026

2127
- [ ] Scope is focused

CONTRIBUTING.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ pnpm exec tsc --noEmit
3838
- Link related issues.
3939
- Add screenshots/GIFs for UI changes.
4040
- Keep PR scope limited to one concern.
41+
- If you want public credit beyond commit history, add your preferred display name/link in the PR template so maintainers can feature you in [`CONTRIBUTORS.md`](CONTRIBUTORS.md).
4142

4243
## Code style
4344

@@ -53,3 +54,9 @@ Use the bug report template and include:
5354
- Repro steps
5455
- Expected vs actual behavior
5556
- Logs and screenshots where possible
57+
58+
## Recognition
59+
60+
- First-time contributors can be added to [`CONTRIBUTORS.md`](CONTRIBUTORS.md) after their first merged pull request.
61+
- Recent first-time contributors may also be featured in the Contributor Spotlight section.
62+
- If you want to be credited under a different public name than your GitHub handle, note that in your PR.

CONTRIBUTORS.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Contributors
2+
3+
OAgent should recognize contributors in the project itself, not only in commit history and release notes.
4+
5+
## Contributor Spotlight
6+
7+
This section is for recent first-time contributors or notable community contributions. Keep entries short and link to the merged pull request when possible.
8+
9+
| Name | Contribution | Link |
10+
| --- | --- | --- |
11+
| Your name here | First merged contribution to OAgent | Add PR link |
12+
13+
## Hall of Contributors
14+
15+
Add one row per contributor after their first merged pull request.
16+
17+
| Name | GitHub | Areas |
18+
| --- | --- | --- |
19+
| Samuel Hu | [@samhu1](https://github.com/samhu1) | Maintainer, product, release management |
20+
21+
## Maintainer Notes
22+
23+
- Ask contributors how they want their name displayed before adding them here.
24+
- Prefer a GitHub profile link unless the contributor asks for a different public link.
25+
- Keep contributor areas broad and human-readable.
26+
- When a contributor lands their first PR, add them here and consider featuring them in the Spotlight section for the next release cycle.

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,8 @@ pnpm build
171171

172172
3. Include validation notes and screenshots for UI changes
173173

174+
Contributor recognition lives in [`CONTRIBUTORS.md`](CONTRIBUTORS.md). First-time contributors can be featured there after their first merged PR.
175+
174176
## Security
175177

176178
Please report vulnerabilities privately per [`SECURITY.md`](SECURITY.md).
@@ -181,6 +183,8 @@ Do not open public security issues.
181183
- [`SUPPORT.md`](SUPPORT.md) for support expectations
182184
- [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md) for community guidelines
183185
- [`MAINTAINERS.md`](MAINTAINERS.md) for maintainer contacts
186+
- [`CONTRIBUTORS.md`](CONTRIBUTORS.md) for contributor spotlight and hall of contributors
187+
- [`docs/starter-issues.md`](docs/starter-issues.md) for contributor-friendly backlog ideas
184188
- [`docs/open-source-readiness.md`](docs/open-source-readiness.md) for pre-public checklist
185189

186190
## License

docs/starter-issues.md

Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
# Starter Issues
2+
3+
This file contains copy-paste-ready issue drafts for the public backlog. The first four came from an outside contributor review. The remaining six are additional contributor-friendly issues based on the current product/docs surface.
4+
5+
Recommended default labels:
6+
7+
- `good first issue`
8+
- `help wanted`
9+
- one of `bug` or `enhancement`
10+
- domain labels such as `ux`, `onboarding`, `docs`, or `community`
11+
12+
## 1. Clarify first-run setup when no model provider is configured
13+
14+
- Type: bug
15+
- Labels: `bug`, `good first issue`, `help wanted`, `onboarding`, `ux`
16+
17+
When a new user launches OAgent without a working Ollama setup or OpenRouter key, the app can appear to be "Processing" without making it clear that setup is incomplete. That creates a false sense that a response is coming when the app is actually blocked on configuration.
18+
19+
Acceptance criteria:
20+
21+
- Detect when the active provider is missing required setup.
22+
- Replace or supplement the generic processing state with a clear setup-required message.
23+
- Point the user to the exact fix: add an OpenRouter key, start Ollama, or choose a configured provider.
24+
- Cover both first-run and later misconfigured states.
25+
26+
## 2. Add review controls for ask-before-edits mode
27+
28+
- Type: enhancement
29+
- Labels: `enhancement`, `good first issue`, `help wanted`, `ux`
30+
31+
In ask-before-edits mode, approving a change currently accepts the full file update at once. Contributors suggested a more reviewable flow where a user can inspect or selectively approve edits in smaller chunks.
32+
33+
Acceptance criteria:
34+
35+
- Show a structured diff before applying edits in ask-before-edits mode.
36+
- Support at least one finer-grained review action beyond all-or-nothing approval.
37+
- Preserve the current fast path for users who still want to approve the full edit immediately.
38+
- Document any intentional scope limits for the first version.
39+
40+
## 3. Add date filters to conversation search
41+
42+
- Type: enhancement
43+
- Labels: `enhancement`, `good first issue`, `help wanted`, `ux`
44+
45+
The session search already indexes titles and message snippets, and session metadata includes timestamps. Adding a date filter would make it much easier to narrow down older conversations.
46+
47+
Acceptance criteria:
48+
49+
- Support filtering search results by date or date range.
50+
- Keep current keyword search behavior intact.
51+
- Apply the filter to both session-title hits and message hits.
52+
- Make the empty state explicit when the date range removes all matches.
53+
54+
## 4. Move the processing indicator closer to the active prompt
55+
56+
- Type: enhancement
57+
- Labels: `enhancement`, `good first issue`, `help wanted`, `ux`
58+
59+
The current processing indicator is easy to miss because it sits away from the active message flow. A contributor suggested moving it under the user prompt or into the active conversation stream.
60+
61+
Acceptance criteria:
62+
63+
- Show processing state in a location visually tied to the latest user prompt.
64+
- Preserve accessibility and avoid creating duplicate conflicting indicators.
65+
- Validate the placement for both short and long conversations.
66+
- Include a before/after screenshot in the PR.
67+
68+
## 5. Add provider health checks in Settings
69+
70+
- Type: enhancement
71+
- Labels: `enhancement`, `help wanted`, `onboarding`, `ux`
72+
73+
The settings dialog exposes provider fields, but there is no quick way to verify whether the current OpenRouter or Ollama configuration is actually usable. A lightweight "Test connection" flow would reduce setup confusion and bug reports.
74+
75+
Acceptance criteria:
76+
77+
- Add a way to test the current provider configuration from Settings.
78+
- Show success, failure, and actionable failure messages.
79+
- For Ollama, distinguish between unreachable endpoint and missing model.
80+
- Keep provider secrets out of logs and UI error details.
81+
82+
## 6. Improve runtime setup docs for packaged app users
83+
84+
- Type: docs
85+
- Labels: `docs`, `good first issue`, `help wanted`, `onboarding`
86+
87+
The README explains OpenRouter and Ollama setup, but packaged-app users can still miss the fact that the app needs a configured provider before the first prompt will work. The install path should be explicit about that.
88+
89+
Acceptance criteria:
90+
91+
- Add a short first-run setup section to the README.
92+
- Explain the difference between using OpenRouter and Ollama in plain language.
93+
- State clearly that downloading the app is not enough by itself; one provider must be configured.
94+
- Keep the instructions concise and screenshot-friendly.
95+
96+
## 7. Add an onboarding empty state for brand-new sessions
97+
98+
- Type: enhancement
99+
- Labels: `enhancement`, `help wanted`, `onboarding`, `ux`
100+
101+
Right now, a new session relies heavily on the user already understanding models, permissions, and available tools. A stronger empty state could explain how to get from install to first successful response.
102+
103+
Acceptance criteria:
104+
105+
- Add a visible first-session empty state with setup and usage guidance.
106+
- Surface the active provider and whether it appears ready.
107+
- Link or point to Settings from the empty state.
108+
- Avoid adding clutter once the user has already started chatting.
109+
110+
## 8. Add search result sorting and grouping
111+
112+
- Type: enhancement
113+
- Labels: `enhancement`, `good first issue`, `help wanted`, `ux`
114+
115+
Search results are useful, but they would be easier to scan if they were grouped and sorted more intentionally, especially once date filtering exists.
116+
117+
Acceptance criteria:
118+
119+
- Group or sort session-title hits and message hits consistently.
120+
- Make result timestamps easier to interpret.
121+
- Preserve performance for existing search usage.
122+
- Keep the UI readable in narrow sidebars or compact layouts.
123+
124+
## 9. Create a contributor recognition workflow
125+
126+
- Type: enhancement
127+
- Labels: `enhancement`, `help wanted`, `community`, `docs`
128+
129+
Contributors should get recognition somewhere more visible than the merged PR list. The repo now has a `CONTRIBUTORS.md` file, but the maintainer workflow for keeping it current should stay lightweight.
130+
131+
Acceptance criteria:
132+
133+
- Keep `CONTRIBUTORS.md` updated when first-time contributors land a PR.
134+
- Use the PR template to collect preferred display name and public link.
135+
- Document the recognition flow in `CONTRIBUTING.md`.
136+
- Keep the contributor list easy to maintain by hand.
137+
138+
## 10. Add a "share debug info" path for bug reports
139+
140+
- Type: enhancement
141+
- Labels: `enhancement`, `help wanted`, `bug`, `ux`
142+
143+
Bug reports are much easier to triage when users can attach useful logs and environment data. OAgent already has logs and environment-sensitive runtime pieces, but there is no guided export path for reporting problems.
144+
145+
Acceptance criteria:
146+
147+
- Add a lightweight way to collect relevant debug information for support issues.
148+
- Exclude secrets and private workspace contents.
149+
- Make the output easy to attach to a GitHub issue.
150+
- Update the bug report guidance to mention the new flow if implemented.

package.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,17 @@
4242
"tailwind-merge": "^3.4.0"
4343
},
4444
"devDependencies": {
45+
"@babel/core": "^7.29.0",
46+
"@babel/plugin-syntax-jsx": "^7.28.6",
47+
"@babel/preset-react": "^7.28.5",
4548
"@electron/rebuild": "^4.0.3",
4649
"@tailwindcss/vite": "^4.1.18",
4750
"@types/node": "^25.2.3",
4851
"@types/react": "^19.2.14",
4952
"@types/react-dom": "^19.2.3",
5053
"@types/react-syntax-highlighter": "^15.5.13",
5154
"@vitejs/plugin-react": "^5.1.4",
55+
"babel-plugin-react-compiler": "^1.0.0",
5256
"concurrently": "^9.2.1",
5357
"electron": "^40.4.0",
5458
"electron-builder": "^26.8.1",
@@ -68,5 +72,10 @@
6872
},
6973
"bugs": {
7074
"url": "https://github.com/samhu1/openagent/issues"
75+
},
76+
"pnpm": {
77+
"overrides": {
78+
"ajv@<6.14.0": "^6.14.0"
79+
}
7180
}
7281
}

0 commit comments

Comments
 (0)