dokugent byo¶
Bring Your Own (BYO) is Dokugent’s validation layer for external agent components, plans, certs, or metadata that users manually insert into a compiled agent file.
Purpose¶
Use dokugent byo to verify that custom data you inject into the "byo" array of .compiled.cert.json is structurally valid and compatible with Dokugent’s expectations.
What It Does¶
- Reads the
"byo"array inside a compiled agent cert - Validates each object against a known structure
- Returns errors or warnings if any required fields are missing or malformed
- Ensures clean handoff to
preview,simulate, orcertify
What It Doesn't Do¶
- Does not process or execute
byocontent - Does not transform or interpret third-party formats (e.g. LangChain, CrewAI, n8n)
- Does not auto-load files — all data must be embedded directly in the
byoarray
Structure and Placement¶
In Dokugent, "byo" is a top-level key — just like "Agent", "Plan", or "Criteria" — within a structured JSON file. It holds imported or manually created content that was not generated via Dokugent CLI wizards.
Each file inside .dokugent/data/byo/ should follow this general structure:
Optional: BYO Namespacing¶
If your BYO bundle contains its own plans, criteria, or conventions, you may namespace them like so:
{
"agentId": "examplebot@2025-06-01_22-00-00",
"byo": {
"plans": [ { } ],
"criteria": [ { } ],
"conventions": [ { } ]
}
}
This signals that the content is external and did not pass through Dokugent's generation pipeline. These entries will not be auto-included unless explicitly referenced downstream.
Philosophy¶
Dokugent treats "byo" as a sandboxed data container. It’s up to the user to define the structure — Dokugent only requires the surrounding JSON to be valid and traceable via agentId.
This design keeps the CLI simple while allowing for extensibility, foreign imports, or interop with other tools like LangChain or CrewAI.
Usage¶
The command will validate the byo section of the active compiled agent and print a pass/fail result.
Use Case Examples¶
- Injecting metadata from third-party agent builders
- Attaching custom evaluation rules or constraints
- Logging simulation annotations or override conditions
Design Philosophy¶
Dokugent doesn’t attempt to support all agent stacks — it defines a clean boundary. If you bring your own data, you are responsible for making it valid.
This ensures transparency, auditability, and trust at runtime.