Templates and CLI
This page collects all templates, examples, and CLI commands for getting started with AURA in practice.
Templates and CLI

This page collects all templates, examples, and CLI commands for getting started with AURA in practice.
1. architecture.yaml
The central metadata file of every repository.
apiVersion: aura/v1
kind: Service
metadata:
name: billing-service
description: Handles invoice creation and billing status updates.
owner: team-payments
product: commerce-platform
domain: payments
lifecycle: production
criticality: high
repository:
provider: github
url: https://github.example.com/commerce/billing-service
defaultBranch: main
jira:
projectKey: PAY
component: Billing
runtime:
type: service
language: java
framework: spring-boot
deployment: kubernetes
relationships:
dependsOn:
- user-service
- payment-provider-adapter
providesApis:
- billing-api
publishesEvents:
- invoice-created
consumesEvents:
- user-profile-updated
contracts:
openapi: docs/api/openapi.yaml
asyncapi: docs/api/asyncapi.yaml
documentation:
overview: docs/architecture/overview.md
context: docs/architecture/context.md
containers: docs/architecture/containers.md
components: docs/architecture/components.md
runtime: docs/architecture/runtime.md
deployment: docs/architecture/deployment.md
adrFolder: docs/adr
qualityGoals: docs/quality/quality-goals.md
knownRisks: docs/quality/known-risks.md
diagrams:
c4Context: docs/architecture/context.mmd
c4Container: docs/architecture/container.mmd
review:
requiredReviewers:
- team-payments
- architecture-board
reviewIntervalDays: 90
2. Markdown template: overview.md
# Service Overview
## Purpose
What is this service responsible for?
## Scope
What belongs to this service?
## Non-Scope
What explicitly does not belong to this service?
## Owner
Which team owns this service?
## Business Context
Which product, domain or business process does this service support?
## Main Responsibilities
- Responsibility 1
- Responsibility 2
- Responsibility 3
## Important Dependencies
- Dependency 1
- Dependency 2
## Provided Interfaces
- API 1
- Event 1
## Operational Notes
What should developers know before changing this service?
## Links
- Repository
- Jira component
- Dashboards
- Runbooks
3. Markdown template: context.md
# System Context
## Summary
Describe how this system fits into the broader product landscape.
## Users and External Systems
- User or system 1
- User or system 2
## Context Diagram
```mermaid
C4Context
title System Context diagram for Billing Service
Person(customer, "Customer")
System(billing, "Billing Service")
System_Ext(paymentProvider, "Payment Provider")
Rel(customer, billing, "Views invoices")
Rel(billing, paymentProvider, "Processes payments")
```
## Notes
Important context decisions or assumptions.
4. ADR template
# ADR-0001: Title
## Status
Proposed | Accepted | Deprecated | Superseded
## Context
What is the problem or decision context?
## Decision
What has been decided?
## Alternatives Considered
What alternatives were considered?
## Consequences
What are the positive and negative consequences?
## Related Artifacts
- Jira:
- Pull Request:
- C4 Diagram:
- Services:
5. PR check rules
checks:
- id: docs-updated-for-api-change
description: API changes require OpenAPI and architecture documentation updates.
trigger:
changedFiles:
- "src/**/controller/**"
- "src/**/api/**"
requireOneOf:
- "docs/api/openapi.yaml"
- "docs/architecture/**"
severity: warning
- id: adr-required-for-new-external-dependency
description: New external dependencies require an ADR.
trigger:
dependencyAdded:
type: external
require:
- "docs/adr/*.md"
severity: warning
- id: c4-required-for-critical-service
description: Critical services require context and container diagrams.
trigger:
metadata:
criticality: high
require:
- "docs/architecture/context.*"
- "docs/architecture/container.*"
severity: error
6. Policy-as-code
rules:
- id: productive-service-requires-owner
severity: error
when:
lifecycle: production
require:
- owner
- id: critical-service-requires-c4
severity: error
when:
criticality: high
require:
- documentation.c4_context
- documentation.c4_container
- id: public-api-requires-openapi
severity: error
when:
provides_public_api: true
require:
- contracts.openapi
- id: external-dependency-requires-adr
severity: warning
when:
dependency_added: external
require:
- adr
7. AURA CLI
In the long run, AURA could provide a CLI.
Initialization
aura init service
Generates templates and architecture.yaml.
Local validation
aura validate
Validates local documentation.
Local PR check
aura check-pr --base main --head feature-branch
Runs the PR check locally or in CI.
Produce a snapshot
aura ingest --repo payment-service --commit a81f3c2
Produces a snapshot.
Render the site
aura render-site
Generates the MkDocs site.
Ask AURA a question
aura ask "Which services are affected by invoice changes?"
Queries the AURA context.
8. Service snapshot (example)
This is what a generated snapshot in the AURA repository looks like:
repo: payment-service
repository_url: https://git.example.com/commerce/payment-service
branch: main
commit: a81f3c2
pr: 847
owner: team-payments
product: commerce-platform
documentation_status: validated
last_ingested: 2026-05-09T14:30:00Z
source_paths:
- docs/architecture/overview.md
- docs/architecture/context.md
- docs/architecture/containers.md
- docs/adr/
- architecture.yaml
- docs/api/openapi.yaml
Continue reading
- Next page: Summary — key statements in brief
- Repository Standard — where these templates are used
- Documentation — explanation of the Markdown structure
- PR Check — how the PR rules are enforced
