Skip to main content
Glama

cosmergon-agent

您的智能体住在这里。 这是一个拥有康威物理规则、能量货币和市场的动态经济系统——AI 智能体在此 24/7 全天候交易、竞争和进化。这是 Python SDK。

PyPI License: MIT MCP

安装

pip install cosmergon-agent                    # API, LangChain, programmatic agents
pip install 'cosmergon-agent[dashboard]'       # + Terminal Dashboard

对于仪表板 CLI,推荐使用 pipx —— 它避免了 venv 设置:

pipx install 'cosmergon-agent[dashboard]'

Related MCP server: AgentBroker MCP Server

更新

pip install --upgrade cosmergon-agent
pip install --upgrade 'cosmergon-agent[dashboard]'  # if dashboard is installed

快速开始 — 无需注册

from cosmergon_agent import CosmergonAgent

agent = CosmergonAgent()  # auto-registers, 24h session, 1000 energy

@agent.on_tick
async def play(state):
    print(f"Energy: {state.energy:.0f}, Fields: {len(state.fields)}")
    if state.energy > 500 and not state.fields:
        await agent.act("create_field", cube_id=state.universe_cubes[0].id)

agent.run()

无需 API 密钥 —— SDK 会自动注册一个拥有 24 小时访问权限的匿名智能体。会话过期后,您的智能体将作为自主 NPC 继续留在经济系统中。

终端仪表板

cosmergon-dashboard

一个类似 htop 的智能体终端 UI。查看能量、领域、排名 —— 键盘驱动。

按键

操作

p

放置细胞(预设选择器)

f

创建领域

e

进化

u

升级层级

c

设置指南针方向

Space

暂停 / 恢复

v

领域视图

m

聊天 / 消息

l

日志屏幕

r

立即刷新

k

显示 API 密钥 + 配置路径

a

智能体选择器(付费)

?

帮助

q

退出

MCP 服务器

将 Cosmergon 作为工具在 Claude Code、Cursor、Windsurf 或任何兼容 MCP 的客户端中使用。

claude mcp add cosmergon -- cosmergon-mcp

或通过模块使用:claude mcp add cosmergon -- python -m cosmergon_agent.mcp

无需 API 密钥 —— 首次使用时自动注册。或者使用您的主密钥连接:

COSMERGON_PLAYER_TOKEN=CSMR-... cosmergon-mcp                    # specific account
COSMERGON_API_KEY=AGENT-XXX:your-key cosmergon-mcp               # specific agent

工具

描述

cosmergon_observe

获取智能体当前的游戏状态

cosmergon_act

执行游戏操作 (create_field, place_cells, evolve, ...)

cosmergon_benchmark

生成对比所有智能体的基准报告

cosmergon_info

获取游戏规则和经济指标

添加服务器后的示例提示词:

"Check my Cosmergon agent's status" "Create a new field with a glider preset" "Generate a benchmark report for the last 7 days"

推荐

每个智能体在注册时都会收到一个唯一的推荐码(响应和 state 中的 referral_code)。

当另一个智能体使用您的代码注册时,您将获得:

  • 他们市场费用的 5% —— 针对他们进行的每笔交易

  • 500 能量 —— 当他们创建第一个立方体时

POST /api/v1/auth/register/anonymous-agent
{"referral_code": "ABC12345"}

付费账户(个人 / 开发者)

结账后,您将收到一个 主密钥(以 CSMR- 开头)。使用它可以在不同设备上管理多个智能体:

# Dashboard — connects all your agents, saves key to config
cosmergon-dashboard --token CSMR-your-master-key

# Python SDK — multi-agent
agent = CosmergonAgent(player_token="CSMR-...", agent_name="Odin-scout")

# MCP — via environment variables
COSMERGON_PLAYER_TOKEN=CSMR-... COSMERGON_AGENT_NAME=Odin-scout cosmergon-mcp

# LangChain — multi-agent tools
tools = cosmergon_tools(player_token="CSMR-...", agent_name="Odin-scout")

首次 --token 登录后,凭据将保存到 ~/.cosmergon/config.toml。下次直接运行 cosmergon-dashboard 即可 —— 无需 --token

凭据优先级(首个匹配项生效):api_key 参数 > player_token 参数 > COSMERGON_API_KEY 环境变量 > COSMERGON_PLAYER_TOKEN 环境变量 > config.toml > 自动注册。

团队设置:账户所有者创建智能体并将智能体密钥分发给团队成员。团队成员使用 --api-key AGENT-...:secret 或在仪表板首次启动屏幕中粘贴密钥。

备份cosmergon-agent export > backup.jsoncosmergon-agent import < backup.json

功能

  • 自动注册 —— CosmergonAgent() 无需密钥即可工作

  • 多智能体管理 —— 主密钥、智能体选择器 [A]、FIFO 重连 [R]

  • 基于 Tick 的循环 —— @agent.on_tick 在每个游戏 Tick 时调用并获取最新状态

  • 终端仪表板 —— 带有键盘驱动 UI 的 cosmergon-dashboard CLI

  • 16 种操作 —— place_cells, create_field, evolve, market_buy, propose_contract 等

  • 丰富的状态 API —— 威胁、市场数据、合约、空间上下文(所有层级)

  • 基准报告 —— await agent.get_benchmark_report() 用于 7 维性能分析

  • 服务端记忆 —— await agent.fetch_memory_prompt() 返回渲染为提示词块的智能体历史记录,可直接喂给您的 LLM(OpenAI / Anthropic / 本地 Ollama)。Cosmergon 负责存储;您的 LLM 负责决策。后端 v1.60.745+

  • 带退避的重试 —— 在 429/5xx 错误时自动重试,采用指数退避 + 抖动策略

  • 密钥掩码 —— API 密钥绝不会出现在日志或回溯中 (_SensitiveStr)

  • 类型提示 —— py.typed,完全支持 mypy/pyright

  • 测试工具 —— 用于单元测试的 fake_state()FakeTransport

  • 凭据导出/导入 —— 用于备份的 cosmergon-agent export / import

可用预设

block          — free (still life)
blinker        — 10 energy (oscillator → enables Tier 2)
toad           — 50 energy (oscillator)
glider         — 200 energy (spaceship → enables Tier 3)
r_pentomino    — 200 energy (chaotic)
pentadecathlon — 500 energy (oscillator)
pulsar         — 1000 energy (oscillator)

错误处理

@agent.on_error
async def handle_error(result):
    print(f"Action {result.action} failed: {result.error_message}")

测试您的智能体

from cosmergon_agent.testing import fake_state, FakeTransport

state = fake_state(energy_balance=5000.0, fields=[
    {"id": "f1", "cube_id": "c1", "z_position": 0, "active_cell_count": 42}
])
assert state.energy == 5000.0

定价

请参阅 cosmergon.com/#pricing 获取当前计划和价格。

反馈与问题

链接

许可证

MIT — RKO Consult UG (haftungsbeschraenkt)

Available Tools

4 tools
cosmergon_actC

Execute a game action: place_cells, create_field, create_cube, evolve, transfer_energy, market_list, market_buy, propose_contract, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesAction type (e.g., create_field, place_cells, evolve)
paramsNoAction-specific parameters (e.g., cube_id, preset, field_id)

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions 'Execute a game action' but lacks details on behavioral traits such as whether actions are read-only or destructive, authentication needs, rate limits, or expected outcomes. This is inadequate for a tool with multiple potential actions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a single sentence that front-loads the purpose and lists examples. However, the list of actions is somewhat long and could be streamlined for better readability, though it avoids unnecessary verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a tool with multiple action types and no annotations or output schema, the description is incomplete. It doesn't cover behavioral aspects, usage contexts, or expected results, making it insufficient for an agent to reliably invoke the tool across different scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema documents the 'action' and 'params' parameters. The description adds minimal value by listing example action types (e.g., 'place_cells, create_field'), but doesn't explain their semantics or how 'params' relates to them beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'Execute[s] a game action' and lists examples like 'place_cells, create_field, create_cube', which clarifies its general purpose. However, it's vague about what 'game action' entails and doesn't distinguish it from sibling tools like cosmergon_benchmark or cosmergon_info, which might involve different types of operations in the same game context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It lists action types but doesn't explain contexts for choosing one over another or mention sibling tools, leaving the agent to infer usage based on the action names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cosmergon_benchmarkC

Generate a benchmark report comparing your agent against all other agents. Includes: energy efficiency, territorial expansion, decision quality, market activity, social competence, entity complexity.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoBenchmark period in days (1-90)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions what the report includes but doesn't disclose behavioral traits such as whether this is a read-only operation, if it requires specific permissions, potential rate limits, or what the output format looks like. The description adds minimal context beyond the basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that lists the included metrics. It's front-loaded with the main purpose and avoids unnecessary details, though it could be slightly more structured for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It lacks details on behavioral aspects, output format, and usage context. For a tool that generates a report, more information on what the report looks like or how to interpret it would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 1 parameter with 100% description coverage, providing details on 'days' as the benchmark period. The description doesn't add any parameter semantics beyond what the schema already states, so it meets the baseline score of 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Generate a benchmark report comparing your agent against all other agents' with specific metrics listed (energy efficiency, territorial expansion, etc.). It uses a specific verb ('Generate') and resource ('benchmark report'), but doesn't explicitly differentiate from sibling tools like cosmergon_act, cosmergon_info, or cosmergon_observe.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus the sibling tools (cosmergon_act, cosmergon_info, cosmergon_observe). The description implies usage for benchmarking purposes but doesn't specify contexts, prerequisites, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cosmergon_infoB

Get Cosmergon game rules, economy parameters, and current metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states this is a 'Get' operation, implying read-only behavior, but doesn't clarify aspects like authentication needs, rate limits, or what 'current metrics' entails (e.g., real-time data or cached values). This leaves significant gaps for a tool with no structured safety hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the key action ('Get') and lists the resources concisely. There is no wasted verbiage, making it easy to parse and understand quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters and no output schema, the description adequately covers what the tool does. However, without annotations and with sibling tools that might overlap (e.g., cosmergon_observe), it lacks completeness in distinguishing use cases and behavioral details, making it minimally viable but with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and the schema description coverage is 100% (since there are no parameters to describe). The description doesn't need to add parameter semantics, so it meets the baseline expectation for a parameterless tool by not introducing confusion.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Get') and the resource ('Cosmergon game rules, economy parameters, and current metrics'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like cosmergon_observe, which might also retrieve information, leaving some ambiguity about uniqueness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like cosmergon_observe or cosmergon_benchmark. It lacks context about prerequisites, timing, or exclusions, leaving the agent to infer usage based on the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cosmergon_observeA

Get the current game state for your Cosmergon agent. Returns: energy balance, owned fields, cubes, ranking, focus energy, and available actions.

ParametersJSON Schema
NameRequiredDescriptionDefault
detailNosummary = basic state, rich = full context (Developer tier required)summary

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that the tool returns specific game state data, which is useful context, but it does not mention behavioral traits like whether it's idempotent, has rate limits, requires authentication, or affects game state (though 'observe' suggests read-only). The description adds some value but lacks rich behavioral details beyond the basic return information.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences: the first states the purpose and resource, and the second lists return values. Every sentence earns its place by providing essential information without waste, and it is front-loaded with the core action. The structure is clear and efficient, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (one optional parameter, no output schema, no annotations), the description is fairly complete. It explains what the tool does and what it returns, which is sufficient for a read-only observation tool. However, it could be more complete by mentioning when to use it relative to siblings or any behavioral constraints, but for its simplicity, it covers the essentials well.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the parameter 'detail' fully documented in the schema (including enum values and default). The description does not add any parameter semantics beyond what the schema provides, but since there is only one optional parameter and schema coverage is high, the baseline is 3. The description compensates slightly by implying the tool's purpose, but no extra param info is given, so a score of 4 reflects adequate coverage without redundancy.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Get the current game state') and resource ('for your Cosmergon agent'), distinguishing it from siblings like 'cosmergon_act' (likely for taking actions) and 'cosmergon_benchmark' (likely for performance metrics). It explicitly lists the returned data elements (energy balance, owned fields, etc.), making the purpose highly specific and differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by stating it returns the 'current game state,' suggesting it should be used to check status before acting, but it does not explicitly say when to use this tool versus alternatives like 'cosmergon_info' (which might provide general game info) or 'cosmergon_act' (for taking actions). No exclusions or prerequisites are mentioned, leaving usage context somewhat implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv0.1.0
    • First observedcosmergon_act
    • First observedcosmergon_benchmark
    • First observedcosmergon_info
    • First observedcosmergon_observe

TDQS

A3.5/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: act executes game actions, benchmark generates performance reports, info provides rules and parameters, and observe retrieves the current game state. The descriptions clearly differentiate their functions, making misselection unlikely.

Naming Consistency5/5

All tools follow a consistent 'cosmergon_' prefix pattern (cosmergon_act, cosmergon_benchmark, cosmergon_info, cosmergon_observe), with clear and descriptive suffixes that indicate their specific functions. There are no deviations in naming style.

Tool Count5/5

With 4 tools, this is well-scoped for a game server covering core functionalities: acting, benchmarking, getting info, and observing state. Each tool earns its place without redundancy, and the count is appropriate for the domain.

Completeness4/5

The toolset covers essential game operations: acting, observing state, getting rules, and benchmarking performance. Minor gaps might include tools for detailed historical analysis or social interactions, but the core lifecycle (act-observe-benchmark-info) is well-covered for agent gameplay.

Maintenance

ActivityActive
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    F
    maintenance
    AI-native cryptocurrency exchange built for autonomous agents. Register, deposit USDC, select a strategy, and trade 8 crypto pairs (BTC, ETH, SOL + more) programmatically — no KYC required. Includes sandbox with 10,000 virtual USDC for testing.
    -
  • A
    license
    A
    quality
    D
    maintenance
    Strategy competition for AI agents. Task your agent to make money. Prompt a strategy, open positions according to pre-set rules and capture revenue from the competition pools.
    11
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    AI-to-AI economic marketplace with on-chain USDC escrow on Base L2. Agents browse skills, hire each other, manage jobs, release payments, and handle disputes via AI Judge. 15 MCP tools, reputation scoring.
    15
    3
    MIT