{
  "id": "act-imitate-episodes-py",
  "name": "ACT: ACT policy training and evaluation",
  "summary": "Pinned ACT entrypoint that trains on configured demonstrations or evaluates the resulting policy using its --eval mode in simulated or real ALOHA environments. Statically reviewed source only; not run and no Hub preparation adapter.",
  "framework": "act",
  "kind": "official_example",
  "source_registry": "official-robot-workflows-v1",
  "capabilities": [
    "policy-training",
    "robot-workflow"
  ],
  "robot_types": [
    "manipulator"
  ],
  "robot_scope": "This train/evaluate file imports the aloha_scripts real environment in real mode; its pinned README specifically requires ALOHA for real operation. Simulation modes remain separate. No universal ALOHA support, prepared adapter or execution success is inferred.",
  "source": {
    "repository": "https://github.com/tonyzhaozh/act",
    "commit": "742c753c0d4a5d87076c8f69e5628c79a8cc5488",
    "tag": "main",
    "path": "imitate_episodes.py",
    "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/imitate_episodes.py",
    "raw_url": "https://raw.githubusercontent.com/tonyzhaozh/act/742c753c0d4a5d87076c8f69e5628c79a8cc5488/imitate_episodes.py",
    "sha256": "f2b057cd497f3fef20bdc4197879d1c02e1c751f83154cce0183fcc10f7e2540",
    "bytes": 17242,
    "authors": [
      "Tony Z. Zhao"
    ]
  },
  "license": {
    "spdx": "MIT",
    "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/LICENSE",
    "sha256": "4666c312da313e6c46929f6695d06cf98a2e7359b9c7dcbb0ea232d01b32cd42",
    "scope": "Selected first-party Python workflow source only. Preserve upstream copyright and per-file notices. Model weights, datasets, third-party code, robot drivers/firmware and services retain separate terms; no rights for those assets are inferred.",
    "bytes": 1069
  },
  "access": {
    "mode": "source_reference",
    "hub_prepare": false,
    "instructions": "Fetch the pinned repository, verify this source checksum, and use upstream installation and invocation. This record does not install or execute code.",
    "setup_url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/README.md",
    "setup_evidence": [
      {
        "path": "README.md",
        "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/README.md",
        "sha256": "5059f601c1f0409556fd467150b99e93208de5d5594e9049f87ca92b24a5e7a2",
        "bytes": 3500,
        "purpose": "ACT train/eval entrypoint, simulator and real-ALOHA scope, Python3.8.10 setup"
      },
      {
        "path": "conda_env.yaml",
        "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/conda_env.yaml",
        "sha256": "b9cefd6bb83a6d5bb399529db1e8adc83456943bf664080e4c85b9ab70b7420b",
        "bytes": 390,
        "purpose": "Different declared Python3.9 environment and CUDA11.8 dependency"
      },
      {
        "path": "detr/LICENSE",
        "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/detr/LICENSE",
        "sha256": "b208c52b00a2df2c8f4c3298c34407bf2bfe409968213372251c91fcc737a1a5",
        "bytes": 11354,
        "purpose": "Separate Apache2 license for vendored DETR subtree, not the selected first-party workflow"
      },
      {
        "path": "detr/README.md",
        "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/detr/README.md",
        "sha256": "138b41d39a453f11ce56a6aa6dd47ec0afa3195e89f6d0da3daad9b5b0665f91",
        "bytes": 417,
        "purpose": "Upstream DETR provenance and attribution for vendored model definitions"
      }
    ]
  },
  "requirements": {
    "python": "README Python3.8.10 and conda_env.yaml Python3.9 disagree; both are preserved without compatibility inference.",
    "packages": [
      "Pinned ACT checkout",
      "Torch/torchvision, MuJoCo and dm_control setup in README/conda_env.yaml",
      "Separately installed modified DETR package; ALOHA package for real mode"
    ],
    "display": "Hardware: Training/evaluation explicitly calls .cuda() on policy and tensors. Simulator mode needs MuJoCo/dm_control; README says real mode additionally needs ALOHA installation/hardware. GPU memory minimum is not declared. Weights: Evaluation requires local policy_best.ckpt and dataset_stats.pkl. Training obtains selected demonstration data; external pretrained-backbone behavior in imported dependencies was not inspected. Datasets: Training uses a configured local demonstration dataset; evaluation uses matching dataset statistics. README links separately hosted simulation demonstrations. Services/auth: No cloud API key, provider token or online logging service is declared by this selected entrypoint. Imported dependencies and optional external assets remain outside this review.",
    "execution_domain": "computation-or-hardware",
    "source_imports": [
      "IPython",
      "aloha_scripts.constants",
      "aloha_scripts.real_env",
      "aloha_scripts.robot_utils",
      "argparse",
      "constants",
      "copy",
      "einops",
      "matplotlib.pyplot",
      "numpy",
      "os",
      "pickle",
      "policy",
      "sim_env",
      "torch",
      "tqdm",
      "utils",
      "visualize_episodes"
    ],
    "notes": "Train and --eval are modes of one physical source entrypoint, counted once. The Python/setup disagreement is an integration note, not hidden by a normalized version range. Code licensing does not establish model, checkpoint, dataset or service permission.",
    "declared_requirements": {
      "python": "README Python3.8.10 and conda_env.yaml Python3.9 disagree; both are preserved without compatibility inference.",
      "weights": "Evaluation requires local policy_best.ckpt and dataset_stats.pkl. Training obtains selected demonstration data; external pretrained-backbone behavior in imported dependencies was not inspected.",
      "datasets": "Training uses a configured local demonstration dataset; evaluation uses matching dataset statistics. README links separately hosted simulation demonstrations.",
      "hardware": "Training/evaluation explicitly calls .cuda() on policy and tensors. Simulator mode needs MuJoCo/dm_control; README says real mode additionally needs ALOHA installation/hardware. GPU memory minimum is not declared.",
      "external_services_and_auth": "No cloud API key, provider token or online logging service is declared by this selected entrypoint. Imported dependencies and optional external assets remain outside this review.",
      "evidence": [
        {
          "anchor": "policy.cuda()",
          "line": 170
        },
        {
          "anchor": "torch.load(ckpt_path)",
          "line": 168
        },
        {
          "anchor": "main(vars(parser.parse_args()))",
          "line": 435
        }
      ],
      "license_scopes": {
        "code": "MIT for selected first-party workflow source.",
        "weights": "Selected evaluator requires a locally produced policy_best.ckpt and dataset_stats.pkl. Separate pretrained-backbone/dependency assets were not audited; first-party MIT is not extended to external weights.",
        "datasets": "README links separately hosted scripted/human demonstration data. That dataset's license/access terms were not inspected or inferred from the code license.",
        "third_party_code": "The pinned detr/LICENSE and detr/README.md declare Apache-2.0 for the modified DETR subtree. Root MIT applies to the selected first-party workflow, not all vendored/dependency code. External weights, data and dependencies retain separate terms."
      },
      "interpretation": "Pinned upstream declarations only; no dependency resolution, model/data access, compatibility inference or runtime validation was performed."
    }
  },
  "invocation": {
    "entrypoint": "python imitate_episodes.py --task_name <reviewed-task> --ckpt_dir <local-directory> --policy_class ACT --batch_size <size> --seed <seed> --num_epochs <epochs> --lr <rate> <reviewed-act-options>",
    "notes": "Train and --eval are modes of one physical source entrypoint, counted once. The Python/setup disagreement is an integration note, not hidden by a normalized version range."
  },
  "popularity": {
    "metric": "github_stars",
    "repository_stars": 2277,
    "checked_at": "2026-10-17",
    "meaning": "Dated repository interest, not robot-skill usage, compatibility or runtime success."
  },
  "evidence": {
    "level": "source_reviewed",
    "runtime_verification": "not_run",
    "checked_at": "2026-10-17",
    "inspection": "Verified exact source, applicable license and author/setup document bytes at a full Git commit; parsed the Python AST and reviewed this guarded operational entrypoint and its explicit license notices. No upstream code, installation, robot command, dataset, mesh or checkpoint was executed or loaded.",
    "entrypoint_kind": "python_main",
    "inspection_method": "automated_static",
    "robot_discovery": {
      "scope": "This train/evaluate file imports the aloha_scripts real environment in real mode; its pinned README specifically requires ALOHA for real operation. Simulation modes remain separate. No universal ALOHA support, prepared adapter or execution success is inferred.",
      "method": "reviewed_pinned_text_declaration",
      "compatibility_inferred": false,
      "evidence": [
        {
          "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/imitate_episodes.py",
          "sha256": "f2b057cd497f3fef20bdc4197879d1c02e1c751f83154cce0183fcc10f7e2540",
          "bytes": 17242,
          "quote": "from aloha_scripts.real_env import make_real_env",
          "labels": [
            "aloha"
          ],
          "match_in": "text"
        },
        {
          "url": "https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/README.md",
          "sha256": "5059f601c1f0409556fd467150b99e93208de5d5594e9049f87ca92b24a5e7a2",
          "bytes": 3500,
          "quote": "For real, you would also need to install [ALOHA](https://github.com/tonyzhaozh/aloha).",
          "labels": [
            "aloha"
          ],
          "match_in": "text"
        }
      ]
    }
  },
  "robots": [
    "aloha"
  ],
  "artifact": {
    "kind": "workflow",
    "format": "python",
    "workflow_role": "policy-training"
  }
}
