Markdown Converter
Agent skill for markdown-converter
**Version:** 2.0 (MCP-Enhanced with Comment Parsing)
Sign in to like and favorite skills
Version: 2.0 (MCP-Enhanced with Comment Parsing)
Last Updated: 2025-01-30
Status: š¢ PRODUCTION READY
MCP Integration Status: ā ACTIVE
{ "provider": "GitHub Copilot + JIRA MCP", "cloud_id": "https://ndisapppoc.atlassian.net", "project_key": "JNF", "project_name": "JamesNDISFree", "api_version": "v3", "tools_enabled": [ "mcp_atlassian_getJiraIssue", "mcp_atlassian_addCommentToJiraIssue", "mcp_atlassian_editJiraIssue", "mcp_atlassian_transitionJiraIssue", "mcp_atlassian_searchJiraIssuesUsingJql", "mcp_atlassian_getTransitionsForJiraIssue" ], "authentication": "Automatic (GitHub Copilot context)" }
This system provides a complete, end-to-end workflow for actioning JIRA user stories using GitHub Copilot with MCP integration. The system automatically:
Use this system when:
Do NOT use this system for:
"Every user story action is a journey through 11 structured phases, with automatic JIRA feedback at key checkpoints."
Objective: Display the JIRA ticket with all context (description, acceptance criteria, comments) and await user confirmation.
Process:
Fetch ticket from JIRA using MCP:
mcp_atlassian_getJiraIssue( cloudId: "https://ndisapppoc.atlassian.net", issueIdOrKey: "[TICKET_ID]" // e.g., "JNF-2" )
Extract key fields:
Display formatted presentation:
š PHASE 1: USER STORY PRESENTATION - [TICKET_ID] āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā Ticket: [ID] Title: [Title] Status: [Status] Priority: [Priority] Epic: [Epic ID] - [Epic Title] [Description from JIRA] Acceptance Criteria: ā [Criterion 1] ā [Criterion 2] ā [Criterion 3] š TICKET COMMENTS & IMPLEMENTATION NOTES: Comment 1 (by [Author] - [Date]): [Full comment content] Comment 2 (by [Author] - [Date]): [Full comment content] ā Confirmation Question: Do you want to proceed? (YES/NO)
Parse comments for implementation guidance:
Await confirmation:
MCP Operations: 1 (fetch ticket)
Auto-JIRA Updates: None
User Action Required: YES/NO confirmation
Objective: Create a Git feature branch following consistent naming conventions.
Process:
Generate branch name from ticket:
feature/JNF-[ID]-[kebab-case-title] Example: feature/JNF-2-monorepo-bootstrap-pnpm-turborepo
Create branch (command provided):
git checkout -b feature/JNF-2-monorepo-bootstrap-pnpm-turborepo
Confirm branch creation:
MCP Operations: 0
Auto-JIRA Updates: None
User Action Required: Run git command
Objective: Deep-dive analysis of the user story using comments as primary context.
Process:
Extract from ticket comments:
Create analysis document:
# Story Analysis - [TICKET_ID] ## Requirements (from comments) - [Requirement 1] (from Comment X) - [Requirement 2] (from Comment Y) ## Implementation Constraints - [Constraint 1] - [Constraint 2] ## Tech Stack (from comments) - [Tech 1] - [Tech 2] ## Documentation References - [Doc 1] - [Doc 2] ## Pitfalls to Avoid - ā [Pitfall 1] - ā [Pitfall 2] ## Acceptance Criteria Checklist - [ ] [Criterion 1] - [ ] [Criterion 2] - [ ] [Criterion 3]
Validate understanding:
MCP Operations: 0
Auto-JIRA Updates: None
User Action Required: Review analysis, confirm ready
Objective: Review referenced documentation to build complete implementation context.
Process:
Identify documentation references from comments:
Extract relevant sections:
Create implementation playbook:
# Implementation Playbook - [TICKET_ID] ## Step 1: [First Task] Reference: [Doc Name] Pattern: [Pattern from doc] Code Example: [Code snippet] ## Step 2: [Second Task] ...
Confirm playbook ready:
MCP Operations: 0
Auto-JIRA Updates: None
User Action Required: Review playbook
Objective: Post implementation methodology to JIRA as a comment, establishing the approach before coding begins.
Process:
Create methodology comment:
**[Implementation Methodology Posted by GitHub Copilot]** Status: IN DEVELOPMENT (Phase 5 of 11) Started: [Current Date/Time] ## Approach I am following a structured 11-phase workflow to action this story. ## Comment Parsing - ā All ticket comments reviewed for implementation guidance - ā Key constraints identified: [List key constraints from comments] - ā Documentation references extracted: [Doc1, Doc2, ...] ## Phases 1-4 Complete - ā Phase 1: Story presented & confirmed - ā Phase 2: Feature branch created - ā Phase 3: Story analyzed using comments - ā Phase 4: Documentation reviewed ## Next Steps (Phases 6-11) - Phase 6: Begin implementation per playbook - Phase 7: Test implementation against acceptance criteria - Phase 8: Request approval - Phase 9: Commit & create PR - Phase 10: Post PR details & update status - Phase 11: Verify merge & close ticket ## Implementation Plan [High-level plan from Phase 4 playbook] --- _This comment tracks progress through the JIRA User Story Actioning System_
Post comment to JIRA using MCP:
mcp_atlassian_addCommentToJiraIssue( cloudId: "https://ndisapppoc.atlassian.net", issueIdOrKey: "[TICKET_ID]", commentBody: "[Methodology comment text above]" )
Confirm comment posted:
MCP Operations: 1 (post comment)
Auto-JIRA Updates: Comment posted
User Action Required: Confirm ready
Objective: Execute the implementation playbook from Phase 4.
Process:
Follow implementation playbook steps:
Commit regularly with semantic messages:
git commit -m "feat(JNF-2): Step 1 - [Description]" git commit -m "feat(JNF-2): Step 2 - [Description]"
Check acceptance criteria incrementally:
MCP Operations: 0
Auto-JIRA Updates: None
User Action Required: Execute implementation
Objective: Verify the implementation against all acceptance criteria.
Process:
Test each criterion:
ā Criterion 1: [Run test] ā PASS ā Criterion 2: [Run test] ā PASS ā Criterion 3: [Run test] ā PASS
Document test results:
# Test Results - [TICKET_ID] ## Local Testing - [Test 1]: PASS - [Test 2]: PASS - [Test 3]: PASS ## Notes - All acceptance criteria verified - Ready for approval
Confirm all criteria met:
MCP Operations: 0
Auto-JIRA Updates: None
User Action Required: Run tests, confirm results
Objective: Get sign-off before committing and creating PR.
Process:
Create approval summary:
# Ready for Approval - [TICKET_ID] ## What Was Implemented - [Summary from Phase 6] ## Acceptance Criteria - ALL MET ā - ā Criterion 1 - ā Criterion 2 - ā Criterion 3 ## Testing - All tests pass ā - Ready for code review ## Approval Question Do you approve proceeding to PR creation? (YES/NO)
Await approval:
MCP Operations: 0
Auto-JIRA Updates: None
User Action Required: YES/NO approval
Objective: Finalize commits and create GitHub PR.
Process:
Final commit:
git add . git commit -m "feat(JNF-[ID]): [Ticket Title] Complete implementation of [TICKET_ID]. All acceptance criteria met: - Criterion 1 - Criterion 2 - Criterion 3 Closes JNF-[ID]"
Push branch:
git push origin feature/JNF-[ID]-[title]
Create PR on GitHub:
Title: [TICKET_ID] - [Ticket Title] Body: ## Description Implementation of [TICKET_ID]: [Ticket Title] ## Type of Change - [ ] New Feature - [ ] Bug Fix - [ ] Performance Improvement - [ ] Documentation Update ## Testing All acceptance criteria verified: - ā Criterion 1 - ā Criterion 2 - ā Criterion 3 ## Related Issue Closes #[JIRA_TICKET_ID] ([Ticket Title])
Confirm PR created:
MCP Operations: 0
Auto-JIRA Updates: None (will happen in Phase 10)
User Action Required: Create PR
Objective: Post PR details to JIRA and transition status to "In Review".
Process:
Create PR details comment:
**[PR Created - Awaiting Review]** GitHub PR: #[PR_NUMBER] Branch: feature/JNF-[ID]-[title] All acceptance criteria verified ā Ready for code review. [Link to PR on GitHub]
Post comment to JIRA using MCP:
mcp_atlassian_addCommentToJiraIssue( cloudId: "https://ndisapppoc.atlassian.net", issueIdOrKey: "[TICKET_ID]", commentBody: "[PR details comment above]" )
Transition JIRA status to "In Review" using MCP:
mcp_atlassian_transitionJiraIssue( cloudId: "https://ndisapppoc.atlassian.net", issueIdOrKey: "[TICKET_ID]", transition: { id: "[IN_REVIEW_TRANSITION_ID]" } )
Confirm updates:
MCP Operations: 2 (post comment + transition status)
Auto-JIRA Updates: Comment posted + Status changed
User Action Required: Confirm ready
Objective: Wait for PR merge, post completion comment, and close ticket.
Process:
Await PR merge:
Confirm merge:
PR #[PR_NUMBER] has been merged to main ā
Create completion comment:
**[Implementation Complete - PR Merged]** PR #[PR_NUMBER] successfully merged to main branch. ā All acceptance criteria met ā Code reviewed and approved ā PR merged Implementation complete. Story ready for closure.
Post completion comment to JIRA using MCP:
mcp_atlassian_addCommentToJiraIssue( cloudId: "https://ndisapppoc.atlassian.net", issueIdOrKey: "[TICKET_ID]", commentBody: "[Completion comment above]" )
Transition JIRA status to "Done" using MCP:
mcp_atlassian_transitionJiraIssue( cloudId: "https://ndisapppoc.atlassian.net", issueIdOrKey: "[TICKET_ID]", transition: { id: "[DONE_TRANSITION_ID]" } )
Confirm ticket closed:
MCP Operations: 2 (post comment + transition status)
Auto-JIRA Updates: Comment posted + Status changed to Done
User Action Required: Confirm PR merged
Ticket comments are the PRIMARY SOURCE OF IMPLEMENTATION GUIDANCE.
In each phase, comments are used for:
| Phase | How Comments Used |
|---|---|
| 1 | Display all comments to user for context |
| 2 | Inform branch naming conventions (if mentioned) |
| 3 | Extract requirements + constraints from comments |
| 4 | Identify referenced documentation |
| 5 | Summarize comment parsing in methodology post |
| 6 | Guide implementation per comment guidance |
| 7 | Verify acceptance criteria mentioned in comments |
| 8 | Confirm implementation follows comment approach |
| 9-11 | Reference comment guidance in PR description |
For each comment in the ticket:
Extract author + timestamp
Author: [Name] Date: [ISO Date]
Identify content type:
Extract key points:
For each paragraph: - Is this a requirement? ā Add to requirements list - Is this a pitfall? ā Add to pitfalls list - Is this a reference? ā Add to documentation list - Is this a constraint? ā Add to constraints list
Create structured summary:
Comment 1: [Author] - [Type] Key Requirements: - [Requirement 1] - [Requirement 2] Key Constraints: - [Constraint 1] Documentation References: - [Doc 1]
Use throughout workflow
Comment 1: Solution Notes
Extract: - Type: Solution Guidance - Requirements: pnpm workspaces, Turborepo, basic packages - Constraints: Must follow IMPLEMENTATION-INDEX.md patterns - Docs: ultimate-detailed-implementation.md (examples)
Comment 2: Monorepo bootstrap key considerations
Extract: - Type: Detailed Implementation Guidance - 16 subsections covering: toolchain, layout, pnpm, Turbo, TS, bundling, testing, linting, CI/CD, env, release, ownership, DX, data, observability, performance, pitfalls - Key Constraints: Specific pnpm/Turbo configuration patterns - Pitfalls: Multiple explicit warnings (missing transpilePackages, lost peer deps, etc.)
Use in workflow:
START: User says "I want to action JNF-[ID]" ā āāā Fetch JNF-[ID] from JIRA ā ā āāā Extract & display: ā - Ticket metadata ā - Description ā - Acceptance criteria ā - ALL comments (with author + timestamp) ā āāā Parse comments for key guidance ā āāā Ask: "Do you want to proceed?" ā āā YES ā ā Continue to Phase 2 ā āā NO ā Ask for different ticket User says: "I want to action JNF-[NEW_ID]" Loop back to START
START: Phase 7 - Testing ā āāā For each acceptance criterion: ā - Run test ā - Check result ā āāā All criteria pass? ā ā ā ā āā YES ā Phase 8: Approval ā āā Some fail? ā ā āā Identify failures ā āā Return to Phase 6 ā āā Fix implementation ā āā Re-test ā Loop back to START
START: Phase 8 - Ready for approval ā āāā Display approval summary: ā - Implementation summary ā - All criteria met ā - Test results ā āāā Ask: "Do you approve?" ā āā YES ā ā Phase 9: Commit & PR ā āā NO ā Phase 6: Revisions ā āā Return to implementation ā āā Re-test & come back to Phase 8
**[Implementation Methodology Posted by GitHub Copilot]** Status: IN DEVELOPMENT (Phase 5 of 11) Started: [Date/Time] ## Comment Parsing Complete ā All ticket comments reviewed ā Key constraints identified: - [Constraint 1 from comments] - [Constraint 2 from comments] - [Constraint 3 from comments] ā Documentation references extracted: - [Doc 1] - [Doc 2] ## Phases 1-4 Complete - ā Phase 1: Story presented & confirmed - ā Phase 2: Feature branch created - ā Phase 3: Story analyzed using comments - ā Phase 4: Documentation reviewed ## Implementation Playbook [Phase 4 playbook steps] ## Next: Phase 6 Implementation Ready to proceed with implementation per above playbook.
## [TICKET_ID] - [Ticket Title] ### Description Implementation of [TICKET_ID]: [Ticket Title] ### Comment Guidance Used This implementation follows guidance from [# of comments] ticket comments: - Comment 1: [Key guidance from comment 1] - Comment 2: [Key guidance from comment 2] ### Acceptance Criteria - ALL MET ā - ā [Criterion 1] - ā [Criterion 2] - ā [Criterion 3] ### Testing All acceptance criteria verified locally: - [Test result 1] - [Test result 2] - [Test result 3] ### Files Changed - [File 1] - [File 2] - [File 3] ### Related Issue Closes [TICKET_ID] - [Ticket Title]
Symptom: "JNF-[ID] not found in JIRA"
Recovery:
https://ndisapppoc.atlassian.netSymptom: "Cannot connect to JIRA MCP"
Recovery:
Symptom: Phase 7 tests fail
Recovery:
Symptom: "Failed to post comment to [TICKET_ID]"
Recovery:
Symptom: "Cannot transition [TICKET_ID] to [STATUS]"
Recovery:
mcp_atlassian_getTransitionsForJiraIssue( cloudId: "https://ndisapppoc.atlassian.net", issueIdOrKey: "[TICKET_ID]" )
Say to GitHub Copilot:
Load the JIRA User Story Actioning System from: Documentation/JIRA-USER-STORY-SYSTEM-PROMPT.md I want to action user story [JNF-ID]
System will automatically:
Follow the prompts at each phase
Ticket automatically closes after Phase 11 merge
| Phase | MCP Calls | Operations |
|---|---|---|
| 1 | 1 | Fetch ticket (+ all comments) |
| 2 | 0 | None |
| 3 | 0 | None |
| 4 | 0 | None |
| 5 | 1 | Post methodology comment |
| 6 | 0 | None |
| 7 | 0 | None |
| 8 | 0 | None |
| 9 | 0 | None |
| 10 | 2 | Post PR comment + transition status |
| 11 | 2 | Post completion comment + close ticket |
| TOTAL | 7 | 1 fetch + 5 comments + 2 transitions |
Load this prompt into GitHub Copilot to activate the complete JIRA User Story Actioning System.