{"id":50391397,"url":"https://github.com/netcan/slay-the-spire2-agent","last_synced_at":"2026-05-30T18:30:45.492Z","repository":{"id":344222321,"uuid":"1180969580","full_name":"netcan/slay-the-spire2-agent","owner":"netcan","description":"面向《Slay the Spire 2》的 Agent/Mod 原型仓库，目标是把游戏内状态抽取、动作接口、自动决策和调试工具串起来，为后续接入大模型自动打牌提供稳定基础。","archived":false,"fork":false,"pushed_at":"2026-03-14T00:54:18.000Z","size":203,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-14T04:55:50.675Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/netcan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-03-13T15:55:21.000Z","updated_at":"2026-03-14T00:54:22.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/netcan/slay-the-spire2-agent","commit_stats":null,"previous_names":["netcan/slay-the-spire2-agent"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/netcan/slay-the-spire2-agent","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netcan%2Fslay-the-spire2-agent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netcan%2Fslay-the-spire2-agent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netcan%2Fslay-the-spire2-agent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netcan%2Fslay-the-spire2-agent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/netcan","download_url":"https://codeload.github.com/netcan/slay-the-spire2-agent/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netcan%2Fslay-the-spire2-agent/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33705207,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-30T02:00:06.278Z","response_time":92,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-30T18:30:43.875Z","updated_at":"2026-05-30T18:30:45.478Z","avatar_url":"https://github.com/netcan.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# sts2-agent\n\nEnglish | [简体中文](README.zh.md)\n\n`sts2-agent` is an Agent/Mod prototype for *Slay the Spire 2*. It combines an in-game C# bridge mod, Python-side policies and orchestrator code, and local debugging tools for future LLM-driven autoplay.\n\n## What This Repo Includes\n\n- `src/sts2_agent/`: Python bridge client, policies, orchestrator, traces\n- `mod/Sts2Mod.StateBridge/`: in-game STS2 bridge mod\n- `mod/Sts2Mod.StateBridge.Host/`: local host for fixture/runtime-host validation\n- `tests/`: Python tests\n- `tools/`: build, install, validate, and live-debug scripts\n- `docs/`: detailed setup, validation, compatibility, and upgrade notes\n\n## Requirements\n\n- Python 3.11+\n- .NET SDK 9\n- Godot 4.5.1\n- Windows install of *Slay the Spire 2*\n\n## Quick Start\n\nBuild the mod against a real STS2 install:\n\n```bash\ndotnet build mod/Sts2Mod.StateBridge.sln \\\n  -p:Sts2ManagedDir=\"F:\\\\SteamLibrary\\\\steamapps\\\\common\\\\Slay the Spire 2\\\\data_sts2_windows_x86_64\" \\\n  -p:Sts2ModLoaderDir=\"F:\\\\SteamLibrary\\\\steamapps\\\\common\\\\Slay the Spire 2\\\\data_sts2_windows_x86_64\"\n```\n\nInstall and launch the bridge mod:\n\n```bash\npython tools/debug_sts2_mod.py install --game-dir \"F:\\\\SteamLibrary\\\\steamapps\\\\common\\\\Slay the Spire 2\"\npython tools/debug_sts2_mod.py debug --game-dir \"F:\\\\SteamLibrary\\\\steamapps\\\\common\\\\Slay the Spire 2\"\n```\n\nRun Python tests:\n\n```bash\n$env:PYTHONPATH='src'; python -m unittest discover -s tests -v\n```\n\n## Bridge API\n\nOnce loaded in-game, the bridge exposes:\n\n- `GET /health`\n- `GET /snapshot`\n- `GET /actions`\n- `POST /apply`\n- `GET/POST/DELETE /agent-status`\n\nWrites are disabled by default. Enable them explicitly before live action testing.\n\n## Key Docs\n\n- `docs/sts2-mod-local-development.md`: build, install, live debugging, and validation\n- `docs/sts2-mod-upgrade-notes.md`: mod migration notes after game updates\n- `docs/sts2-mod-agent-compatibility.md`: current bridge/runtime compatibility notes\n- `docs/local-development.md`: local Python-side workflow notes\n- `docs/prototype-validation.md`: fixture/prototype validation details\n\n## Encoding Note\n\n- Chinese docs and OpenSpec artifacts use UTF-8 without BOM.\n- Avoid writing Chinese files through PowerShell text pipes; that may produce `???`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetcan%2Fslay-the-spire2-agent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetcan%2Fslay-the-spire2-agent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetcan%2Fslay-the-spire2-agent/lists"}