Live good-first-issue & help-wanted feed

Find meaningful ways to contribute

Browse open GitHub issues that maintainers labeled for help. Filter by language, stars, category, and difficulty — then pick something you can finish.

Projects
111,773
Open issues
765,581
Cost
Free
Illustration of a Good first issue card with GitHub, plus Learn new skills, Work on real projects, Make an impact, and Open source is for everyone

Active projects

Unique repos with open help-wanted issues updated in the last 30 days

Showing 30 of ~20,753 matching filters (10+ stars)

List

🐝 Hive Advisory Report

AI summary

This issue serves as a central hub for advisory findings from Hive agents, particularly at lower ACMM levels where agents analyze code without creating direct issues or PRs. A governor agent periodically posts digest comments summarizing these advisory findings. This issue is intended to be a living document and should not be closed.

help wantedagent/scannerhive/advisoryagent/securityhive/hosted-kubestellar-console-4vkt
119
Difficulty
2/5

Add user locale to "Copy Debug Info"

AI summary

This issue proposes adding user locale information (system locale, AnkiDroid language, and backend language) to the "Copy Debug Info" feature. This information is intended to help developers better understand and debug linked issues by providing context about the user's language and regional settings.

Good First Issue
11.3K
Difficulty
2/5

ship: _fail escapes markup but lets control bytes through to the terminal (after #1776)

AI summary

This issue addresses a bug where the `_fail` function in the `ship` command incorrectly allows control bytes, specifically the ESC character, to pass through to the terminal after Rich markup has been neutralized. This can lead to unexpected terminal behavior when error messages contain these control characters, especially when they originate from user-provided chat templates. The fix involves ensuring that all control bytes are stripped from messages before they are displayed to the user, maintaining terminal hygiene.

buggood first issueclaimeddifficulty:1
72
Difficulty
2/5

[CIMD] pkce-enforcer in the profile of a client-id-uri policy is never applied; codes are issued without PKCE

AI summary

The PKCE enforcer is not being applied when configured within a client-id-uri policy for CIMD clients. This allows authorization codes to be issued without PKCE, and the client is not auto-configured with PKCE S256 as expected. The issue stems from the event scope of the ClientIdUriSchemeCondition, which prevents the PKCE enforcer from executing on relevant events.

area/oidckind/bughelp wantedstatus/auto-bumppriority/normalteam/core-protocols
35.5K
Difficulty
3/5

Make queue logging restartable in one process

AI summary

This issue aims to make Kolibri's queue logging restartable within a single process, addressing a limitation where it can only be set up once. This will involve modifying the core logging mechanism to allow reinitialization and removing a specific workaround currently used by the Android platform.

DEV: distributionsDEV: backendhelp wantedgood first issuecommunity-contribution-in-progress
1.1K
Difficulty
2/5

Move Audio beacon settings menu

AI summary

This issue proposes to refactor the user interface by moving the 'Audio Beacon settings' menu to a more prominent and logical location. Currently nested within 'General Settings', the suggestion is to create a standalone menu for it, positioned between 'Media Controls' and 'Manage Call outs'. This change aims to improve user experience and accessibility for audio beacon configurations.

enhancementgood first issue
47
Difficulty
2/5

backend: unsloth is accepted and silently ignored for task: distill

AI summary

The `unsloth` backend is currently accepted but silently ignored when used with the `distill` task, causing training to proceed with standard Transformers instead of Unsloth. The issue proposes either refusing this combination at configuration load with a clear message or implementing proper support for Unsloth distillation.

bughelp wantedclaimeddifficulty:2
72
Difficulty
3/5

training.gradient_checkpointing is decided by the trainer, not the config: `false` cannot turn it off on any 4-bit run, and 9 trainers can drop `true`

AI summary

The `gradient_checkpointing` setting in TRL trainers is inconsistently applied, being overridden by internal defaults and quantization logic rather than the user-specified configuration. This leads to `false` not reliably disabling it during 4-bit training and some trainers ignoring the `true` setting.

bughelp wantedclaimeddifficulty:6
72
Difficulty
4/5

`preference_loss_weights` never blends: only the primary loss trains, because the wrapper reads log-probs from the batch

AI summary

The `preference_loss_weights` feature in Soup is not functioning as intended because the wrapper expects log-probabilities to be present in the batch, but the `trl` trainer (version 0.29) does not provide them. This causes secondary loss terms to be ignored, and only the primary loss is trained, scaled by its weight.

bughelp wantedclaimeddifficulty:7
72
Difficulty
3/5

field-parser not applying the visibility configuration

AI summary

The front-end is not correctly applying visibility configurations for metadata fields defined in the backend's `submission-forms.xml`. While frontend code has been updated to handle these configurations, the backend's data format for submission forms appears to be outdated, preventing the visibility settings from being enforced.

bughelp wantedcomponent: submissionaffects: mainaffects: 10.x
181
Difficulty
3/5

feat(js): expose `invert` and `threshold` (already exported from WASM)

AI summary

This issue proposes adding two new JavaScript functions, `invert` and `threshold`, to the npm package. These functions are already available in the WASM module and other language APIs but are currently missing from the JavaScript wrapper. The task involves creating new wrappers that mirror existing patterns, adding JSDoc documentation, and ensuring type safety through tests.

enhancementgood first issuetakenhelp wanteddifficulty: easyjavascript
39
Difficulty
2/5

How it works

Three steps from browsing to opening a PR.

Read the beginner guide →
  1. 1

    Filter the feed

    Pick a language, minimum stars, category, and difficulty that match what you can ship.

  2. 2

    Read the AI summary

    Each card includes a short summary and difficulty score when we have one — so you can skip the wall of text.

  3. 3

    Open the issue

    Jump to GitHub, talk to the maintainer if needed, and contribute where help is actually wanted.

Not finding what you’re looking for?

Browse 111,773 projects or reset filters to see more of the 765,581 indexed issues.