DevManager-Agent is an Agentic DevOps platform for engineering management and code quality governance. It analyzes repository changes, reviews code through specialized agents, tracks delivery health, and produces evidence-based engineering reports with human-governed automation.
The system is read-only by default. It is designed to support engineering managers and technical leads with traceable findings, deterministic scoring, audit records, and controlled approval boundaries.
- Repository ingestion with previous-successful-baseline tracking.
- Diff normalization, file classification, and change-risk analysis.
- Agent-assisted review for correctness, security, reliability, maintainability, and test risk.
- Structured finding validation, deduplication, and deterministic scoring.
- Engineering reports backed by commits, files, CI signals, audit events, and database records.
- Policy-governed automation with no production write actions unless explicitly approved.
apps/: API gateway, web UI, worker, orchestrator, report-service, and application entry points.services/: domain services such as PM (requirements platform) integration.packages/: shared Python, TypeScript, Java, database, Git, LLM, scoring, reporting, and contract modules.migrations/postgres/: PostgreSQL SQL migration scripts that are versioned and uploaded with the code.scripts/: local development, migration, and operational scripts..github/: CI workflow configuration.
Product design documents, runtime logs, local caches, virtual environments, and frontend build artifacts are intentionally excluded from version control. Pytest test suites (under apps/, packages/, services/, and top-level tests/) are tracked in version control.
- Python 3.12 with
uvworkspace management. - FastAPI for the API gateway.
- ARQ and Redis for background jobs.
- PostgreSQL 16 for persistent storage.
- React, TypeScript, and Vite for the web UI.
- Docker Compose for local PostgreSQL and Redis services.
SQL migrations are stored in migrations/postgres/ and are part of the uploadable source set. Apply pending migrations with:
uv run python scripts/migrate.pyThe current migration set includes:
001_initial_schema.sql002_add_clone_url.sql002_add_repository_token.sql003_add_run_repo_fullname.sql004_create_settings.sql005_add_llm_settings.sql006_add_llm_base_url.sql007_audit_events_workflow_id_nullable.sql008_team_ops_foundation.sql009_team_ops_mirror.sql010_team_ops_derived.sql011_team_ops_suggestion.sql012_pm_sync_cursor.sql013_team_ops_knowledge.sql
Run the full test suite (unit + integration):
uv run pytestmake test and the CI test job both delegate to the same command. Tests are collected from apps/, packages/, services/, and top-level tests/ (see [tool.pytest.ini_options].testpaths in pyproject.toml). Integration tests under tests/integration/ require a live PostgreSQL — the CI workflow applies migrations via scripts/migrate.py before running pytest.
Install dependencies:
uv sync
cd apps/web && npm installStart PostgreSQL and Redis with Docker Compose:
docker compose up -d postgres redisNote on the PostgreSQL image:
migrations/postgres/013_team_ops_knowledge.sqluses thevectorextension (pgvector) for embedding columns and HNSW indexes. The stockpostgres:16image does not ship this extension. If you bring up PostgreSQL viadocker compose, switch thepostgresservice image topgvector/pgvector:pg16(drop-in replacement that bundles thevectorextension) before running migrations. The CI workflow already uses this image.
Run database migrations:
uv run python scripts/migrate.pyStart the local development stack:
./start.shStop local services:
./stop.shCreate a local .env file from .env.example and adjust values for your environment. Local .env files are ignored by Git and must not be committed.
Common settings:
DATABASE_URLREDIS_URLAPI_SECRET_KEY- LLM provider credentials and base URLs, when enabled.
- No automatic production deployment.
- No automatic pull request merge.
- No unrestricted repository shell execution.
- No employee performance, compensation, promotion, or termination decisions.
- External comments, issue creation, remediation pull requests, and notifications require explicit policy approval.
This project is licensed under the MIT License. See LICENSE for details.