Add shadow jar support, custom OpenAI base URL, and Chinese docs#52
Open
beancookie wants to merge 17 commits into
Open
Add shadow jar support, custom OpenAI base URL, and Chinese docs#52beancookie wants to merge 17 commits into
beancookie wants to merge 17 commits into
Conversation
…mpatibility - Add Tencent Gradle mirror for faster downloads in China - Configure HTTP/HTTPS proxy for corporate/network setups - Remove foojay-resolver-convention plugin that conflicts with ForgeGradle - Add Minecraft/Forge/AliYun repositories for dependency resolution Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add shadowJar plugin to bundle required dependencies (Caffeine, Resilience4j) - Add configurable OpenAI base URL for proxy/alternate endpoint support - Update AsyncOpenAIClient to support custom base URL via SteveConfig - Add Chinese README (README_zh.md) - Add multi-file documentation in docs/ directory Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Remove terrain modeling system (TerrainScanner, TerrainModel, SiteAnalyzer) as Arnis handles terrain generation. Add Arnis CLI usage, key parameters, and validation workflow. Renumber sections and update system architecture diagram to reflect Arnis data sources (OSM, SRTM, ESA WorldCover). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add 36-slot SimpleContainer inventory to SteveEntity with NBT persistence - Mining collects blocks into inventory instead of dropping on ground - Building consumes materials from inventory (skipped in creative mode) - Add creativeMode config option (default: true) for unlimited materials - Fix build plan fallback: procedural generation was commented out - Fix collaborative build: Steve now reassigns to other quadrants when done - Update LLM prompt to reflect creative/survival mode rules - Update PromptBuilder to show inventory or [unlimited] based on mode - Add block drop mapping (stone -> cobblestone, etc.) - Add material mining aliases (cobblestone, oak_planks, glass, etc.) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add SteveGUI implementation guide (09-steve-gui.md) - Add WorldKnowledge system documentation (10-world-knowledge.md) - Move construction-related docs to hackathon/ subdirectory - Update README.md with new documentation structure - Remove obsolete road implementation doc (12-road-implementation.md) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Add comprehensive technical documentation covering: - System architecture and data flow - LLM integration with retry logic - Multi-agent coordination system - Procedural structure generation - World knowledge and environment scanning - Action execution system - Resume-ready technical highlights Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Reorganize documentation into logical sections: - 基础层: overview, architecture, config - AI 核心: world knowledge, prompt builder, LLM, resilience - 执行层: actions, multi-agent, code execution - 架构模式: plugins, events, entity management - 数据层: memory, structures - 界面层: GUI Add new documentation: - PromptBuilder: LLM prompt engineering system - PluginSystem: SPI-based action registration framework - EventSystem: Observer pattern for decoupled communication - Resilience: Circuit breaker, retry, rate limiter, bulkhead - EntityManagement: Steve lifecycle management Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Previously, Steves were discarded and respawned on every player login using a static boolean flag, losing all state on world reload. Now the server event handler checks both the manager and the world for existing Steve entities before spawning, and registers entities loaded from save data instead of destroying them. The static stevesSpawned flag is removed in favor of runtime checks against the manager's active count. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- StructureTemplateLoader now loads/saves structures from config/steve/structures/ - PromptBuilder dynamically generates NBT template list for LLM prompts - TaskPlanner adds debug logging for system and user prompts Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Add configurable material warehouses that provide building materials automatically. When Steve runs out of materials during construction, it navigates to the nearest warehouse chest to withdraw more. - WarehouseConfig: parse warehouses.json with spawn modes (fixed/near_player) - WarehouseSavedData: persist warehouse positions across server restarts - WarehouseManager: chest interaction API with auto-restock every 5 seconds - WarehouseRefillHandler: state machine for build-time material refilling - BuildStructureAction: integrate refill handler when materials run out - SteveEntity: add warehousePos field and auto-restock tick trigger - PromptBuilder: add warehouse awareness to LLM prompt Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ld delay - Remove StructureGenerators and its test (procedural generation deprecated) - Add BUILD_TICK_DELAY config for controlling block placement speed (default 20 ticks/block) - Add restock cooldown to WarehouseManager to prevent rapid auto-restock - Increase SteveEntity RESTOCK_INTERVAL from 100 to 1200 ticks - Add duckyausautoroute schematic to config - Ignore Amulet editor files Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Merge WarehouseManager + WarehouseSavedData into a single class - Move WarehouseConfig from memory to config package - Move StructureRegistry from memory to structure package - Add Map-based name index for O(1) warehouse lookup - Add persisted restock cooldown to SavedData - Encapsulate WarehouseEntry fields with getters - Remove dead code (findNearestPlayerPos, depositItem) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add MCP SDK (modelcontextprotocol.sdk:mcp:2.0.0-M3) dependency - Add SteveConfig MCP configuration (enabled, servers, timeout) - Add MCP client wrapper with HTTP transport support - Add MCPToolRegistry for managing MCP server connections - Add MCPToolConverter for formatting tools to prompts - Add MCP integration tests - Simplify PromptBuilder: remove procedural structures, use text blocks - Remove ternary operators in favor of if-else helpers - Simplify build action validation (structure only, no blocks/dimensions) - Optimize buildUserPrompt with text block formatting Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Test plan
🤖 Generated with Claude Code