bspec-story-sync
Skill1 starsChanged 6 months agoMITView on GitHub
Synchronization skill for Bruno's personal spec workflow. Decomposes the business PRD into small vertical stories and reconciles them into GitHub issues with stable labels, bodies, and safe update rules.
We split this skill into the rules it gives an agent
31 rules. About 0 are common, 21 are distinctive, and 10 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈21
Distinctive · estimate
This author's own choices. Worth a look.
10
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Use this skill only for converting the business PRD into GitHub story issues.
- Distinctive: line 16
Do not create local story tracking files.
- Very specific: line 26
write issue links back into the relevant PRD file inside prd_document
- Distinctive: line 32
prefer vertical slices over horizontal tasks
- Very specific: line 35
keep product scope anchored in prd_document
- Very specific: line 36
use approved architecture_document guidance to preserve technical constraints, not to redefine product scope
- Distinctive: line 37
use the shared workflow contract for story IDs, managed labels, status labels, and structured markers
- Very specific: line 71
use gh issue for issue creation and editing
- Very specific: line 72
use gh label when workflow labels from the shared workflow contract do not exist yet
- Very specific: line 74
prefer one area/<name> label when the PRD clearly implies a primary area
- Distinctive: line 79
Create labels from the shared workflow contract if they do not exist yet:
- Very specific: line 87
Use skills/bspec-story-sync/issue-template.md as the starting body template and rewrite the placeholders for the actual story.
- Distinctive: line 101
When the story already exists and is safe to update:
- Very specific: line 116
start from skills/bspec-story-sync/issue-template.md and replace the example content with story-specific content before publishing
- Distinctive: line 117
keep acceptance criteria executable and product-facing
- Distinctive: line 121
if a related ADR exists, link it without copying its contents
- Distinctive: line 122
prefer concise issue bodies over long design documents
- Distinctive: line 123
ensure there is exactly one workflow status label on the issue
- Distinctive: line 127
create a new issue when the story ID does not exist
- Distinctive: line 128
update an issue only when it is open and not actively being implemented or reviewed
- Distinctive: line 129
never silently overwrite in-progress, in-review, or closed issues
- Very specific: line 134
after creating or matching an issue, write the issue reference back into the owning PRD file inside the logical prd_document
- Distinctive: line 135
keep product intent and issue execution state separate: the PRD stores references, GitHub stores the executable story state
- Distinctive: line 136
place links near the relevant feature or story section inside the PRD file that owns it
- Very specific: line 137
prefer a compact subsection such as #### GitHub Issues
- Distinctive: line 138
use markdown links with both story ID and issue number when available
- Distinctive: line 139
if the story is project-level, place the linkback in the PRD index
- Distinctive: line 152
prefer issue state plus labels over local workflow files
- Distinctive: line 153
keep issue bodies concise and executable
- Distinctive: line 154
use the shared workflow contract as the source of truth for labels, status names, story IDs, and markers
- Distinctive: line 156
keep the PRD logically unified even when feature sections live in separate files
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Story Sync
Use this skill only for converting the business PRD into GitHub story issues.
Source Of Truth
prd_document= business and product truth, stored in one file or in an index plus section filesarchitecture_document= optional approved technical architecture guidance for issue references and constraints- GitHub issues = story truth
Do not create local story tracking files.
Responsibilities
- extract story-ready work from the PRD
- split large features into vertical slices
- format concise executable issue bodies
- create missing issues
- update safe-to-update issues
- bootstrap labels when needed
- write issue links back into the relevant PRD file inside
prd_document - preserve useful architecture references on issues
- report drift on active or closed issues
Story Rules
- prefer vertical slices over horizontal tasks
- each story should have one meaningful outcome
- each story should be small enough for one focused implementation cycle
- keep product scope anchored in
prd_document - use approved
architecture_documentguidance to preserve technical constraints, not to redefine product scope - use the shared workflow contract for story IDs, managed labels, status labels, and structured markers
Issue Template
Story-ID: US-001
## Story
As a <user>, I can <action> so that <outcome>.
## Acceptance Criteria
- ...
## Non-Goals
- ...
## Notes
- concise product-facing notes
## Technical Notes
- relevant architecture constraints or references
## Testing Notes
- relevant test cases or strategies
## PRD Trace
- prd_document: <file path> :: <section reference>
## Architecture Trace
- architecture_document: <section reference>GitHub Execution Rules
- use
gh issuefor issue creation and editing - use
gh labelwhen workflow labels from the shared workflow contract do not exist yet - apply the managed label, story label, and exactly one status label from the shared workflow contract
- prefer one
area/<name>label when the PRD clearly implies a primary area - preserve issue discussion history when updating existing issues
Label Bootstrap Example
Create labels from the shared workflow contract if they do not exist yet:
bash skills/bspec-story-sync/ensure-bspec-labels.shIssue Creation Example
Use skills/bspec-story-sync/issue-template.md as the starting body template and rewrite the placeholders for the actual story.
gh issue create \
--title "[US-001] User can create a project" \
--label "bspec" \
--label "story" \
--label "status/ready" \
--label "area/project-setup" \
--body-file skills/bspec-story-sync/issue-template.mdIssue Update Example
When the story already exists and is safe to update:
gh issue edit 123 \
--title "[US-001] User can create a project" \
--add-label "bspec" \
--add-label "story" \
--add-label "status/ready" \
--add-label "area/project-setup" \
--body-file /tmp/us-001-issue.mdIssue Body Rules
- keep
Story-IDstable - start from
skills/bspec-story-sync/issue-template.mdand replace the example content with story-specific content before publishing - keep acceptance criteria executable and product-facing
- include a
PRD Tracesection that points back to the canonical PRD file and section - include an
Architecture Tracesection when relevant approved architecture guidance exists - preserve lightweight
ArchitectureandADRsreference sections when updating existing issues - if a related ADR exists, link it without copying its contents
- prefer concise issue bodies over long design documents
- ensure there is exactly one workflow status label on the issue
Reconcile Rules
- create a new issue when the story ID does not exist
- update an issue only when it is open and not actively being implemented or reviewed
- never silently overwrite in-progress, in-review, or closed issues
- report drift clearly instead of forcing synchronization
PRD Linkback Rules
- after creating or matching an issue, write the issue reference back into the owning PRD file inside the logical
prd_document - keep product intent and issue execution state separate: the PRD stores references, GitHub stores the executable story state
- place links near the relevant feature or story section inside the PRD file that owns it
- prefer a compact subsection such as
#### GitHub Issues - use markdown links with both story ID and issue number when available
- if the story is project-level, place the linkback in the PRD index
Example:
#### GitHub Issues
- [US-001 / #123](https://github.com/example/repo/issues/123) User can create a projectRules
- preserve GitHub discussion history
- preserve existing lightweight
ArchitectureandADRsreferences on safe-to-update issues - prefer issue state plus labels over local workflow files
- keep issue bodies concise and executable
- use the shared workflow contract as the source of truth for labels, status names, story IDs, and markers
- replace old workflow status labels when changing issue state; do not accumulate multiple status labels
- keep the PRD logically unified even when feature sections live in separate files
In this repository36 other files it gives its agents.
- skills/backend-best-practices/AGENTS.mdAGENTS.md
- adr-writerSkill
- application-healthchecksSkill
- backend-best-practicesSkill
- bspec-prd-discoverySkill
- bspec-story-implementationSkill
- bspec-story-reviewSkill
- bspec-technical-architectureSkill
- bspec-workflowSkill
- conventional-commitsSkill
- copier-scaffoldSkill
- devenvSkill
- direnvSkill
- docker-composeSkill
- dockerfileSkill
- docker-setupSkill
- docs-writerSkill
- github-actions-dockerSkill
- gitleaks-setupSkill
- golang-developmentSkill
- golang-slogSkill
- golang-testingSkill
- playwright-devenvSkill
- project-webappSkill
- readme-writerSkill
- release-drafter-setupSkill
- release-drafterSkill
- release-notesSkill
- renovate-pr-triageSkill
- renovate-setupSkill
- structured-loggingSkill
- summarize-articleSkill
- summarize-youtube-videoSkill
- tailwind-v4Skill
- vicinae-extensionsSkill
- zensical-setupSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

