Add M7.5 provider-attached skills system with Agent Skills spec compliance

This commit is contained in:
rob
2026-07-20 02:01:35 -03:00
parent fe53721725
commit 8d38bdd83a
4 changed files with 692 additions and 5 deletions
+11 -4
View File
@@ -533,15 +533,22 @@ def execute_prompt_step(
prompt = substitute_variables(prompt_template, variables, warn_non_scalar=verbose)
# Inject profile system prompt if specified
# Determine provider
provider = provider_override or substitute_variables(step.provider, variables, warn_non_scalar=verbose)
# Build context from the inside out so the final order is:
# profile system prompt -> skills -> user prompt.
if step.skills is not None:
from .skills import inject_skills
skill_names = None if "*" in step.skills else step.skills
prompt = inject_skills(prompt, provider, skill_names)
if step.profile:
profile = load_profile(step.profile)
if profile and profile.system_prompt:
# Prepend system prompt to user prompt
prompt = f"{profile.system_prompt}\n\n---\n\n{prompt}"
# Determine provider
provider = provider_override or substitute_variables(step.provider, variables, warn_non_scalar=verbose)
# Structured or plain-text
# Plain text mode - bypass structured output
if step.plain_text: