Ask for capsules in your issue template
The easiest time to get a capsule is when the issue is filed. Add a short request to your bug report template.
Markdown template
Section titled “Markdown template”Add this to .github/ISSUE_TEMPLATE/bug_report.md (or your equivalent):
If the bug does not reproduce for us, please run the failing command through twinand attach the file it writes (it records versions and variable names, never secrets):
npm install -g @crypticsaiyan/twincli twin capture -- <your failing command>Issue form
Section titled “Issue form”For YAML issue forms (.github/ISSUE_TEMPLATE/bug_report.yml), add a field:
- type: markdown attributes: value: | **Environment capsule (optional, very helpful).** Run the failing command through twin and drag the `twin-capsule.json` it writes into the box below. It records versions, the commit, your uncommitted diff and variable names; you review it before it is written.
npm install -g @crypticsaiyan/twincli twin capture -- <your failing command> - type: textarea id: capsule attributes: label: twin capsule description: Drag twin-capsule.json here.A file dragged into an issue becomes a https://github.com/user-attachments/files/… link. The GitHub Action and the MCP server read capsules from those links.
Asking in a comment
Section titled “Asking in a comment”When an issue is already stuck at “cannot reproduce”:
We can't reproduce this. Could you run the failing command through twin and attachthe file it writes? It needs Node 22+, uploads nothing, and shows you everything beforewriting it:
npm install -g @crypticsaiyan/twincli twin capture -- <the command that fails>
If the value of an environment variable might matter and it's not secret, add`--include-env NAME`.Name the command you want captured if you know it, because a single test file replays faster than the whole suite. Capture your own passing run at the same commit, so you can run bisect as soon as the reporter’s capsule arrives. If reporters ask what is recorded, link them to Privacy and redaction.