Skip to content

The Architect

Mission Role & Focus

The Architect specializes in structural integrity and interface governance, establishing Architectural Decision Records (ADRs) and strict TypeScript data boundaries to keep the agent aligned with the system's design philosophy.

The Target Feature

Add a Topic Category & Tag Selector to the topic form, and display category tags prominently on the backlog card and filtering panel.

The Agent Friction

Left to itself, the agent writes code that works but deviates from your architectural vision. It might create a monolithic component, pass untyped any props, invent duplicate interfaces, or hardcode data structures in the wrong places instead of adhering to state-lifting and data model standards.

Explorer Setup & Pointers

  • Create the ADR Skill: Write a skill that informs the agent that it can record an achitectural decision inside of an .adr/ directory at the root of the project. Establish a naming convention for the file (since it's a record, something like 0001-component-structure-and-types.md could be good) and a format for the contents in the skill (e.g. the context of the decision, the actual decision itself, and the rationale of the decision). If you want, you could even create a template file for it alongside the skill and refer to it in the skill.
  • Create a rule to write ADRs: Create a rule that instructs the agent to always write an ADR file for any architectural decisions it makes. Keep an eye out for whether this rule will make the agent actually use your related skill (your mileage may vary depending the harness you're using). If it doesn't figure out waht you need to change to get it to comply.
  • Create a rule to read ADRs: Create a rule that instructs the agent to always read and comply with relevant ADR files before proposing any code changes.
  • Experiment & Iterate: Propose and apply some new features with OpenSpec and see if the agent correctly writes ADRs and also reads them in subsequent related proposals. If it doesn't, iterate on your rules and skill until it does.

Mission Objectives

  1. Set up a .adr/ directory and draft a rule file defining component and data-type constraints.
  2. Run /opsx:propose category-tags to add the category tag selection feature. Show that the agent reads your ADR files to design the implementation.
  3. Apply the changes and verify that the TypeScript compiler, ESLint, and your eyes agree that the architecture matches the ADR specifications.
  4. Discuss in the Show-and-Tell how ADRs and schema contracts help govern agent behavior and maintain project quality across teams.

Released under the MIT License.