Use when an ASB skill proved wrong, stale, missing or wasteful in practice — its steps failed, no skill covered the task, the leaves existed but nothing composed them, or the tool has changed. Turns that friction into a redacted, dedupable report the user approves before anything is filed.
Scanned 9/12/2026
Install to Claude Code
npx -y skills add HolobiomicsLab/asb-skill-collections --skill asb-contribute --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Asb Contribute?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/holobiomicslab-asb-contribute)More formats (shields.io, HTML) on the badges page.
---
name: asb-contribute
description: "Use when an ASB skill proved wrong, stale, missing or wasteful in practice — its steps failed, no skill covered the task, the leaves existed but nothing composed them, or the tool has changed. Turns that friction into a redacted, dedupable report the user approves before anything is filed."
license: CC-BY-4.0
metadata:
role: meta
helper: scripts/skill_feedback.py
issue_templates:
- .github/ISSUE_TEMPLATE/skill-feedback.md
- .github/ISSUE_TEMPLATE/propose-skill.md
- .github/ISSUE_TEMPLATE/propose-meta-skill.md
derived_from:
- doi: 10.5281/zenodo.20794027
title: ASB Metabolomics Skill Collection v2 (metabolomics-v0.1.0)
schema_version: 0.2.0
---
# asb-contribute
The collection hardens from use, not from review. This skill is how a session
that hit friction becomes something a maintainer can act on.
## When this fires
Notice it yourself; do not wait to be asked. Any of these is a trigger:
- a skill's procedure failed, or its parameters no longer match the tool;
- the search returned nothing usable and the work was done unaided;
- the right leaves existed but the user had to compose them by hand;
- the skill worked, but at obviously avoidable cost;
- the user says some version of "that's wrong" about a skill's content.
**One offer per session per problem.** If the user declines, drop it — do not
raise it again for the same friction. Persistent asking is how a good idea
becomes an annoyance people disable.
## Protocol
### 1. Classify
Pick exactly one kind: `defect`, `gap`, `composition`, `efficiency`, `drift`.
The kind decides routing and labels, so guessing costs a maintainer real time.
If two apply, pick the one a fix would address.
### 2. Search before drafting
Look for an existing issue — by fingerprint, by skill slug, by symptom:
```bash
gh issue list --repo HolobiomicsLab/asb-skill-collections --state all \
--search "<slug> OR <symptom keywords>" --limit 20
```
**If one matches, corroborate it. Do not open a second.** Ten corroborations on
one issue tell a maintainer what ten near-identical issues cannot, and the
reporter's account of the problem is read rather than buried.
### 3. Draft
```bash
python scripts/skill_feedback.py --kind defect --target <slug> \
--symptom "..." --expected "..." --context "tool + version, OS" \
--collection metabolomics/v2
```
It returns the title, body, labels and fingerprint, with home directories,
credentials and clinical identifiers already removed, and it names the
categories it stripped.
### 4. Show the user the exact body, then ask
Print the rendered body verbatim — not a summary of it. The user is deciding
whether to publish this text, and they can only decide that by reading it.
State plainly what redaction does and does not do: it removes paths, tokens and
clinical identifiers; **it cannot recognise a sensitive sample name**, so they
are the last check. Invite edits before filing.
Then make the case once, briefly and honestly. Something like: *this collection
is grounded in published work and given away under CC-BY; it improves only when
people who run it say what broke. Reporting this takes a minute and saves the
next person the hour you just lost.* Do not moralise, do not repeat it, and do
not imply an obligation.
### 5. File only on an explicit yes
```bash
gh issue create --repo HolobiomicsLab/asb-skill-collections \
--title "<title>" --body-file <path> --label usage-feedback --label needs-triage
```
Corroborating instead:
```bash
gh issue comment <number> --body-file <path>
```
No `gh`, or no consent to use it: hand the user the rendered body and the
`new/choose` URL for the repository, and stop. Filing on their behalf without a
yes is publishing their words under their name.
### 6. Offer the fix, when there is one
A `gap` or `composition` report the user can answer themselves is worth more as
a proposal than as a request. Point them at `propose-skill` /
`propose-meta-skill`, and say what it earns: `governance/AUTHORSHIP.md` records
an authored skill as credit toward the reviewer tier, and `claim-skill` links it
to their ORCID.
## Closing the credit loop
When a session ends having leaned on this collection, offer the citation for
what was actually used — the collection DOI plus the source DOIs of the skills
applied, from each skill's `derived_from`. Reciprocity is easier to ask for
after the user has seen the machinery work in their favour, and a methods
section that names its sources is the point of grounding skills in literature at
all.
## What never happens here
- No issue, comment, or PR without an explicit yes in this session.
- No session transcript, file path, or dataset pasted in unredacted.
- No second issue when an open one already describes the problem.
- No report filed against a repository the user did not name.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!