Merge pull request 'feat(projman): add visual output requirements (Sprint 6 Batch 1)' (#284) from feat/sprint-6-projman-visual into development

Reviewed-on: #284
This commit was merged in pull request #284.
This commit is contained in:
2026-01-28 22:37:46 +00:00
20 changed files with 373 additions and 0 deletions

View File

@@ -7,6 +7,35 @@ description: Specialized agent for pre-sprint code quality review
You are a code quality reviewer focused on catching issues before sprint close. You are a code quality reviewer focused on catching issues before sprint close.
## Visual Output Requirements
**MANDATORY: Display header at start of every response.**
### Header Format
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ 🏁 CLOSING ║
║ Code Review: [Sprint Name] ║
╚══════════════════════════════════════════════════════════════════╝
```
Replace `[Sprint Name]` with the actual sprint/milestone name.
### When to Display Header
- At the start of every response
- After completing review of each file group
- In final review summary
### Nested Plugin Calls
If invoking another plugin during review, use indented single-line header:
```
┌──────────────────────────────────────────────────────────────────┐
│ [ICON] [PLUGIN-NAME] · [Action] (triggered by: projman) │
└──────────────────────────────────────────────────────────────────┘
```
## Your Role ## Your Role
- Identify issues that should be fixed before work is marked complete - Identify issues that should be fixed before work is marked complete

View File

@@ -31,6 +31,38 @@ curl -X POST "https://gitea.../api/..."
**If you find yourself about to run a bash command for Gitea, STOP and use the MCP tool instead.** **If you find yourself about to run a bash command for Gitea, STOP and use the MCP tool instead.**
## Visual Output Requirements
**MANDATORY: Display header at start of every response.**
### Header Format
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ ⚡ EXECUTION ║
║ [Issue Title] ║
╚══════════════════════════════════════════════════════════════════╝
```
Replace `[Issue Title]` with the issue being implemented.
### When to Display Header
- At the start of every response
- After completing a checkpoint
- When switching to a new issue
### Nested Plugin Calls
If invoking another plugin during execution, use indented single-line header:
```
┌──────────────────────────────────────────────────────────────────┐
│ [ICON] [PLUGIN-NAME] · [Action] (triggered by: projman) │
└──────────────────────────────────────────────────────────────────┘
```
### Header Refresh
For long implementation sessions, refresh the header periodically to maintain visual context.
## Your Personality ## Your Personality
**Implementation-Focused:** **Implementation-Focused:**

View File

@@ -36,6 +36,57 @@ curl -X POST "https://gitea.../api/..."
**If you find yourself about to run a bash command for Gitea, STOP and use the MCP tool instead.** **If you find yourself about to run a bash command for Gitea, STOP and use the MCP tool instead.**
## Visual Output Requirements
**MANDATORY: Display header at start of every response.**
### Header Format
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ ⚡ EXECUTION ║
║ [Sprint Name] ║
╚══════════════════════════════════════════════════════════════════╝
```
Replace `[Sprint Name]` with the actual sprint/milestone name.
### Sprint Progress Block
After the header, display a progress block:
```
┌─ Sprint Progress ────────────────────────────────────────────────┐
│ [Sprint Name] │
│ ████████████░░░░░░░░░░░░░░░░░░ 40% complete │
│ ✅ Done: 4 ⏳ Active: 2 ⬚ Pending: 4 │
│ Current: │
│ #271 ⏳ Implement header component │
│ #272 ⏳ Update agent instructions │
└──────────────────────────────────────────────────────────────────┘
```
### Progress Bar Calculation
- Width: 30 characters
- Filled: `█` (completed percentage)
- Empty: `░` (remaining percentage)
- Calculate: `(closed_issues / total_issues) * 30`
### When to Refresh
- At the start of every response
- After completing an issue
- When user requests status update
- After major phase transitions
### Nested Plugin Calls
If invoking another plugin, use indented single-line header:
```
┌──────────────────────────────────────────────────────────────────┐
│ [ICON] [PLUGIN-NAME] · [Action] (triggered by: projman) │
└──────────────────────────────────────────────────────────────────┘
```
## Your Personality ## Your Personality
**Concise and Action-Oriented:** **Concise and Action-Oriented:**

View File

@@ -36,6 +36,38 @@ curl -X POST "https://gitea.../api/..."
**If you find yourself about to run a bash command for Gitea, STOP and use the MCP tool instead.** **If you find yourself about to run a bash command for Gitea, STOP and use the MCP tool instead.**
## Visual Output Requirements
**MANDATORY: Display header at start of every response.**
### Header Format
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ 🎯 PLANNING ║
║ [Sprint Name] ║
╚══════════════════════════════════════════════════════════════════╝
```
Replace `[Sprint Name]` with the actual sprint/milestone name.
### When to Display Header
- At the start of every response
- After major phase transitions
- In final planning summary
### Nested Plugin Calls
If invoking another plugin during planning, use indented single-line header:
```
┌──────────────────────────────────────────────────────────────────┐
│ [ICON] [PLUGIN-NAME] · [Action] (triggered by: projman) │
└──────────────────────────────────────────────────────────────────┘
```
### Header Refresh
For long planning sessions, refresh the header periodically to maintain visual context.
## Your Personality ## Your Personality
**Thoughtful and Methodical:** **Thoughtful and Methodical:**

View File

@@ -686,3 +686,16 @@ and select "Report an issue I experienced" to describe it.
- Verify labels exist in the marketplace repo: `Source/Diagnostic`, `Type/Bug` - Verify labels exist in the marketplace repo: `Source/Diagnostic`, `Type/Bug`
- Check the label fetch output in Step 7.2 for errors - Check the label fetch output in Step 7.2 for errors
- If labels don't exist, create them first with `/labels-sync` in the marketplace repo - If labels don't exist, create them first with `/labels-sync` in the marketplace repo
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ Debug Report ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the diagnostic workflow.

View File

@@ -572,3 +572,16 @@ Error Message → File to Check
"labels not found" → labels.py, gitea_client.py "labels not found" → labels.py, gitea_client.py
"create local.*file" → Command .md file (DO NOT section) "create local.*file" → Command .md file (DO NOT section)
``` ```
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ Debug Review ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the investigation workflow.

View File

@@ -443,6 +443,20 @@ If something isn't working after restart, check:
--- ---
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ ⚙️ SETUP ║
║ Initial Setup Wizard ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the setup workflow.
## Re-Running This Command ## Re-Running This Command
This command is safe to run multiple times: This command is safe to run multiple times:

View File

@@ -158,6 +158,19 @@ When creating missing labels, match the format used by existing labels in the re
- Ensure you're running in a directory with a git repository - Ensure you're running in a directory with a git repository
- Check that the `origin` remote is configured - Check that the `origin` remote is configured
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ Labels Sync ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the sync workflow.
## When to Run ## When to Run
Run `/labels-sync` when: Run `/labels-sync` when:

View File

@@ -207,6 +207,20 @@ You're ready to use projman commands:
--- ---
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ ⚙️ SETUP ║
║ Project Initialization ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the project setup workflow.
## Troubleshooting ## Troubleshooting
**MCP tools not working?** **MCP tools not working?**

View File

@@ -180,6 +180,20 @@ MCP tools will now use the new repository.
--- ---
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ ⚙️ SETUP ║
║ Project Sync ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the sync workflow.
## Troubleshooting ## Troubleshooting
**"Repository not found" but it exists:** **"Repository not found" but it exists:**

View File

@@ -119,3 +119,16 @@ Summary:
**Lesson Linking:** **Lesson Linking:**
- Search lessons with implementation link in metadata - Search lessons with implementation link in metadata
- Or search by version/sprint tags - Or search by version/sprint tags
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ Proposal Status ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the status report.

View File

@@ -74,6 +74,20 @@ Otherwise, review staged changes or changes in the last 5 commits.
3. Compile findings into the structured report 3. Compile findings into the structured report
4. Provide recommendation: READY / NEEDS ATTENTION / BLOCK 4. Provide recommendation: READY / NEEDS ATTENTION / BLOCK
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ 🏁 CLOSING ║
║ Code Review ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the review workflow.
## Do NOT ## Do NOT
- Rewrite or refactor code automatically - Rewrite or refactor code automatically

View File

@@ -284,6 +284,22 @@ Would you like me to handle git operations?
[Y/n] [Y/n]
``` ```
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ 🏁 CLOSING ║
║ [Sprint Name] ║
╚══════════════════════════════════════════════════════════════════╝
```
Replace `[Sprint Name]` with the actual sprint/milestone name.
Then proceed with the sprint close workflow.
## Getting Started ## Getting Started
Simply run `/sprint-close` when your sprint is complete. The orchestrator will guide you through: Simply run `/sprint-close` when your sprint is complete. The orchestrator will guide you through:

View File

@@ -178,3 +178,16 @@ flowchart LR
Open: 16 | In Progress: 1 | Completed: 1 Open: 16 | In Progress: 1 | Completed: 1
``` ```
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ Sprint Diagram ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed to generate the diagram.

View File

@@ -375,6 +375,20 @@ Milestone: Sprint 17 - User Authentication (Due: 2025-02-01)
Wiki: https://gitea.example.com/org/repo/wiki/Change-V1.2.0%3A-Proposal Wiki: https://gitea.example.com/org/repo/wiki/Change-V1.2.0%3A-Proposal
``` ```
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ 🎯 PLANNING ║
║ Sprint Planning ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the command workflow.
## Getting Started ## Getting Started
Invoke the planner agent by providing your sprint goals. The agent will guide you through the planning process. Invoke the planner agent by providing your sprint goals. The agent will guide you through the planning process.

View File

@@ -410,6 +410,22 @@ Executors save checkpoints after major steps:
- [ ] Step 4 - [ ] Step 4
``` ```
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ ⚡ EXECUTION ║
║ [Sprint Name] ║
╚══════════════════════════════════════════════════════════════════╝
```
Replace `[Sprint Name]` with the actual sprint/milestone name from Gitea.
Then proceed with the command workflow.
## Getting Started ## Getting Started
Simply invoke `/sprint-start` and the orchestrator will: Simply invoke `/sprint-start` and the orchestrator will:

View File

@@ -206,6 +206,28 @@ Run `/sprint-status` when you want to:
- Use `/sprint-close` when all issues are completed - Use `/sprint-close` when all issues are completed
- Use `/sprint-plan` to adjust scope if blocked items can't be unblocked - Use `/sprint-plan` to adjust scope if blocked items can't be unblocked
## Visual Output
When executing this command, display the plugin header followed by a progress block:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ ⚡ EXECUTION ║
║ [Sprint Name] ║
╚══════════════════════════════════════════════════════════════════╝
┌─ Sprint Progress ────────────────────────────────────────────────┐
│ [Sprint Name] │
│ ████████████░░░░░░░░░░░░░░░░░░ 40% complete │
│ ✅ Done: 4 ⏳ Active: 2 ⬚ Pending: 4 │
└──────────────────────────────────────────────────────────────────┘
```
Replace `[Sprint Name]` with the actual sprint/milestone name. Calculate percentage from completed vs total issues.
Then proceed with the full status report.
## Example Usage ## Example Usage
``` ```

View File

@@ -70,6 +70,19 @@ Analyze CHANGELOG.md and suggest appropriate semantic version bump.
**Recommendation:** No release needed **Recommendation:** No release needed
``` ```
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ Version Analysis ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the version analysis.
## Integration ## Integration
This command helps maintain proper versioning workflow: This command helps maintain proper versioning workflow:

View File

@@ -161,3 +161,17 @@ If framework not detected:
1. List what was checked 1. List what was checked
2. Ask user to specify the test command 2. Ask user to specify the test command
3. Offer common suggestions based on file types found 3. Offer common suggestions based on file types found
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ 🏁 CLOSING ║
║ Test Verification ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the test check workflow.

View File

@@ -111,6 +111,19 @@ pytest tests/test_orders.py -v
| Cargo.toml | cargo test | | Cargo.toml | cargo test |
| mix.exs | ExUnit | | mix.exs | ExUnit |
## Visual Output
When executing this command, display the plugin header:
```
╔══════════════════════════════════════════════════════════════════╗
║ 📋 PROJMAN ║
║ Test Generation ║
╚══════════════════════════════════════════════════════════════════╝
```
Then proceed with the test generation workflow.
## Integration with /test-check ## Integration with /test-check
- `/test-gen` creates new tests - `/test-gen` creates new tests