{"id":35357731,"url":"https://github.com/adamsbytes/rocinante","last_synced_at":"2026-01-18T08:15:59.506Z","repository":{"id":331306389,"uuid":"1123104009","full_name":"adamsbytes/rocinante","owner":"adamsbytes","description":null,"archived":false,"fork":false,"pushed_at":"2026-01-04T00:09:24.000Z","size":6008,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-06T01:25:48.388Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","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/adamsbytes.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":"2025-12-26T07:31:30.000Z","updated_at":"2026-01-04T00:06:36.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/adamsbytes/rocinante","commit_stats":null,"previous_names":["adamsbytes/rocinante"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/adamsbytes/rocinante","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamsbytes%2Frocinante","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamsbytes%2Frocinante/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamsbytes%2Frocinante/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamsbytes%2Frocinante/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adamsbytes","download_url":"https://codeload.github.com/adamsbytes/rocinante/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamsbytes%2Frocinante/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28397826,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-13T14:36:09.778Z","status":"ssl_error","status_checked_at":"2026-01-13T14:35:19.697Z","response_time":56,"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":[],"created_at":"2026-01-01T23:32:36.943Z","updated_at":"2026-01-13T19:12:26.152Z","avatar_url":"https://github.com/adamsbytes.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rocinante\n\nFull automation system for Old School RuneScape via RuneLite plugin. Includes a web management UI with live VNC streaming, bot status monitoring, and task queuing.\n\n## Requirements\n\n- Docker \u0026 Docker Compose\n- Bun (for web UI development)\n\n## Quick Start\n\n```bash\n# Build and run everything\ndocker compose up -d\n\n# Web UI available at http://localhost:3000\n```\n\n## Project Structure\n\n```\n.\n├── bot/                      # RuneLite plugin + container runtime\n│   ├── src/main/java/com/rocinante/\n│   │   ├── core/             # Plugin entry, task executor\n│   │   ├── behavior/         # Player profiles, humanization\n│   │   ├── input/            # Mouse/keyboard simulation\n│   │   ├── navigation/       # Pathfinding, web walker\n│   │   ├── tasks/            # Task system and implementations\n│   │   ├── combat/           # Combat loop, prayer, gear\n│   │   ├── quest/            # Quest automation\n│   │   ├── slayer/           # Slayer task management\n│   │   ├── progression/      # Account goals, skill planning\n│   │   ├── ironman/          # Ironman restrictions, HCIM safety\n│   │   ├── data/             # Wiki API, teleport data\n│   │   ├── status/           # Bot-to-web status reporting\n│   │   └── ...\n│   ├── Dockerfile            # Bot container (Xvfb, VNC, Bolt launcher)\n│   └── entrypoint.sh         # Container startup script\n│\n├── web/                      # Management web UI\n│   ├── src/\n│   │   ├── api/              # Bun server (Docker control, VNC proxy)\n│   │   ├── client/           # SolidJS frontend\n│   │   └── shared/           # Shared types\n│   └── data/                 # Bot configs, runtime status\n│\n├── docker-compose.yml        # Service orchestration\n├── REQUIREMENTS.md           # Full specification\n└── PHASES.md                 # Implementation roadmap\n```\n\n## Features\n\n### Web Management UI\n- **Bot Dashboard**: Create/configure accounts, start/stop containers, live status monitoring\n- **VNC Streaming**: Watch bot gameplay in real-time via a high-performance VNC connection\n- **Screenshot Gallery**: Auto-captured level ups, pet drops, deaths, valuable drops, boss kills\n\n### Anti-Detection\n- **Behavioral Profiles**: Per-account fingerprints (mouse speed, click variance, typing WPM, break patterns) that persist across sessions with gradual drift over time\n- **Environment Fingerprinting**: Each container gets unique machine-id, display config (resolution/DPI/depth), timezone, fonts, hostname, and JVM GC algorithm\n- **Humanization**: Fatigue modeling, attention state, inefficiency injection, predictive hovering, idle behaviors\n\n### Navigation\n- **Cost-Based Pathfinding**: ShortestPath plugin integration with transport cost penalties, such as avoiding law rune use for HCIM bots\n- **Transport Methods**: Fairy rings, spirit trees, gnome gliders, canoes, charter ships, minigame teleports, quetzal\n\n### Skills \u0026 Combat  \n- **Training Tasks**: Agility courses, cooking, firemaking, fletching, prayer (bone burying), thieving, slayer\n- **Combat System**: Prayer flicking (tick-perfect/lazy/always-on), gear switching, special attacks, target prioritization\n\n### Account Modes\n- **Ironman Support**: Resource-aware pathing, wilderness avoidance, death prevention safety checks\n- **Death Recovery**: Gravestone retrieval, Death's Office handling\n\n### Automation\n- **Quest System**: Quest Helper plugin bridge with step translation for support of all quests. Includes a custom quest for Tutorial Island handling.\n- **Grand Exchange**: Automatic gravestone retrieval and Death's Office handling\n- **Breaks \u0026 Logout**: Scheduled breaks, random event handling, session limits\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamsbytes%2Frocinante","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadamsbytes%2Frocinante","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamsbytes%2Frocinante/lists"}