Manifold
· Early access
Async, semantic review of ARXML changes. Element-level history that actually answers "when did this change and why?". Stop reviewing in meetings, start asking your repo. Your IP and your LLM stay on-prem.
01 · The semantic engine
Same commit. Same ARXML. Two renderings.
$ git diff HEAD~1 PowertrainComp.arxml
diff --git a/Powertrain/PowertrainComp.arxml ...
index 7d4e9a1..a8f2e91 100644
--- a/Powertrain/PowertrainComp.arxml
+++ b/Powertrain/PowertrainComp.arxml
@@ -14820,15 +14820,8 @@
<DATA-ELEMENT-REF DEST="...">
/AUTOSAR/DataTypes/Temperature_T
</DATA-ELEMENT-REF>
- <INIT-VALUE>
- <CONSTANT-REFERENCE>
- /AUTOSAR/Constants/InitTemp
- </CONSTANT-REFERENCE>
- </INIT-VALUE>
</NONQUEUED-RECEIVER-COM-SPEC>
@@ -15239,12 +15232,12 @@
<TIMING-EVENT>
<SHORT-NAME>UpdateBatteryState_Event</SHORT-NAME>
- <PERIOD>0.1</PERIOD>
+ <PERIOD>0.05</PERIOD>
</TIMING-EVENT>
... 4,213 more lines changed
(most are XML formatting noise)
no way to tell which lines matter
without reading every one $ manifold diff HEAD~1
══════════════════════════════════════
Architectural impact: PowertrainComp
══════════════════════════════════════
BatteryManager (SWC)
~ runnable update_battery_state
period: 100ms -> 50ms
- R-PORT InPort_TempSensor
interface: TempReading_IF (SR)
(verify no consumer remains)
PowertrainComp (composition)
~ BatteryManager regenerated by editor
(formatting-only delta on 4,213
surrounding XML lines)
──────────────────────────────────────
Summary
+ 0 ports added
- 1 port removed
~ 1 timing change
~ 1 implementation re-export
3 architecturally significant changes.
4,213 lines of XML noise filtered. 02 · The AI layer on top
We send infrequent updates, typically one email every 2 to 4 weeks during development. Unsubscribe anytime.
Built by engineers who work with AUTOSAR daily.
01 The Problem
Someone opens SystemDesk on a shared screen and walks the room through their architectural change while five senior engineers nod, occasionally interrupt, and pretend not to be checking Slack. Forty-five minutes. Recurring weekly. The artifact it produces, the actual record of what was reviewed and approved, is a calendar event and a few scribbled notes.
It is the workaround for a real problem. A standard
git diff
on an ARXML file produces thousands of lines of XML noise for a trivial
architectural change. Nobody can see at a glance what changed at the
SWC, port, runnable, or interface level. Pull requests become a paste of
unreadable XML, so they get rubber-stamped at best and skipped at worst.
And then there is the history. When was this port added? Who changed the timing on this runnable? Why does this composition look the way it does? Today the answer is almost universally nobody knows, followed by hours of manual archaeology: checking out old commits, comparing files by eye, asking the senior engineer who happens to remember.
Standard
git blame
is useless on ARXML because line numbers shift every time the upstream
editor regenerates the XML. The institutional memory of your
architectural decisions is not recoverable with today's tools, and
you have learned to live with the loss.
02 Where AI changes the work
A generic LLM looking at raw ARXML produces hallucinated nonsense. The same model on top of a clean semantic representation of your architecture produces answers your senior architects actually trust. The distinction is the whole moat.
01
"When was the InPort_Voltage port added and why?" Natural-language queries answered against the semantic history index. The model translates the question into a structured query; the answer comes from the actual history, not from training data.
02
A complex pull request becomes a one-paragraph human summary for managers and a detailed technical breakdown for engineers, generated automatically alongside the standard semantic diff.
03
Point AI at a composition or SWC and get a narrative of what it does, what depends on it, and how it has evolved over the last twelve months. Especially useful when a new engineer needs to come up to speed on a subsystem nobody has documented in years.
04
As teams move toward SDV and zonal architectures, AI proposes mappings from Classic SWCs and interfaces to Adaptive equivalents. A real time-saver for senior architects scoping migration work.
The non-negotiable
AI features run on your own LLM endpoint.
Azure OpenAI. AWS Bedrock. Vertex. A self-hosted model. Your ARXML and your generated code never touch our servers. We never see your prompts. We never see your responses. AI can be disabled entirely, and the rest of the product still delivers its core value: semantic diffs, element-level history, async review, local-first IP. Nothing AI suggests reaches production code without clearing your own gates.
The
manifold ask
demo at the top of the page shows this against three example questions.
The semantic-diff demo next to it shows the layer underneath: the engine
that lets a single English query like
"why was this port removed?"
map onto a structured architectural answer.
03 What we're building
01
When someone updates an SWC, port, or composition, reviewers see what actually changed at a glance. A visual, structured summary of every architectural impact, instead of thousands of lines of XML. Works inside the pull request review you already use.
Technically: Semantic ARXML diffs at the element level, with optional inline architectural visualization, posted as PR comments via your CI of choice.
02
When did this port get added? Who changed the timing on this runnable? Why does this interface look the way it does? Ask your repository in plain English and get the answer in seconds. AI-assisted summarization compresses years of commits into a readable narrative when you need context. The same history layer produces clean change reports between any two ECU releases for ISO 26262 and A-SPICE audits.
Technically: Element-level history and blame, indexed across the entire Git history. Natural-language queries and summaries run on your own BYOK LLM endpoint. Your ARXML never leaves your infrastructure.
03
No uploads. No cloud processing. No third party ever sees your ARXML. The product runs locally on each engineer's machine and on your own CI runners. Self-hosted deployment available for teams that need it.
Technically: Local-first CLI, desktop app, and VS Code extension. AI features (optional) connect to your own Azure OpenAI or AWS Bedrock. Never to ours.
04 For the engineers who scroll this far
Standard
git blame
on an ARXML file is line-by-line and meaningless. Line numbers shift every
time the upstream editor regenerates the XML. The Manifold equivalent shows
you every architectural change to the element you asked about, with author,
date, and the actual semantic delta.
$ git diff HEAD~1 PowertrainComp.arxml | head -32
diff --git a/Powertrain/PowertrainComp.arxml b/Powertrain/PowertrainComp.arxml
index a3f2d8c..a8f2e91 100644
--- a/Powertrain/PowertrainComp.arxml
+++ b/Powertrain/PowertrainComp.arxml
@@ -14820,15 +14820,8 @@
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">
/AUTOSAR/DataTypes/Temperature_T
</DATA-ELEMENT-REF>
- <INIT-VALUE>
- <CONSTANT-REFERENCE>
- /AUTOSAR/Constants/InitTemp
- </CONSTANT-REFERENCE>
- </INIT-VALUE>
</NONQUEUED-RECEIVER-COM-SPEC>
@@ -15239,12 +15232,12 @@
<TIMING-EVENTS>
<TIMING-EVENT>
<SHORT-NAME>UpdateBatteryState_Event</SHORT-NAME>
- <PERIOD>0.1</PERIOD>
+ <PERIOD>0.05</PERIOD>
</TIMING-EVENT>
@@ -28104,9 +28097,3 @@
</P-PORT-PROTOTYPE>
- <R-PORT-PROTOTYPE UUID="d2ae..7c91">
- <SHORT-NAME>InPort_TempSensor</SHORT-NAME>
- <REQUIRED-INTERFACE-TREF DEST="SR-INTERFACE">
- /AUTOSAR/Interfaces/TempReading_IF
- </REQUIRED-INTERFACE-TREF>
- </R-PORT-PROTOTYPE>
</PORTS>
... 4,213 more lines changed $ manifold blame /Powertrain/MotorControl/BatteryManager
History of SWC: BatteryManager (5 changes in last 18 months)
────────────────────────────────────────────────────────
2025-02-14 Tomas L. cleanup: remove InPort_TempSensor
a8f2e91 − R-PORT InPort_TempSensor
interface: TempReading_IF (SR)
2024-09-12 Lukas K. feat: tighten timing on update_battery_state
7d4e9a1 ~ runnable.update_battery_state
period: 100ms → 50ms
2024-06-03 Anna M. feat: expose battery status to vehicle bus
b7e4f12 + P-PORT OutPort_BatteryStatus
interface: BatteryStatus_IF (SR)
+ R-PORT InPort_TempSensor
interface: TempReading_IF (SR)
2024-01-18 Tomas L. refactor: extract from PowertrainComp
c2a1b9d extracted from BatteryControl composition
2023-11-04 Lukas K. initial: BatteryManager SWC
a3f2d8c + 2 ports, 1 runnable, BSW dep: NvM
────────────────────────────────────────────────────────
$ Same Git repository. Same commits. Same ECU target. The difference is whether your tools understand what a port, a runnable, and a composition actually mean.
05 Plays nice with
Manifold operates on the ARXML your existing toolchain already produces and the generated RTE / BSW code that comes out of it. It does not replace SystemDesk, DaVinci, ISOLAR, or EB tresos. Your architects keep using the editor they know; Git, finally, becomes useful.
06 Trust and IP
Q.
Does my ARXML get uploaded anywhere?
No. Manifold runs locally on each engineer's machine and on your own CI runners. The CLI, the desktop app, and the VS Code extension all operate on the files already on disk. No telemetry on file contents. Self-hosted deployment is available for teams that require it by policy.
Q.
Do your AI features see my data?
No. AI features connect to your own LLM endpoint: Azure OpenAI, AWS Bedrock, Vertex, or a self-hosted model. We never see prompts, never see responses, never see ARXML. You can disable the AI layer entirely and the rest of the product still delivers its core value.
Both answers hold in every product surface: CLI, desktop app, VS Code extension, CI integrations, and the eventual self-hosted enterprise deployment. This is a non-negotiable for us, not a marketing posture.
07 Common questions
08 Get notified
Early access is opening soon. One email when it lands. No marketing in between. Optional follow-up if you want to be a design partner.