Traceability Macros Reference
Namespace alias
Every macro on this page is also available under the shorter tracer: prefix.
The two namespaces are equivalent and may be used side-by-side as a migration path:
tracer:outgoing[]
tracer:incoming[]
tracer:links[]
tracer:graph[]
tracer:graph-coverage[]
tracer: remains fully supported and is not deprecated.
New content may use either prefix.
Relationship Link Macros
These macros display relationship lists as formatted text.
They are gated by the :traceability-links: document attribute.
tracer:outgoing[]
Lists items that this item points to (outgoing relationships). Place inside an item block:
[#REQ-001, item, role=requirement]
--
Requirement description...
tracer:outgoing[]
--
tracer:incoming[]
Lists items that point to this item (incoming relationships).
Uses the reverse relation’s display label (e.g., an incoming addresses edge displays as "Addressed by"):
tracer:incoming[]
Enabling
Opt-in per page via document attribute:
= Architecture
:traceability-links: true
Or enable it globally by setting the attribute in the component descriptor’s antora.yml:
asciidoc:
attributes:
traceability-links: true
or in the playbook:
asciidoc:
attributes:
traceability-links: true
A per-page :traceability-links: header overrides the global setting.
Without the attribute, the macro text is stripped from output.
Display options
| Attribute | Values | Effect |
|---|---|---|
|
|
Enables the macros |
|
|
Display format: bulleted list, AsciiDoc table, or comma-separated inline |
|
|
Sort order |
|
|
Wrap output in collapsible |
Visualization Macros
These macros render diagrams.
They are gated by the :traceability-graph: document attribute.
tracer:graph[]
Renders a relationship graph diagram.
= Dashboard
:traceability-graph: true
[#REQ-001, item, role=requirement]
\--
Requirement description...
tracer:graph[]
\--
Renders a Kroki-generated GraphViz DOT diagram showing the item and all directly related items (both outgoing and incoming). Nodes are colored by role; edges are labeled with relation types.
Depth parameter
Pass a depth to control how many hops are shown (default 1):
tracer:graph[REQ-001, 2]
===
Renders a coverage bar chart.
Inside an item — per-relationship-type coverage:
tracer:graph-coverage[]
Outside any item — global role-based coverage:
= Dashboard
:traceability-graph: true
tracer:graph-coverage[]
Renders a Kroki-generated Vega-Lite bar chart.
Both macros auto-scale and have no additional attributes beyond :traceability-graph:.
Kroki configuration
Both macros generate URLs pointing to the configured Kroki server.
The image format (SVG/PNG) is controlled by krokiImageFormat, the server URL by krokiServerUrl.
antora:
extensions:
- require: @antora-tracer/core/antora-extension
# defaults: krokiServerUrl: https://kroki.io, krokiImageFormat: svg
antora:
extensions:
- require: @antora-tracer/core/antora-extension
krokiServerUrl: http://localhost:8000
krokiImageFormat: png
You can also set KROKI_SERVER_URL and KROKI_IMAGE_FORMAT environment variables, which take precedence over extension config.
Related
-
How to add traceability visualizations — practical guide
-
Item Macro Reference — inline relationship syntax