What Is a Manifest?
A manifest is a snapshot of your agent’s contract — the tools, model, prompts, subagents, and output schema that define how your agent behaves:How Auto-Detection Works
Detection is framework-specific. Each integration extracts the maximum available information:Two calling forms — when to use which:
- Flag form (
decimalai.init(api_key=..., langchain=True)) auto-installs the integration. Use this by default — it’s what the Quickstart shows. - Explicit
install(...)form is for when you need to pass advanced arguments — e.g., anAgentobject for OpenAI Agents to capture full schemas, orprompts={...}to override dynamic prompts in LangChain. Calldecimalai.init(api_key=...)first, theninstall(...).
install() separately — pick one form per integration.- LangChain
- OpenAI Agents
- OTel / CrewAI
- Generic
on_chat_model_start, and prompts from system messages.Manifest Hashing
Manifest hashing is deterministic and noise-resistant:Hashing implementation details
Hashing implementation details
Compatibility Scoring
When a new manifest is detected, DecimalAI classifies every existing trace against the new config:
The classification considers 10 surfaces, each with its own severity:
Repair: Fix Traces Mechanically
Traces classified as repair can be fixed with a deterministic data migration — no LLM calls, no re-running your agent. The platform rewrites tool call data inside the trace records so they conform to the new manifest.What Repair Does
After repair, the trace’s
manifest_id is updated to point to the new manifest — it’s now “compatible” with v2.
Repair Flow
1
Preview
See what rules would be applied, with before/after examples:Response shows each rule with confidence level and sample trace diffs.
2
Approve
Review the rules. You can apply all rules or select specific ones:
- Apply All — repairs every eligible trace with all generated rules
- Selective — pick which rules to apply (e.g., approve the tool rename but skip the param removal)
3
Apply
Dashboard Quickstart
In the dashboard, the Impact Report banner appears automatically when your agent has 2+ manifest versions. From the banner you can:- Click “Repair All” to preview repair rules (before/after examples for each affected trace)
- Review the rules, then click “Apply Repairs” to execute
- Or click “Repair & Build” for a combined flow: repair all eligible traces, then build a clean SFT dataset from keep + repaired traces — one click, end to end
REST API
Repair vs Replay: Repair is instant (deterministic DB rewrite, zero LLM cost). Replay re-runs the full agent on original prompts (minutes/hours, full LLM cost). Use repair for schema changes; use replay when the agent’s behavior changed.
Compatibility Policies
How aggressively traces are classified when a manifest changes (strict / default / permissive presets, per-surface overrides, distillation mode, impact preview) is covered in its own guide:Compatibility Policies
Preset reference, per-surface overrides, impact preview before applying, and the distillation override for fine-tuning workflows.
What Happens When a Manifest Changes
1
New version is registered
Auto-incremented (v1 → v2 → v3).
2
Compatibility report is generated
Each trace is classified as keep/repair/replay/drop.
3
Dashboard shows Impact Report
Visual breakdown with progress bars and action buttons.
4
Sidebar shows notification badge
Pulsing dot alerts you to drift.
5
Toast notification appears
Slide-in alert with “View Impact →” link.
The Manifest Timeline
The agent dashboard shows a timeline of all manifest versions with:- Version label (v1, v2, v3, or custom labels)
- Date registered
- Diff view — which surfaces changed between versions
- Trace count — how many traces were recorded under each version
- Compatibility summary — keep/repair/replay/drop counts
When Manifests Are Registered
Best Practices
- Use static prompts. Dynamic content (RAG chunks, dates) in system prompts causes false drift. Pass dynamic content as user messages instead.
-
Use
@decimalai.toolfor full schema tracking. The decorator generates JSON schemas from Python type hints — enabling schema-level drift detection, not just name-level. - Start with the default policy. The balanced preset works for most teams. Switch to strict when you need training data purity guarantees.
-
Label important versions. Use
version_label="v2.1-prod"when deploying significant changes so you can find them in the timeline.
Next Steps
Regression Check
Get manifest impact analysis as a PR comment on every change.
Manifests API
REST reference for register, list, get, diff.
Versioning & Compatibility
Conceptual model — manifest hash, component verdict, severity, repair.
Compatibility Policies
Tune how the engine maps severity to verdicts.
Troubleshooting
False drift, or the action says “no manifest”? Common fixes.