"""资产列表 — list the account's generated assets. tripocli assets --type model --page 1 The API takes two filters: ``asset_type`` (scope, verified value: ``mine``) and ``type`` (the asset kind, e.g. ``model``). """ NAME = "assets" HELP = "列出账号资产(模型/图片)" def add_arguments(parser): parser.add_argument("--type", default="model", help="资产种类,默认 model") parser.add_argument("--asset-type", default="mine", help="资产范围,默认 mine") parser.add_argument("--page", type=int, default=1, help="页码") parser.add_argument("--size", type=int, default=20, help="每页数量") def run(ctx): args = ctx.args data = ctx.client.assets( asset_type=args.asset_type, type=args.type, page=args.page, size=args.size ) or {} projects = data.get("projects") or [] def show(): ctx.out.line(f"共 {data.get('total', len(projects))} 个资产(当前显示 {len(projects)} 个)") for item in projects: pid = item.get("id") or item.get("project_id") or "" name = item.get("project_name") or (item.get("biz_info") or {}).get("short_description") or "" cat = item.get("category") or item.get("type") or "" ctx.out.line(f" {pid} [{cat}] {name}") ctx.out.data(data, human=show) return data