From 3561025dfce94f1a30a6aad13efb4771f9d97311 Mon Sep 17 00:00:00 2001 From: lmiranda Date: Wed, 28 Jan 2026 17:10:49 -0500 Subject: [PATCH] feat(projman): add visual output requirements to agents and commands Add Visual Output sections to all projman files: - 4 agent files with phase-specific headers (PLANNING, EXECUTION, CLOSING) - 16 command files with appropriate headers Headers use double-line box characters for projman branding: - Planning phase: TARGET PLANNING - Execution phase: LIGHTNING EXECUTION (+ progress block for orchestrator) - Closing phase: FLAG CLOSING - Setup commands: GEAR SETUP Closes #273, #274 Co-Authored-By: Claude Opus 4.5 --- plugins/projman/agents/code-reviewer.md | 29 ++++++++++++ plugins/projman/agents/executor.md | 32 +++++++++++++ plugins/projman/agents/orchestrator.md | 51 +++++++++++++++++++++ plugins/projman/agents/planner.md | 32 +++++++++++++ plugins/projman/commands/debug-report.md | 13 ++++++ plugins/projman/commands/debug-review.md | 13 ++++++ plugins/projman/commands/initial-setup.md | 14 ++++++ plugins/projman/commands/labels-sync.md | 13 ++++++ plugins/projman/commands/project-init.md | 14 ++++++ plugins/projman/commands/project-sync.md | 14 ++++++ plugins/projman/commands/proposal-status.md | 13 ++++++ plugins/projman/commands/review.md | 14 ++++++ plugins/projman/commands/sprint-close.md | 16 +++++++ plugins/projman/commands/sprint-diagram.md | 13 ++++++ plugins/projman/commands/sprint-plan.md | 14 ++++++ plugins/projman/commands/sprint-start.md | 16 +++++++ plugins/projman/commands/sprint-status.md | 22 +++++++++ plugins/projman/commands/suggest-version.md | 13 ++++++ plugins/projman/commands/test-check.md | 14 ++++++ plugins/projman/commands/test-gen.md | 13 ++++++ 20 files changed, 373 insertions(+) diff --git a/plugins/projman/agents/code-reviewer.md b/plugins/projman/agents/code-reviewer.md index 905ffc6..d5d454e 100644 --- a/plugins/projman/agents/code-reviewer.md +++ b/plugins/projman/agents/code-reviewer.md @@ -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. +## 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 - Identify issues that should be fixed before work is marked complete diff --git a/plugins/projman/agents/executor.md b/plugins/projman/agents/executor.md index 7291066..0ad1588 100644 --- a/plugins/projman/agents/executor.md +++ b/plugins/projman/agents/executor.md @@ -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.** +## 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 **Implementation-Focused:** diff --git a/plugins/projman/agents/orchestrator.md b/plugins/projman/agents/orchestrator.md index c13c3b1..26d1e10 100644 --- a/plugins/projman/agents/orchestrator.md +++ b/plugins/projman/agents/orchestrator.md @@ -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.** +## 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 **Concise and Action-Oriented:** diff --git a/plugins/projman/agents/planner.md b/plugins/projman/agents/planner.md index 0272650..e5ffe5e 100644 --- a/plugins/projman/agents/planner.md +++ b/plugins/projman/agents/planner.md @@ -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.** +## 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 **Thoughtful and Methodical:** diff --git a/plugins/projman/commands/debug-report.md b/plugins/projman/commands/debug-report.md index b1297f4..b6d7cd9 100644 --- a/plugins/projman/commands/debug-report.md +++ b/plugins/projman/commands/debug-report.md @@ -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` - 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 + +## Visual Output + +When executing this command, display the plugin header: + +``` +╔══════════════════════════════════════════════════════════════════╗ +║ 📋 PROJMAN ║ +║ Debug Report ║ +╚══════════════════════════════════════════════════════════════════╝ +``` + +Then proceed with the diagnostic workflow. diff --git a/plugins/projman/commands/debug-review.md b/plugins/projman/commands/debug-review.md index 8dc4ed2..1377716 100644 --- a/plugins/projman/commands/debug-review.md +++ b/plugins/projman/commands/debug-review.md @@ -572,3 +572,16 @@ Error Message → File to Check "labels not found" → labels.py, gitea_client.py "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. diff --git a/plugins/projman/commands/initial-setup.md b/plugins/projman/commands/initial-setup.md index a126798..7e767e6 100644 --- a/plugins/projman/commands/initial-setup.md +++ b/plugins/projman/commands/initial-setup.md @@ -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 This command is safe to run multiple times: diff --git a/plugins/projman/commands/labels-sync.md b/plugins/projman/commands/labels-sync.md index 02b2004..fb30561 100644 --- a/plugins/projman/commands/labels-sync.md +++ b/plugins/projman/commands/labels-sync.md @@ -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 - 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 Run `/labels-sync` when: diff --git a/plugins/projman/commands/project-init.md b/plugins/projman/commands/project-init.md index fb081c0..a862df3 100644 --- a/plugins/projman/commands/project-init.md +++ b/plugins/projman/commands/project-init.md @@ -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 **MCP tools not working?** diff --git a/plugins/projman/commands/project-sync.md b/plugins/projman/commands/project-sync.md index 66bf4dd..918984f 100644 --- a/plugins/projman/commands/project-sync.md +++ b/plugins/projman/commands/project-sync.md @@ -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 **"Repository not found" but it exists:** diff --git a/plugins/projman/commands/proposal-status.md b/plugins/projman/commands/proposal-status.md index 3c1b5b4..0ab4fea 100644 --- a/plugins/projman/commands/proposal-status.md +++ b/plugins/projman/commands/proposal-status.md @@ -119,3 +119,16 @@ Summary: **Lesson Linking:** - Search lessons with implementation link in metadata - 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. diff --git a/plugins/projman/commands/review.md b/plugins/projman/commands/review.md index 963aab2..e80045c 100644 --- a/plugins/projman/commands/review.md +++ b/plugins/projman/commands/review.md @@ -74,6 +74,20 @@ Otherwise, review staged changes or changes in the last 5 commits. 3. Compile findings into the structured report 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 - Rewrite or refactor code automatically diff --git a/plugins/projman/commands/sprint-close.md b/plugins/projman/commands/sprint-close.md index d18f1f1..cf4d829 100644 --- a/plugins/projman/commands/sprint-close.md +++ b/plugins/projman/commands/sprint-close.md @@ -284,6 +284,22 @@ Would you like me to handle git operations? [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 Simply run `/sprint-close` when your sprint is complete. The orchestrator will guide you through: diff --git a/plugins/projman/commands/sprint-diagram.md b/plugins/projman/commands/sprint-diagram.md index 2c07d2d..1c32b5e 100644 --- a/plugins/projman/commands/sprint-diagram.md +++ b/plugins/projman/commands/sprint-diagram.md @@ -178,3 +178,16 @@ flowchart LR 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. diff --git a/plugins/projman/commands/sprint-plan.md b/plugins/projman/commands/sprint-plan.md index c2505b0..8d227c1 100644 --- a/plugins/projman/commands/sprint-plan.md +++ b/plugins/projman/commands/sprint-plan.md @@ -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 ``` +## Visual Output + +When executing this command, display the plugin header: + +``` +╔══════════════════════════════════════════════════════════════════╗ +║ 📋 PROJMAN ║ +║ 🎯 PLANNING ║ +║ Sprint Planning ║ +╚══════════════════════════════════════════════════════════════════╝ +``` + +Then proceed with the command workflow. + ## Getting Started Invoke the planner agent by providing your sprint goals. The agent will guide you through the planning process. diff --git a/plugins/projman/commands/sprint-start.md b/plugins/projman/commands/sprint-start.md index b19c4d5..7f6a73b 100644 --- a/plugins/projman/commands/sprint-start.md +++ b/plugins/projman/commands/sprint-start.md @@ -410,6 +410,22 @@ Executors save checkpoints after major steps: - [ ] 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 Simply invoke `/sprint-start` and the orchestrator will: diff --git a/plugins/projman/commands/sprint-status.md b/plugins/projman/commands/sprint-status.md index ccd76e1..5b88ce0 100644 --- a/plugins/projman/commands/sprint-status.md +++ b/plugins/projman/commands/sprint-status.md @@ -206,6 +206,28 @@ Run `/sprint-status` when you want to: - Use `/sprint-close` when all issues are completed - 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 ``` diff --git a/plugins/projman/commands/suggest-version.md b/plugins/projman/commands/suggest-version.md index 4253969..96d2c69 100644 --- a/plugins/projman/commands/suggest-version.md +++ b/plugins/projman/commands/suggest-version.md @@ -70,6 +70,19 @@ Analyze CHANGELOG.md and suggest appropriate semantic version bump. **Recommendation:** No release needed ``` +## Visual Output + +When executing this command, display the plugin header: + +``` +╔══════════════════════════════════════════════════════════════════╗ +║ 📋 PROJMAN ║ +║ Version Analysis ║ +╚══════════════════════════════════════════════════════════════════╝ +``` + +Then proceed with the version analysis. + ## Integration This command helps maintain proper versioning workflow: diff --git a/plugins/projman/commands/test-check.md b/plugins/projman/commands/test-check.md index 96b81bc..7beef5b 100644 --- a/plugins/projman/commands/test-check.md +++ b/plugins/projman/commands/test-check.md @@ -161,3 +161,17 @@ If framework not detected: 1. List what was checked 2. Ask user to specify the test command 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. diff --git a/plugins/projman/commands/test-gen.md b/plugins/projman/commands/test-gen.md index 9825571..2403ce0 100644 --- a/plugins/projman/commands/test-gen.md +++ b/plugins/projman/commands/test-gen.md @@ -111,6 +111,19 @@ pytest tests/test_orders.py -v | Cargo.toml | cargo test | | 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 - `/test-gen` creates new tests