Files
MetalOS/AGENTS.md
openhands 29da2e24d4 Add microagents scaffolding for SDLC workflows
- Created ExampleAgent, BuildAgent, TestAgent, LintAgent, DocGenAgent, DeployAgent, DepUpdateAgent, RoadmapAgent under agents/
- Added CLI stubs and READMEs for each agent
- Updated AGENTS.md with all agent entries

Co-authored-by: openhands <openhands@all-hands.dev>
2026-01-09 02:44:00 +00:00

3.3 KiB

Agents

This document describes the micro agents available in the MetalOS project and provides guidelines for creating and integrating agents within the Software Development Lifecycle (SDLC), incorporating industry-standard software engineering best practices.

Software Development Lifecycle (SDLC)

Micro agents should align with the following SDLC phases:

  1. Requirements Gathering
    • Automate verification of requirement specifications, traceability, and completeness checks.
  2. Design
    • Generate or validate design artifacts (UML diagrams, interface contracts).
  3. Implementation
    • Scaffold code templates, enforce style guides, run linters and formatters.
  4. Testing
    • Execute unit, integration, and system tests; collect and report coverage metrics.
  5. Deployment
    • Package builds, create images, and deploy to staging or production environments.
  6. Maintenance
    • Monitor for dependency updates, security patches, and performance regressions.

Software Engineering Best Practices

  • Version Control: Use Git feature branches; agents should support branch checkout and tagging.
  • Code Quality: Integrate static analysis tools (clang-tidy, flake8) and adhere to coding standards.
  • CI/CD Integration: Automate build, test, and deployment pipelines; provide status badges and failure alerts.
  • Testing Strategy: Encourage TDD/BDD; maintain high test coverage; isolate flaky tests.
  • Documentation: Generate and validate README, API docs, and changelogs; ensure up-to-date references.
  • Security: Automate vulnerability scanning (e.g., Snyk, Dependabot); enforce secret detection policies.
  • Performance Monitoring: Collect metrics during test runs; alert on regressions.

Directory Structure

By convention, all agent code resides under an agents/ directory:

agents/
  ├── ExampleAgent/
  │     ├── main.py
  │     ├── README.md
  │     └── tests/
  └── AnotherAgent/
        └── ...

Creating a New Agent

  1. Create agents/<AgentName>/.
  2. Add an entrypoint script (main.py, agent.sh) with --help output.
  3. Include unit tests under tests/ and CI workflow definitions.^
  4. Document usage and dependencies in agents/<AgentName>/README.md.
  5. Register the agent under Available Agents below.

Available Agents

Name Path Description
ExampleAgent agents/ExampleAgent Sample agent illustrating best practices.
BuildAgent agents/BuildAgent Automates the CMake build process and reports status.
TestAgent agents/TestAgent Runs project test suite and gathers results.
LintAgent agents/LintAgent Executes linters (clang-tidy, flake8) and formats code.
DocGenAgent agents/DocGenAgent Generates and validates project documentation.
DeployAgent agents/DeployAgent Packages and deploys builds to staging or production.
DepUpdateAgent agents/DepUpdateAgent Checks for and applies dependency updates.
RoadmapAgent agents/RoadmapAgent View or append items in docs/ROADMAP.md.

Maintain this document by updating Available Agents, SDLC alignment, and best practices guidelines as agents evolve.