Profile
Claude Code plugin: turn bugs in your dependencies into upstream contribution PRs — without leaving your project.
npx -y skills add shiminshen/oss-contribute --skill profileAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
View or edit the shared profile that the oss-contribute plugin uses for stable preferences (watched repos, languages, default GitHub account, default budget, what "ripe" means). All other skills in the plugin read from this same file so settings never drift across surfaces.
SKILL.md
3.1 KB, as published. Nobody here has run it
profile
Manages the shared oss-contribute profile. All other skills in the plugin (find-issues, contribute-upstream) read from this same file.
Usage
/oss-contribute:profile # show current profile (default)
/oss-contribute:profile show # same as above
/oss-contribute:profile edit # open in $EDITOR (or run interactive setup if missing)
Profile location
Resolve in this order and use the first one that exists. If none exist and the subcommand is show, report which paths were checked; if edit, create the first one (plugin data dir).
$CLAUDE_PLUGIN_DATA/profile.md— when running as an installed plugin (Claude Code sets this env var). Survives plugin updates.~/.claude/plugins/data/oss-contribute/profile.md— same path as #1, for explicitness.~/.claude/skills/oss-contribute/profile.md— local-development fallback.
Phase A — show (or no arg)
Print the current profile and the file path it was loaded from. Read-only.
If no profile exists, print:
No profile found. Checked:
- $CLAUDE_PLUGIN_DATA/profile.md
- ~/.claude/plugins/data/oss-contribute/profile.md
- ~/.claude/skills/oss-contribute/profile.md
Run: /oss-contribute:profile edit to set one up.
Phase B — edit
If the profile exists, open it in $EDITOR (or vi if $EDITOR is unset).
If the profile is missing, walk through interactive setup, asking one question at a time:
- Which GitHub repos do you want to watch? (
owner/repolist) - Which languages / frameworks do you work in?
- Which
gh-logged-in account should the plugin fork/PR from? (rungh auth statusand let the user pick) - Default time budget? (
30m/1h/half-day/weekend) - Anything specific that makes an issue feel "ripe" for you? (free text)
Write to $CLAUDE_PLUGIN_DATA/profile.md (or the local-mode path if that env var is unset) using the schema below. Confirm contents with the user before writing.
Profile schema
# oss-contribute profile
## Watched repos
- owner/repo
- ...
## Languages
typescript, go, python
## Stack
next.js, react, prisma, vitest
## Default GitHub account
shiminshen
## Default budget
1h
## What "ripe" means to me
Small diff (<50 lines). Clear repro in the issue body. No assignee. No linked PR.
Maintainer has triaged (has a label). Repo has merged something in the last 30 days.
Hard rules
showis read-only. Never modify the profile in show mode.- Profile is the source of truth. Other skills must not silently override profile values from args; conflicts surface to the user.
- No remote secrets. The profile is a local preferences file. Do not store API tokens or credentials here —
ghhandles GitHub auth, and that's where account selection terminates.