Skip to content

Convert correct-course workflow to native skill packaging#1942

Merged
alexeyv merged 6 commits intomainfrom
convert-correct-course-skill
Mar 14, 2026
Merged

Convert correct-course workflow to native skill packaging#1942
alexeyv merged 6 commits intomainfrom
convert-correct-course-skill

Conversation

@alexeyv
Copy link
Copy Markdown
Collaborator

@alexeyv alexeyv commented Mar 12, 2026

Summary

  • convert src/bmm/workflows/4-implementation/correct-course into native skill directory src/bmm/workflows/4-implementation/bmad-correct-course
  • set packaging to type: skill and add SKILL.md
  • preserve workflow/checklist behavior with only required name/path adjustments
  • update dependent references in module-help.csv, pm.agent.yaml, and sm.agent.yaml

Validation

  • node tools/cli/bmad-cli.js install --directory /Users/alex/src/bmad --modules bmm --tools claude-code --yes
  • verified installed output at /Users/alex/src/bmad/.claude/skills/bmad-correct-course/
  • verified manifest placement: present in _bmad/_config/skill-manifest.csv; absent from _bmad/_config/workflow-manifest.csv
  • functional equivalence (mechanical protocol): normalized old-vs-new parity PASS for workflow.md and checklist.md
  • npm test

@augmentcode
Copy link
Copy Markdown

augmentcode bot commented Mar 12, 2026

🤖 Augment PR Summary

Summary: Migrates the existing “correct-course” workflow into a native skill package (bmad-correct-course) while keeping the workflow/checklist behavior equivalent.


Changes: Adds SKILL.md + a type: skill manifest, adjusts internal path references, and updates PM/SM agent menu exec paths to point at the new directory.

🤖 Was this summary useful? React with 👍 or 👎

Copy link
Copy Markdown

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

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

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 12, 2026

📝 Walkthrough

Walkthrough

This PR reorganizes the "correct-course" workflow by renaming it to "bmad-correct-course" and relocating it to a new directory structure. Agent YAML files are updated to reference the new workflow path, and workflow metadata, manifests, and documentation files are added or migrated to the new location.

Changes

Cohort / File(s) Summary
Agent Workflow References
src/bmm/agents/pm.agent.yaml, src/bmm/agents/sm.agent.yaml
Updated exec paths for CC (correct-course) trigger from correct-course/workflow.md to bmad-correct-course/workflow.md.
New Workflow Directory Structure
src/bmm/workflows/4-implementation/bmad-correct-course/SKILL.md, src/bmm/workflows/4-implementation/bmad-correct-course/bmad-skill-manifest.yaml, src/bmm/workflows/4-implementation/bmad-correct-course/checklist.md, src/bmm/workflows/4-implementation/bmad-correct-course/workflow.md
Added SKILL.md entry point, skill manifest, and migrated/updated checklist and workflow files with renamed workflow ID (bmad-correct-course) and relative path references.
Old Workflow Manifest Cleanup
src/bmm/workflows/4-implementation/correct-course/bmad-skill-manifest.yaml
Removed manifest entry with canonicalId: bmad-correct-course, type: workflow, and associated description.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

Suggested reviewers

  • bmadcode
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the main change: converting a workflow into native skill packaging.
Description check ✅ Passed The description is directly related to the changeset, providing summary, validation details, and context for the workflow-to-skill conversion.
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
  • Commit unit tests in branch convert-correct-course-skill
📝 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.

Tip

CodeRabbit can suggest fixes for GitHub Check annotations.

Configure the reviews.tools.github-checks setting to adjust the time to wait for GitHub Checks to complete.

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/bmm/workflows/4-implementation/bmad-correct-course/workflow.md`:
- Around line 34-35: The installed_path variable is set to a relative path
(installed_path) which breaks the established convention used by other
workflows; update the definition of installed_path in workflow.md to the
absolute project path used elsewhere (for example set installed_path to
{project-root}/_bmad/bmm/workflows/4-implementation/bmad-correct-course) and
ensure checklist continues to reference it as checklist =
{installed_path}/checklist.md so the workflow matches sprint-planning and other
workflows.
🪄 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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 74e42df6-5d7d-41ed-b7b6-b205a611000c

📥 Commits

Reviewing files that changed from the base of the PR and between 75ec4aa and 29eea11.

⛔ Files ignored due to path filters (1)
  • src/bmm/module-help.csv is excluded by !**/*.csv
📒 Files selected for processing (7)
  • src/bmm/agents/pm.agent.yaml
  • src/bmm/agents/sm.agent.yaml
  • src/bmm/workflows/4-implementation/bmad-correct-course/SKILL.md
  • src/bmm/workflows/4-implementation/bmad-correct-course/bmad-skill-manifest.yaml
  • src/bmm/workflows/4-implementation/bmad-correct-course/checklist.md
  • src/bmm/workflows/4-implementation/bmad-correct-course/workflow.md
  • src/bmm/workflows/4-implementation/correct-course/bmad-skill-manifest.yaml
💤 Files with no reviewable changes (1)
  • src/bmm/workflows/4-implementation/correct-course/bmad-skill-manifest.yaml

Comment on lines 34 to 35
- `installed_path` = `.`
- `checklist` = `{installed_path}/checklist.md`
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 | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check how other workflows define installed_path
echo "=== installed_path patterns in workflow.md files ==="
rg -n "installed_path.*=" --type=md src/bmm/workflows/ -A0 | head -30

Repository: bmad-code-org/BMAD-METHOD

Length of output: 2296


🏁 Script executed:

ls -la src/bmm/workflows/4-implementation/bmad-correct-course/

Repository: bmad-code-org/BMAD-METHOD

Length of output: 441


🏁 Script executed:

# Check if checklist.md exists
find src/bmm/workflows/4-implementation/bmad-correct-course/ -name "checklist.md" -type f

Repository: bmad-code-org/BMAD-METHOD

Length of output: 136


🏁 Script executed:

# Check the full workflow file to see context around line 34-35
cat -n src/bmm/workflows/4-implementation/bmad-correct-course/workflow.md | sed -n '30,40p'

Repository: bmad-code-org/BMAD-METHOD

Length of output: 545


🏁 Script executed:

# Compare with sprint-planning workflow to see the pattern
cat -n src/bmm/workflows/4-implementation/sprint-planning/workflow.md | sed -n '27,35p'

Repository: bmad-code-org/BMAD-METHOD

Length of output: 514


🏁 Script executed:

# Search for any comments or documentation about this change
rg -B5 -A5 "installed_path.*\." src/bmm/workflows/4-implementation/bmad-correct-course/

Repository: bmad-code-org/BMAD-METHOD

Length of output: 1329


🏁 Script executed:

cat src/bmm/workflows/4-implementation/bmad-correct-course/SKILL.md

Repository: bmad-code-org/BMAD-METHOD

Length of output: 292


🏁 Script executed:

# Check how this workflow's paths are referenced in steps
grep -n "checklist\|installed_path" src/bmm/workflows/4-implementation/bmad-correct-course/workflow.md | head -20

Repository: bmad-code-org/BMAD-METHOD

Length of output: 758


🏁 Script executed:

# Compare with sprint-planning to see if there's a difference in how they reference paths
grep -n "checklist\|installed_path" src/bmm/workflows/4-implementation/sprint-planning/workflow.md | head -20

Repository: bmad-code-org/BMAD-METHOD

Length of output: 278


🏁 Script executed:

# Search for any documentation about path resolution in the codebase
rg "relative path\|installed_path.*resolution" --type=md -B2 -A2 | head -50

Repository: bmad-code-org/BMAD-METHOD

Length of output: 51


🏁 Script executed:

# Check if there are any other path references that might be affected
grep -n "\{installed_path\}\|{checklist}" src/bmm/workflows/4-implementation/bmad-correct-course/workflow.md

Repository: bmad-code-org/BMAD-METHOD

Length of output: 206


🏁 Script executed:

# Check if sprint-planning uses installed_path in similar ways
grep -n "\{installed_path\}\|{template}\|{checklist}" src/bmm/workflows/4-implementation/sprint-planning/workflow.md | head -15

Repository: bmad-code-org/BMAD-METHOD

Length of output: 184


Use absolute path for installed_path to match the established convention.

Every other workflow in the suite (15+ workflows) defines installed_path as an absolute path: {project-root}/_bmad/bmm/workflows/.... This workflow uses . instead, creating an unnecessary inconsistency. While the relative path works within skill path resolution semantics, the deviation makes the codebase harder to maintain and understand. Change line 34 to match the pattern used by sprint-planning and other workflows:

- `installed_path` = `{project-root}/_bmad/bmm/workflows/4-implementation/bmad-correct-course`
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/bmm/workflows/4-implementation/bmad-correct-course/workflow.md` around
lines 34 - 35, The installed_path variable is set to a relative path
(installed_path) which breaks the established convention used by other
workflows; update the definition of installed_path in workflow.md to the
absolute project path used elsewhere (for example set installed_path to
{project-root}/_bmad/bmm/workflows/4-implementation/bmad-correct-course) and
ensure checklist continues to reference it as checklist =
{installed_path}/checklist.md so the workflow matches sprint-planning and other
workflows.

@alexeyv alexeyv force-pushed the convert-correct-course-skill branch from 29eea11 to cc7e839 Compare March 14, 2026 11:36
alexeyv and others added 4 commits March 14, 2026 11:02
Remove installed_path, checklist, and project_context variables that
just indirected single-use hardcoded paths. Use bare values inline.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@alexeyv alexeyv merged commit 6a98b94 into main Mar 14, 2026
5 checks passed
@alexeyv alexeyv deleted the convert-correct-course-skill branch March 15, 2026 02:50
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.

1 participant