Co-authored-by: Clément Drouin <clement.drouin@mistral.ai>
Co-authored-by: Clément Sirieix <clement.sirieix@mistral.ai>
Co-authored-by: Gauthier Guinet <43207538+Gguinet@users.noreply.github.com>
Co-authored-by: Kim-Adeline Miguel <kimadeline.miguel@mistral.ai>
Co-authored-by: Michel Thomazo <51709227+michelTho@users.noreply.github.com>
Co-authored-by: Quentin <torroba.q@gmail.com>
Co-authored-by: Simon <80467011+sorgfresser@users.noreply.github.com>
Co-authored-by: Simon Van de Kerckhove <simon.vandekerckhove@mistral.ai>
Co-authored-by: Vincent G <10739306+VinceOPS@users.noreply.github.com>
Co-authored-by: angelapopopo <angele.lenglemetz@mistral.ai>
Co-authored-by: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
Mathias Gesbert 2026-03-23 18:45:21 +01:00 committed by GitHub
parent 5103019b01
commit eb580209d4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
180 changed files with 11136 additions and 1030 deletions

View file

@ -57,7 +57,17 @@ class AgentProfile:
def apply_to_config(self, base: VibeConfig) -> VibeConfig:
from vibe.core.config import VibeConfig as VC
merged = _deep_merge(base.model_dump(), self.overrides)
merged = _deep_merge(
base.model_dump(),
{k: v for k, v in self.overrides.items() if k != "base_disabled"},
)
base_disabled = self.overrides.get("base_disabled")
if isinstance(base_disabled, list):
merged["disabled_tools"] = list({
*base_disabled,
*merged.get("disabled_tools", []),
})
return VC.model_validate(merged)
@classmethod
@ -92,6 +102,7 @@ DEFAULT = AgentProfile(
"Default",
"Requires approval for tool executions",
AgentSafety.NEUTRAL,
overrides={"base_disabled": ["exit_plan_mode"]},
)
PLAN = AgentProfile(
BuiltinAgentName.PLAN,
@ -113,10 +124,11 @@ ACCEPT_EDITS = AgentProfile(
"Auto-approves file edits only",
AgentSafety.DESTRUCTIVE,
overrides={
"base_disabled": ["exit_plan_mode"],
"tools": {
"write_file": {"permission": "always"},
"search_replace": {"permission": "always"},
}
},
},
)
AUTO_APPROVE = AgentProfile(
@ -124,7 +136,7 @@ AUTO_APPROVE = AgentProfile(
"Auto Approve",
"Auto-approves all tool executions",
AgentSafety.YOLO,
overrides={"auto_approve": True},
overrides={"auto_approve": True, "base_disabled": ["exit_plan_mode"]},
)
EXPLORE = AgentProfile(
@ -173,6 +185,7 @@ LEAN = AgentProfile(
"thinking": "off",
},
"tools": {"bash": {"default_timeout": 1200}},
"base_disabled": ["exit_plan_mode"],
},
)