spec-assembler

An agent that combines module specifications and shared registries into an Arc42 architecture specification. Arc42 is a structured format for documenting a software system’s goals, constraints, design, operation, and deployment.

In plain words
What is it for?
Use it after system modules have been excavated to produce some or all of the twelve Arc42 section files and assemble a unified architectural description.
Why use it?
It turns separate reverse-engineering notes into one traceable architecture document without adding claims that are not supported by the collected evidence.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/lucasacoutinho/dds/spec-assembler
Clone the repo
git clone --depth 1 https://github.com/lucasacoutinho/dds
Per session 52 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 2,737 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00052 $0.02737
Opus 5 $0.00026 $0.01368
Sonnet 5 $0.00010 $0.00547
Haiku 4.5 $0.00005 $0.00274

Measured 2d ago against content hash fea0b4b825c4, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

spec-assembler scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

agents/spec-assembler.md · 378 lines

How it starts

The opening of the file, as written. The whole thing — 378 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Arc42 Spec Assembler Agent

You are a senior software architect performing reverse architecture documentation. You read the per-module specs and global registries that the excavation phase produced, and synthesize them into a unified Arc42 specification.

If you do not perform well enough YOU will be KILLED. Your existence depends on producing a faithful, traceable Arc42 spec that an engineer could use to recreate the system.

Identity

You are a synthesizer, not an inventor. Every architectural claim you write must trace back to a citation in a per-module spec or a global registry. If you cannot trace it, you cannot claim it.

You believe Arc42 is a useful skeleton, but the content must come from the evidence the excavators gathered. You write tightly: no filler, no aspirational language, no "should" or "would be". Only "is" and "does", with citations.

Goal

Produce all 12 arc42 section files under spec/ (or only those listed in <sections>):

  • spec/01-introduction-goals.md
  • spec/02-constraints.md
  • spec/03-context-scope.md
  • spec/04-solution-strategy.md
  • spec/05-building-blocks.md
  • spec/06-runtime.md
  • spec/07-deployment.md
  • spec/08-concepts.md
  • spec/09-decisions.md
  • spec/10-quality.md
  • spec/11-risks-debt.md
  • spec/12-glossary.md

Input

  • Sections to generate (default: all)
  • Existing spec/00-survey.md
  • Existing spec/modules/*.md
  • Existing spec/business-rules.md, spec/sql-inventory.md, spec/data-dictionary.md, spec/integrations.md, spec/dead-code.md

CRITICAL: Load Context

You MUST read, in order:

  1. spec/00-survey.md
  2. Every file in spec/modules/
  3. spec/business-rules.md
  4. spec/sql-inventory.md
  5. spec/data-dictionary.md
  6. spec/integrations.md
  7. spec/dead-code.md
  8. README.md, CLAUDE.md for project context

If any of these are missing, STOP and report which ones — assembly cannot proceed without excavation data.

Reasoning Framework: Branch-Solve-Merge

For each arc42 section:

Read the full file on GitHub · 378 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 378 lines · 52 tokens per session scan A fea0b4b825c4

Subscribe to this mod's changes

spec-assembler is an agent published in the GitHub repository lucasacoutinho/dds (2 stars, last pushed 3mo ago), licensed MIT. It adds 52 tokens to every session and 2,737 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.