user_id = await get_user() if not user_id: return json.dumps({"status": "error", "message": "未登录"}, ensure_ascii=False) pipeline_id = params_kw.get('pipeline_id', '') step = params_kw.get('step', '') modify_type = params_kw.get('modify_type', 'input') # 'input' or 'output' content = params_kw.get('content', '') if not pipeline_id or not step or not content: return json.dumps({"status": "error", "message": "缺少必要参数"}, ensure_ascii=False) try: content_data = json.loads(content) except Exception: content_data = content updates = {step: {"content": content_data}} rerun_from = "node" if modify_type == "input" else "next" try: result = await hermes_pipeline_modify(pipeline_id, updates, rerun_from) return json.dumps(result, ensure_ascii=False) except Exception as e: return json.dumps({"status": "error", "message": str(e)}, ensure_ascii=False)