Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Archmet Code Analysis — GitHub Action

Deterministic architecture analysis and quality gates for your pull requests. Measure architecture. Govern change.

Archmet analyzes Java, Kotlin, C#, Python, and TypeScript codebases with a fully deterministic engine — AST metrics, dependency analysis, and a calibrated rule engine detecting god classes, coupling hotspots, and N+1 query patterns — and fails your workflow when critical architecture violations appear. No code leaves the runner; the whole analysis happens inside the action container.

This action wraps the Archmet scanner (ghcr.io/eccsm/archmet-scanner). Reports are reproducible: the same code always produces the same result, so gate decisions are auditable.

Usage

name: Archmet
on: [pull_request]

jobs:
  analyze:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: eccsm/archmet-action@v0.1.0
        with:
          quality-gate: "true"
          severity-threshold: "HIGH"

Inputs

Input Default Description
quality-gate "true" Fail the workflow when CRITICAL violations are found.
severity-threshold "HIGH" Minimum severity emitted as GitHub warning annotations (CRITICAL, HIGH, MEDIUM, LOW).
amf-server-url "" Reserved for a future remote-analysis mode; the action currently runs the embedded scanner locally.

Outputs

Output Description
score Archmet health score (0–100).
grade Health grade (A–F).
violations Total violations found.
critical CRITICAL violations found.
reported-violations Violations at or above severity-threshold.

The full machine-readable report is written to amf-report.json in the workspace — upload it as an artifact if you want to inspect or diff it:

      - uses: actions/upload-artifact@v4
        if: always()
        with:
          name: amf-report
          path: amf-report.json

Example: use outputs in later steps

      - uses: eccsm/archmet-action@v0.1.0
        id: archmet
      - run: |
          echo "Health: ${{ steps.archmet.outputs.grade }} (${{ steps.archmet.outputs.score }}/100)"
          echo "Critical violations: ${{ steps.archmet.outputs.critical }}"

Documentation

Full docs — rule reference, .amf.yml quality-gate configuration, the self-hosted server and dashboard, and the Archimet LLM layer — live in the main repository.

License

Apache-2.0. This repository mirrors eccsm/archMet/github-action for GitHub Marketplace listing (Marketplace requires action.yml at the repository root); changes land there first.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages