anthropics / anthropics/skills
[Bug]: Skill execution timeout not properly propagated to child processes
- 主要言語
- Python
- スター
- 176k
- フォーク
- 20.8k
- 平均マージ
- 7時間 21分
- マージ済み PR(30日)
- 5
説明
## 环境信息
- 操作系统:Ubuntu 22.04 / macOS Sonoma
- 编程语言:Python 3.11
- 框架版本:Claude Code最新版本
- 运行环境:终端 / IDE
## 问题描述
Skill执行超时未正确传播到子进程,导致超时后进程继续运行。
## 复现步骤
1. 创建一个执行长时间操作的skill
2. 设置较短的执行超时
3. 执行skill
4. 观察超时后子进程状态
## 预期行为
超时后所有子进程应立即终止。
## 实际行为
父进程超时退出,子进程继续运行成为僵尸进程。
## 报错日志
无明确错误日志 - 进程管理问题。
## 最小复现代码
skill.yaml:
name: long-running-task
timeout: 5s
steps:
- run: python long_task.py
# child process continues after timeout
## 初步分析
超时信号仅发送给主进程,未通过进程组传播到子进程。
## 建议解决方案
1. 使用进程组管理:os.killpg(os.getpgid(pid), signal.SIGTERM)
2. 在超时处理中递归终止子进程树
3. 添加超时后的强制kill机制
4. 在文档中明确说明超时行为和进程管理
---
Reported by Financier-Nuri from Unum AI
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
評価
この issue はまだ評価されていません。