Request approval from manager (EAMA) for agent operations via AI Maestro
npx claudepluginhub emasoft/emasoft-plugins --plugin emasoft-chief-of-staff--type <TYPE> --agent <NAME> --reason <TEXT> [--urgent] [--timeout <SECONDS>]# Request Approval Command Request approval from the Assistant Manager (EAMA) for sensitive agent operations. Sends an approval request via AI Maestro messaging and optionally waits for response. ## Usage Send an approval request to EAMA using the `agent-messaging` skill: - **Recipient**: `emasoft-assistant-manager-agent` (EAMA) - **Subject**: `[APPROVAL REQUEST] <type>: <agent-name>` - **Content**: structured approval request with request ID, operation type, agent name, reason, and timestamp - **Priority**: `high` (or `urgent` if `--urgent` flag is set) **Verify**: confirm the approval...
/amoa-register-agentRegisters AI or human agents for module assignments in orchestration phase. Requires TYPE (ai/human), AGENT_ID, optional --session for AI; updates registered agents state file.
/human-oversight-protocolApplies human oversight protocol to <scope>, enforcing approval gates, intervention commands, transparency requirements, action classification, and plan reviews.
/agent-runStarts a new session on an Everruns agent using agent ID or name and initial message. Prints session ID and polls status once.
Share bugs, ideas, or general feedback.
Request approval from the Assistant Manager (EAMA) for sensitive agent operations. Sends an approval request via AI Maestro messaging and optionally waits for response.
Send an approval request to EAMA using the agent-messaging skill:
emasoft-assistant-manager-agent (EAMA)[APPROVAL REQUEST] <type>: <agent-name>high (or urgent if --urgent flag is set)Verify: confirm the approval request message was delivered to EAMA.
| Operation Type | Description | Risk Level |
|---|---|---|
spawn | Create a new remote agent | Medium |
terminate | Permanently delete an agent | High |
hibernate | Put agent into hibernation | Low |
wake | Wake a hibernated agent | Low |
install | Install plugin on agent | Medium |
replace | Replace agent with new instance | High |
modify-config | Change agent configuration | Medium |
| Argument | Required | Description |
|---|---|---|
--type <TYPE> | Yes | Operation type (spawn, terminate, hibernate, wake, install, replace) |
--agent <NAME> | Yes | Target agent name |
--reason <TEXT> | Yes | Justification for the operation |
--urgent | No | Mark as urgent priority (default: high) |
--timeout <SECONDS> | No | Wait for response (default: 0, no wait) |
--metadata <JSON> | No | Additional context as JSON string |
Each request gets a unique ID for tracking:
REQUEST_ID="ECOS-$(date +%Y%m%d%H%M%S)-$(openssl rand -hex 4)"
Example: ECOS-20250202150000-a1b2c3d4
# Request approval to spawn a new agent
/ecos-request-approval --type spawn --agent helper-tester \
--reason "Need additional agent for parallel test execution"
# Request approval to terminate an agent (high risk)
/ecos-request-approval --type terminate --agent old-worker --urgent \
--reason "Agent has critical bug and cannot recover"
# Request approval to install a plugin
/ecos-request-approval --type install --agent helper-python \
--reason "Agent needs emasoft-integrator plugin for CI/CD tasks" \
--metadata '{"plugin": "emasoft-integrator-agent"}'
# Request with wait for response
/ecos-request-approval --type hibernate --agent helper-docs \
--reason "Pausing documentation work until API is finalized" \
--timeout 60
The approval request is sent as a structured AI Maestro message:
Note: Use the
agent-messagingskill to send messages. The JSON structure below shows the message content.
{
"from": "emasoft-chief-of-staff",
"to": "emasoft-assistant-manager-agent",
"subject": "[APPROVAL REQUEST] terminate: helper-python",
"priority": "high",
"content": {
"type": "approval_request",
"request_id": "ECOS-20250202150000-a1b2c3d4",
"operation_type": "terminate",
"agent_name": "helper-python",
"reason": "Agent has critical bug and cannot recover",
"timestamp": "2025-02-02T15:00:00Z",
"metadata": {}
}
}
EAMA responds with an approval decision:
{
"type": "approval_response",
"request_id": "ECOS-20250202150000-a1b2c3d4",
"decision": "approved",
"conditions": [],
"notes": "Proceed with termination. Ensure work is backed up first.",
"timestamp": "2025-02-02T15:02:30Z"
}
Decision values: approved, rejected, deferred, needs_more_info
=======================================================================
APPROVAL REQUEST SUBMITTED
=======================================================================
Request ID: ECOS-20250202150000-a1b2c3d4
Operation: terminate
Target Agent: helper-python
Priority: high
Reason: Agent has critical bug and cannot recover
Status: PENDING - Awaiting EAMA response
=======================================================================
Use /ecos-check-approval-status --request-id ECOS-20250202150000-a1b2c3d4
to check the status of this request.
=======================================================================
Approval requests are logged to:
~/.aimaestro/approvals/pending/ECOS-20250202150000-a1b2c3d4.json
| Error | Cause | Solution |
|---|---|---|
| "AI Maestro not responding" | API unreachable | Check if AI Maestro is running |
| "EAMA not available" | Manager agent offline | Wait or contact user |
| "Invalid operation type" | Unknown type | Use valid type from list |
| "Missing required argument" | Incomplete command | Provide all required args |
Before requesting approval:
--urgent for time-sensitive situations/ecos-check-approval-status - Check status of pending approvals/ecos-wait-for-approval - Wait for approval with timeout/ecos-notify-manager - Send notification to manager/ecos-staff-status - View all agents