Метаданные файлов
При записи файла можно добавить строковые метаданные. AgentBox хранит их вместе с файлом и возвращает из getInfo / get_info, list и rename.
mjs
import { Sandbox } from "@abox-dev/sdk";
const sandbox = await Sandbox.create();
try {
await sandbox.files.write("/tmp/report.txt", "Quarterly report", {
metadata: { author: "alice", status: "draft" },
});
const info = await sandbox.files.getInfo("/tmp/report.txt");
console.log(info.metadata);
} finally {
await sandbox.kill();
}py
from agentbox import Sandbox
sandbox = Sandbox.create()
try:
sandbox.files.write(
"/tmp/report.txt",
"Quarterly report",
metadata={"author": "alice", "status": "draft"},
)
info = sandbox.files.get_info("/tmp/report.txt")
print(info.metadata)
finally:
sandbox.kill()У метаданных есть несколько ограничений:
- ключи и значения должны состоять из печатных символов US-ASCII;
- ключи приводятся к нижнему регистру;
- повторная запись файла заменяет прежние метаданные;
- при записи нескольких файлов один набор метаданных применяется ко всем.
Внутри песочницы значения доступны как расширенные атрибуты user.agentbox.*.