From emasoft-assistant-manager-agent
Use when communicating with users for clarification, presenting options, requesting approval, or reporting completion. Trigger with user requests or communication needs.
npx claudepluginhub emasoft/emasoft-plugins --plugin emasoft-assistant-manager-agentThis skill uses the workspace's default tool permissions.
This skill teaches how to communicate with users effectively and consistently.
Runs the full Maestro workflow for complex engineering tasks requiring mandatory design dialogue, approved implementation plan, and execution with shared session state.
Routes natural language requests to skills and workflows by parsing intent and matching patterns for SDLC phases, gate checks, artifacts, security reviews, and marketing tasks.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Share bugs, ideas, or general feedback.
This skill teaches how to communicate with users effectively and consistently.
For ECOS coordination procedures (approval requests, autonomous mode, completions), see eama-ecos-coordination skill.
None required. This skill provides communication patterns that can be used immediately.
Copy this checklist and track your progress:
| Output Type | Format | When to Use |
|---|---|---|
| Clarification Request | Structured questions with specific information needs | When user input is incomplete or ambiguous |
| Option Presentation | Comparison table with pros/cons/effort estimates | When multiple approaches are viable |
| Approval Request | Action/Impact/Reversibility statement | Before any significant or irreversible operation |
| Completion Report | Summary with changes, verification steps, next actions | When task or subtask is finished |
| ECOS Handoff | AI Maestro message with handoff file UUID | When routing work to specialist agents |
| Status Update | Brief progress summary with blockers if any | During long-running operations |
When user input is incomplete:
I need clarification on the following:
1. [Specific question]
2. [Specific question]
Please provide:
- [What you need]
- [Format expected]
When presenting choices:
I've identified [N] options:
**Option A: [Name]**
- Pros: [list]
- Cons: [list]
- Effort: [estimate]
**Option B: [Name]**
...
Which would you prefer?
When needing approval:
**Approval Requested**
Action: [What will happen]
Impact: [What changes]
Reversible: Yes/No
Please respond with:
- "approve" to proceed
- "deny" to cancel
- "modify" to adjust
When work is done:
**Task Complete**
Summary: [1-2 sentences]
Changes made:
- [file: change]
Verification: [How to check]
Next steps: [What happens now]
When tasks are blocked and require user decisions, use the blocker notification templates. See references/blocker-notification-templates.md:
| Blocker Type | Notification Timing | Severity |
|---|---|---|
| Critical-path task with <48h deadline | Immediate | Critical |
| Cascade blocker (multiple tasks) | Immediate | High |
| Requires user credentials/access | Immediate | High |
| RULE 14 requirement conflict | Immediate | Critical |
| Non-critical task with no deadline | Next status report | Medium |
| External dependency | Next status report | Low |
| Technical blocker (agents can resolve) | No notification | N/A |
I need clarification on the following:
1. Should the login support both email and username?
2. What is the session timeout duration?
Please provide:
- Your preference for login identifiers
- Timeout in minutes (e.g., 30, 60, 120)
**Task Complete**
Summary: Implemented user login endpoint with OAuth2 support.
Changes made:
- src/auth/login.py: Added login handler
- src/auth/oauth.py: Added OAuth2 flow
- tests/test_login.py: Added 15 test cases
Verification: Run `pytest tests/test_login.py` - all tests should pass
Next steps: Proceed with logout endpoint implementation
| Error | Cause | Resolution |
|---|---|---|
| No user response | User inactive | Wait, then send gentle reminder |
| Ambiguous user input | Unclear response | Ask for specific clarification |
| Template mismatch | Wrong pattern selected | Re-evaluate and use correct template |
User: "I need to implement a new authentication module for the project. It should support OAuth2 and JWT tokens."
EAMA Response: "I understand you need a new authentication module with OAuth2 and JWT support. Let me route this to the Orchestrator for implementation.
Creating handoff file and routing to ECOS, which will coordinate with the Orchestrator agent to implement the authentication module with the specified requirements."
User: "Let ECOS handle routine development tasks for the next 4 hours while I'm in a meeting."
EAMA Response: "I'll grant ECOS autonomous mode for routine development operations with a 4-hour expiration.
Sending autonomy grant to ECOS with scope limited to routine-operation and minor-decision types on feature/* branches. ECOS will operate autonomously for these tasks but will still notify you of important completions and request approval for any critical operations."
[Send AI Maestro message with autonomy-grant type]
[ECOS sends approval request for staging deployment]
EAMA presents to user:
## ECOS Approval Request
**Operation**: Deploy v2.1.0 to staging environment
**Risk Level**: Medium (reversible)
**Affected Resources**: staging-server, staging-db
**Related Issues**: #89, #92
**ECOS Recommendation**: Approve
Do you approve this deployment?
- [Approve] - ECOS will proceed
- [Reject] - ECOS will cancel
- [Needs Revision] - ECOS will modify request
When routing work:
EAMA must proactively monitor ECOS health and responsiveness to prevent communication failures and ensure timely approval processing.
| Check Type | Frequency | Trigger |
|---|---|---|
| ECOS Health Check | Every 10 minutes | During active work sessions |
| AI Maestro Inbox | Every 2 minutes | For pending approval requests |
| ECOS Responsiveness Ping | When 15 minutes without response | After sending any message to ECOS |
Send a periodic ECOS health check every 10 minutes during active work using the agent-messaging skill:
ecos-<project-name>pinglowVerify: check inbox for a pong response within the timeout period.
Check your inbox every 2 minutes for approval requests using the agent-messaging skill. Filter for messages with content type approval_request.
If no response from ECOS after 15 minutes since last message sent, send an urgent ping using the agent-messaging skill:
ecos-<project-name>pingurgentIf ECOS fails to respond after the urgent ping (30 second timeout):
Verify ECOS Session Exists
Use the ai-maestro-agents-management skill to list agents and check if the ECOS session is still active.
Check AI Maestro Health
Use the agent-messaging skill's health check feature to verify AI Maestro is running.
Notify User
ECOS (ecos-<project-name>) is unresponsive.
Last successful contact: <timestamp>
Attempted recovery: <steps taken>
Options:
- [Restart ECOS] - Attempt to respawn ECOS session
- [Continue Without] - Proceed with reduced coordination
- [Investigate] - Check logs for error details
Attempt Recovery
Log Incident
Record the unresponsive incident in docs_dev/sessions/ecos-health-log.md
This script helps locate design documents when communicating with users:
| Script | Purpose | Usage |
|---|---|---|
eama_design_search.py | Search design documents for user queries | python scripts/eama_design_search.py --type <TYPE> --status <STATUS> |
Use eama_design_search.py when:
The script is located at ../../scripts/eama_design_search.py relative to this skill.
| Reference | Description |
|---|---|
| response-templates.md | User communication response templates |
| blocker-notification-templates.md | Templates for communicating task blockers to the user and handling their responses |