upgrade/deepagents-0.4.4

This commit is contained in:
朱潮 2026-03-02 02:27:42 +08:00
parent 0b20cc68ba
commit 61c8186b55

View File

@ -289,19 +289,6 @@ class CustomAgentMemoryMiddleware(MemoryMiddleware):
class CustomSkillsMiddleware(SkillsMiddleware): class CustomSkillsMiddleware(SkillsMiddleware):
"""自定义的 SkillsMiddleware使用新的签名格式""" """自定义的 SkillsMiddleware使用新的签名格式"""
def __init__(
self,
*,
backend: FilesystemBackend,
sources: list[str],
project_skills_display: str = "./skills",
) -> None:
super().__init__(
backend=backend,
sources=sources,
)
self.project_skills_display = project_skills_display
def before_agent(self, state, runtime, config): def before_agent(self, state, runtime, config):
"""Load skills metadata before agent execution. """Load skills metadata before agent execution.
@ -314,14 +301,26 @@ class CustomSkillsMiddleware(SkillsMiddleware):
Returns: Returns:
Updated state with skills_metadata populated. Updated state with skills_metadata populated.
""" """
state = super().before_agent(state, runtime) if "skills_metadata" in state and len(state["skills_metadata"]) ==0 :
# 新版本的 skills_metadata 结构可能不同,需要检查 del state["skills_metadata"]
if "skills_metadata" in state and state["skills_metadata"]: state = super().before_agent(state, runtime, config)
for item in state["skills_metadata"]: return state
# 修改路径显示为相对路径
if "path" in item and item["path"]: async def abefore_agent(self, state, runtime, config):
# 简化为只显示相对路径 """Load skills metadata before agent execution.
item["path"] = f"./skills/{item.get('name', 'unknown')}/SKILL.md"
修改路径显示为相对路径
Args:
state: Current agent state.
runtime: Runtime context.
Returns:
Updated state with skills_metadata populated.
"""
if "skills_metadata" in state and len(state["skills_metadata"]) ==0 :
del state["skills_metadata"]
state = await super().abefore_agent(state, runtime, config)
return state return state
def create_custom_cli_agent( def create_custom_cli_agent(
@ -442,8 +441,7 @@ def create_custom_cli_agent(
# Add skills middleware (using new signature) # Add skills middleware (using new signature)
if enable_skills: if enable_skills:
skills_sources = [workspace_root] skills_sources = ["./skills"]
skills_sources.append(workspace_root + "/skills")
agent_middleware.append( agent_middleware.append(
CustomSkillsMiddleware( CustomSkillsMiddleware(
@ -480,8 +478,7 @@ def create_custom_cli_agent(
# Add skills middleware # Add skills middleware
if enable_skills: if enable_skills:
skills_sources = [workspace_root] skills_sources = ["/skills"]
skills_sources.append(workspace_root + "/skills")
agent_middleware.append( agent_middleware.append(
CustomSkillsMiddleware( CustomSkillsMiddleware(