Skip to content

feat: multi-author support and full author attribution#97

Merged
whoabuddy merged 2 commits intomainfrom
feat/author-attribution
Mar 6, 2026
Merged

feat: multi-author support and full author attribution#97
whoabuddy merged 2 commits intomainfrom
feat/author-attribution

Conversation

@whoabuddy
Copy link
Contributor

Summary

  • Multi-author support (Support multiple authors in SKILL.md frontmatter #95): author and author_agent fields now accept bracket-list syntax (e.g. [cocoa007, sonic-mast]) using the existing parseBracketList() function. SkillEntry interface updated to string | string[]. Validation enforces parallel array lengths when both fields are lists.
  • Full author backfill (Audit existing author information #93): All 35 skills now have author and author_agent attribution based on PR merge history, confirmed by maintainer.

Attribution summary

Author Agent Name Skills
whoabuddy Trustless Indra 25 skills (wallet, bitflow, btc, stx, bns, sbtc, tokens, nft, ordinals, pillar, query, defi, credentials, settings, signing, stacking, x402, yield-hunter, stacks-market, stackspot, reputation, validation, identity, aibtc-news, aibtc-news-protocol)
arc0btc Trustless Indra ceo, taproot-multisig, styx
pbtc21 Tiny Marten business-dev, aibtc-news-deal-flow
[cocoa007, sonic-mast] [Fluid Briar, Sonic Mast] nostr (multi-author)
cocoa007 Fluid Briar yield-dashboard
sonic-mast Sonic Mast dual-stacking
secret-mars Secret Mars ordinals-p2p
k9dreamermacmini-coder (pending) onboarding

Closes #95
Closes #93

Test plan

  • bun run validate — 69/69 pass
  • bun run typecheck — clean
  • bun run manifest — 35 skills, all with author fields
  • Verify multi-author nostr skill renders correctly in skills.json
  • Verify validation catches mismatched author/author_agent list lengths

🤖 Generated with Claude Code

Add bracket-list syntax for author/author_agent fields in SKILL.md
frontmatter, with validation for parallel array lengths. Backfill
author attribution across all 35 skills based on PR merge history.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings March 6, 2026 20:35
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements two features: multi-author support for SKILL.md frontmatter (extending the author/author_agent fields to accept bracket-list syntax for collaborative skills) and a full backfill of author attribution across all 35 skills based on PR merge history.

Changes:

  • Multi-author support: SkillEntry interface updated to string | string[] for author/author_agent, parseFrontmatter extended to parse bracket-list syntax, and validate-frontmatter.ts adds enforcement of parallel array lengths when both fields are lists.
  • Author attribution backfill: All SKILL.md files now include author and author_agent fields; nostr/SKILL.md uses the new multi-author syntax [cocoa007, sonic-mast].
  • Manifest regenerated: skills.json updated to reflect all new attribution data and the new string | string[] type for nostr's author fields.

Reviewed changes

Copilot reviewed 33 out of 33 changed files in this pull request and generated no comments.

Show a summary per file
File Description
scripts/generate-manifest.ts Extends SkillEntry interface and parseFrontmatter to support string | string[] for author fields
scripts/validate-frontmatter.ts Adds validation to enforce parallel array lengths when author/author_agent are bracket-lists
nostr/SKILL.md Updates to multi-author format: [cocoa007, sonic-mast] / [Fluid Briar, Sonic Mast]
skills.json Regenerated manifest with author attribution for all 35 skills and array values for nostr
All other */SKILL.md files Add author and author_agent frontmatter fields for attribution backfill

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@whoabuddy
Copy link
Contributor Author

Note: Author attributions are best-effort based on PR merge history. Many skills were pushed to this repo by whoabuddy / Trustless Indra on behalf of the team — if you contributed a skill and want credit, please file an issue and we'll update the attribution.

@whoabuddy whoabuddy merged commit fc82ef7 into main Mar 6, 2026
1 check passed
@whoabuddy whoabuddy deleted the feat/author-attribution branch March 6, 2026 20:42
Copy link
Contributor

@JackBinswitch-btc JackBinswitch-btc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clean implementation of #95. The bracket-list approach for multi-author ([cocoa007, sonic-mast]) reuses the existing parseBracketList() and keeps the YAML frontmatter readable. Validation for parallel array lengths is a good guardrail.

One discrepancy to verify:

ceo/SKILL.md changes attribution FROM arc0btc / Trustless Indra TO pbtc21 / Tiny Marten. But the PR body attribution table lists:

  • arc0btc | Trustless Indra | ceo, taproot-multisig, styx
  • pbtc21 | Tiny Marten | business-dev, aibtc-news-deal-flow

The code and the table disagree on who authored ceo. Which is correct? If the table is right, the ceo/SKILL.md change should be reverted. If the code is right, the table needs updating.

Minor:

  • business-dev is listed in the attribution table under pbtc21 but doesn't appear in the diff -- is that skill not in the repo yet?
  • onboarding lists k9dreamermacmini-coder with _(pending)_ agent name -- worth a follow-up issue to resolve once the agent name is known?

Otherwise this is well-scoped and ready to go. Multi-author nostr rendering in skills.json looks correct (proper JSON arrays). Nice work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support multiple authors in SKILL.md frontmatter Audit existing author information

3 participants