Co-authored-by: Quentin Torroba <quentin.torroba@mistral.ai>
Co-authored-by: Kim-Adeline Miguel <kimadeline.miguel@mistral.ai>
Co-authored-by: Vincent Guilloux <vincent.guilloux@mistral.ai>
Co-authored-by: Clement Sirieix <clem.sirieix@gmail.com>
Co-authored-by: Antoine W <antoine.wronka@mistral.ai>
Co-authored-by: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
Mathias Gesbert 2026-03-09 19:28:09 +01:00 committed by GitHub
parent 5d2e01a6d7
commit dd372ce494
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
89 changed files with 2086 additions and 596 deletions

View file

@ -6,6 +6,8 @@ from pathlib import Path
import tomllib
from typing import TYPE_CHECKING, Any
from vibe.core.paths.global_paths import PLANS_DIR
if TYPE_CHECKING:
from vibe.core.config import VibeConfig
@ -71,7 +73,17 @@ class AgentProfile:
CHAT_AGENT_TOOLS = ["grep", "read_file", "ask_user_question", "task"]
PLAN_AGENT_TOOLS = ["grep", "read_file", "todo", "ask_user_question", "task"]
def _plan_overrides() -> dict[str, Any]:
plans_pattern = str(PLANS_DIR.path / "*")
return {
"tools": {
"write_file": {"permission": "never", "allowlist": [plans_pattern]},
"search_replace": {"permission": "never", "allowlist": [plans_pattern]},
}
}
DEFAULT = AgentProfile(
BuiltinAgentName.DEFAULT,
@ -84,7 +96,7 @@ PLAN = AgentProfile(
"Plan",
"Read-only agent for exploration and planning",
AgentSafety.SAFE,
overrides={"auto_approve": True, "enabled_tools": PLAN_AGENT_TOOLS},
overrides=_plan_overrides(),
)
CHAT = AgentProfile(
BuiltinAgentName.CHAT,