Files
2026-07-13 12:39:17 +08:00

34 lines
914 B
Python

from __future__ import annotations
from collections.abc import Mapping
from agents.sandbox import Manifest
from agents.sandbox.entries import File
def text_manifest(files: Mapping[str, str]) -> Manifest:
"""Build a manifest from in-memory UTF-8 text files."""
return Manifest(
entries={path: File(content=contents.encode("utf-8")) for path, contents in files.items()}
)
def tool_call_name(raw_item: object) -> str:
"""Return a readable name for a raw tool call item."""
if isinstance(raw_item, dict):
name = raw_item.get("name")
item_type = raw_item.get("type")
else:
name = getattr(raw_item, "name", None)
item_type = getattr(raw_item, "type", None)
if isinstance(name, str) and name:
return name
if item_type == "shell_call":
return "shell"
if isinstance(item_type, str):
return item_type
return ""