Proto commits in AlexProgrammerDE/SoulFire

These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)

Commit:01982e1
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

feat(instance): add live overview data APIs

Commit:5c0dc3f
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

feat(auth): add TheAltening account support

Commit:349908c
Author:AlexProgrammerDE

feat(inventory): render item icons in bot inventory

Commit:681e6e6
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

feat(grpc): add BotLiveService for streaming events and automation RPCs Introduces a new automation-first gRPC service that complements BotService with mineflayer/azalea-style ergonomics: - WatchBotEvents: single multiplexed stream delivering initial snapshot, state deltas, chat messages, and lifecycle (disconnect) events. - SendChat: send a chat message or slash command from the bot. - GetBlock / FindBlocks: query the bot's live world view by block id or position. - ListNearbyEntities: enumerate entities within a radius, filtered by type, with distance sorted output. - DigBlock / PlaceBlock / UseItem / AttackEntity / InteractEntity / SwingArm: position- and entity-id targeted imperative actions that bypass the raytrace-from-current-look pattern of MouseClick. - GoTo / StopPathfinding: pathfinding goal submission with streaming PathfindProgress events (PLANNING, MOVING, COMPLETED, FAILED, CANCELLED) and a stop RPC. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

Commit:e789e0d
Author:AlexProgrammerDE

feat(script): add ordered collection support

Commit:f3ffe29
Author:AlexProgrammerDE

feat(openapi): expose proto field behaviors

Commit:ead4a2a
Author:AlexProgrammerDE

docs(proto): complete API field annotations

Commit:8eff60a
Author:AlexProgrammerDE

Add batched automation bot settings controls

Commit:3e1064e
Author:AlexProgrammerDE

Add automation quota override controls

Commit:34ebcb8
Author:AlexProgrammerDE

Expand automation operator controls and docs

Commit:c1531ae
Author:AlexProgrammerDE

Add manual automation claim release controls

Commit:c32b95e
Author:AlexProgrammerDE

Add automation role and objective overrides

Commit:42f90e6
Author:AlexProgrammerDE

Add automation coordination controls

Commit:8c5e07e
Author:AlexProgrammerDE

Add automation memory inspection controls

Commit:f7c4ab9
Author:AlexProgrammerDE

Add dedicated automation API surface

Commit:f2145c5
Author:AlexProgrammerDE

Harden automation settings and requirement keys

Commit:5706cac
Author:AlexProgrammerDE

chore: improve openapi documentation

Commit:897e76c
Author:AlexProgrammerDE

Revert "Add structured instance events service" This reverts commit f4d1bd7aaa5dd0163c71c540426f823150c1f505.

Commit:f4d1bd7
Author:AlexProgrammerDE

Add structured instance events service

Commit:7c6a8c4
Author:AlexProgrammerDE

feat: add MCP (Model Context Protocol) server support Expose all gRPC services as MCP tools via Armeria's armeria-ai-mcp module, enabling AI assistants to control SoulFire through natural language. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:81c85ac
Author:AlexProgrammerDE

feat: add Microsoft Java access token authentication service Introduces OnlineSimpleJavaData as a new AccountData type for access-token-only accounts, avoiding the need to stuff fake data into OnlineChainJavaData. Uses MinecraftAuth's Jwt for expiry parsing and MinecraftProfileRequest for profile resolution via LenniHttpHelper (with proxy support). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:e01f066
Author:AlexProgrammerDE

feat: add Microsoft Java cookies authentication service Extract cookie-to-refresh-token resolution into a dedicated MSLiveCookieHelper utility and implement MSJavaCookiesAuthService as a new auth type using OnlineChainJavaData. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:2b1a83f
Author:AlexProgrammerDE

feat: add generics support for script node type system Introduce TypeDescriptor sealed interface with Simple, Parameterized, and TypeVariable variants to enable generic type inference across node ports. List/flow nodes now declare type variables (e.g. List<T> input, T output) that unify at connection time. Adds MAP port type, proto TypeDescriptor message, and updated type propagation with deduplication. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:3bdc3f5
Author:AlexProgrammerDE

feat: wire script quotas through proto, server CRUD, and execution engine Add disable_timeouts field to ScriptQuotas proto and quotas fields to Create/UpdateScriptRequest. ScriptQuotasConfig record provides typed defaults (100K exec count, 30s data edge timeout, 90s node timeout). Quotas are read/written in ScriptServiceImpl and threaded through ReactiveScriptContext into the execution engine and trigger service. Duration.ZERO disables timeouts. flatMap concurrency replaces the AtomicBoolean guard in ScriptTriggerService. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:4d28877
Author:AlexProgrammerDE

feat: comprehensive script system improvements (35 items) Add type safety, validation, optimization, and UX enhancements to the visual scripting engine across server and proto layers. Server changes: - Structured ValidationDiagnostic with severity levels (ERROR/WARNING) - TypeCompatibility matrix and runtime type coercion checks - TypePropagation forward analysis through ANY ports - ConstantFolding optimization pass for constant subgraphs - Input contract validation for required ports at runtime - Lazy data evaluation filtering by declared input ports - Deterministic sorted ordering for data-only sources - Idempotency tokens for trigger deduplication - ExecutionRecorder for replay support - Script schema versioning and migration framework - Resource quotas proto (ScriptQuotas) - ValidateScript and DryRunScript RPCs - isExpensive/blocksThread flags on NodeMetadata - Execution time tracking in NodeCompleted events - ExecutionStats events for node count reporting Proto changes: - DiagnosticSeverity enum and ValidationDiagnostic message - ScriptQuotas, ExecutionStats, ValidateScript/DryRunScript RPCs - execution_time_nanos on NodeCompleted - is_expensive flag on NodeTypeDefinition Tests: - TypeCompatibilityTest for coercion matrix - TemplateValidationTest with parameterized template JSON files - Data-only node caching verification test - Updated cancellation and execution limit tests - Template fixtures (simple-print, data-edges, loop, branch) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:4ac55c7
Author:AlexProgrammerDE

feat: add instance persistent metadata and new variable nodes

Commit:0a3c7db
Author:AlexProgrammerDE

feat: add server-level system metrics (CPU, memory, threads, GC, bots) Add ServerMetricsCollector polling JMX beans every 3s with a ring buffer, GetServerMetrics gRPC RPC gated by READ_SERVER_CONFIG permission, and ServerMetricsSnapshot proto message for CPU, heap, threads, GC, uptime, and aggregate bot counts across all instances. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:034e058
Author:AlexProgrammerDE

feat: add instance metrics collection and gRPC service Add server-side metrics infrastructure for real-time instance monitoring: - New metrics.proto with MetricsSnapshot time-series and MetricsDistributions - InstanceMetricsCollector: event-driven collector with ring buffer (600 snapshots) - MetricsServiceImpl: gRPC endpoint with incremental fetching via "since" param - Tracks bot counts, packet rates, tick duration, health/food, chunks/entities Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Commit:36334e1
Author:AlexProgrammerDE

refactor: use end sentinel streaming pattern for loginCredentials Replace the aggregate CredentialsAuthFullList final message with per-result streaming and an explicit end sentinel, matching the proxy check service pattern. - Add account data to CredentialsAuthOneSuccess messages - Add CredentialsAuthEnd sentinel message - Remove CredentialsAuthFullList message - Stream individual results with account data as they complete - Client collects accounts from individual one_success messages Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:bc3e032
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

docs: add CLAUDE.md for Claude Code guidance Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:33a1f15
Author:AlexProgrammerDE

feat(scripts): add 24 new scripting nodes and fix proto paused field New node categories and nodes: - Network: WebFetchNode (HTTP requests with method, headers, body) - AI: LLMChatNode (uses bot's AI settings for LLM chat) - JSON: JsonParse, JsonStringify, JsonGet, JsonSet, JsonArray, JsonObject - Encoding: Hash, Base64Encode/Decode, Encrypt/Decrypt, Compression - State: CacheNode, StateNode (state machine) - Integration: DiscordWebhookNode - Variable: Get/SetPersistentBotVariable, Get/SetSessionBotVariable - Flow: DelayNode, RateLimitNode - String: RegexMatchNode, RegexReplaceNode - Utility: TimestampNode Also fixes proto schema to add missing 'paused' field that was introduced in the activation-to-pause refactor. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:e175d02
Author:AlexProgrammerDE

feat: add script log streaming and fix PrintNode for any type inputs - Add ScriptLog message to proto for streaming log events to frontend - Update ScriptServiceImpl to send ScriptLog events when onLog is called - Fix PrintNode to properly handle "any" type inputs by accessing NodeValue directly instead of using getInput() which only handles specific types Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:313712c
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

feat(scripting): add data-driven HandleShape and EdgeStyle for ports Add HandleShape and EdgeStyle enums to PortTypeMetadata, allowing the visual appearance of port handles and edge animations to be configured server-side instead of hardcoded in the client. - Execution ports: square handles with animated edges - Data ports: circular handles with static edges Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:c3a9238
Author:AlexProgrammerDE

fix(scripting): update proto files and fix registry API - Add PortTypeMetadata, RegistryEntry, GetRegistryDataRequest/Response to proto - Add GetRegistryData RPC to ScriptService - Fix registry data to use formatted IDs as display names - Add formatRegistryId helper for converting IDs to display names Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:4708563
Author:AlexProgrammerDE

feat(script): Add Blender-style node editor enhancements - Add multi-input socket support for ports that accept multiple connections - Add layout node support (isLayoutNode, supportsMuting, supportsPreview) - Update PortDefinition with multiInput flag - Update NodeMetadata with muting and preview support - Update ScriptGraph to collect multi-input values into lists - Update ScriptServiceImpl to serialize new proto fields Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:7e5e131
Author:AlexProgrammerDE

Revert "feat: improve validation and node capabilities" This reverts commit 083c50194fb653103760d292c4458e580c254b61.

Commit:083c501
Author:AlexProgrammerDE

feat: improve validation and node capabilities

Commit:9eb47e9
Author:AlexProgrammerDE

chore: fixup protocol

Commit:92ea92c
Author:AlexProgrammerDE

feat: add CategoryDefinition with id, displayName, icon for all categories Categories are now proper objects with metadata instead of plain strings: - CategoryDefinition proto message: id, display_name, icon, description, sort_order - NodeCategory enum in Java with predefined categories: - triggers, actions, data, flow, logic, math, string, list, constants, utility - Each category has icon (using lucide icon names) Node changes: - NodeMetadata.category is now NodeCategory enum (not String) - NodeMetadata.icon is now required (not nullable) - AbstractScriptNode derives icon from category if not specified - GetNodeTypesResponse returns List<CategoryDefinition> instead of List<String> Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:47b5ed6
Author:AlexProgrammerDE

feat: add data-driven node metadata system for client rendering Clients can now render the visual script editor without hardcoded knowledge of node types. The protocol defines: - PortType enum: NUMBER, STRING, BOOLEAN, VECTOR3, BOT, LIST, EXEC, etc. - PortDefinition: describes input/output ports with type, defaults - NodeTypeDefinition: complete node metadata (name, category, ports, etc.) - GetNodeTypes RPC: returns all node definitions for client rendering Java implementation: - PortType enum matching proto - PortDefinition record with factory methods for common patterns - NodeMetadata record with builder for defining node metadata - ScriptNode.getMetadata() method for nodes to describe themselves - AbstractScriptNode provides default metadata derived from type - NodeRegistry.getAllMetadata() for gRPC service implementation Example nodes updated with rich metadata: - OnTickNode (trigger pattern) - AddNode (data node pattern) - PathfindToNode (action node pattern) Remaining nodes use auto-generated minimal metadata and can be enhanced incrementally. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:64d8486
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

refactor: remove script scoping and make scripts activatable This refactor makes two architectural changes to the visual scripting system: 1. Remove BOT/INSTANCE scoping - All scripts now run at instance level. Bot becomes an explicit input to nodes. New nodes provide bot selection: - GetBotsNode: returns all bots in the instance - FilterBotsNode: filters bots by regex pattern - GetBotByNameNode: gets a bot by name - ForEachBotNode: iterates over bots 2. Make scripts activatable instead of startable - Scripts are now reactive state machines that activate (register listeners) and deactivate (unregister + cancel pending operations). There is no concept of scripts "running to completion". Key changes: - Remove ScriptScope enum from proto and database - Add currentBot field to ScriptContext for flow nodes - All action/data nodes use requireBot(inputs, context) pattern - Trigger nodes output bot and set context.currentBot - Rename start/stop to activate/deactivate throughout - Add database migration to drop scope column Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:4c671da
Author:AlexProgrammerDE

feat: add visual scripting node implementations and trigger service - Add constant nodes (number, string, boolean, vector3) - Add utility nodes (print, get/set variable) - Create ScriptTriggerService for event-driven execution - Wire up ScriptEngine to gRPC service - Add executeFromTrigger method for trigger node execution - Add onLog method to ScriptEventListener - Add auto_start field to protocol and database entity - Register all new nodes in NodeRegistry Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:42514ec
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

feat: implement visual scripting backend with execution engine Add complete backend for visual node-based scripting: - ScriptService proto with CRUD, execution, and log streaming RPCs - ScriptEngine with topological sort and async node execution - ScriptContext for BOT and INSTANCE scope execution - ScriptGraph for node/edge representation - 48 node implementations (triggers, math, logic, actions, data, flow) - ScriptServiceImpl gRPC service with database persistence - ScriptEntity JPA entity with JSON storage for nodes/edges - NodeRegistry for node type registration Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:1ffc7ba
Author:AlexProgrammerDE

docs: add comprehensive documentation to all proto files Document all 13 SoulFire proto files with comments derived from backend implementation analysis including service descriptions, RPC methods, message types, fields, enums, permissions, and error cases. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:91a5217
Author:AlexProgrammerDE

fix: implement bot config and bot persistence more idiomatically

Commit:4475c61
Author:AlexProgrammerDE

feat: add persistent account metadata storage Adds Map<String, Map<String, JsonElement>> metadata field to MinecraftAccount that persists to database and syncs via gRPC with granular entry updates. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:2784be9
Author:AlexProgrammerDE

feat: add game mode to bot live state Returns the bot's current game mode (survival, creative, adventure, spectator) in BotLiveState for display in the client UI. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:34d9dee
Author:AlexProgrammerDE

feat: add movement and rotation control RPCs - SetMovementState: Control WASD movement, jump, sneak, sprint - ResetMovement: Stop all movement - SetRotation: Set absolute yaw/pitch rotation Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:8bd0459
Author:AlexProgrammerDE

feat: add server dialog support and hotbar slot selection - Add server dialog handling for Minecraft 1.21.6+ dialogs - Add SetHotbarSlot RPC to change the active hotbar slot (0-8) - Add DialogHandler plugin for processing server dialogs Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:dabacd3
Author:AlexProgrammerDE

feat: add anvil text input and lectern book pages - Add ContainerTextInput proto for text fields (anvil rename) - Add BookPage proto for lectern book content - Implement SetContainerText RPC for anvil rename - Extract book content from lectern items Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:1101619
Author:AlexProgrammerDE

feat: add data-driven container action buttons Add support for container buttons (stonecutter recipes, enchantments, loom patterns, merchant trades, beacon effects, crafter toggles, lectern navigation) with proper disabled state detection. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:c5afe95
Author:AlexProgrammerDE

refactor: remove JS/Python scripting system Remove the entire scripting backend in preparation for a visual node-based script editor. This includes: - Delete ScriptManager, ScriptLanguage, ScriptHelper and all script API classes - Delete ScriptEntity and ScriptServiceImpl - Remove GraalVM Polyglot and SWC4J dependencies - Remove script-related permissions from proto definitions - Add database migration to drop the scripts table - Remove script settings and WebDAV paths The visual script editor will be implemented in a future update with a completely new architecture. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:0d4ce58
Author:AlexProgrammerDE

feat: add clicking support

Commit:ef41ffb
Author:AlexProgrammerDE

feat: add bot cmd scope

Commit:6ebfb5c
Author:AlexProgrammerDE

feat: add mc version api

Commit:7390b1e
Author:AlexProgrammerDE

feat: add data-driven inventory management with container support - Add clickInventorySlot RPC for inventory interactions - Add getInventoryState RPC with data-driven container layout - Add closeContainer and openInventory RPC methods - Support layout generation for all vanilla container types - Include slot regions, types, and container titles in response Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:693c98f
Author:AlexProgrammerDE

feat: add data api

Commit:3714c56
Author:AlexProgrammerDE

refactor: rebrand from attacks to sessions SoulFire is becoming a general purpose bot tool. It can still be used for stress-testing, but also for things like development and automation in the near future.

Commit:c5e80e5
Author:AlexProgrammerDE

Add GetBotList RPC to get online/offline status for all bots - Add BotListRequest, BotListEntry, and BotListResponse messages - Add GetBotList RPC to BotService - Implement getBotList in BotServiceImpl to return online status and optional live state for each account Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:73b862b
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

chore: update proto

Commit:933e00b
Author:AlexProgrammerDE

refactor: add granular config update protocol for concurrent editing Add specific gRPC calls for individual config operations instead of sending the entire profile on every change. This prevents conflicts when multiple users edit different config keys, accounts, or proxies simultaneously. New protocol methods: - UpdateInstanceConfigEntry/UpdateServerConfigEntry/UpdateBotConfigEntry - AddInstanceAccount/RemoveInstanceAccount/UpdateInstanceAccount - AddInstanceProxy/RemoveInstanceProxy/UpdateInstanceProxy The existing UpdateInstanceConfig/UpdateServerConfig methods are now reserved for profile import/export operations only. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:49762e2
Author:AlexProgrammerDE

refactor: decouple settings definitions from pages in protocol Introduce SettingsDefinition as a standalone message containing full setting metadata (id, scope, type with UI config). SettingsPage now only references settings by identifier, enabling settings to be mounted anywhere by namespace+key. - Add SettingsDefinition message to common.proto - Update SettingsPage to hold SettingsEntryIdentifier list - Add settings_definitions field to InstanceInfoResponse/ServerInfoResponse - Split SettingsPageRegistry into exportSettingsDefinitions/exportSettingsPages - Update CLIManager to use definitions lookup map Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Commit:a2ed76f
Author:AlexProgrammerDE

refactor: add page ids

Commit:bf5c517
Author:AlexProgrammerDE

refactor: send with every page definition for each entry what scope it is

Commit:26068c2
Author:AlexProgrammerDE

feat: implement new bot protocol

Commit:c53befc
Author:AlexProgrammerDE

fix: make it executable with the new bot protocol

Commit:de31899
Author:AlexProgrammerDE

refactor: make internal code ready for multiple namespaces per page

Commit:81e2b4b
Author:AlexProgrammerDE

feat: bot control

Commit:2169561
Author:Alex
Committer:GitHub

feat: update VFP (#924) * feat: update VFp * fix: help IJ inference by extracting lambdas to methods * fix: redo layout for mcauth * fix: make expiry handled better

Commit:36c0354
Author:AlexProgrammerDE

fix: redo layout for mcauth

Commit:dac6854
Author:AlexProgrammerDE

feat: implement better log protocol

The documentation is generated from this commit.

Commit:7f0a11f
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

feat: add personal logs scope

Commit:cf32fb1
Author:AlexProgrammerDE

feat: revamp proxy check protocol

Commit:8cf8d51
Author:AlexProgrammerDE

fix: drop the altening support The altening has shut down operations. They now focus on fortnite accounts and don't offer mc alts anymore. So we are dropping support.

Commit:c628fb4
Author:AlexProgrammerDE

Allow disabling parts of ui via protocol

Commit:cc5bec4
Author:AlexProgrammerDE

Implement very basic typescript support

Commit:bb22402
Author:AlexProgrammerDE

Supply scope via API

Commit:1b6fce6
Author:AlexProgrammerDE

Add created and updated payload

Commit:db9924e
Author:AlexProgrammerDE

Nest

Commit:8cb382f
Author:AlexProgrammerDE

Update spelling

Commit:d1a63dd
Author:AlexProgrammerDE

Improve script proto

Commit:9fb0c76
Author:AlexProgrammerDE

Share command scope

Commit:98ab80f
Author:AlexProgrammerDE

Add script list endpoint

Commit:64dd96a
Author:AlexProgrammerDE

Implement more accessible folders for webdav

Commit:591ae69
Author:AlexProgrammerDE

Prepare for script endpoints and add elevated scripts

Commit:86683be
Author:AlexProgrammerDE

Implement more log scopes

Commit:048f693
Author:AlexProgrammerDE

Prepare script proto and make use of more conventional naming

Commit:ba43442
Author:AlexProgrammerDE

Add new API routes

Commit:6ee22d7
Author:AlexProgrammerDE

Allow generating your own api token

Commit:37d181a
Author:AlexProgrammerDE

Send public address to client

Commit:aa15cf4
Author:AlexProgrammerDE

Implement update self meta endpoints

Commit:0098a11
Author:AlexProgrammerDE

Allow to generate WebDAV token for current user

Commit:017de00
Author:AlexProgrammerDE

Rename config to client service

Commit:af15c13
Author:AlexProgrammerDE

All filtering by keywords in combo box

Commit:545b18f
Author:AlexProgrammerDE

Allow combo options to specify icons

Commit:5b2f591
Author:AlexProgrammerDE

Implement more string input options

Commit:260b972
Author:AlexProgrammerDE

Pass more info about users to admins

Commit:bf5e2a2
Author:AlexProgrammerDE
Committer:AlexProgrammerDE

Readd perms to list

Commit:4c47c3b
Author:AlexProgrammerDE

Readd perms to list

Commit:ff3d2d4
Author:Alex
Committer:GitHub

Feature/scripting api (#697) * Prepare first few files * Improve basic structure * Integrate script start/stop with instancemanager * Depend on LSP * Implement read-only code file system * Redo object storage path and set pwd * Always create object storage dir and delete on instance delete * Basic execution code * Make js and python load code * Improve js node support * Improve sandboxing a little * Prevent contexts from injecting classes into host * Initial work on API bindings * Initial layout for script apis * Redo API using bean mapping * Improve code naming * Implement first batch of events * Improve more api * Implement metadata api * Implement movement controls for scripts * Implement some more apis for world * Implement more entity base data * Fixup some key loading issues * Some small improvements * Drop sandboxing in favor of nashorn compat * Add milton server * More work on webdav syncing * Remove console logs * Switch to tomcat * Allow writing files * Fix remapping causing issues with webdav paths * Manually override HttpMethod for now * Redo auth api a little * Merge in changes from main * Port to fork of tomcats WebDav servlet * Implement proper subuser directory access * Finish replacing object storage with WebDAV * Rewrite proto for per-instance settings and per-instance plugins Very important as we'll soon treat scripts similar to scripts. And we definitely want per-instance scripts. This also hides admin settings layout from users who aren't admins. * Disable testing script * Fix cli compilation