diff --git a/skillagent/skillengine.py b/skillagent/skillengine.py index de356bd..a3a3506 100644 --- a/skillagent/skillengine.py +++ b/skillagent/skillengine.py @@ -102,6 +102,8 @@ class IndustrialSkillEngine: skills = await env.session_getvalue(key) if not refresh and skills: self.registry = skills + snames = [ s for s in skills.keys() ] + debug(f'获得session中的{snames}') return for skill_md in self.root.glob("**/SKILL.md"): @@ -120,6 +122,8 @@ class IndustrialSkillEngine: "need_init": need_init, "content": content }) + snames = [k for k in self.registry.keys()] + debug(f'已装入:{snames} skills') await env.session_setvalue(key, self.registry) # --- 2. 自动化依赖环境隔离 (venv 思想) --- @@ -179,7 +183,7 @@ class IndustrialSkillEngine: base_content = skill["content"] # 扫描目录下的辅助文件夹 - sub_dirs = ["reference", "examples"] + sub_dirs = [".", "reference", "examples"] found_docs = [] for d in sub_dirs: path = skill["root"] / d @@ -235,6 +239,8 @@ class IndustrialSkillEngine: }) skill_map = {n: v.meta.description for n, v in self.registry.items()} target = await self.llm(f"用户意图: {user_prompt}\n可选技能清单: {skill_map}\n请返回匹配的技能名:") + if not target: + raise Exception(f"未找到技能名") self.state["current_skill"] = target await self.write_output({ "status":"PROCESSING",