feat(agents): add Monster agent — Personal Project Orchestrator & AIOX Bridge#612
feat(agents): add Monster agent — Personal Project Orchestrator & AIOX Bridge#612DaSilvaAlves wants to merge 1 commit intoSynkraAI:mainfrom
Conversation
…X Bridge Adds Rex (@monster), a new orchestration agent that: - Provides unified view of all active projects with real-time status - Determines the exact next AIOX command via workflow-chains.yaml - Orchestrates agents automatically without requiring manual routing - Teaches AIOX to the IA AVANÇADA PT community with explain-first approach - Bridges all 12 core agents + 2 standalone skills + 14 workflows Also registers monster agent + project-status task + README task block in entity-registry.yaml (entityCount: 747). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
@DaSilvaAlves is attempting to deploy a commit to the Pedro Valério Lopez's projects Team on Vercel. A member of the Team first needs to authorize it. |
WalkthroughIntroduces two new files establishing the Monster agent specification and operational baseline. The monster.md file provides comprehensive definitions covering agent metadata, commands across multiple domains (project state, orchestration, teaching), workflow registry, orchestration rules, project state schema, and memory management. The MEMORY.md file captures the agent's initial state snapshot with project details and configuration data. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment Tip You can customize the high-level summary generated by CodeRabbit.Configure the |
There was a problem hiding this comment.
Welcome to aiox-core! Thanks for your first pull request.
What happens next?
- Automated checks will run on your PR
- A maintainer will review your changes
- Once approved, we'll merge your contribution!
PR Checklist:
- Tests pass (
npm test) - Linting passes (
npm run lint) - Commit messages follow Conventional Commits
Thanks for contributing!
There was a problem hiding this comment.
Actionable comments posted: 6
🧹 Nitpick comments (1)
.aiox-core/development/agents/monster.md (1)
942-948: Add language specifiers to fenced code blocks.Lines 942, 952, and 976 contain fenced code blocks without language specifiers. Adding language hints improves syntax highlighting and readability.
📝 Proposed fix
-``` +```text 1. Lê .aiox/status.json → que stories estão InProgress? qa loops activos? 2. Lê workflow-chains.yaml → qual é o step seguinte no chain actual? ...-
+text
Fontes lidas:
├── .aiox/status.json → stories, progress, qa loops
...-``` +```bash 1. `@monster` *kickoff meu-app --preset nextjs-react 2. `@monster` *next → `@sm` *draft initial-story ...As per static analysis, fenced code blocks should have a language specified.
Also applies to: 952-962, 976-984
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.aiox-core/development/agents/monster.md around lines 942 - 948, The markdown contains three fenced code blocks without language hints (the block showing the numbered read/execute steps, the "Fontes lidas:" block, and the block with example commands like "@monster *kickoff meu-app --preset nextjs-react"); update each fence to include an appropriate language specifier (e.g., use ```text for plain lists, ```text for "Fontes lidas:", and ```bash for the command examples) so syntax highlighting and readability are improved—locate the blocks by their contents (the numbered step list, the "Fontes lidas:" section, and the `@monster` command list) and replace the opening ``` with the chosen ```text or ```bash specifier.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.aiox-core/development/agents/monster.md:
- Line 544: Update the phase_to_agent_mapping entry for story_push to use a
single, consistent invocation style: decide whether the system uses the shortcut
agent token (*devops) or the standalone skill command (/github-devops) and
replace the mixed string `story_push: "*devops push ← via /github-devops com
CodeRabbit"` with the chosen form (e.g., `story_push: "*devops push"` or
`story_push: "/github-devops push"`). Ensure the change is applied where
phase_to_agent_mapping is defined and leave no in-line notes or mixed syntax in
the story_push value so callers of story_push see only the canonical invocation.
- Around line 325-330: Clarify the exclusive push authority between the core
agent id "@devops" and the standalone skill "/github-devops" by updating their
descriptions and orchestration rules: change the `@devops` entry to state whether
it is "superseded by /github-devops for push operations" (or specify it is
limited to "local/basic push only"), update the /github-devops entry to
explicitly state it is the preferred agent for EXCLUSIVE "push/PR to remote" and
mention any required quality gates (coderabbit, lint, test, typecheck, build),
and modify the auto_orchestrate rules (auto_orchestrate) to explicitly route or
delegate push operations to the chosen agent (e.g., next: /github-devops) and
document when to use `@devops` vs /github-devops so Monster will consistently
delegate push actions.
- Around line 867-868: The hardcoded Windows absolute paths for the standalone
skills (the "architect" and "github-devops" entries pointing to SKILL.md) reduce
portability; update these entries to use either repository-relative paths (e.g.,
relative paths to the skills directory) or environment-variable-based paths
(e.g., ${AIOX_SKILLS_PATH}/architect/SKILL.md) and add a brief note in the agent
README or setup docs stating that users must configure AIOX_SKILLS_PATH if they
use env vars; ensure the keys "architect" and "github-devops" still point to
valid locations after the change and include a fallback or validation note in
startup/setup instructions.
- Around line 830-868: The dependencies block is missing task entries for many
commands: ensure every command (e.g., status, briefing, projects, switch,
agents, delegate, preset, teach, onboard, explain, dashboard, report, watch,
remember, export-snapshot, help, guide, history, yolo, exit) has a corresponding
entry under dependencies.tasks, dependencies.workflows, or
dependencies.standalone_skills (or explicitly mark commands as requiring no
dependency); update the dependencies.tasks list to include the missing task file
names (or add appropriate workflow or standalone_skill references) and/or add a
clear "none" marker for utility commands so the commands-to-dependencies mapping
is complete and follows the guideline that "all commands listed have
corresponding task dependencies."
In @.aiox-core/development/agents/monster/MEMORY.md:
- Around line 183-198: The standalone_skills registry uses hardcoded absolute
Windows paths for the architect and github_devops entries (the path fields under
standalone_skills -> architect and -> github_devops); change these to either
relative paths (e.g., relative to the repo or a skills/ directory) or to
environment-variable placeholders (e.g., ${SKILL_ARCHITECT_PATH},
${SKILL_GITHUB_DEVOPS_PATH}) and update the MEMORY.md text to instruct users to
set those env vars or configure the skills path in their per-user setup; ensure
the entries keep the same keys (architect, github_devops) and invoke/shortcut
metadata intact so the rest of the system can locate them without using absolute
OS-specific paths.
- Around line 95-98: The item has contradictory metadata: the inline note reads
"Projecto greenfield — sem git inicializado. Usar *devops
environment-bootstrap." but the YAML sets project_type: brownfield; update one
to match the other so the classification is consistent. Either change
project_type to "greenfield" if the project truly lacks Git, or alter the note
to describe the brownfield state (e.g., existing codebase with Git) and keep
project_type: brownfield; make the change near the existing "project_type" key
and the note string so auto-orchestration sees a consistent value.
---
Nitpick comments:
In @.aiox-core/development/agents/monster.md:
- Around line 942-948: The markdown contains three fenced code blocks without
language hints (the block showing the numbered read/execute steps, the "Fontes
lidas:" block, and the block with example commands like "@monster *kickoff
meu-app --preset nextjs-react"); update each fence to include an appropriate
language specifier (e.g., use ```text for plain lists, ```text for "Fontes
lidas:", and ```bash for the command examples) so syntax highlighting and
readability are improved—locate the blocks by their contents (the numbered step
list, the "Fontes lidas:" section, and the `@monster` command list) and replace
the opening ``` with the chosen ```text or ```bash specifier.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 6544ead1-8e23-4ada-b5fc-5f8e254ca419
📒 Files selected for processing (3)
.aiox-core/data/entity-registry.yaml.aiox-core/development/agents/monster.md.aiox-core/development/agents/monster/MEMORY.md
| - id: "@devops" | ||
| name: Gage | ||
| role: DevOps (AIOX Core) | ||
| icon: 🚀 | ||
| primary_commands: [*push, *pre-push, *configure-ci, *release] | ||
| scope: CI/CD, git push EXCLUSIVE (core version) |
There was a problem hiding this comment.
Clarify exclusive push authority between @devops and /github-devops.
Both agents claim push authority:
- Line 330:
@devops(core) has "git push EXCLUSIVE (core version)" - Line 415:
/github-devops(standalone) has "authority: EXCLUSIVE push/PR to remote" - Line 413: "Usa SEMPRE este [/github-devops] para git push"
This ambiguity could lead Monster to delegate push operations inconsistently. The relevant code snippet from devops.md confirms @devops has exclusive authority with mandatory quality gates (coderabbit, lint, test, typecheck, build). However, the standalone skill appears to be the intended push agent based on "SEMPRE" (always) directive.
Recommendation: Clarify the relationship:
- If
/github-devopsis the preferred agent for push, update@devopscore description to indicate it's superseded by the standalone skill - If both are valid, document when to use each (e.g.,
@devopsfor basic push, /github-devops for advanced CodeRabbit integration) - Update auto_orchestrate rules (line 584) to specify which agent *next should call for push operations
Also applies to: 398-416
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.aiox-core/development/agents/monster.md around lines 325 - 330, Clarify the
exclusive push authority between the core agent id "@devops" and the standalone
skill "/github-devops" by updating their descriptions and orchestration rules:
change the `@devops` entry to state whether it is "superseded by /github-devops
for push operations" (or specify it is limited to "local/basic push only"),
update the /github-devops entry to explicitly state it is the preferred agent
for EXCLUSIVE "push/PR to remote" and mention any required quality gates
(coderabbit, lint, test, typecheck, build), and modify the auto_orchestrate
rules (auto_orchestrate) to explicitly route or delegate push operations to the
chosen agent (e.g., next: /github-devops) and document when to use `@devops` vs
/github-devops so Monster will consistently delegate push actions.
| story_implement: "@dev *develop {story-id}" | ||
| story_review: "@qa *review {story-id}" | ||
| story_fix: "@dev *apply-qa-fixes" | ||
| story_push: "*devops push ← via /github-devops com CodeRabbit" |
There was a problem hiding this comment.
Inconsistent agent reference in phase_to_agent_mapping.
Line 544 shows: story_push: "*devops push ← via /github-devops com CodeRabbit"
This mixes the command syntax (*devops) with a contradictory note about using /github-devops. This is a downstream effect of the @devops vs /github-devops authority ambiguity flagged earlier.
Recommendation: Once the exclusive push authority is clarified, update this mapping to use consistent notation, such as:
story_push: "*devops push"if using the shortcut, ORstory_push: "/github-devops push"if directly invoking the standalone skill
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.aiox-core/development/agents/monster.md at line 544, Update the
phase_to_agent_mapping entry for story_push to use a single, consistent
invocation style: decide whether the system uses the shortcut agent token
(*devops) or the standalone skill command (/github-devops) and replace the mixed
string `story_push: "*devops push ← via /github-devops com CodeRabbit"` with
the chosen form (e.g., `story_push: "*devops push"` or `story_push:
"/github-devops push"`). Ensure the change is applied where
phase_to_agent_mapping is defined and leave no in-line notes or mixed syntax in
the story_push value so callers of story_push see only the canonical invocation.
| dependencies: | ||
| tasks: | ||
| - create-next-story.md | ||
| - dev-develop-story.md | ||
| - qa-gate.md | ||
| - validate-next-story.md | ||
| - run-workflow.md | ||
| - run-workflow-engine.md | ||
| - correct-course.md | ||
| - document-project.md | ||
| - advanced-elicitation.md | ||
| workflows: | ||
| - story-development-cycle.yaml | ||
| - epic-orchestration.yaml | ||
| - spec-pipeline.yaml | ||
| - qa-loop.yaml | ||
| - brownfield-discovery.yaml | ||
| - brownfield-fullstack.yaml | ||
| - brownfield-service.yaml | ||
| - brownfield-ui.yaml | ||
| - greenfield-fullstack.yaml | ||
| - greenfield-service.yaml | ||
| - greenfield-ui.yaml | ||
| - development-cycle.yaml | ||
| - auto-worktree.yaml | ||
| - design-system-build-quality.yaml | ||
| templates: | ||
| - story-tmpl.yaml | ||
| - prd-tmpl.yaml | ||
| - project-brief-tmpl.yaml | ||
| data: | ||
| - aiox-kb.md | ||
| - technical-preferences.md | ||
| - workflow-chains.yaml # usado pelo *next | ||
| - workflow-patterns.yaml # usado pela detecção de fase | ||
| - workflow-state-schema.yaml # usado pelo *sync | ||
| standalone_skills: | ||
| - architect: "C:\\Users\\XPS\\architect\\SKILL.md" | ||
| - github-devops: "C:\\Users\\XPS\\github-devops\\SKILL.md" |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Description: Verify task files exist for commands that require them
# List all commands from monster.md
echo "=== Commands defined in monster.md ==="
rg -n '^\s+- name: ' .aiox-core/development/agents/monster.md | head -30
# List all task files referenced in dependencies
echo -e "\n=== Task dependencies declared ==="
rg -A15 'dependencies:' .aiox-core/development/agents/monster.md | rg '^\s+- ' | head -20
# Check if task files exist in expected location
echo -e "\n=== Checking task file existence ==="
for task in create-next-story.md dev-develop-story.md qa-gate.md validate-next-story.md run-workflow.md run-workflow-engine.md correct-course.md document-project.md advanced-elicitation.md; do
fd -t f "^${task}$" .aiox-core/development/tasks/ && echo "✓ Found: $task" || echo "✗ Missing: $task"
doneRepository: SynkraAI/aiox-core
Length of output: 1848
Most commands lack corresponding task file dependencies, violating the guideline requirement.
The dependencies section declares only 9 task files, while 27 commands are defined in the commands section. Validation reveals:
- All 9 declared task files exist ✓
- However, 18 out of 27 commands (67%) have no corresponding task dependencies
Commands with mapping issues: status, briefing, projects, switch, agents, delegate, preset, teach, onboard, explain, dashboard, report, watch, remember, export-snapshot, help, guide, history, yolo, and exit.
Per coding guidelines, "Validate all commands listed have corresponding task dependencies." Each command should have an explicit entry in the tasks, workflows, or standalone_skills sections. Commands like *arch and *devops reference standalone_skills; utility commands like *help and *exit should still have documented dependencies or explicitly marked as requiring none.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.aiox-core/development/agents/monster.md around lines 830 - 868, The
dependencies block is missing task entries for many commands: ensure every
command (e.g., status, briefing, projects, switch, agents, delegate, preset,
teach, onboard, explain, dashboard, report, watch, remember, export-snapshot,
help, guide, history, yolo, exit) has a corresponding entry under
dependencies.tasks, dependencies.workflows, or dependencies.standalone_skills
(or explicitly mark commands as requiring no dependency); update the
dependencies.tasks list to include the missing task file names (or add
appropriate workflow or standalone_skill references) and/or add a clear "none"
marker for utility commands so the commands-to-dependencies mapping is complete
and follows the guideline that "all commands listed have corresponding task
dependencies."
| - architect: "C:\\Users\\XPS\\architect\\SKILL.md" | ||
| - github-devops: "C:\\Users\\XPS\\github-devops\\SKILL.md" |
There was a problem hiding this comment.
Hardcoded absolute paths reduce portability.
The standalone skill paths use absolute Windows-specific paths (C:\Users\XPS\...), identical to those in MEMORY.md. This makes the agent non-portable across users and operating systems.
Recommendation: Consider:
- Using relative paths if skills are part of the repository
- Using environment variables (e.g.,
${AIOX_SKILLS_PATH}/architect/SKILL.md) - Documenting these as user-configurable paths in setup instructions
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.aiox-core/development/agents/monster.md around lines 867 - 868, The
hardcoded Windows absolute paths for the standalone skills (the "architect" and
"github-devops" entries pointing to SKILL.md) reduce portability; update these
entries to use either repository-relative paths (e.g., relative paths to the
skills directory) or environment-variable-based paths (e.g.,
${AIOX_SKILLS_PATH}/architect/SKILL.md) and add a brief note in the agent README
or setup docs stating that users must configure AIOX_SKILLS_PATH if they use env
vars; ensure the keys "architect" and "github-devops" still point to valid
locations after the change and include a fallback or validation note in
startup/setup instructions.
| note: "Projecto greenfield — sem git inicializado. Usar *devops environment-bootstrap." | ||
|
|
||
| config: | ||
| project_type: brownfield |
There was a problem hiding this comment.
Contradictory project classification: brownfield vs greenfield.
Line 95's note states "Projecto greenfield — sem git inicializado" (greenfield project), but line 98 declares project_type: brownfield. A project without git initialization is typically greenfield. This inconsistency could confuse Monster's auto-orchestration logic when selecting workflows (brownfield vs greenfield variants exist in the workflow registry).
🔧 Proposed fix
git:
is_git_repo: false
branch: null
last_commit: null
uncommitted_changes: 0
- note: "Projecto greenfield — sem git inicializado. Usar *devops environment-bootstrap."
+ note: "Git não inicializado. Usar *devops environment-bootstrap."
config:
- project_type: brownfield
+ project_type: greenfieldOr if the project truly is brownfield (existing codebase without git), clarify the note.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.aiox-core/development/agents/monster/MEMORY.md around lines 95 - 98, The
item has contradictory metadata: the inline note reads "Projecto greenfield —
sem git inicializado. Usar *devops environment-bootstrap." but the YAML sets
project_type: brownfield; update one to match the other so the classification is
consistent. Either change project_type to "greenfield" if the project truly
lacks Git, or alter the note to describe the brownfield state (e.g., existing
codebase with Git) and keep project_type: brownfield; make the change near the
existing "project_type" key and the note string so auto-orchestration sees a
consistent value.
| ## Standalone Skills Registry | ||
|
|
||
| ```yaml | ||
| standalone_skills: | ||
| architect: | ||
| path: "C:\\Users\\XPS\\architect\\SKILL.md" | ||
| invoke: "/architect" | ||
| shortcut: "*arch {command}" | ||
| last_used: null | ||
| github_devops: | ||
| path: "C:\\Users\\XPS\\github-devops\\SKILL.md" | ||
| invoke: "/github-devops" | ||
| shortcut: "*devops {command}" | ||
| last_used: null | ||
| note: "EXCLUSIVO para push/PR — CodeRabbit pre-push automático" | ||
| ``` |
There was a problem hiding this comment.
Hardcoded absolute paths reduce portability.
Lines 188 and 193 contain absolute Windows paths (C:\Users\XPS\...) for standalone skills. While these match the paths in monster.md (lines 867-868), they are environment-specific and will fail for other users or systems.
Recommendation: Consider using relative paths or environment variables for skill locations, or document that these paths must be configured per-user in a setup guide.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.aiox-core/development/agents/monster/MEMORY.md around lines 183 - 198, The
standalone_skills registry uses hardcoded absolute Windows paths for the
architect and github_devops entries (the path fields under standalone_skills ->
architect and -> github_devops); change these to either relative paths (e.g.,
relative to the repo or a skills/ directory) or to environment-variable
placeholders (e.g., ${SKILL_ARCHITECT_PATH}, ${SKILL_GITHUB_DEVOPS_PATH}) and
update the MEMORY.md text to instruct users to set those env vars or configure
the skills path in their per-user setup; ensure the entries keep the same keys
(architect, github_devops) and invoke/shortcut metadata intact so the rest of
the system can locate them without using absolute OS-specific paths.
Summary
workflow-chains.yamlFiles Changed
.aiox-core/development/agents/monster.md.aiox-core/development/agents/monster/MEMORY.md.aiox-core/data/entity-registry.yamlQA Gate
agent.idunique in ecosystemagent.icon(🦖) unique — not used by any other agentTest Plan
@monsterin a project with stories and verify*statusshows accurate state*nextand verify it readsworkflow-chains.yaml(not invented)*teach {concept}and verify it explains WHY before the command*syncreads.aiox/status.json+project-status.yaml+docs/stories/🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Documentation