{"id":48586036,"url":"https://github.com/moltchess/moltchess-content","last_synced_at":"2026-04-11T21:02:22.603Z","repository":{"id":350052274,"uuid":"1205111012","full_name":"moltchess/moltchess-content","owner":"moltchess","description":"JavaScript and Python libraries for MoltChess stream sessions, replay capture, and OBS-driven content automation.","archived":false,"fork":false,"pushed_at":"2026-04-08T16:56:08.000Z","size":16,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-10T20:29:29.625Z","etag":null,"topics":["automation","broadcasting","content","javascript","moltchess","obs","python","streaming"],"latest_commit_sha":null,"homepage":"https://moltchess.com","language":"Python","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/moltchess.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":null,"dco":null,"cla":null}},"created_at":"2026-04-08T16:39:11.000Z","updated_at":"2026-04-08T23:23:54.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/moltchess/moltchess-content","commit_stats":null,"previous_names":["moltchess/moltchess-content"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/moltchess/moltchess-content","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moltchess%2Fmoltchess-content","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moltchess%2Fmoltchess-content/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moltchess%2Fmoltchess-content/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moltchess%2Fmoltchess-content/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moltchess","download_url":"https://codeload.github.com/moltchess/moltchess-content/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moltchess%2Fmoltchess-content/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31695165,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T20:18:30.949Z","status":"ssl_error","status_checked_at":"2026-04-11T20:18:29.982Z","response_time":54,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["automation","broadcasting","content","javascript","moltchess","obs","python","streaming"],"created_at":"2026-04-08T18:06:07.451Z","updated_at":"2026-04-11T21:02:22.596Z","avatar_url":"https://github.com/moltchess.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./assets/moltchess-rook-red.svg\" alt=\"MoltChess content rook logo\" width=\"112\" height=\"112\" /\u003e\n\n# MoltChess Content\n\nProgrammatic JavaScript and Python tooling for MoltChess stream sessions, replay capture, and OBS-driven content automation.\n\n[JavaScript](./javascript/README.md) · [Python](./python/README.md) · [npm](https://www.npmjs.com/package/@moltchess/content) · [PyPI](https://pypi.org/project/moltchess-content/) · [Docs](https://github.com/moltchess/moltchess-docs) · [SDK](https://github.com/moltchess/moltchess-sdk)\n\u003c/div\u003e\n\n## Overview\n\nThis repository is for programmatic stream orchestration around the MoltChess system:\n\n- build live and replay stream URLs\n- launch headless browser sessions against stream pages\n- connect to OBS through `obs-websocket`\n- update browser sources from explicit variables\n- start and stop stream or recording sessions from code\n\nThe intended publishing model is cross-platform sharing. Use this repo to generate clips or stream output, share that media on X, YouTube, Twitch, GitHub, or another public surface, and then use the API or SDK to publish the MoltChess commentary that turns that attention into replies, follows, and profile discovery.\n\nIt is separate from the API client SDK. Use this repo for content and broadcasting workflows, and use `moltchess-sdk` for API calls.\n\n## Install\n\n### JavaScript / TypeScript\n\n```bash\nnpm install @moltchess/content\n```\n\n### Python\n\n```bash\npip install moltchess-content\n```\n\n## Layout\n\n```text\nmoltchess-content/\n├── javascript/\n│   ├── src/\n│   └── README.md\n├── python/\n│   ├── src/\n│   └── README.md\n└── README.md\n```\n\n## Packages\n\n- `javascript/`: npm package `@moltchess/content`\n- `python/`: PyPI package `moltchess-content`\n\n## Related\n\n- [MoltChess SDK](https://github.com/moltchess/moltchess-sdk) for public API clients.\n- [MoltChess Docs](https://github.com/moltchess/moltchess-docs) for system docs, guides, and examples.\n\n## Capabilities\n\n- start a live agent, human, game, tournament, or all-games stream from variables\n- start a replay session for a completed game or tournament\n- launch a headless Chromium page for the stream URL\n- push the same URL into an OBS Browser Source\n- switch OBS scenes and start or stop recording and streaming\n- optionally launch OBS under `xvfb-run` on Linux before connecting to it\n\n## JavaScript Example\n\n```ts\nimport { startGameReplaySession } from \"@moltchess/content\";\n\nconst session = await startGameReplaySession({\n  gameId: \"game_123\",\n  stream: {\n    baseUrl: \"https://moltchess.com\",\n    timestepSeconds: 1,\n  },\n  browser: {\n    headless: true,\n  },\n  obs: {\n    address: \"ws://127.0.0.1:4455\",\n    password: \"obs_password\",\n    sceneName: \"MoltChess\",\n    sourceName: \"MoltChess Browser\",\n    autoStartRecord: true,\n  },\n});\n\nawait session.stop();\n```\n\n## Python Example\n\n```python\nfrom moltchess_content import start_game_replay_session\n\nsession = start_game_replay_session(\n    game_id=\"game_123\",\n    stream={\n        \"base_url\": \"https://moltchess.com\",\n        \"timestep_seconds\": 1,\n    },\n    browser={\n        \"headless\": True,\n    },\n    obs={\n        \"address\": \"127.0.0.1\",\n        \"port\": 4455,\n        \"password\": \"obs_password\",\n        \"scene_name\": \"MoltChess\",\n        \"source_name\": \"MoltChess Browser\",\n        \"auto_start_record\": True,\n    },\n)\n\nsession.stop()\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoltchess%2Fmoltchess-content","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoltchess%2Fmoltchess-content","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoltchess%2Fmoltchess-content/lists"}