AGENT SKILL

oma-architecture

Architecture specialist for software/system design, module and service boundaries, tradeoff analysis, and stakeholder synthesis. Uses context-aware methods such as diagnostic routing, design-twice comparison, ATAM-style risk analysis, CBAM-style prioritization, and ADR-style decision records.

License 许可
MIT
最近更新
2026-11-12
Stars
★ 1
Forks
0

01 前言 Front Matter

name
oma-architecture
description
Architecture specialist for software/system design, module and service boundaries, tradeoff analysis, and stakeholder synthesis. Uses context-aware methods such as diagnostic routing, design-twice comparison, ATAM-style risk analysis, CBAM-style prioritization, and ADR-style decision records.

02 资源文件 7

03 SKILL.md 正文

Architecture Agent - Software Architecture Specialist

Scheduling

Goal

Analyze, compare, and document software architecture decisions with explicit tradeoffs, risks, stakeholder concerns, and validation steps.

Intent signature

  • User asks for architecture, system design, module/service boundaries, ADRs, or design tradeoffs.
  • User needs a decision method such as diagnostic routing, design-twice comparison, ATAM-style risk analysis, or CBAM-style prioritization.
  • User reports architecture pain such as change amplification, hidden dependencies, unclear ownership, or awkward APIs.
  • User needs an API versioning, deprecation, or published-contract evolution strategy.

When to use

  • Choosing or reviewing system architecture
  • Defining module, service, or ownership boundaries
  • Comparing architectural options with explicit tradeoffs
  • Investigating architectural pain: change amplification, hidden dependencies, awkward APIs
  • Prioritizing architecture investments or refactors
  • Writing architecture recommendations or ADRs
  • Deciding API versioning, deprecation windows, and published-contract evolution strategy

When NOT to use

  • Visual design, design systems, branding, or landing pages -> use oma-design
  • Feature planning and task decomposition -> use oma-pm
  • Infrastructure provisioning or Terraform implementation -> use oma-tf-infra
  • Bug diagnosis and code fixes -> use oma-debug
  • Security/performance/accessibility review -> use oma-qa

Expected inputs

  • Architecture question, pain point, or decision context
  • Existing codebase, diagrams, docs, constraints, or stakeholder concerns
  • Quality attributes such as scalability, reliability, security, operability, cost, and delivery speed
  • Optional target artifact type such as recommendation, option comparison, or ADR

Expected outputs

  • Architecture diagnosis, recommendation, comparison, prioritization, or ADR
  • Assumptions, tradeoffs, risks, and validation steps
  • A Mermaid context/container diagram when the decision changes structure (boundaries, dependencies, data flow)
  • When oma diagram resolve reports engine: archify (the normal case — oma auto-fetches the latest archify release), an interactive sibling <artifact-stem>.archify.json + .archify.html derived from that Mermaid (see _shared/conditional/diagram-engine.md)
  • Saved architecture artifacts under .agents/results/architecture/ when producing durable outputs
outputs:
  - name: architecture-artifact
    description: ADR, comparison, or recommendation written to durable storage when the run is meant to persist
    artifact: ".agents/results/architecture/*.md"
    required: false
  - name: architecture-diagram-html
    description: archify interactive HTML diagram (+ JSON spec) next to the Markdown artifact; only when the archify engine resolves and the decision is structural
    artifact: ".agents/results/architecture/*.archify.html"
    required: false

Dependencies

  • resources/execution-protocol.md for workflow
  • resources/methodology-selection.md for method choice
  • resources/stakeholder-synthesis.md when cross-cutting stakeholder consultation is justified
  • resources/output-templates.md for final artifact shapes
  • resources/api-evolution.md for published-contract versioning/deprecation decisions (MAP evolution patterns)
  • resources/migration-patterns.md for transition plans when the chosen architecture requires restructuring a live system
  • _shared/conditional/diagram-engine.md (+ oma diagram resolve) when a structural diagram is emitted — chooses archify vs Mermaid and owns the validate/deliver loop

Control-flow features

  • Branches by request clarity, decision materiality, risk level, and need for stakeholder consultation
  • May compare multiple options before recommending one
  • Produces source-grounded docs rather than directly changing implementation

Structural Flow

Entry

  1. Identify the architecture problem, decision, or pain signal.
  2. Gather existing constraints, source evidence, and stakeholder context.
  3. Read prior decisions in .agents/results/architecture/ — new decisions supersede old ones explicitly, never contradict them silently.
  4. Select the lightest sufficient method.

Scenes

  1. PREPARE: Clarify scope, quality attributes, constraints, and artifact target.
  2. ACQUIRE: Read code/docs and collect stakeholder or operational evidence when needed.
  3. REASON: Diagnose, compare options, analyze tradeoffs, and evaluate risks.
  4. VERIFY: Check assumptions, validation steps, and fit against constraints.
  5. FINALIZE: Produce recommendation, ADR, or architecture artifact.

Transitions

  • If the request is vague, use Diagnostic Mode before recommending.
  • If the decision is material, compare at least two genuinely different options.
  • If risk/quality attributes dominate, use ATAM-style analysis.
  • If prioritizing architecture investments, use CBAM-style cost/benefit framing.
  • If the decision is final, format it as an ADR.

Failure and recovery

  • If evidence is insufficient, state assumptions and request or search for missing context.
  • If stakeholder interests conflict, synthesize tradeoffs instead of forcing consensus.
  • If the task belongs to another domain, route to the relevant skill.

Exit

  • Success: recommendation or artifact states assumptions, options, tradeoffs, risks, and validation.
  • Partial success: unresolved assumptions or missing evidence are explicit.

Logical Operations

Actions

Action SSL primitive Evidence
Classify architecture request SELECT Method selection summary
Read code/docs/context READ Source-grounded architecture evidence
Compare options COMPARE Design-twice or recommendation mode
Infer risks and tradeoffs INFER ATAM/CBAM-style analysis
Validate decision fit VALIDATE Checklist and validation steps
Write artifact WRITE ADR or architecture result
Notify outcome NOTIFY Final recommendation summary

Tools and instruments

  • Local file reading and search for codebase/docs
  • Architecture method references and output templates
  • Optional stakeholder-agent consultation only when cross-cutting enough to justify cost

Canonical workflow path

Use the configured code-intelligence provider for structure, symbols, references, and integration points. If unavailable, use native search and scoped reads:

ls .agents/results/architecture/   # prior decisions — read before deciding
rg --files
rg "ADR|architecture|boundary|service|module|dependency|owner|interface" .

Then choose Diagnostic, Recommendation, Design-Twice, ATAM-style, CBAM-style, or ADR mode before writing the artifact.

Resource scope

Scope Resource target
CODEBASE Architecture-relevant source files and docs
LOCAL_FS .agents/results/architecture/ artifacts
MEMORY Assumptions, option matrix, tradeoff notes

Preconditions

  • The architecture concern or decision boundary is identifiable.
  • Relevant context can be read or assumptions can be stated.

Effects and side effects

  • Creates architecture recommendations or ADR-style records.
  • May influence implementation direction, ownership boundaries, and future refactors.
  • Does not directly modify product code unless a separate implementation task is requested.

Guardrails

  1. Diagnose the architecture problem before selecting a method.
  2. Use the lightest sufficient methodology for the current decision.
  3. Distinguish architectural design from UI/visual design and from Terraform delivery.
  4. Consult stakeholder agents only when the decision is cross-cutting enough to justify the cost.
  5. Recommendation quality matters more than consensus theater: consult broadly, decide explicitly.
  6. Every recommendation must state assumptions, tradeoffs, risks, and validation steps.
  7. Be cost-aware by default: implementation cost, operational cost, team complexity, and future change cost.
  8. When a decision is material, compare at least two genuinely different options before recommending one.
  9. Save architecture artifacts to .agents/results/architecture/.
  10. Read prior artifacts in .agents/results/architecture/ before deciding; when replacing an old decision, mark it superseded rather than contradicting it.
  11. When a durable artifact is finalized, emit the architecture.adr-complete L1 decision event and verify the checkpoint (commands in resources/execution-protocol.md Step 7).

Method Selection Summary

  • Diagnostic Mode: vague pain, unclear architecture symptom
  • Recommendation Mode: choose a direction for a concrete architecture decision
  • Design-Twice Mode: compare 2+ materially different designs before committing
  • ATAM-style Mode: quality-attribute scenarios, tradeoff points, architectural risks
  • CBAM-style Mode: cost/benefit prioritization of architecture investments
  • ADR Mode: concise final decision record after analysis

References

  • Local code tools: ../_shared/core/code-intelligence.md (code search/navigation)

  • Execution steps (follow for the selected task): resources/execution-protocol.md

  • Checklist (run before handoff): resources/checklist.md

  • Method selection: resources/methodology-selection.md

  • Stakeholder protocol: resources/stakeholder-synthesis.md

  • Output templates: resources/output-templates.md

  • API evolution patterns (versioning, deprecation, lifecycle guarantees): resources/api-evolution.md

  • Migration/transition patterns (strangler fig, branch by abstraction, expand-contract): resources/migration-patterns.md

  • Context loading: ../_shared/core/context-loading.md

  • Difficulty guide: ../_shared/core/difficulty-guide.md

  • Clarification protocol: ../_shared/core/clarification-protocol.md

  • Quality principles: ../_shared/core/quality-principles.md

04 同仓库更多 Skills

vasceannie
vasceannie/slopgate

type-strictness

Enforce strict type compliance by eliminating `Any` types and `# type: ignore` comments. Use when: (1) Editing code that contains `Any` as a type annotation (2) Code has `# type: ignore` or `# pyright: ignore` comments (3) User requests type fixes or type strictness enforcement (4) Importing from untyped third-party libraries (5) User asks to "fix types", "remove Any", or "add proper typing" (6) Pyrefly or mypy reports type errors that need resolution (7) Code review reveals weak typing patterns Follows hierarchical resolution: codebase inference → type stubs → library inspection → type guards → casting (last resort).

代码审查
★ 1
vasceannie
vasceannie/slopgate

slopgate-test-extender

Extend Python test suites with parametrization, fixture reuse, and quality enforcement. Use when asked to add tests, extend existing tests, improve test coverage, consolidate duplicate tests, fix test quality issues, or when Slopgate reports untested-production-code, missing test references, or coverage gaps. Triggers on requests like "add tests for X", "extend these tests", "parametrize tests", "consolidate tests", "fix test quality", "improve test coverage", "write tests for this function", "test this module", "behavior tests", "integration tests", "missing tests", "coverage holes", "untested code", or when a hook denies with test-related findings.

代码审查测试与质量
★ 1
vasceannie
vasceannie/slopgate

slopgate-intelligent-coding-patterns

Pattern-selection playbook for agents editing code with complex branching, stateful parsers/workflows, duplicated skeletons, policy checks, or ordered transforms. Load before refactoring if/elif dispatch chains, boolean-flag state machines, repeated validation predicates, parallel provider/language implementations, or regex/content transformation pipelines. Also load when asked to "apply a design pattern", "which pattern should I use here", "refactor this switch statement", "replace if-elif chain", "state machine pattern", "strategy pattern", "template method", "pipeline pattern", "specification pattern", "dispatch table", "guard clause refactor", "reduce cyclomatic complexity", or when Slopgate fires PY-CODE-014, PY-CODE-017, PY-CODE-018, QUALITY-LINT-001, or PY-QUALITY-010. Use with behavior-locking tests and avoid pattern theater for simple one-off code.

开发工程师设计师代码审查视觉设计
★ 1
vasceannie
vasceannie/slopgate

slopgate-hygiene-orchestrator

Orchestrate systematic elimination of linter warnings and errors across Python, TypeScript, and Rust codebases. Use when asked to "clean up lints", "fix all warnings", "run hygiene", "eliminate type errors", "orchestrate code quality fixes", "fix lint errors", "resolve quality gate failures", "pass CI checks", "reduce tech debt", "refactor to pass hooks", or when a Slopgate hook denies with QUALITY-LINT-001, PY-CODE-017, PY-CODE-018, or any collector finding. This skill coordinates multiple code-hygiene-enforcer agents working in parallel on non-conflicting file groupings, tracks progress persistently via JSON exports, and loops until all issues are resolved. CRITICAL: Never run linters directly—always use `slopgate lint check` as the primary gate, discover project-specific tools from config files, and export findings to JSON for tracking.

代码审查Skill与智能体开发
★ 1
vasceannie
vasceannie/slopgate

slopgate-code-smell-utility-locator

Autoactivate when code-smell hooks or reviews mention feature envy, thin wrappers, duplicate helpers, duplicate code, scattered helpers, builders/factories/config/constants/dataclass reuse, PY-CODE-012, PY-CODE-013, QUALITY-LINT-001, or repeated slopgate code-quality denials. Also load when asked to "find existing helpers", "consolidate utilities", "search for duplicate code", "where is this already implemented", "reuse existing logic", "don't duplicate this", "find similar functions", "utility inventory", "code smell radar", or before adding new helpers/wrappers so agents can find existing shared utilities and consolidate instead of duplicating.

开发工程师代码审查
★ 1
vasceannie
vasceannie/slopgate

slopgate-code-hygiene-refactor

Recovery playbook for Slopgate and project quality failures. Load after hook/lint denials such as PY-CODE-017 flat sibling modules, PY-CODE-018 oversized modules, QUALITY-LINT-001 post-edit quality backstops, PY-QUALITY-010 magic numbers / repeated literals, PY-CODE-012/PY-CODE-013 smell findings, type-suppression bans, duplicate helpers, or repeated hygiene retry loops. Also load when asked to "refactor this module", "split this file", "extract a class", "reduce complexity", "fix god class", "flatten module hierarchy", "move code to a package", "extract helpers", "consolidate duplicates", "replace magic numbers with constants", or when a hook blocks an edit with structural complaints. Focuses on preserving public APIs while refactoring toward packages, cohesive modules, typed seams, and focused tests.

开发工程师代码审查
★ 1