retentioneering-contributing
Help the user turn their Retentioneering ideas, friction reports, bug findings, or feature needs into high-quality upstream contributions: from capturing and validating the idea, through minimal reproductions and issue drafts, to preparing, testing, and submitting a pull request that follows this repository's conventions. Use when the user says they found a bug, wants a feature, wrote a workaround worth upstreaming, or asks how to contribute, open an issue, or make a PR to retentioneering-tools.
npx skills add retentioneering/retentioneering-tools --skill retentioneering-contributing --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Contributing to retentioneering-tools ## Objective Convert a user's observation — a bug, a paper cut, a missing capability, a workaround they keep re-writing — into the smallest upstream change that would have prevented it, packaged so maintainers can accept it quickly. ## Bundled references | File | Read it when | |---|---| | `references/repo-conventions.md` | before touching code — build/test/docs commands, architecture rules, naming, sync obligations | | `references/proposal-templates.md` | when drafting — issue/feature/PR templates with worked examples | ## The full route: idea → merged PR ### Stage 1 — Capture the observation properly (do this even for "small" ideas) Record four things while they are fresh: 1. **Expectation** — what the user believed would happen (quote the docstring/docs page that created the expectation, if any). 2. **Reality** — what actually happened (exact error text or wrong output). 3. **Cost** — time lost, wrong conclusion nearly shipped, workaround written. 4. **Environment** — `retentioneering.__version__`, Python, OS, install source (pip wheel vs source checkout). Field lesson: reports formatted as expectation/reality/cost/repro get acted on; "X i
- Objective
- Bundled references
- The full route: idea → merged PR
- Stage 1 — Capture the observation properly (do this even for "small" ideas)
- Stage 2 — Validate against the CURRENT version
- Stage 3 — Minimal reproduction (the heart of a bug report)
- Stage 4 — Choose the contribution shape
- Stage 5 — Implement (when making a PR, not just an issue)
- Stage 6 — Pre-flight and submit
- Stage 7 — Follow through
- Portfolio mode: many observations at once
uv run pre-commit run --all-files # ruff lint+format, gitleaks, hygiene uv run pytest tests/ -v # full suite (CI runs 3.11–3.13) uv run python docs/scripts/render_pages.py # if docstrings changed git push -u origin <branch> gh pr create --title "<imperative summary>" --body-file pr_body.md
What does the retentioneering-contributing skill do?
Help the user turn their Retentioneering ideas, friction reports, bug findings, or feature needs into high-quality upstream contributions: from capturing and validating the idea, through minimal reproductions and issue drafts, to preparing, testing, and submitting a pull request that follows this repository's conventions. Use when the user says they found a bug, wants a feature, wrote a workaround worth upstreaming, or asks how to contribute, open an issue, or make a PR to retentioneering-tools.
How do I install it?
Run `npx skills add retentioneering/retentioneering-tools --skill retentioneering-contributing --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From retentioneering/retentioneering-tools, a repository with 911 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
