- What model names should resolve to this family?
- Which transport builds the model object?
- What is the default protocol?
- What fallback protocol chain should remain stable?
- How should tools and context be delivered by default?
The minimal path
Add oneFamilyPreset entry under qitos/harness/_presets.py.
Reuse protocol objects instead of inventing new ones
QitOS v0.4 deliberately reusesModelProtocol.
That means most new families should choose from:
react_text_v1json_decision_v1xml_decision_v1terminus_json_v1terminus_xml_v1minimax_tool_call_v1
Reuse adapters when possible
For v0.4, the default adapter is:Keep the preset traceable
The preset becomes valuable only if researchers can see it later. Make sure the resolved harness metadata is visible through:RunSpec.metadata- trace manifest
qita
Validation checklist
resolve_family_preset(...)resolves the family from both family id and model namebuild_harness_policy(...)returns the right protocol and parserinfer_model_profile(...)stays aligned with preset defaults- the flagship example can switch into the new family without changing agent code
