Skip to main content

Architecture, the Terraform Runner, and Publishing

· 2 min read

Part 2 of The AI-Assisted Software Engineering Workflow.

Architecture

The workflow is converging on two complementary control layers.

Declarative External State

Terraform owns infrastructure and service configuration, including:

  • GitHub repositories and settings
  • Branch protection or rulesets
  • GitHub Pages
  • Actions variables and secrets where appropriate
  • Cloudflare DNS records
  • Hosting and other provider-backed resources

Terraform contributes planning, state management, drift detection, idempotency, and the ability to use a large provider ecosystem.

Repository Artifacts and Intelligent Work

Agents and Automator own content and engineering artifacts, including:

  • README files
  • Agent instructions
  • Specifications
  • Milestones and tasks
  • Documentation
  • Reports
  • Blog posts
  • Reusable protocols

The intended division is:

Desired project state
├── Terraform
│ └── External infrastructure and service configuration
└── Agents / Automator
└── Repository content, reasoning, planning, and generated artifacts

The AI’s long-term role is primarily planner and operator: interpret intent, update the desired state, preview changes, invoke deterministic systems, and review the outcome.

Terraform Runner Plugin

Rather than building separate imperative integrations for GitHub, Cloudflare, hosting platforms, and future providers, Automator needs a thin Terraform runner plugin.

Its initial interface can remain small:

  • init
  • validate
  • plan
  • apply
  • output
  • destroy with explicit safeguards

Terraform providers supply domain-specific integrations. Automator coordinates them. This keeps the platform focused on orchestration instead of rebuilding mature infrastructure tooling.

Content and Blog Publishing

The blog is live and was brought online in approximately 30 minutes. It is Git-backed and deliberately avoids a database.

The content pipeline is:

YAML source
→ transform
→ validate
→ generate JSON and/or Markdown
→ commit and push
→ serve through GitHub Raw / GitHub Pages
→ website consumes the published data

The authoring interface is intentionally small:

  • /create-blog — create a draft and required metadata
  • /preview — render, inspect, and validate
  • /publish — commit, push, and trigger deployment

The planned delivery path is:

  1. Implement and prove the workflow as an AI skill.
  2. Expose the capability through a public MCP interface.
  3. Package it as an Automator plugin or NPX command.
  4. Keep client-specific skills as thin adapters over the shared capability.

The living workflow document is the source material; blog entries are curated, publishable outputs from that knowledge.


Next: Development environments and mobility.