Skip to content

feat(cis): convert storytelling to a native skill#8

Merged
bmadcode merged 1 commit intobmad-code-org:mainfrom
dickymoore:feature/native-skills-storytelling-slice
Mar 14, 2026
Merged

feat(cis): convert storytelling to a native skill#8
bmadcode merged 1 commit intobmad-code-org:mainfrom
dickymoore:feature/native-skills-storytelling-slice

Conversation

@dickymoore
Copy link
Copy Markdown
Contributor

@dickymoore dickymoore commented Mar 12, 2026

Summary

  • convert src/workflows/storytelling/ to native skill shape at src/workflows/bmad-cis-storytelling/
  • update the storyteller agent to execute the canonical CIS skill id
  • preserve storyteller sidecar loads, communication-language behavior, and the existing checkpointed session flow

Proof

  • npm test
  • node test/test-installation-components.js
  • fresh custom-content install proof against the CIS src/ tree
  • same-context old-vs-new walkthrough found no material drift in flow, checkpoints, sidecar loads, or language handling

Deferred / Notes

  • the walkthrough proof is structural/file-based rather than a side-by-side executed runtime transcript
  • preserved the pre-existing mismatch where workflow text references key_elements / best_for while story-types.csv provides key_questions

Summary by CodeRabbit

  • New Features

    • Storytelling workflow transitioned to native skill format with enhanced workflow structure.
  • Documentation

    • Updated workflow documentation to reflect new storytelling workflow organization and structure.
  • Refactor

    • Migrated storytelling workflow from legacy configuration format to new native skill-based format.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 12, 2026

Warning

Rate limit exceeded

@bmadcode has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 28 minutes and 21 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 08d34257-d170-4e76-af9b-75d5a5334bf0

📥 Commits

Reviewing files that changed from the base of the PR and between 58d75be and 8287d17.

⛔ Files ignored due to path filters (2)
  • src/module-help.csv is excluded by !**/*.csv
  • src/workflows/bmad-cis-storytelling/story-types.csv is excluded by !**/*.csv
📒 Files selected for processing (9)
  • src/agents/storyteller/storyteller.agent.yaml
  • src/workflows/README.md
  • src/workflows/bmad-cis-storytelling/SKILL.md
  • src/workflows/bmad-cis-storytelling/bmad-skill-manifest.yaml
  • src/workflows/bmad-cis-storytelling/template.md
  • src/workflows/bmad-cis-storytelling/workflow.md
  • src/workflows/storytelling/README.md
  • src/workflows/storytelling/instructions.md
  • src/workflows/storytelling/workflow.yaml

Walkthrough

The storytelling workflow directory is migrated from storytelling/ to bmad-cis-storytelling/ with a new skill-based structure. The legacy format (workflow.yaml + instructions.md) is replaced with a skill format (SKILL.md + workflow.md + bmad-skill-manifest.yaml). Configuration references and documentation are updated accordingly.

Changes

Cohort / File(s) Summary
Documentation and Manifest Updates
AGENTS.md, src/workflows/README.md
Updated folder references from storytelling to bmad-cis-storytelling and documented dual workflow formats (legacy and native skill). Added new workflow structure definitions.
Agent Configuration
src/agents/storyteller/storyteller.agent.yaml
Updated exec path from workflow.yaml to SKILL.md for the first menu trigger, changing the execution target to the new skill format.
New Skill Implementation
src/workflows/bmad-cis-storytelling/SKILL.md, src/workflows/bmad-cis-storytelling/bmad-skill-manifest.yaml, src/workflows/bmad-cis-storytelling/workflow.md
Added new skill-based storytelling workflow with manifest declaration, skill entry point, and comprehensive 10-step workflow definition including initialization, execution flow, template outputs, and final file generation.
Removed Legacy Files
src/workflows/storytelling/README.md, src/workflows/storytelling/instructions.md, src/workflows/storytelling/workflow.yaml
Deleted legacy storytelling workflow structure including configuration file, instructions documentation, and README, as functionality migrates to new skill format.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Poem

🐰 With whiskers twitching in delight,
A folder's born, so fresh and bright,
From storytelling's old, worn frame,
To bmad-cis-storytelling's name!
Skills emerge with structure grand,
Narrative magic, neatly planned! 📖✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'feat(cis): convert storytelling to a native skill' accurately and concisely describes the main change: migrating the storytelling workflow from its current structure to a native skill format.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@src/workflows/bmad-cis-storytelling/workflow.md`:
- Line 89: The workflow expects CSV columns named story_type, name, description,
key_elements, and best_for but the actual CSV (story-types.csv) uses
key_questions and lacks best_for, causing runtime failures; fix this by either
updating story-types.csv to add the missing key_elements (pipe-separated values)
and best_for columns with appropriate values, or modify the workflow parsing
logic in workflow.md to read key_questions (and map it to the workflow's
key_elements variable or rename uses of key_elements to key_questions) and
handle the absent best_for (e.g., default or optional field), ensuring all
references to story_type, name, description, key_elements/best_for are
consistent.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: dfd07a26-3a28-4a23-ab0d-d452dfb688c3

📥 Commits

Reviewing files that changed from the base of the PR and between 131768f and 58d75be.

⛔ Files ignored due to path filters (2)
  • src/module-help.csv is excluded by !**/*.csv
  • src/workflows/bmad-cis-storytelling/story-types.csv is excluded by !**/*.csv
📒 Files selected for processing (10)
  • AGENTS.md
  • src/agents/storyteller/storyteller.agent.yaml
  • src/workflows/README.md
  • src/workflows/bmad-cis-storytelling/SKILL.md
  • src/workflows/bmad-cis-storytelling/bmad-skill-manifest.yaml
  • src/workflows/bmad-cis-storytelling/template.md
  • src/workflows/bmad-cis-storytelling/workflow.md
  • src/workflows/storytelling/README.md
  • src/workflows/storytelling/instructions.md
  • src/workflows/storytelling/workflow.yaml
💤 Files with no reviewable changes (3)
  • src/workflows/storytelling/workflow.yaml
  • src/workflows/storytelling/README.md
  • src/workflows/storytelling/instructions.md

<step n="2" goal="Select story framework">
Load story frameworks from `{story_frameworks_file}`.

Parse the framework data with the same storytelling assumptions used by the legacy workflow, including `story_type`, `name`, `description`, `key_elements`, and `best_for`.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check the actual column headers in story-types.csv
fd -t f 'story-types.csv' --exec head -1 {}

Repository: bmad-code-org/bmad-module-creative-intelligence-suite

Length of output: 147


🏁 Script executed:

cd src/workflows/bmad-cis-storytelling && head -100 workflow.md | tail -20

Repository: bmad-code-org/bmad-module-creative-intelligence-suite

Length of output: 1011


🏁 Script executed:

grep -n "key_elements\|best_for\|key_questions" src/workflows/bmad-cis-storytelling/workflow.md

Repository: bmad-code-org/bmad-module-creative-intelligence-suite

Length of output: 426


CSV column mismatch will cause runtime failures.

The workflow references key_elements and best_for columns (lines 89, 139–140), but story-types.csv contains key_questions instead and lacks best_for entirely. The workflow explicitly parses pipe-separated key_elements that don't exist in the data source. Update the CSV to include the required columns or revise the workflow to use the actual key_questions column.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/workflows/bmad-cis-storytelling/workflow.md` at line 89, The workflow
expects CSV columns named story_type, name, description, key_elements, and
best_for but the actual CSV (story-types.csv) uses key_questions and lacks
best_for, causing runtime failures; fix this by either updating story-types.csv
to add the missing key_elements (pipe-separated values) and best_for columns
with appropriate values, or modify the workflow parsing logic in workflow.md to
read key_questions (and map it to the workflow's key_elements variable or rename
uses of key_elements to key_questions) and handle the absent best_for (e.g.,
default or optional field), ensuring all references to story_type, name,
description, key_elements/best_for are consistent.

@bmadcode bmadcode force-pushed the feature/native-skills-storytelling-slice branch from 58d75be to 8287d17 Compare March 14, 2026 02:43
@bmadcode bmadcode merged commit e6f6439 into bmad-code-org:main Mar 14, 2026
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.

2 participants