mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-10-29 19:37:54 +08:00
2.7 KiB
2.7 KiB
Agent 派生实现来源
本文集中记录派生实现的固定来源,代码注释只描述实际行为。
以下实现参考或移植自 NousResearch/hermes-agent,固定提交为 f42f579cf8bac4918ac9599bece71618afadd846。上游版权为 Copyright (c) 2025 Nous Research,采用 MIT 许可;随代码保留完整许可和版权声明。
| 本地实现 | 上游来源 | 许可文件 |
|---|---|---|
app/agent/history/query.py |
hermes_state_search.py 的查询规范化和索引路由 |
MIT |
native/fts5_cjk/ |
同名目录的可选 CJK 分词器;具体作者及 SQLite 头文件说明见目录 README | 来源与许可 |
app/agent/learning/matching.py |
tools/fuzzy_match.py 的九级模糊匹配 |
MIT |
app/agent/learning/threats.py |
tools/threat_patterns.py 的提示注入检测模式 |
MIT |
app/agent/learning/prompts.py |
agent/background_review.py 的记忆及技能复盘提示词;适配宿主工具名称与所有权操作 |
MIT |
app/agent/guardrails/controller.py、results.py |
agent/tool_guardrails.py 的循环检测与工具回执分类 |
MIT |
app/agent/guardrails/completion.py |
agent/agent_runtime_helpers.py 的回复结束纠偏;增加同规则的中文表达 |
MIT |
app/adapters/system/code/runner.py、client.py |
tools/code_kernel.py 的持久 cell runner 与 tools/code_execution_tool.py 的本地 RPC 客户端及辅助函数;替换环境变量前缀、按宿主 schema 生成签名、按字节保存 spill,父死亡及主动退出时收口进程组/树 |
MIT |
Python 会话生命周期与 RPC 设计另参考 tools/code_kernel.py、tools/code_execution_rpc.py、tools/code_execution_env.py:持久解释器、逐 cell 上下文、默认300秒/50次调用/4个空闲LRU/1800秒、后台回收及七天残留清理。宿主采用异步进程和 TaskRegistry,并注入既有有界线程池,未移植上游独立线程注册表;只读 helper 范围由 MoviePilot 的真实工具与 API 副作用合同决定。当前不实现远程 kernel,不把本地支持描述成远端后端对等。
存储与检索行为的对应关系见 历史消息检索,后台复盘和执行纠偏的宿主边界见 Agent 文档。来源一致不意味着未经验证的平台或运行场景已经通过验收。