cogames 0.3.49__py3-none-any.whl → 0.3.64__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. cogames/cli/client.py +60 -6
  2. cogames/cli/docsync/__init__.py +0 -0
  3. cogames/cli/docsync/_nb_md_directive_processing.py +180 -0
  4. cogames/cli/docsync/_nb_md_sync.py +103 -0
  5. cogames/cli/docsync/_nb_py_sync.py +122 -0
  6. cogames/cli/docsync/_three_way_sync.py +115 -0
  7. cogames/cli/docsync/_utils.py +76 -0
  8. cogames/cli/docsync/docsync.py +156 -0
  9. cogames/cli/leaderboard.py +112 -28
  10. cogames/cli/mission.py +64 -53
  11. cogames/cli/policy.py +46 -10
  12. cogames/cli/submit.py +268 -67
  13. cogames/cogs_vs_clips/cog.py +79 -0
  14. cogames/cogs_vs_clips/cogs_vs_clips_mapgen.md +19 -16
  15. cogames/cogs_vs_clips/cogsguard_reward_variants.py +153 -0
  16. cogames/cogs_vs_clips/cogsguard_tutorial.py +56 -0
  17. cogames/cogs_vs_clips/evals/README.md +10 -16
  18. cogames/cogs_vs_clips/evals/cogsguard_evals.py +81 -0
  19. cogames/cogs_vs_clips/evals/diagnostic_evals.py +49 -444
  20. cogames/cogs_vs_clips/evals/difficulty_variants.py +13 -326
  21. cogames/cogs_vs_clips/evals/integrated_evals.py +5 -45
  22. cogames/cogs_vs_clips/evals/spanning_evals.py +9 -180
  23. cogames/cogs_vs_clips/mission.py +187 -146
  24. cogames/cogs_vs_clips/missions.py +46 -137
  25. cogames/cogs_vs_clips/procedural.py +8 -8
  26. cogames/cogs_vs_clips/sites.py +107 -3
  27. cogames/cogs_vs_clips/stations.py +198 -186
  28. cogames/cogs_vs_clips/tutorial_missions.py +1 -1
  29. cogames/cogs_vs_clips/variants.py +25 -476
  30. cogames/device.py +13 -1
  31. cogames/{policy/scripted_agent/README.md → docs/SCRIPTED_AGENT.md} +82 -58
  32. cogames/evaluate.py +18 -30
  33. cogames/main.py +1434 -243
  34. cogames/maps/canidate1_1000.map +1 -1
  35. cogames/maps/canidate1_1000_stations.map +2 -2
  36. cogames/maps/canidate1_500.map +1 -1
  37. cogames/maps/canidate1_500_stations.map +2 -2
  38. cogames/maps/canidate2_1000.map +1 -1
  39. cogames/maps/canidate2_1000_stations.map +2 -2
  40. cogames/maps/canidate2_500.map +1 -1
  41. cogames/maps/canidate2_500_stations.map +2 -2
  42. cogames/maps/canidate3_1000.map +1 -1
  43. cogames/maps/canidate3_1000_stations.map +2 -2
  44. cogames/maps/canidate3_500.map +1 -1
  45. cogames/maps/canidate3_500_stations.map +2 -2
  46. cogames/maps/canidate4_500.map +1 -1
  47. cogames/maps/canidate4_500_stations.map +2 -2
  48. cogames/maps/cave_base_50.map +2 -2
  49. cogames/maps/diagnostic_evals/diagnostic_agile.map +2 -2
  50. cogames/maps/diagnostic_evals/diagnostic_agile_hard.map +2 -2
  51. cogames/maps/diagnostic_evals/diagnostic_charge_up.map +2 -2
  52. cogames/maps/diagnostic_evals/diagnostic_charge_up_hard.map +2 -2
  53. cogames/maps/diagnostic_evals/diagnostic_chest_navigation1.map +2 -2
  54. cogames/maps/diagnostic_evals/diagnostic_chest_navigation1_hard.map +2 -2
  55. cogames/maps/diagnostic_evals/diagnostic_chest_navigation2.map +2 -2
  56. cogames/maps/diagnostic_evals/diagnostic_chest_navigation2_hard.map +2 -2
  57. cogames/maps/diagnostic_evals/diagnostic_chest_navigation3.map +2 -2
  58. cogames/maps/diagnostic_evals/diagnostic_chest_navigation3_hard.map +2 -2
  59. cogames/maps/diagnostic_evals/diagnostic_chest_near.map +2 -2
  60. cogames/maps/diagnostic_evals/diagnostic_chest_search.map +2 -2
  61. cogames/maps/diagnostic_evals/diagnostic_chest_search_hard.map +2 -2
  62. cogames/maps/diagnostic_evals/diagnostic_extract_lab.map +2 -2
  63. cogames/maps/diagnostic_evals/diagnostic_extract_lab_hard.map +2 -2
  64. cogames/maps/diagnostic_evals/diagnostic_memory.map +2 -2
  65. cogames/maps/diagnostic_evals/diagnostic_memory_hard.map +2 -2
  66. cogames/maps/diagnostic_evals/diagnostic_radial.map +2 -2
  67. cogames/maps/diagnostic_evals/diagnostic_radial_hard.map +2 -2
  68. cogames/maps/diagnostic_evals/diagnostic_resource_lab.map +2 -2
  69. cogames/maps/diagnostic_evals/diagnostic_unclip.map +2 -2
  70. cogames/maps/evals/eval_balanced_spread.map +9 -5
  71. cogames/maps/evals/eval_clip_oxygen.map +9 -5
  72. cogames/maps/evals/eval_collect_resources.map +9 -5
  73. cogames/maps/evals/eval_collect_resources_hard.map +9 -5
  74. cogames/maps/evals/eval_collect_resources_medium.map +9 -5
  75. cogames/maps/evals/eval_divide_and_conquer.map +9 -5
  76. cogames/maps/evals/eval_energy_starved.map +9 -5
  77. cogames/maps/evals/eval_multi_coordinated_collect_hard.map +9 -5
  78. cogames/maps/evals/eval_oxygen_bottleneck.map +9 -5
  79. cogames/maps/evals/eval_single_use_world.map +9 -5
  80. cogames/maps/evals/extractor_hub_100x100.map +9 -5
  81. cogames/maps/evals/extractor_hub_30x30.map +9 -5
  82. cogames/maps/evals/extractor_hub_50x50.map +9 -5
  83. cogames/maps/evals/extractor_hub_70x70.map +9 -5
  84. cogames/maps/evals/extractor_hub_80x80.map +9 -5
  85. cogames/maps/machina_100_stations.map +2 -2
  86. cogames/maps/machina_200_stations.map +2 -2
  87. cogames/maps/machina_200_stations_small.map +2 -2
  88. cogames/maps/machina_eval_exp01.map +2 -2
  89. cogames/maps/machina_eval_template_large.map +2 -2
  90. cogames/maps/machinatrainer4agents.map +2 -2
  91. cogames/maps/machinatrainer4agentsbase.map +2 -2
  92. cogames/maps/machinatrainerbig.map +2 -2
  93. cogames/maps/machinatrainersmall.map +2 -2
  94. cogames/maps/planky_evals/aligner_avoid_aoe.map +28 -0
  95. cogames/maps/planky_evals/aligner_full_cycle.map +28 -0
  96. cogames/maps/planky_evals/aligner_gear.map +24 -0
  97. cogames/maps/planky_evals/aligner_hearts.map +24 -0
  98. cogames/maps/planky_evals/aligner_junction.map +26 -0
  99. cogames/maps/planky_evals/exploration_distant.map +28 -0
  100. cogames/maps/planky_evals/maze.map +32 -0
  101. cogames/maps/planky_evals/miner_best_resource.map +26 -0
  102. cogames/maps/planky_evals/miner_deposit.map +24 -0
  103. cogames/maps/planky_evals/miner_extract.map +26 -0
  104. cogames/maps/planky_evals/miner_full_cycle.map +28 -0
  105. cogames/maps/planky_evals/miner_gear.map +24 -0
  106. cogames/maps/planky_evals/multi_role.map +28 -0
  107. cogames/maps/planky_evals/resource_chain.map +30 -0
  108. cogames/maps/planky_evals/scout_explore.map +32 -0
  109. cogames/maps/planky_evals/scout_gear.map +24 -0
  110. cogames/maps/planky_evals/scrambler_full_cycle.map +28 -0
  111. cogames/maps/planky_evals/scrambler_gear.map +24 -0
  112. cogames/maps/planky_evals/scrambler_target.map +26 -0
  113. cogames/maps/planky_evals/stuck_corridor.map +32 -0
  114. cogames/maps/planky_evals/survive_retreat.map +26 -0
  115. cogames/maps/training_facility_clipped.map +2 -2
  116. cogames/maps/training_facility_open_1.map +2 -2
  117. cogames/maps/training_facility_open_2.map +2 -2
  118. cogames/maps/training_facility_open_3.map +2 -2
  119. cogames/maps/training_facility_tight_4.map +2 -2
  120. cogames/maps/training_facility_tight_5.map +2 -2
  121. cogames/maps/vanilla_large.map +2 -2
  122. cogames/maps/vanilla_small.map +2 -2
  123. cogames/pickup.py +183 -0
  124. cogames/play.py +166 -33
  125. cogames/policy/chaos_monkey.py +54 -0
  126. cogames/policy/nim_agents/__init__.py +27 -10
  127. cogames/policy/nim_agents/agents.py +121 -60
  128. cogames/policy/nim_agents/thinky_eval.py +35 -222
  129. cogames/policy/pufferlib_policy.py +67 -32
  130. cogames/policy/starter_agent.py +184 -0
  131. cogames/policy/trainable_policy_template.py +4 -1
  132. cogames/train.py +51 -13
  133. cogames/verbose.py +2 -2
  134. cogames-0.3.64.dist-info/METADATA +1842 -0
  135. cogames-0.3.64.dist-info/RECORD +159 -0
  136. cogames-0.3.64.dist-info/licenses/LICENSE +21 -0
  137. cogames-0.3.64.dist-info/top_level.txt +2 -0
  138. metta_alo/__init__.py +0 -0
  139. metta_alo/job_specs.py +17 -0
  140. metta_alo/policy.py +16 -0
  141. metta_alo/pure_single_episode_runner.py +75 -0
  142. metta_alo/py.typed +0 -0
  143. metta_alo/rollout.py +322 -0
  144. metta_alo/scoring.py +168 -0
  145. cogames/maps/diagnostic_evals/diagnostic_assembler_near.map +0 -49
  146. cogames/maps/diagnostic_evals/diagnostic_assembler_search.map +0 -49
  147. cogames/maps/diagnostic_evals/diagnostic_assembler_search_hard.map +0 -89
  148. cogames/policy/nim_agents/common.nim +0 -887
  149. cogames/policy/nim_agents/install.sh +0 -1
  150. cogames/policy/nim_agents/ladybug_agent.nim +0 -984
  151. cogames/policy/nim_agents/nim_agents.nim +0 -55
  152. cogames/policy/nim_agents/nim_agents.nims +0 -14
  153. cogames/policy/nim_agents/nimby.lock +0 -3
  154. cogames/policy/nim_agents/racecar_agents.nim +0 -884
  155. cogames/policy/nim_agents/random_agents.nim +0 -68
  156. cogames/policy/nim_agents/test_agents.py +0 -53
  157. cogames/policy/nim_agents/thinky_agents.nim +0 -717
  158. cogames/policy/scripted_agent/baseline_agent.py +0 -1049
  159. cogames/policy/scripted_agent/demo_policy.py +0 -244
  160. cogames/policy/scripted_agent/pathfinding.py +0 -126
  161. cogames/policy/scripted_agent/starter_agent.py +0 -136
  162. cogames/policy/scripted_agent/types.py +0 -235
  163. cogames/policy/scripted_agent/unclipping_agent.py +0 -476
  164. cogames/policy/scripted_agent/utils.py +0 -385
  165. cogames-0.3.49.dist-info/METADATA +0 -406
  166. cogames-0.3.49.dist-info/RECORD +0 -136
  167. cogames-0.3.49.dist-info/top_level.txt +0 -1
  168. {cogames-0.3.49.dist-info → cogames-0.3.64.dist-info}/WHEEL +0 -0
  169. {cogames-0.3.49.dist-info → cogames-0.3.64.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,1842 @@
1
+ Metadata-Version: 2.4
2
+ Name: cogames
3
+ Version: 0.3.64
4
+ Summary: Multi-agent cooperative games
5
+ Classifier: Programming Language :: Python :: 3
6
+ Classifier: Programming Language :: Python :: 3.12
7
+ Requires-Python: <3.13,>=3.12
8
+ Description-Content-Type: text/markdown
9
+ License-File: LICENSE
10
+ Requires-Dist: mettagrid==0.2.0.74
11
+ Requires-Dist: packaging>=24.0.0
12
+ Requires-Dist: pufferlib-core
13
+ Requires-Dist: pydantic>=2.11.5
14
+ Requires-Dist: pyyaml>=6.0.2
15
+ Requires-Dist: questionary>=2.0.1
16
+ Requires-Dist: einops>=0.8.0
17
+ Requires-Dist: scipy>=1.15.3
18
+ Requires-Dist: typer>=0.19.2
19
+ Requires-Dist: rich>=13.7.0
20
+ Requires-Dist: questionary>=2.1.0
21
+ Requires-Dist: fastapi>=0.115.0
22
+ Requires-Dist: uvicorn>=0.34.0
23
+ Requires-Dist: httpx>=0.28.1
24
+ Requires-Dist: nbstripout>=0.8.0
25
+ Requires-Dist: nbconvert>=7.16.0
26
+ Requires-Dist: jupytext>=1.16.0
27
+ Requires-Dist: ipykernel>=6.29.5
28
+ Requires-Dist: pytest-httpserver>=1.1.0
29
+ Provides-Extra: agents
30
+ Requires-Dist: cogames-agents>=0.0.1; extra == "agents"
31
+ Provides-Extra: test
32
+ Requires-Dist: pytest; extra == "test"
33
+ Requires-Dist: pytest-xdist; extra == "test"
34
+ Requires-Dist: ruff; extra == "test"
35
+ Dynamic: license-file
36
+
37
+ # CoGames: A Game Environment for the Alignment League Benchmark
38
+
39
+ <p align="center">
40
+ <a href="https://pypi.org/project/cogames/">
41
+ <img src="https://img.shields.io/pypi/v/cogames" alt="PyPi version">
42
+ </a>
43
+ <a href="https://pypi.org/project/cogames/">
44
+ <img src="https://img.shields.io/pypi/pyversions/cogames" alt="Python version">
45
+ </a>
46
+ <a href="https://discord.gg/secret-hologenesis">
47
+ <img src="https://img.shields.io/discord/1309708848730345493?logo=discord&logoColor=white&label=Discord" alt="Discord">
48
+ </a>
49
+ <a href="https://deepwiki.com/Metta-AI/cogames">
50
+ <img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki">
51
+ </a>
52
+ <a href="https://colab.research.google.com/github/Metta-AI/cogames/blob/main/README.ipynb">
53
+ <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open in Colab">
54
+ </a>
55
+
56
+ <a href="https://softmax.com/">
57
+ <img src="https://img.shields.io/badge/Softmax-Website-849EBE?logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNTI5LjIyIDUzNy40NyI+CiAgPGRlZnM+CiAgICA8c3R5bGU+CiAgICAgIC5jbHMtMSB7CiAgICAgICAgY2xpcC1wYXRoOiB1cmwoI2NsaXBwYXRoKTsKICAgICAgfQoKICAgICAgLmNscy0yIHsKICAgICAgICBmaWxsOiBub25lOwogICAgICB9CgogICAgICAuY2xzLTIsIC5jbHMtMywgLmNscy00LCAuY2xzLTUgewogICAgICAgIHN0cm9rZS13aWR0aDogMHB4OwogICAgICB9CgogICAgICAuY2xzLTMgewogICAgICAgIGZpbGw6ICMwZTI3NTg7CiAgICAgIH0KCiAgICAgIC5jbHMtNCB7CiAgICAgICAgZmlsbDogI2JiY2NmMzsKICAgICAgfQoKICAgICAgLmNscy01IHsKICAgICAgICBmaWxsOiAjODU5ZWJlOwogICAgICB9CiAgICA8L3N0eWxlPgogICAgPGNsaXBQYXRoIGlkPSJjbGlwcGF0aCI+CiAgICAgIDxyZWN0IGNsYXNzPSJjbHMtMiIgd2lkdGg9IjUyOS4yMSIgaGVpZ2h0PSI1MzcuNDciLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgogIDxnIGNsYXNzPSJjbHMtMSI+CiAgICA8cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Ik00MzUuNzksMTY3LjA5YzEuMzksMTQuNzIsMi4yOCwzNS4xNS4wNyw1OS4xOC0yLjc2LDMwLTguNDEsOTEuNDItNTMuMDYsMTQ0Ljg1LTEyLjcxLDE1LjIxLTMxLjUsMzcuMTctNjQuMjcsNTAuNzUtMjAuMSw4LjMzLTM5LjcyLDExLjE0LTU3LjA4LDExLjE0LTI3LjIxLDAtNDguODctNi44OS01OC4xNC0xMC4xOC0yNC4yOC04LjcxLTQ2LjI2LTEzLjg4LTY0LjgyLTE3LjAzLTkuODEtMS42Ny0xNy4yLTIuODktMjcuNTEtMy4zNy01LjMtLjI0LTExLjItLjU4LTE3LjUyLS41OC0xNC45NywwLTMyLjMxLDEuOTEtNDkuNjYsMTEuNTUtNy4yLDQtMjIuMzYsMTEuODItMzMuMjgsMjguNC0yLjMxLDMuNS01LjczLDcuMjYtNy4xLDEzLjE3LS43NywzLjMzLS44Myw2LjQ1LS41NSw5LjE3LDEwLjE4LDE2LjUsMzEuOSwyNS4xLDcwLjMxLDM5Ljc5LDQwLjU4LDE1LjUyLDc2LjQ2LDIzLjA4LDEwMy4zNiwyNy4yLDM5LjYyLDYuMDcsNzAuMjEsNi4yOSw4OC44NSw2LjM1LjY5LDAsMS4zOSwwLDIuMDgsMCw1MS4zMSwwLDg4Ljg1LTUuOTYsOTYuNzQtNy4yNiwyMS4xNS0zLjQ2LDUwLjY1LTguNDUsODYuOC0yMi4zOSwzOS41Mi0xNS4yNCw2Ni42MS0yNS42OCw3Ni4yNS01MC42OSwxLjUtMy44OCw0LjYzLTEzLjQzLTIuODYtNTUuMDctNy41Ny00Mi4xNS0xOC4xMi03My4xOS0xOS42Ny03Ny42OC0yMC45MS02MC43My0zMS4zNy05MS4wOS00Ny4xNS0xMjAuNTktNy4xNi0xMy4zOC0xNC4zNy0yNS40My0yMS44Mi0zNi43MiIvPgogICAgPHBhdGggY2xhc3M9ImNscy01IiBkPSJNNDA1LjgsMTI2LjM4Yy0yLjcsMTQuMTMtNy40MywzMy40Ny0xNi4xOSw1NS4zOS05LjMzLDIzLjMzLTE3LjQzLDQzLjU5LTM2LjExLDYzLjctOS43MywxMC40Ny0zNC4xMSwzNi43LTcwLjQ5LDQwLjg5LTMuMjguMzgtNi40Ny41NS05LjYuNTUtMTUuMjQsMC0yOS4xMy00LjE2LTQ2LjQ4LTkuMzYtMjIuNjQtNi43OC0zMy45OC0xNC4zNy02MS42My0xOS4xOC0xMC4xNy0xLjc3LTE2LjI2LTIuODMtMjQuNTMtMi44M2gtLjM0cy02Mi4zLjIzLTEwOC45MSw2NS4xMmMtLjI4LjM5LS41NS43Ny0uNTUuNzctNy4zMiwxMC44Ny0xMS45MSwyMC44OC0xNC44NiwyOC43OC0yLjU1LDYuNzktMy45NywxMi4yNi01LjU0LDE4LjI3LTEuNiw2LjE1LTIuNzksMTEuNjItNi4zMSwzMS4xNy0xLjE0LDYuMzYtMi42MSwxNC41OS00LjI3LDI0LjI1LDYuNC0xMC45MSwxNy4xMi0yNS45LDM0LjItMzkuMywxNC41OS0xMS40NSwyNy45OC0xNy4xMywzMy4wNi0xOS4xNiwyLjg1LTEuMTMsMTMuNzUtNS4zNSwyOC45NS03LjgsMy45My0uNjMsMTIuMTgtMS44LDIzLjItMS44LDguMTMsMCwxNy43Ny42MywyOC4zLDIuNTgsNi42NywxLjIzLDE2LjYxLDMuMTMsMjguNDEsOC4xNSw0LjAxLDEuNywxMS4yMSw1LjAzLDE4Ljg1LDksNC45MiwyLjU2LDguMzcsNC41MywxNC4xOCw3LjE0LDQuOSwyLjIxLDkuMDMsMy43NiwxMS43OCw0Ljc0LDAsMCwxOS4yMyw2LjM2LDQwLjI0LDYuOTguOTkuMDMsMS45Ni4wNCwyLjkxLjA0LDUuMzQsMCw5LjY4LS4zOSw5LjY4LS4zOSw2LjYtLjI2LDE1LjktMS4xOCwyNi41NS00LjIsMzkuMjUtMTEuMTQsNjEuNDQtNDEuMDMsNzQuMDctNTguMDIsNDkuOTUtNjcuMTksNDcuOTMtMTY3Ljg1LDQ3LjQxLTE4NC43Ny01LjE3LTcuMDItMTAuNDktMTMuODYtMTYuMDItMjAuNyIvPgogICAgPHBhdGggY2xhc3M9ImNscy00IiBkPSJNMjYzLjg1LDBjLS4xNywwLS4zMywwLS40OSwwLTkuNTYuMTMtMTguOTcsMy45OC01MS40NSwzMy4zNC0zNC4xLDMwLjgzLTQ4Ljk2LDQ4LjA2LTQ4Ljk2LDQ4LjA2LTQ1Ljg0LDUzLjEzLTY4Ljc3LDc5LjY5LTkyLjQ4LDEyMS40OS0zMC4zLDUzLjQxLTQ0LjkxLDEwMC4wOS01MS4yMywxMjMuMDItLjU4LDIuMS0xLjE1LDQuMzItMS43Myw2LjcxLDIuMzItNS40OSw0Ljk0LTExLjE5LDcuOS0xNy4wNCwxMy4zOS0yNi40MiwzNi42MS03Mi4yMSw4My45My04OC44NiwxMy41NC00Ljc2LDI1Ljk2LTYuMDYsMzMuNzktNi4zNywxLjQ3LS4wNiwyLjkxLS4wOCw0LjMtLjA4LDI3LjM5LDAsMzguNzMsMTAuODIsNzIsMTguODMsMTUuMjcsMy42NywzMS43OCw3Ljg4LDQ5LjUsNy44OCw5LjM2LDAsMTkuMDYtMS4xNywyOS4xLTQuMjIsMzYuNDktMTEuMDYsNTYuNDQtNDEuMzMsNjMuMjUtNTEuNTMsMTUuMzYtMjMuMDIsMTkuOTUtNDUuMjMsMjEuOS01NS4xNCwyLjQ3LTEyLjU3LDMuMTQtMjMuODUsMy4wNC0zMy4xNC02LjMyLTcuMzUtMTIuOTItMTQuOTEtMTkuODctMjIuODYsMCwwLTE3LjM5LTE5Ljg5LTUxLjk4LTQ5LjQ4QzI4Mi41MSwzLjM5LDI3Mi41LDAsMjYzLjg1LDAiLz4KICA8L2c+Cjwvc3ZnPg==" alt="Softmax website">
58
+ </a>
59
+ </p>
60
+
61
+ The [Alignment League Benchmark (ALB)](https://www.softmax.com/alignmentleague) is a suite of multi-agent games, designed to measure how well AI agents align, coordinate, and collaborate with others (both AIs and humans).
62
+
63
+ CoGames is the games environment for ALB. You can use it to:
64
+
65
+ * create new games
66
+ * train agents to play existing ALB games
67
+ * submit those agents to the ALB leaderboard
68
+
69
+ There's one ALB game right now: Cogs vs Clips.
70
+
71
+ # Quick Start
72
+
73
+ ## Step 1: Install CoGames
74
+
75
+ Install [cogames](https://pypi.org/project/cogames/) as a Python package.
76
+ ```bash
77
+ pip install cogames
78
+ ```
79
+
80
+ <details><summary>Using uv</summary>
81
+
82
+ ```bash
83
+ # Install uv
84
+ curl -LsSf https://astral.sh/uv/install.sh | sh
85
+
86
+ # Create a virtual environment
87
+ uv venv .venv
88
+ source .venv/bin/activate
89
+
90
+ # Install cogames
91
+ uv pip install cogames
92
+ ```
93
+
94
+ </details>
95
+ <details><summary>Using Docker</summary>
96
+
97
+ ```dockerfile
98
+ # Ensure Python 3.12 is available
99
+ FROM python:3.12-slim
100
+
101
+ # Ensure C/C++ compiler is available
102
+ RUN apt-get update && \
103
+ apt-get install -y --no-install-recommends build-essential && \
104
+ rm -rf /var/lib/apt/lists/*
105
+
106
+ # Install cogames
107
+ RUN pip install --no-cache-dir cogames
108
+ ```
109
+
110
+ </details>
111
+ <details><summary>Using Colab</summary>
112
+
113
+ [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Metta-AI/cogames/blob/main/README.ipynb)
114
+
115
+ </details>
116
+
117
+ ## Step 2: Play Cogs vs Clips
118
+
119
+ Play an easy mission in Cogs vs Clips using:
120
+ ```bash
121
+ cogames tutorial play
122
+ ```
123
+ The game will open in a new window, and the terminal will give you instructions to complete training mission.
124
+
125
+ ## Step 3: Submit a policy to the leaderboard
126
+
127
+ 1. Log into the ALB leaderboard with your GitHub account.
128
+
129
+ ```bash
130
+ cogames login
131
+ ```
132
+
133
+ 2. Upload one of our starter policies under your name.
134
+
135
+ ```bash
136
+ cogames upload --policy "class=cogames.policy.scripted_agent.starter_agent.StarterPolicy" --name "$USER.README-quickstart-starter-policy"
137
+ ```
138
+
139
+ 3. List the seasons currently running.
140
+
141
+ ```bash
142
+ cogames seasons
143
+ ```
144
+
145
+ 4. Submit the policy to one of the running seasons.
146
+
147
+ ```bash
148
+ cogames submit "$USER.README-quickstart-starter-policy:v1" --season beta-cogsguard
149
+ ```
150
+
151
+ # Tutorials
152
+
153
+ To learn more, see:
154
+
155
+ 1. [Creating a policy](tutorials/01_MAKE_POLICY.md): Creating a custom policy and evaluating it
156
+ 2. [Training](tutorials/02_TRAIN.md): Training a custom policy and evaluating it
157
+ 3. [Submitting](tutorials/03_SUBMIT.md): Submitting to the leaderboard and understanding the results
158
+
159
+ If you want help, or to share your experience, join [the Discord](https://discord.gg/secret-hologenesis).
160
+
161
+ # About the game
162
+
163
+ CogsGuard is a cooperative territory-control game. Teams of AI agents ("Cogs") work together to capture and defend
164
+ junctions against automated opponents ("Clips") by:
165
+
166
+ * gathering resources and depositing them at controlled junctions
167
+ * acquiring specialized roles (Miner, Aligner, Scrambler, Scout) at gear stations
168
+ * capturing neutral junctions using Aligners (costs 1 heart + 1 influence)
169
+ * disrupting enemy junctions using Scramblers (costs 1 heart)
170
+ * defending territory from Clips expansion
171
+
172
+ Read [MISSION.md](MISSION.md) for a thorough description of the game mechanics.
173
+
174
+ <p align="center">
175
+ <img src="assets/cvc-reel.gif" alt="CogsGuard reel">
176
+ <br>
177
+
178
+ There are many mission configurations available, with different map sizes, junction layouts, and game rules.
179
+
180
+ Overall, CogsGuard aims to present rich environments with:
181
+
182
+ - **Territory control**: Capture and defend junctions to score points each tick
183
+ - **Role specialization**: Four roles (Miner, Aligner, Scrambler, Scout) with distinct capabilities and dependencies
184
+ - **Dense rewards**: Agents receive reward every tick proportional to territory controlled
185
+ - **Partial observability**: Agents have limited visibility of the environment
186
+ - **Required multi-agent cooperation**: No single role can succeed alone; Miners need Aligners to capture junctions,
187
+ Aligners need Miners for resources, Scramblers must clear enemy territory for Aligners to advance
188
+
189
+ # About the tournament
190
+
191
+ ## How seasons work
192
+
193
+ The ALB leaderboard runs in seasons. Each season has two pools:
194
+
195
+ - **Qualifying pool**: Where new submissions start. Your policy plays matches against other policies in the pool.
196
+ - **Competition pool**: Policies that score above a threshold in qualifying get promoted here.
197
+
198
+ To see active seasons and their pools:
199
+ ```bash
200
+ cogames seasons
201
+ ```
202
+
203
+ ## How scoring works
204
+
205
+ When you submit a policy, it gets queued for matches against other policies in its pool. Our focal metric is VORP (Value Over Replacement Policy), which estimates how much your agent improves team performance compared to a baseline.
206
+
207
+ VORP is calculated by comparing:
208
+
209
+ - Replacement mean: The average score when only other pool policies play (no candidate)
210
+ - Candidate score: The score when your policy plays
211
+
212
+ The difference tells us how much value your policy adds to a team. A positive VORP means your policy makes teams better; a negative VORP means teams perform worse with your policy than without it.
213
+
214
+ You can evaluate VOR locally before submitting:
215
+
216
+ ```bash
217
+ cogames pickup --policy <YOUR_POLICY> --pool <POOL_POLICY>
218
+ ```
219
+
220
+ ## Viewing results
221
+
222
+ To check your submission status and match results:
223
+ ```bash
224
+ cogames submissions
225
+ cogames leaderboard --season beta-cogsguard
226
+ ```
227
+
228
+ # Command Reference
229
+
230
+ Most commands are of the form `cogames <command> --mission [MISSION] --policy [POLICY] [OPTIONS]`
231
+
232
+ To specify a `MISSION`, you can:
233
+
234
+ - Use a mission name from the registry given by `cogames missions` (e.g. `training_facility_1`).
235
+ - Use a path to a mission configuration file (e.g. `path/to/mission.yaml`).
236
+ - Alternatively, specify a set of missions with `--mission-set`.
237
+
238
+ To specify a `POLICY`, use one of two formats:
239
+
240
+ - **URI format** (for checkpoint bundles):
241
+
242
+ - Point directly at a checkpoint bundle (directory or `.zip` containing `policy_spec.json`)
243
+ - Examples: `./train_dir/my_run:v5`, `./train_dir/my_run:v5.zip`, `s3://bucket/path/run:v5.zip`
244
+ - Use `:latest` suffix to auto-resolve the highest version: `./train_dir/checkpoints:latest`
245
+
246
+ - **Key-value format** (for explicit class + weights):
247
+
248
+ - `class=`: Policy shorthand or full class path from `cogames policies`, e.g. `class=lstm` or
249
+ `class=cogames.policy.random.RandomPolicy`.
250
+ - `data=`: Optional path to a weights file (e.g., `weights.safetensors`). Must be a file, not a directory.
251
+ - `proportion=`: Optional positive float specifying the relative share of agents that use this policy (default: 1.0).
252
+ - `kw.<arg>=`: Optional policy `__init__` keyword arguments (all values parsed as strings).
253
+
254
+ You can view all the commands with
255
+ ```bash
256
+ cogames --help
257
+ ```
258
+ and you can view help for a given command with:
259
+ ```bash
260
+ cogames [COMMAND] --help
261
+ ```
262
+
263
+
264
+ ## Missions Commands
265
+
266
+
267
+
268
+ ### `cogames missions`
269
+
270
+
271
+
272
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
273
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames missions [OPTIONS] SITE </span>
274
+ <span style="font-weight: bold"> </span>
275
+ </pre>
276
+
277
+
278
+
279
+
280
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> List available missions.
281
+
282
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">This command has three modes:</span>
283
+
284
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f; font-weight: bold">1. List sites:</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> Run with no arguments to see all available sites.</span>
285
+
286
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f; font-weight: bold">2. List missions at a site:</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> Pass a site name (e.g., 'cogsguard_machina_1') to see its missions.</span>
287
+
288
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f; font-weight: bold">3. Describe a mission:</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> Use </span><span style="color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold">-m</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> to describe a specific mission. Only in this mode do </span><span style="color: #7fbfbf; text-decoration-color: #7fbfbf; font-weight: bold">--cogs</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">, </span><span style="color: #7fbfbf; text-decoration-color: #7fbfbf; font-weight: bold">--variant</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">, </span><span style="color: #7fbfbf; text-decoration-color: #7fbfbf; font-weight: bold">--format</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">, </span>
289
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">and </span><span style="color: #7fbfbf; text-decoration-color: #7fbfbf; font-weight: bold">--save</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> have any effect.</span>
290
+
291
+ </pre>
292
+
293
+
294
+
295
+
296
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
297
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> site <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">TEXT</span> Filter by site (e.g., cogsguard_machina_1) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
298
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
299
+ </pre>
300
+
301
+
302
+
303
+
304
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Describe ──────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
305
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MISSION </span> Mission to describe <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
306
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">INTEGER </span> Override agent count (requires <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span>) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
307
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--variant</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">VARIANT </span> Apply variant (requires <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span>, repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
308
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--format</span> <span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">[</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">yaml</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">|</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">json</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Output format (requires <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span>) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
309
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--save</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">PATH </span> Save config to file (requires <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span>) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
310
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
311
+ </pre>
312
+
313
+
314
+
315
+
316
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
317
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
318
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
319
+ </pre>
320
+
321
+
322
+
323
+
324
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
325
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
326
+ <span style="color: #008080; text-decoration-color: #008080">cogames missions</span> List all sites
327
+ <span style="color: #008080; text-decoration-color: #008080">cogames missions cogsguard_machina_1</span> List missions at site
328
+ <span style="color: #008080; text-decoration-color: #008080">cogames missions </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1.basic</span> Describe a mission
329
+ <span style="color: #008080; text-decoration-color: #008080">cogames missions </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> arena </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--format</span><span style="color: #008080; text-decoration-color: #008080"> json</span> Output as JSON
330
+
331
+ </pre>
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+ ### `cogames evals`
340
+
341
+
342
+
343
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
344
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames evals [OPTIONS] </span>
345
+ <span style="font-weight: bold"> </span>
346
+ </pre>
347
+
348
+
349
+
350
+
351
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> List all eval missions
352
+
353
+ </pre>
354
+
355
+
356
+
357
+
358
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
359
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> Show this message and exit. <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
360
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
361
+ </pre>
362
+
363
+
364
+
365
+
366
+
367
+
368
+
369
+ ### `cogames variants`
370
+
371
+
372
+
373
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
374
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames variants [OPTIONS] </span>
375
+ <span style="font-weight: bold"> </span>
376
+ </pre>
377
+
378
+
379
+
380
+
381
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> List all available mission variants
382
+
383
+ </pre>
384
+
385
+
386
+
387
+
388
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
389
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> Show this message and exit. <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
390
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
391
+ </pre>
392
+
393
+
394
+
395
+
396
+
397
+
398
+
399
+ ### `cogames describe`
400
+
401
+
402
+
403
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
404
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames describe [OPTIONS] MISSION </span>
405
+ <span style="font-weight: bold"> </span>
406
+ </pre>
407
+
408
+
409
+
410
+
411
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Describe a mission and its configuration
412
+
413
+ </pre>
414
+
415
+
416
+
417
+
418
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
419
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #800000; text-decoration-color: #800000">*</span> mission <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">TEXT</span> Mission name (e.g., hello_world.open_world) <span style="color: #bf7f7f; text-decoration-color: #bf7f7f">[required]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
420
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
421
+ </pre>
422
+
423
+
424
+
425
+
426
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Configuration ─────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
427
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">INTEGER</span> Number of cogs (agents) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
428
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--variant</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">VARIANT</span> Apply variant (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
429
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
430
+ </pre>
431
+
432
+
433
+
434
+
435
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
436
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
437
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
438
+ </pre>
439
+
440
+
441
+
442
+
443
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
444
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
445
+ <span style="color: #008080; text-decoration-color: #008080">cogames describe hello_world.open_world</span> Describe mission
446
+ <span style="color: #008080; text-decoration-color: #008080">cogames describe arena </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span><span style="color: #008080; text-decoration-color: #008080"> 4 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span><span style="color: #008080; text-decoration-color: #008080"> dark_side</span> With 4 cogs and variant
447
+
448
+ </pre>
449
+
450
+
451
+
452
+
453
+
454
+
455
+
456
+ ### `cogames make-mission`
457
+
458
+
459
+
460
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
461
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames make-mission [OPTIONS] </span>
462
+ <span style="font-weight: bold"> </span>
463
+ </pre>
464
+
465
+
466
+
467
+
468
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Create a custom mission from a base template
469
+
470
+ </pre>
471
+
472
+
473
+
474
+
475
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Mission ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
476
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MISSION</span> Base mission to start from <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
477
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
478
+ </pre>
479
+
480
+
481
+
482
+
483
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Customization ─────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
484
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">INTEGER RANGE [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Number of cogs (agents) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
485
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--width</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">INTEGER RANGE [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Map width <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
486
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--height</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">INTEGER RANGE [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Map height <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
487
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
488
+ </pre>
489
+
490
+
491
+
492
+
493
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
494
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--output</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-o</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">PATH</span> Output file path (.yml or .json) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
495
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
496
+ </pre>
497
+
498
+
499
+
500
+
501
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
502
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
503
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
504
+ </pre>
505
+
506
+
507
+
508
+
509
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
510
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
511
+ <span style="color: #008080; text-decoration-color: #008080">cogames make-mission </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> hello_world </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span><span style="color: #008080; text-decoration-color: #008080"> 8 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-o</span><span style="color: #008080; text-decoration-color: #008080"> my_mission.yml</span> 8 cogs
512
+ <span style="color: #008080; text-decoration-color: #008080">cogames make-mission </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> arena </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--width</span><span style="color: #008080; text-decoration-color: #008080"> 64 </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--height</span><span style="color: #008080; text-decoration-color: #008080"> 64 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-o</span><span style="color: #008080; text-decoration-color: #008080"> big.yml</span> 64x64 map
513
+ <span style="color: #008080; text-decoration-color: #008080">cogames play </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> my_mission.yml</span> Use custom mission
514
+
515
+ </pre>
516
+
517
+
518
+
519
+
520
+
521
+
522
+
523
+ ## Play Commands
524
+
525
+
526
+
527
+ ### `cogames play`
528
+
529
+
530
+
531
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
532
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames play [OPTIONS] </span>
533
+ <span style="font-weight: bold"> </span>
534
+ </pre>
535
+
536
+
537
+
538
+
539
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Play a game interactively.
540
+
541
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">This runs a single episode of the game using the specified policy.</span>
542
+
543
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">By default, the policy is 'noop', so agents won't move unless manually controlled.</span>
544
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">To see agents move by themselves, use `</span><span style="color: #7fbfbf; text-decoration-color: #7fbfbf; font-weight: bold">--policy</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> class=random` or `</span><span style="color: #7fbfbf; text-decoration-color: #7fbfbf; font-weight: bold">--policy</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> class=baseline`.</span>
545
+
546
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">You can manually control the actions of a specific cog by clicking on a cog</span>
547
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">in GUI mode or pressing M in unicode mode and using your arrow or WASD keys.</span>
548
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Log mode is non-interactive and doesn't support manual control.</span>
549
+
550
+ </pre>
551
+
552
+
553
+
554
+
555
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Game Setup ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
556
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MISSION</span> Mission to play (run <span style="font-weight: bold">cogames missions</span> to list) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
557
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--variant</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">VARIANT</span> Apply variant modifier (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
558
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N </span> Number of cogs/agents <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (from mission)]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
559
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
560
+ </pre>
561
+
562
+
563
+
564
+
565
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
566
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Policy controlling cogs (<span style="font-weight: bold">noop</span>, <span style="font-weight: bold">random</span>, <span style="font-weight: bold">lstm</span>, or path) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: class=noop]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
567
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
568
+ </pre>
569
+
570
+
571
+
572
+
573
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Simulation ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
574
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--steps</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N </span> Max steps per episode <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 1000]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
575
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--render</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-r</span> <span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">[</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">gui</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">|</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">vibescope</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">|</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">unicode</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">|</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">log</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">|</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">none</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> <span style="font-weight: bold">gui</span>=MettaScope, <span style="font-weight: bold">vibescope</span>=VibeScope, <span style="font-weight: bold">unicode</span>=terminal, <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
576
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="font-weight: bold">log</span>=metrics only <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
577
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: gui] </span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
578
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">INTEGER </span> RNG seed for reproducibility <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 42]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
579
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--map-seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SEED </span> Separate seed for procedural map generation <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
580
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (same as --seed)] </span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
581
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
582
+ </pre>
583
+
584
+
585
+
586
+
587
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
588
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--save-replay-dir</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">DIR</span> Save replay file for later viewing with <span style="font-weight: bold">cogames replay</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
589
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
590
+ </pre>
591
+
592
+
593
+
594
+
595
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
596
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
597
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
598
+ </pre>
599
+
600
+
601
+
602
+
603
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
604
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
605
+ <span style="color: #008080; text-decoration-color: #008080">cogames play </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1.basic</span> Interactive
606
+ <span style="color: #008080; text-decoration-color: #008080">cogames play </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1.basic </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> class=random</span> Random policy
607
+ <span style="color: #008080; text-decoration-color: #008080">cogames play </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1.basic </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span><span style="color: #008080; text-decoration-color: #008080"> 4 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> class=baseline</span> Baseline, 4 cogs
608
+ <span style="color: #008080; text-decoration-color: #008080">cogames play </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-r</span><span style="color: #008080; text-decoration-color: #008080"> unicode</span> Terminal mode
609
+
610
+ </pre>
611
+
612
+
613
+
614
+
615
+
616
+
617
+
618
+ ### `cogames replay`
619
+
620
+
621
+
622
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
623
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames replay [OPTIONS] FILE </span>
624
+ <span style="font-weight: bold"> </span>
625
+ </pre>
626
+
627
+
628
+
629
+
630
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Replay a saved game episode from a file in the GUI
631
+
632
+ </pre>
633
+
634
+
635
+
636
+
637
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
638
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #800000; text-decoration-color: #800000">*</span> replay_path <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">FILE</span> Path to the replay file (.replay or .bin) <span style="color: #bf7f7f; text-decoration-color: #bf7f7f">[required]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
639
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
640
+ </pre>
641
+
642
+
643
+
644
+
645
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
646
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
647
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
648
+ </pre>
649
+
650
+
651
+
652
+
653
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
654
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
655
+ <span style="color: #008080; text-decoration-color: #008080">cogames replay ./replays/game.replay</span> Replay a saved game
656
+ <span style="color: #008080; text-decoration-color: #008080">cogames replay ./train_dir/my_run/replay.bin</span> Replay from training run
657
+
658
+ </pre>
659
+
660
+
661
+
662
+
663
+
664
+
665
+
666
+ ## Evaluate Commands
667
+
668
+
669
+
670
+ ### `cogames scrimmage`
671
+
672
+
673
+
674
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
675
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames scrimmage [OPTIONS] </span>
676
+ <span style="font-weight: bold"> </span>
677
+ </pre>
678
+
679
+
680
+
681
+
682
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Evaluate a single policy controlling all agents.
683
+
684
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">This command is equivalent to running `cogames run` with a single policy.</span>
685
+
686
+ </pre>
687
+
688
+
689
+
690
+
691
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Mission ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
692
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MISSION</span> Missions to evaluate (supports wildcards) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
693
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission-set</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-S</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SET </span> Predefined set: integrated_evals, spanning_evals, diagnostic_evals, all <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
694
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N </span> Number of cogs (agents) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
695
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--variant</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">VARIANT</span> Mission variant (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
696
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
697
+ </pre>
698
+
699
+
700
+
701
+
702
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
703
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Policies to evaluate: (URI[,proportion=N] or NAME or <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
704
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> class=NAME[,data=FILE][,proportion=N]...) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
705
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
706
+ </pre>
707
+
708
+
709
+
710
+
711
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Simulation ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
712
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--episodes</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-e</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Number of evaluation episodes <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 10]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
713
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--steps</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Max steps per episode <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 1000]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
714
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Seed for evaluation RNG <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 42]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
715
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--map-seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> MapGen seed for procedural maps <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (same as --seed)]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
716
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--action-timeout-ms</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MS [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Max ms per action before noop <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 250]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
717
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
718
+ </pre>
719
+
720
+
721
+
722
+
723
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
724
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--format</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">FMT</span> Output format: yaml or json <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
725
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--save-replay-dir</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">DIR</span> Directory to save replays <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
726
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
727
+ </pre>
728
+
729
+
730
+
731
+
732
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
733
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
734
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
735
+ </pre>
736
+
737
+
738
+
739
+
740
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
741
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
742
+ <span style="color: #008080; text-decoration-color: #008080">cogames scrimmage </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> arena.battle </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> lstm</span> Single policy eval
743
+
744
+ </pre>
745
+
746
+
747
+
748
+
749
+
750
+
751
+
752
+ ### `cogames run`
753
+
754
+
755
+
756
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
757
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames run [OPTIONS] </span>
758
+ <span style="font-weight: bold"> </span>
759
+ </pre>
760
+
761
+
762
+
763
+
764
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Evaluate one or more policies on missions.
765
+
766
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">With multiple policies (e.g., 2 policies, 4 agents), each policy always controls 2 agents,</span>
767
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">but which agents swap between policies each episode.</span>
768
+
769
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">With one policy, this command is equivalent to `cogames scrimmage`.</span>
770
+
771
+ </pre>
772
+
773
+
774
+
775
+
776
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Mission ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
777
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MISSION</span> Missions to evaluate (supports wildcards) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
778
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission-set</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-S</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SET </span> Predefined set: integrated_evals, spanning_evals, diagnostic_evals, all <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
779
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N </span> Number of cogs (agents) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
780
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--variant</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">VARIANT</span> Mission variant (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
781
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
782
+ </pre>
783
+
784
+
785
+
786
+
787
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
788
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Policies to evaluate: (URI[,proportion=N] or NAME or <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
789
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> class=NAME[,data=FILE][,proportion=N]...) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
790
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
791
+ </pre>
792
+
793
+
794
+
795
+
796
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Simulation ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
797
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--episodes</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-e</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Number of evaluation episodes <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 10]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
798
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--steps</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Max steps per episode <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 1000]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
799
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Seed for evaluation RNG <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 42]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
800
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--map-seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> MapGen seed for procedural maps <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (same as --seed)]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
801
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--action-timeout-ms</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MS [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Max ms per action before noop <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 250]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
802
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
803
+ </pre>
804
+
805
+
806
+
807
+
808
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
809
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--format</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">FMT</span> Output format: yaml or json <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
810
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--save-replay-dir</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">DIR</span> Directory to save replays <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
811
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
812
+ </pre>
813
+
814
+
815
+
816
+
817
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
818
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
819
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
820
+ </pre>
821
+
822
+
823
+
824
+
825
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
826
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
827
+ <span style="color: #008080; text-decoration-color: #008080">cogames run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1.basic </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> lstm</span> Evaluate single policy
828
+ <span style="color: #008080; text-decoration-color: #008080">cogames run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> ./train_dir/my_run:v5</span> Evaluate a checkpoint bundle
829
+ <span style="color: #008080; text-decoration-color: #008080">cogames run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-S</span><span style="color: #008080; text-decoration-color: #008080"> integrated_evals </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> ./train_dir/my_run:v5</span> Evaluate on mission set
830
+ <span style="color: #008080; text-decoration-color: #008080">cogames run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> 'arena.*' </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> lstm </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> random </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-e</span><span style="color: #008080; text-decoration-color: #008080"> 20</span> Evaluate multiple policies together
831
+ <span style="color: #008080; text-decoration-color: #008080">cogames run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> ./train_dir/my_run:v5,proportion=3 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> class=random,proportion=5</span>
832
+ Evaluate policies in 3:5 mix
833
+
834
+ </pre>
835
+
836
+
837
+
838
+
839
+
840
+
841
+
842
+ ### `cogames pickup`
843
+
844
+
845
+
846
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
847
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames pickup [OPTIONS] </span>
848
+ <span style="font-weight: bold"> </span>
849
+ </pre>
850
+
851
+
852
+
853
+
854
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Evaluate a policy against a pool of other policies and compute VOR
855
+
856
+ </pre>
857
+
858
+
859
+
860
+
861
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Mission ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
862
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MISSION </span> Mission to evaluate on <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: cogsguard_machina_1.basic]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
863
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Number of cogs (agents) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 4]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
864
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--variant</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">VARIANT </span> Mission variant (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
865
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
866
+ </pre>
867
+
868
+
869
+
870
+
871
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
872
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Candidate policy to evaluate <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
873
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--pool</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Pool policy (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
874
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
875
+ </pre>
876
+
877
+
878
+
879
+
880
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Simulation ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
881
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--episodes</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-e</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Episodes per scenario <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 1]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
882
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--steps</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Max steps per episode <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 1000]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
883
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Base random seed <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 50]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
884
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--map-seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> MapGen seed for procedural maps <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (same as --seed)]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
885
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--action-timeout-ms</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MS [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Max ms per action before noop <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 250]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
886
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
887
+ </pre>
888
+
889
+
890
+
891
+
892
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
893
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--save-replay-dir</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">DIR</span> Directory to save replays <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
894
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
895
+ </pre>
896
+
897
+
898
+
899
+
900
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
901
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
902
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
903
+ </pre>
904
+
905
+
906
+
907
+
908
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
909
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
910
+ <span style="color: #008080; text-decoration-color: #008080">cogames pickup </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> greedy </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--pool</span><span style="color: #008080; text-decoration-color: #008080"> random</span> Test greedy against pool of random
911
+
912
+ </pre>
913
+
914
+
915
+
916
+
917
+
918
+
919
+
920
+ ### `cogames diagnose`
921
+
922
+
923
+
924
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
925
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames diagnose [OPTIONS] POLICY </span>
926
+ <span style="font-weight: bold"> </span>
927
+ </pre>
928
+
929
+
930
+
931
+
932
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Run diagnostic evals for a policy checkpoint
933
+
934
+ </pre>
935
+
936
+
937
+
938
+
939
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
940
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #800000; text-decoration-color: #800000">*</span> policy <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">TEXT</span> Policy specification: URI (bundle dir or .zip) or NAME or <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
941
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> class=NAME[,data=FILE][,kw.x=val] <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
942
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #bf7f7f; text-decoration-color: #bf7f7f">[required] </span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
943
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
944
+ </pre>
945
+
946
+
947
+
948
+
949
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Evaluation ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
950
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission-set</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-S</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SET </span> Eval suite to run <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: diagnostic_evals]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
951
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--experiments</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">NAME</span> Specific experiments (subset of mission set) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
952
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N </span> Agent counts to test (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
953
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
954
+ </pre>
955
+
956
+
957
+
958
+
959
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Simulation ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
960
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--steps</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N</span> Max steps per episode <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 1000]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
961
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--episodes</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-e</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N</span> Episodes per case <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 3]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
962
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
963
+ </pre>
964
+
965
+
966
+
967
+
968
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
969
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
970
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
971
+ </pre>
972
+
973
+
974
+
975
+
976
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
977
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
978
+ <span style="color: #008080; text-decoration-color: #008080">cogames diagnose ./train_dir/my_run</span> Default diagnostics
979
+ <span style="color: #008080; text-decoration-color: #008080">cogames diagnose lstm </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-S</span><span style="color: #008080; text-decoration-color: #008080"> tournament</span> Tournament suite
980
+ <span style="color: #008080; text-decoration-color: #008080">cogames diagnose lstm </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span><span style="color: #008080; text-decoration-color: #008080"> 4 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span><span style="color: #008080; text-decoration-color: #008080"> 8 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-e</span><span style="color: #008080; text-decoration-color: #008080"> 5</span> Custom cog counts
981
+
982
+ </pre>
983
+
984
+
985
+
986
+
987
+
988
+
989
+
990
+ ## Info Commands
991
+
992
+
993
+
994
+ ### `cogames version`
995
+
996
+
997
+
998
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
999
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames version [OPTIONS] </span>
1000
+ <span style="font-weight: bold"> </span>
1001
+ </pre>
1002
+
1003
+
1004
+
1005
+
1006
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Show version information for cogames and dependencies
1007
+
1008
+ </pre>
1009
+
1010
+
1011
+
1012
+
1013
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1014
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> Show this message and exit. <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1015
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1016
+ </pre>
1017
+
1018
+
1019
+
1020
+
1021
+
1022
+
1023
+
1024
+ ### `cogames docs`
1025
+
1026
+
1027
+
1028
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1029
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames docs [OPTIONS] DOC </span>
1030
+ <span style="font-weight: bold"> </span>
1031
+ </pre>
1032
+
1033
+
1034
+
1035
+
1036
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Print documentation (run without arguments to see available docs)
1037
+
1038
+ </pre>
1039
+
1040
+
1041
+
1042
+
1043
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1044
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> doc_name <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">DOC</span> Document name (readme, mission, technical_manual, scripted_agent, evals, mapgen) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1045
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1046
+ </pre>
1047
+
1048
+
1049
+
1050
+
1051
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1052
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1053
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1054
+ </pre>
1055
+
1056
+
1057
+
1058
+
1059
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1060
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1061
+ <span style="color: #008080; text-decoration-color: #008080">cogames docs</span> List available documents
1062
+ <span style="color: #008080; text-decoration-color: #008080">cogames docs readme</span> Print README
1063
+ <span style="color: #008080; text-decoration-color: #008080">cogames docs mission</span> Print mission briefing
1064
+
1065
+ </pre>
1066
+
1067
+
1068
+
1069
+
1070
+
1071
+
1072
+
1073
+ ## Policies Commands
1074
+
1075
+
1076
+
1077
+ ### `cogames policies`
1078
+
1079
+
1080
+
1081
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1082
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames policies [OPTIONS] </span>
1083
+ <span style="font-weight: bold"> </span>
1084
+ </pre>
1085
+
1086
+
1087
+
1088
+
1089
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Show available policy shorthand names
1090
+
1091
+ </pre>
1092
+
1093
+
1094
+
1095
+
1096
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1097
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> Show this message and exit. <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1098
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1099
+ </pre>
1100
+
1101
+
1102
+
1103
+
1104
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1105
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Usage:</span>
1106
+ Use these shorthand names with <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> or <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span>:
1107
+ <span style="color: #008080; text-decoration-color: #008080">cogames play </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> arena </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> class=random</span> Use random policy
1108
+ <span style="color: #008080; text-decoration-color: #008080">cogames play </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> arena </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> class=baseline</span> Use baseline policy
1109
+
1110
+ </pre>
1111
+
1112
+
1113
+
1114
+
1115
+
1116
+
1117
+
1118
+ ### `cogames validate-policy`
1119
+
1120
+
1121
+
1122
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1123
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames validate-policy [OPTIONS] </span>
1124
+ <span style="font-weight: bold"> </span>
1125
+ </pre>
1126
+
1127
+
1128
+
1129
+
1130
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Validate the policy loads and runs for at least a single step
1131
+
1132
+ </pre>
1133
+
1134
+
1135
+
1136
+
1137
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1138
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #800000; text-decoration-color: #800000">*</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Policy specification: URI (bundle dir or .zip) or NAME or <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1139
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> class=NAME[,data=FILE][,kw.x=val] <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1140
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #bf7f7f; text-decoration-color: #bf7f7f">[required] </span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1141
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--setup-script</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">TEXT </span> Path to a Python setup script to run before loading the policy <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1142
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1143
+ </pre>
1144
+
1145
+
1146
+
1147
+
1148
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Tournament ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1149
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SEASON</span> Tournament season (determines which game to validate against) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1150
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1151
+ </pre>
1152
+
1153
+
1154
+
1155
+
1156
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Server ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1157
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Tournament server URL (used to resolve default season) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1158
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://api.observatory.softmax-research.net]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1159
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1160
+ </pre>
1161
+
1162
+
1163
+
1164
+
1165
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1166
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1167
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1168
+ </pre>
1169
+
1170
+
1171
+
1172
+
1173
+
1174
+
1175
+
1176
+ ## Tournament Commands
1177
+
1178
+
1179
+
1180
+ ### `cogames login`
1181
+
1182
+
1183
+
1184
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1185
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames login [OPTIONS] </span>
1186
+ <span style="font-weight: bold"> </span>
1187
+ </pre>
1188
+
1189
+
1190
+
1191
+
1192
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Authenticate with CoGames server
1193
+
1194
+ </pre>
1195
+
1196
+
1197
+
1198
+
1199
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1200
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--force</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-f</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Re-authenticate even if already logged in <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1201
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--timeout</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-t</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SECS</span> Authentication timeout in seconds <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 300]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1202
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1203
+ </pre>
1204
+
1205
+
1206
+
1207
+
1208
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Server ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1209
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--login-server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Authentication server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://softmax.com/api]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1210
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1211
+ </pre>
1212
+
1213
+
1214
+
1215
+
1216
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1217
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1218
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1219
+ </pre>
1220
+
1221
+
1222
+
1223
+
1224
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1225
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1226
+ <span style="color: #008080; text-decoration-color: #008080">cogames login</span> Authenticate with default server
1227
+ <span style="color: #008080; text-decoration-color: #008080">cogames login </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--force</span> Re-authenticate even if already logged in
1228
+
1229
+ </pre>
1230
+
1231
+
1232
+
1233
+
1234
+
1235
+
1236
+
1237
+ ### `cogames submissions`
1238
+
1239
+
1240
+
1241
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1242
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames submissions [OPTIONS] </span>
1243
+ <span style="font-weight: bold"> </span>
1244
+ </pre>
1245
+
1246
+
1247
+
1248
+
1249
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Show your uploads and tournament submissions
1250
+
1251
+ </pre>
1252
+
1253
+
1254
+
1255
+
1256
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Filter ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1257
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Filter by policy name (e.g., 'my-policy' or 'my-policy:v3') <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1258
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SEASON</span> Filter by tournament season <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1259
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1260
+ </pre>
1261
+
1262
+
1263
+
1264
+
1265
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Server ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1266
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--login-server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Authentication server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://softmax.com/api]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1267
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--server</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Tournament server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://api.observatory.softmax-research.net]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1268
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1269
+ </pre>
1270
+
1271
+
1272
+
1273
+
1274
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1275
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--json</span> Print raw JSON instead of table <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1276
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1277
+ </pre>
1278
+
1279
+
1280
+
1281
+
1282
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1283
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1284
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1285
+ </pre>
1286
+
1287
+
1288
+
1289
+
1290
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1291
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1292
+ <span style="color: #008080; text-decoration-color: #008080">cogames submissions</span> All your uploads
1293
+ <span style="color: #008080; text-decoration-color: #008080">cogames submissions </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span><span style="color: #008080; text-decoration-color: #008080"> beta-cogsguard</span> Submissions in a season
1294
+ <span style="color: #008080; text-decoration-color: #008080">cogames submissions </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> my-policy</span> Info on a specific policy
1295
+
1296
+ </pre>
1297
+
1298
+
1299
+
1300
+
1301
+
1302
+
1303
+
1304
+ ### `cogames seasons`
1305
+
1306
+
1307
+
1308
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1309
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames seasons [OPTIONS] [SEASON_NAME] </span>
1310
+ <span style="font-weight: bold"> </span>
1311
+ </pre>
1312
+
1313
+
1314
+
1315
+
1316
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> List currently running tournament seasons
1317
+
1318
+ </pre>
1319
+
1320
+
1321
+
1322
+
1323
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1324
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> season_name <span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">[</span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SEASON_NAME</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Show versions of a specific season <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1325
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1326
+ </pre>
1327
+
1328
+
1329
+
1330
+
1331
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1332
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--versions</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> List all versions of the season <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1333
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1334
+ </pre>
1335
+
1336
+
1337
+
1338
+
1339
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Server ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1340
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--login-server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Authentication server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://softmax.com/api]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1341
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--server</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Tournament server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://api.observatory.softmax-research.net]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1342
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1343
+ </pre>
1344
+
1345
+
1346
+
1347
+
1348
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1349
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--json</span> Print raw JSON instead of table <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1350
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1351
+ </pre>
1352
+
1353
+
1354
+
1355
+
1356
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1357
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1358
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1359
+ </pre>
1360
+
1361
+
1362
+
1363
+
1364
+
1365
+
1366
+
1367
+ ### `cogames leaderboard`
1368
+
1369
+
1370
+
1371
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1372
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames leaderboard [OPTIONS] </span>
1373
+ <span style="font-weight: bold"> </span>
1374
+ </pre>
1375
+
1376
+
1377
+
1378
+
1379
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Show tournament leaderboard for a season
1380
+
1381
+ </pre>
1382
+
1383
+
1384
+
1385
+
1386
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Tournament ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1387
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SEASON</span> Tournament season name <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: beta-cogsguard]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1388
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1389
+ </pre>
1390
+
1391
+
1392
+
1393
+
1394
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Server ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1395
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--login-server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Authentication server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://softmax.com/api]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1396
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--server</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Tournament server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://api.observatory.softmax-research.net]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1397
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1398
+ </pre>
1399
+
1400
+
1401
+
1402
+
1403
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1404
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--json</span> Print raw JSON instead of table <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1405
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1406
+ </pre>
1407
+
1408
+
1409
+
1410
+
1411
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1412
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1413
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1414
+ </pre>
1415
+
1416
+
1417
+
1418
+
1419
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1420
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1421
+ <span style="color: #008080; text-decoration-color: #008080">cogames leaderboard </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span><span style="color: #008080; text-decoration-color: #008080"> beta-cogsguard</span> View rankings
1422
+
1423
+ </pre>
1424
+
1425
+
1426
+
1427
+
1428
+
1429
+
1430
+
1431
+ ### `cogames upload`
1432
+
1433
+
1434
+
1435
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1436
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames upload [OPTIONS] </span>
1437
+ <span style="font-weight: bold"> </span>
1438
+ </pre>
1439
+
1440
+
1441
+
1442
+
1443
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Upload a policy to CoGames
1444
+
1445
+ </pre>
1446
+
1447
+
1448
+
1449
+
1450
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Upload ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1451
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #800000; text-decoration-color: #800000">*</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--name</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-n</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">NAME</span> Name for your uploaded policy <span style="color: #bf7f7f; text-decoration-color: #bf7f7f">[required]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1452
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1453
+ </pre>
1454
+
1455
+
1456
+
1457
+
1458
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1459
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #800000; text-decoration-color: #800000">*</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY </span> Policy specification: URI (bundle dir or .zip) or NAME or <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1460
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> class=NAME[,data=FILE][,kw.x=val] <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1461
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #bf7f7f; text-decoration-color: #bf7f7f">[required] </span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1462
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--init-kwarg</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-k</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">KEY=VAL</span> Policy init kwargs (can be repeated) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1463
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1464
+ </pre>
1465
+
1466
+
1467
+
1468
+
1469
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Files ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1470
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--include-files</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-f</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">PATH</span> Files or directories to include (can be repeated) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1471
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--setup-script</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">PATH</span> Python setup script to run before loading the policy <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1472
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1473
+ </pre>
1474
+
1475
+
1476
+
1477
+
1478
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Tournament ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1479
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SEASON</span> Tournament season (default: server's default season) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1480
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--no-submit</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Upload without submitting to a season <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1481
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1482
+ </pre>
1483
+
1484
+
1485
+
1486
+
1487
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Validation ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1488
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--dry-run</span> Run validation only without uploading <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1489
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--skip-validation</span> Skip policy validation in isolated environment <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1490
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1491
+ </pre>
1492
+
1493
+
1494
+
1495
+
1496
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Server ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1497
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--login-server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Authentication server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://softmax.com/api]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1498
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Tournament server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://api.observatory.softmax-research.net]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1499
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1500
+ </pre>
1501
+
1502
+
1503
+
1504
+
1505
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1506
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1507
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1508
+ </pre>
1509
+
1510
+
1511
+
1512
+
1513
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1514
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1515
+ <span style="color: #008080; text-decoration-color: #008080">cogames upload </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> ./train_dir/my_run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-n</span><span style="color: #008080; text-decoration-color: #008080"> my-policy</span> Upload and submit to default season
1516
+ <span style="color: #008080; text-decoration-color: #008080">cogames upload </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> ./run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-n</span><span style="color: #008080; text-decoration-color: #008080"> my-policy </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span><span style="color: #008080; text-decoration-color: #008080"> beta-cvc</span> Upload and submit to specific season
1517
+ <span style="color: #008080; text-decoration-color: #008080">cogames upload </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> ./run </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-n</span><span style="color: #008080; text-decoration-color: #008080"> my-policy </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--no-submit</span> Upload without submitting
1518
+ <span style="color: #008080; text-decoration-color: #008080">cogames upload </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> lstm </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-n</span><span style="color: #008080; text-decoration-color: #008080"> my-lstm </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--dry-run</span> Validate only
1519
+
1520
+ </pre>
1521
+
1522
+
1523
+
1524
+
1525
+
1526
+
1527
+
1528
+ ### `cogames submit`
1529
+
1530
+
1531
+
1532
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1533
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames submit [OPTIONS] POLICY </span>
1534
+ <span style="font-weight: bold"> </span>
1535
+ </pre>
1536
+
1537
+
1538
+
1539
+
1540
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Submit a policy to a tournament season
1541
+
1542
+ </pre>
1543
+
1544
+
1545
+
1546
+
1547
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1548
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #800000; text-decoration-color: #800000">*</span> policy_name <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Policy name (e.g., 'my-policy' or 'my-policy:v3' for specific version) <span style="color: #bf7f7f; text-decoration-color: #bf7f7f">[required]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1549
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1550
+ </pre>
1551
+
1552
+
1553
+
1554
+
1555
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Tournament ────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1556
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">SEASON</span> Tournament season name <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1557
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1558
+ </pre>
1559
+
1560
+
1561
+
1562
+
1563
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Server ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1564
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--login-server</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Authentication server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://softmax.com/api]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1565
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--server</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">URL</span> Tournament server URL <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: https://api.observatory.softmax-research.net]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1566
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1567
+ </pre>
1568
+
1569
+
1570
+
1571
+
1572
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1573
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1574
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1575
+ </pre>
1576
+
1577
+
1578
+
1579
+
1580
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1581
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1582
+ <span style="color: #008080; text-decoration-color: #008080">cogames submit my-policy</span> Submit to default season
1583
+ <span style="color: #008080; text-decoration-color: #008080">cogames submit my-policy:v3 </span><span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--season</span><span style="color: #008080; text-decoration-color: #008080"> beta-cvc</span> Submit specific version to specific season
1584
+
1585
+ </pre>
1586
+
1587
+
1588
+
1589
+
1590
+
1591
+
1592
+
1593
+ ## Tutorial Commands
1594
+
1595
+
1596
+
1597
+ ### `cogames tutorial play`
1598
+
1599
+
1600
+
1601
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1602
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames tutorial play [OPTIONS] </span>
1603
+ <span style="font-weight: bold"> </span>
1604
+ </pre>
1605
+
1606
+
1607
+
1608
+
1609
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Interactive tutorial - learn to play Cogs vs Clips
1610
+
1611
+ </pre>
1612
+
1613
+
1614
+
1615
+
1616
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1617
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> Show this message and exit. <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1618
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1619
+ </pre>
1620
+
1621
+
1622
+
1623
+
1624
+
1625
+
1626
+
1627
+ ### `cogames tutorial cogsguard`
1628
+
1629
+
1630
+
1631
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1632
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames tutorial cogsguard [OPTIONS] </span>
1633
+ <span style="font-weight: bold"> </span>
1634
+ </pre>
1635
+
1636
+
1637
+
1638
+
1639
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Interactive CogsGuard tutorial - learn roles and territory control
1640
+
1641
+ </pre>
1642
+
1643
+
1644
+
1645
+
1646
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1647
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> Show this message and exit. <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1648
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1649
+ </pre>
1650
+
1651
+
1652
+
1653
+
1654
+
1655
+
1656
+
1657
+ ### `cogames tutorial make-policy`
1658
+
1659
+
1660
+
1661
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1662
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames tutorial make-policy [OPTIONS] </span>
1663
+ <span style="font-weight: bold"> </span>
1664
+ </pre>
1665
+
1666
+
1667
+
1668
+
1669
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Create a new policy from a template. Requires <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--trainable</span> or <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--scripted</span>.
1670
+
1671
+ </pre>
1672
+
1673
+
1674
+
1675
+
1676
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy Type ───────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1677
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--trainable</span> Create a trainable (neural network) policy <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1678
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--scripted</span> Create a scripted (rule-based) policy <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1679
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1680
+ </pre>
1681
+
1682
+
1683
+
1684
+
1685
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1686
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--output</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-o</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">FILE</span> Output file path <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: my_policy.py]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1687
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1688
+ </pre>
1689
+
1690
+
1691
+
1692
+
1693
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1694
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1695
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1696
+ </pre>
1697
+
1698
+
1699
+
1700
+
1701
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1702
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1703
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial make-policy </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-t</span><span style="color: #008080; text-decoration-color: #008080"> </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-o</span><span style="color: #008080; text-decoration-color: #008080"> my_nn_policy.py</span> Trainable (neural network)
1704
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial make-policy </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-s</span><span style="color: #008080; text-decoration-color: #008080"> </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-o</span><span style="color: #008080; text-decoration-color: #008080"> my_scripted_policy.py</span> Scripted (rule-based)
1705
+
1706
+ </pre>
1707
+
1708
+
1709
+
1710
+
1711
+
1712
+
1713
+
1714
+ ### `cogames tutorial train`
1715
+
1716
+
1717
+
1718
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="font-weight: bold"> </span>
1719
+ <span style="font-weight: bold"> </span><span style="color: #808000; text-decoration-color: #808000; font-weight: bold">Usage: </span><span style="font-weight: bold">cogames tutorial train [OPTIONS] </span>
1720
+ <span style="font-weight: bold"> </span>
1721
+ </pre>
1722
+
1723
+
1724
+
1725
+
1726
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"> Train a policy on one or more missions.
1727
+
1728
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">By default, our 'lstm' policy architecture is used. You can select a different architecture</span>
1729
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">(like 'stateless' or 'baseline'), or define your own implementing the MultiAgentPolicy</span>
1730
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">interface with a trainable network() method (see mettagrid/policy/policy.py).</span>
1731
+
1732
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Continue training from a checkpoint using URI format, or load weights into an explicit class</span>
1733
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">with class=...,data=... syntax.</span>
1734
+
1735
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Supply repeated </span><span style="color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold">-m</span><span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> flags to create a training curriculum that rotates through missions.</span>
1736
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Use wildcards (*) in mission names to match multiple missions at once.</span>
1737
+
1738
+ </pre>
1739
+
1740
+
1741
+
1742
+
1743
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Mission Setup ─────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1744
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--mission</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">MISSION</span> Missions to train on (wildcards supported, repeatable for curriculum) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1745
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--cogs</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-c</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N </span> Number of cogs (agents) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (from mission)]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1746
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--variant</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-v</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">VARIANT</span> Mission variant (repeatable) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1747
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1748
+ </pre>
1749
+
1750
+
1751
+
1752
+
1753
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Policy ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1754
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--policy</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">POLICY</span> Policy to train (URI (bundle dir or .zip) or NAME or <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1755
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> class=NAME[,data=FILE][,kw.x=val]) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1756
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: class=lstm] </span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1757
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1758
+ </pre>
1759
+
1760
+
1761
+
1762
+
1763
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Training ──────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1764
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--steps</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Number of training steps <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 10000000000]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1765
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--batch-size</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Batch size for training <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 4096]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1766
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--minibatch-size</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Minibatch size for training <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 4096]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1767
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1768
+ </pre>
1769
+
1770
+
1771
+
1772
+
1773
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Hardware ──────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1774
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--device</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">DEVICE </span> Device to train on (auto, cpu, cuda, mps) <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: cpu]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1775
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--num-workers</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Number of worker processes <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (CPU cores)]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1776
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--parallel-envs</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Number of parallel environments <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1777
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--vector-batch-size</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=1</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Vectorized environment batch size <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1778
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1779
+ </pre>
1780
+
1781
+
1782
+
1783
+
1784
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Reproducibility ───────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1785
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> Seed for training RNG <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: 42]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1786
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--map-seed</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">N [x&gt;=0</span><span style="color: #bfbf7f; text-decoration-color: #bfbf7f; font-weight: bold">]</span> MapGen seed for procedural map layout <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: (same as --seed)]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1787
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1788
+ </pre>
1789
+
1790
+
1791
+
1792
+
1793
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Output ────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1794
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--checkpoints</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold">DIR</span> Path to save training checkpoints <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">[default: ./train_dir]</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1795
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--log-outputs</span> <span style="color: #808000; text-decoration-color: #808000; font-weight: bold"> </span> Log training outputs <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1796
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1797
+ </pre>
1798
+
1799
+
1800
+
1801
+
1802
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╭─ Other ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span>
1803
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span> <span style="color: #008080; text-decoration-color: #008080; font-weight: bold">--help</span> <span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-h</span> Show this message and exit <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">│</span>
1804
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
1805
+ </pre>
1806
+
1807
+
1808
+
1809
+
1810
+ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">
1811
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Examples:</span>
1812
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1.basic</span> Basic training
1813
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> cogsguard_machina_1.basic </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> class=baseline</span>
1814
+ Train baseline policy
1815
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> ./train_dir/my_run:v5</span> Continue from checkpoint
1816
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-p</span><span style="color: #008080; text-decoration-color: #008080"> class=lstm,data=./weights.safetensors</span> Load weights into class
1817
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> mission_1 </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> mission_2</span> Curriculum (rotates)
1818
+ <span style="color: #7f7f7f; text-decoration-color: #7f7f7f">Wildcard patterns:</span>
1819
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> 'machina_2_bigger:*'</span> All missions on machina_2_bigger
1820
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> '*:shaped'</span> All "shaped" missions
1821
+ <span style="color: #008080; text-decoration-color: #008080">cogames tutorial train </span><span style="color: #008000; text-decoration-color: #008000; font-weight: bold">-m</span><span style="color: #008080; text-decoration-color: #008080"> 'machina*:shaped'</span> All "shaped" on machina maps
1822
+
1823
+ </pre>
1824
+
1825
+
1826
+
1827
+
1828
+
1829
+
1830
+ # Citation
1831
+
1832
+ If you use CoGames in your research, please cite:
1833
+
1834
+ ```bibtex
1835
+ @software{cogames2025,
1836
+ title={CoGames: Multi-Agent Cooperative Game Environments},
1837
+ author={Softmax},
1838
+ year={2025},
1839
+ url={https://github.com/metta-ai/metta}
1840
+ }
1841
+ ```
1842
+