Sitemap
For Vibe Coding / AI reference: All page titles + summaries + absolute URLs for this site. Site root
https://yexin.wiki/yeow/v1. Markdown source located in repositoryyeow-doc-website/docs/cn/; Local preview: Underyeow-doc-websiterunnpm run dev.
Guide (Root)
| Page | URL | Summary |
|---|---|---|
| Overview | https://yexin.wiki/yeow/v1/overview | Project overview: Write Paper plugins with TypeScript (QuickJS engine, independent thread per plugin). Role-based (beginner/developer/server admin/platform implementer) documentation entry guide + key concepts overview |
| AI-Assisted Startup Guide | https://yexin.wiki/yeow/v1/ai-agent | For AI agents / Vibe Coding: Yeow project introduction, startup commands (--ts), next steps, documentation consultation strategy (sitemap/docs.zip/Harness usage) |
| Quick Start | https://yexin.wiki/yeow/v1/getting-started | From scratch: npm create yeow create project → npm run dev develop (hot reload) → npm run build build → deployment methods. Includes plugin example (/back teleport), async/sync conventions |
| Environment Capabilities | https://yexin.wiki/yeow/v1/environment | Runtime environment overview: Global capabilities ($send/fetch/TextEncoder/TextDecoder/performance/timers), thread and async model, differences from browser/Node environments, performance recommendations |
| CLI Reference | https://yexin.wiki/yeow/v1/cli | create-yeow scaffolding and dev-server command-line usage: Interactive/non-interactive creation, development server parameters (-y/--stop), build scripts, debug experience (source-map error location and async call chains) |
| Build & Distribution | https://yexin.wiki/yeow/v1/distribution | Two artifacts: Standard Paper JAR (plugins/) and platform-independent .yeow.zip (plugins/Yeow/ auto-scan or /yeow install); Distribution recommendations and Modrinth publishing |
| Permissions & Native Service Trust | https://yexin.wiki/yeow/v1/permissions | Unified-gate sensitive permission declaration (default deny table/wildcard rules/computedPermissions), mandatory native SHA-256 declaration (build/load/registration), untrusted warning switch |
| Runtime Operations | https://yexin.wiki/yeow/v1/operations | Server admin perspective: /yeow management command complete set, runtime configuration (config.yml including Folia section), deployment form quick reference |
| Runtime Warning | https://yexin.wiki/yeow/v1/runtime-warning | Early warning engine: heartbeat.timeout / event.slow / plugin.hung / budget.congested etc. alert trigger conditions, meanings and solutions; configuration thresholds; dynamic expansion mechanism |
| Advanced Knowledge | https://yexin.wiki/yeow/v1/advanced | Advanced index: Architecture/scheduler/events/lifecycle/channels/service/Folia/about; Alerts and operations point to root-level documentation |
| Advanced · Architecture & Thread Model | https://yexin.wiki/yeow/v1/advanced/architecture | Package structure, startup flow, thread model, plugin entity abstraction, Worker (virtual plugin), timer resource management, platform independence, development mode error echo |
| Advanced · Scheduler & Tasks | https://yexin.wiki/yeow/v1/advanced/scheduler | Three-level priority scheduler (time slice budget/automatic demotion/idle spin), task configuration (TaskOptions), async vs sync, manual chunking, scheduler design (queue/demotion algorithm/idle queue spin) |
| Advanced · Events & Callbacks | https://yexin.wiki/yeow/v1/advanced/events | Event bridge (EventBridge): Concurrent/serial, event data, handler operations and mode selection, event reentrant deadlock |
| Advanced · Lifecycle & Hot Reload | https://yexin.wiki/yeow/v1/advanced/lifecycle | onInit/onLoad/onUnload, unified callback system, hot reload (force kill mechanism: native interrupt + entity rebuild), production /yeow reload/unload |
| Advanced · Environment Capabilities & Channels | https://yexin.wiki/yeow/v1/advanced/channels | $send encapsulation (underlying bridge $_send is internal implementation, closure-held not exposed), each message channel explanation (runtime configuration points to /operations) |
| Advanced · Binary Transport | https://yexin.wiki/yeow/v1/advanced/binary-transport | JS↔Java binary transport: 16 KiB resident buffer, tag state machine + start/end markers + varint layout, both-direction codec with JSON fallback, scheduler JSON removal, threading constraints and caveats |
| Advanced · Service Mechanism | https://yexin.wiki/yeow/v1/advanced/service | Plugin Service (inter-plugin communication) and Native Service (native extension) mechanisms (API usage see /api/service) |
| About Yeow | https://yexin.wiki/yeow/v1/advanced/about | About Yeow |
| Writing Dependency Packages | https://yexin.wiki/yeow/v1/package-author | Encapsulate shared logic and resources as npm dependency packages: assets namespace, dependency identification, build automation (multiple copy coexistence/permission merging/native manifest) |
| Encapsulating Service Packages | https://yexin.wiki/yeow/v1/package-service | Three types of Service encapsulation in dependency packages: SDK call encapsulation / JS service (global unique + degradation) / native service (child process), and "JS facade + native engine" combination pattern |
| Roadmap | https://yexin.wiki/yeow/v1/todo | v1 directional planning: API/event coverage, debugging tools, Folia support; Worker API already implemented |
| Index (README) | https://yexin.wiki/yeow/v1/ | Documentation homepage: Quick start commands, why use Yeow (engineering/thread separation/platform independence/native extension), comparison table, documentation and toolchain index |
| Changelog | https://yexin.wiki/yeow/v1/changelog | Date-based update records (from 2026-08-08) |
API Reference (/v1/api/)
| Page | URL | Summary |
|---|---|---|
| API Index | https://yexin.wiki/yeow/v1/api/ | Complete grouped index of all API modules |
| Player | https://yexin.wiki/yeow/v1/api/player | Player: Properties (health/hunger/experience/flying etc.), location, messages (Message object), Title/ActionBar, sounds, resource packs, teleport, permissions, performCommand, held items (ItemStack snapshot) |
| Server | https://yexin.wiki/yeow/v1/api/server | Server-level: Broadcast, MOTD (setMotd global default, ⚠ persists to server.properties), serverPing event writeback (per-ping override of motd/icon/player count, not persisted), version, TPS, max players |
| Env | https://yexin.wiki/yeow/v1/api/env | Runtime environment info (sync): CPU cores, memory, system architecture, Minecraft version, Yeow runtime info, epoch microsecond timestamp |
| Permission | https://yexin.wiki/yeow/v1/api/permission | Permissions: registerPermission (default: all/op/none), command permissions, check flow, permissionCheck Yeow ecosystem hook (priority/trigger scope/infinite loop reminder), Paper compatibility (permissions.yml/LuckPerms) |
| World | https://yexin.wiki/yeow/v1/api/world | World: Time/weather/difficulty/rules, blocks (getBlock/setBlock, Block object), chunks, lighting, biomes, entity queries, drops/lightning/explosion/spawning |
| Chunk | https://yexin.wiki/yeow/v1/api/chunk | Chunk snapshot (advanced performance tool): 3D complete snapshot and 2D top snapshot (short[] base64 zero-copy view + block index mapping) |
| Location | https://yexin.wiki/yeow/v1/api/location | Coordinates and orientation: x/y/z/yaw/pitch/world |
| Block | https://yexin.wiki/yeow/v1/api/block | Unified block concept: Data descriptor (type/state) + optional location; Static data semantics (snapshot); Material-level judgment delegated to Material; breakNaturally requires location |
| Material | https://yexin.wiki/yeow/v1/api/material | Material registry query (getMaterials/getBlocks/getItems) + Material-level static judgment object (isSolid/isAir, independent of coordinates/state) |
| Entity | https://yexin.wiki/yeow/v1/api/entity | Entity: Type/name/location, glowing/invulnerable/silent/gravity, passengers/vehicle, bounding box, health; LivingEntity |
| Potion | https://yexin.wiki/yeow/v1/api/potion | Potion effects: Add/remove/clear/query (type, duration, level) |
| Particle | https://yexin.wiki/yeow/v1/api/particle | Particle generation: Type, location, count, offset, color/block/item particles |
| Inventory | https://yexin.wiki/yeow/v1/api/inventory | Unified container: Player inventory / container blocks (Chest etc.) / custom Inventory (object-style API, click/close events carry inventoryId) |
| BossBar | https://yexin.wiki/yeow/v1/api/bossbar | Boss bar: Title/progress/color/style/visibility, player binding, Flag |
| Scoreboard | https://yexin.wiki/yeow/v1/api/scoreboard | Scoreboard: Board, objectives (display slots/scores), teams (prefix/suffix/color/options/members) |
| Advancement | https://yexin.wiki/yeow/v1/api/advancement | Advancements: Grant/revoke, advancement query, criteria grant/revoke |
| Recipe | https://yexin.wiki/yeow/v1/api/recipe | Recipes: Shaped/shapeless crafting, furnace/blast smoker/campfire; Add/remove/query by product |
| Event | https://yexin.wiki/yeow/v1/api/event | Event subscription: eventOn/eventOff, auto/manual mode (cancel, writeback), complete event field table, messages (Message object) |
| Command | https://yexin.wiki/yeow/v1/api/command | Command registration + Tab completion (including yeow-command overload commands Command.create and patterned parameters) |
| ItemStack | https://yexin.wiki/yeow/v1/api/item | Item pure data descriptor: type/amount/meta (display name/enchantment/durability/dye/potion/head/attribute modifiers); Construction tools (create/clone/equals); Value semantics (snapshot, not bound to real item) |
| Service | https://yexin.wiki/yeow/v1/api/service | Inter-plugin services (OOP Service object: registerService/getService/hasService/request/subscribe/publish/unregister) and native services (registerNativeService, spawn child process + TCP communication) |
| HTTP | https://yexin.wiki/yeow/v1/api/http | Underlying HTTP client: request (async, request/response body binary same semantics as fs, encoding/timeout optional), global fetch (text/json on-demand decoding + base64/bytes) |
| HTTP Server | https://yexin.wiki/yeow/v1/api/http-server | High-level createServer (yeow-server): Onion middleware, routing, mount/mountAssets static mounting, binary response (Uint8Array/encoding), return object auto JSON, resource pack download closed loop |
| Worker | https://yexin.wiki/yeow/v1/api/worker | Virtual plugins (independent thread): createWorker (register only, optional permissions.allow/deny)/load/unload/destroy/reload, bidirectional postMessage, Worker-side onMessage/postMessage; inherits main plugin permissions by default (allow cannot escalate), no nesting, /yeow doesn't cover |
| FS | https://yexin.wiki/yeow/v1/api/fs | File system: plugin/server/outer three levels (path safety), read/write/append/binary, directory operations, systemPaths, path tools |
| Assets | https://yexin.wiki/yeow/v1/api/assets | Packaged resources: getAssetsPath (yeow-dev, build-time namespace injection) + read/extract (single file and directory) |
| PDC | https://yexin.wiki/yeow/v1/api/pdc | Persistent data container: JSON auto serialization, full read, plugin namespace (cross-plugin no conflict), Player/Block instance methods |
| Util | https://yexin.wiki/yeow/v1/api/util | Data tools: gzip compression/decompression, UTF-8 ↔ byte conversion (including chunked streaming Gzip) |
| Log | https://yexin.wiki/yeow/v1/api/log | Logging: log/Logger/console (auto plugin name prefix) |
| Text | https://yexin.wiki/yeow/v1/api/text | Text and MiniMessage: Markup syntax, escape rules (real newline vs literal \n), Message object (translatable components {key,args,text}) |
Platform Specification (/v1/specifications/)
| Page | URL | Summary |
|---|---|---|
| Specification Overview | https://yexin.wiki/yeow/v1/specifications/ | Protocol layer general: Package structure (yeow.json/.yeow/main.js/assets), loading flow, permission model, runtime architecture, task executor, event/command bridge, Native Service, qualified runtime checklist |
| Value Domain Appendix | https://yexin.wiki/yeow/v1/specifications/values | Value format rules (R1-R5) and checklist: Platform enums directly maintained (game mode/difficulty/BossBar/scoreboard/ClickType/ItemFlag/InventoryType etc.); Reference implementation (non-mandatory: DamageCause/teleport cause/health regen cause); Version change domain rules+links (blocks/items/entities/biomes/sounds/particles/enchantments/potions/attributes/damage types/game rules/translation keys/advancements/recipes) |
| Runtime Environment Standard | https://yexin.wiki/yeow/v1/specifications/runtime/ | JS environment: Language standard (ES2025+SecU8), callback system (cb semantics), event loop, unload and forced termination (with an example flow), channel overview and permissions, global variables ($send/$dev/fetch/timers/performance) |
| Native Service | https://yexin.wiki/yeow/v1/specifications/native-service/ | Native child process protocol: platform selection (single file only), mandatory SHA-256 declaration, extraction, TCP framed protocol (header JSON + raw body, ready/request/response/publish) |
Message Channels (/v1/specifications/message/)
| Page | URL | Summary |
|---|---|---|
| Channel Overview | https://yexin.wiki/yeow/v1/specifications/message/ | Complete channel index (task/timer/fs/http/assets/lifecycle/log/env/debug/service/util/worker) + general channel explanation |
| Task | https://yexin.wiki/yeow/v1/specifications/message/task | task channel: Game task request/response format, sync vs async (cb), error format |
| Timer | https://yexin.wiki/yeow/v1/specifications/message/timer | Timer channel: timeout/interval message format |
| FS | https://yexin.wiki/yeow/v1/specifications/message/fs | fs channel: plugin/server/outer three levels, each operation (read/write/delete/list/base64/systemPaths) request format and path rules |
| HTTP | https://yexin.wiki/yeow/v1/specifications/message/http | http channel: listen/respond (body + encoding binary)/close/request/requestAsync message format |
| Assets | https://yexin.wiki/yeow/v1/specifications/message/assets | assets channel: read/readBase64/extract/extractDir message format (namespace path) |
| Service | https://yexin.wiki/yeow/v1/specifications/message/service | service channel: Registration (plugin/native), query/unregister, request, subscribe/publish, native terminate callback |
| Log | https://yexin.wiki/yeow/v1/specifications/message/log | log channel: Log message format |
| Lifecycle | https://yexin.wiki/yeow/v1/specifications/message/lifecycle | lifecycle channel: unloadDone confirmation, gc-collect resource reclamation |
| Debug | https://yexin.wiki/yeow/v1/specifications/message/debug | debug channel: reportError error reporting, ping-pong heartbeat |
| Util | https://yexin.wiki/yeow/v1/specifications/message/util | util channel: gzip compression/decompression (one-time and streaming chunked), UTF-8 ↔ byte conversion (encode.utf8/decode.utf8) |
| Worker | https://yexin.wiki/yeow/v1/specifications/message/worker | worker channel: create (register only, optional permissions)/load/unload/destroy/post/reload/postToMain message format, lifecycle, origin error field, constraints (no nesting/shared data & resources/permissions can be tightened) |
Task Types (/v1/specifications/task/)
| Page | URL | Summary |
|---|---|---|
| Task Overview | https://yexin.wiki/yeow/v1/specifications/task/ | Complete task type index and request/return conventions |
| Player | https://yexin.wiki/yeow/v1/specifications/task/player | player.* tasks: Properties/location/messages (Message object format)/Title/sounds/resource packs/teleport/permissions/held items |
| Server | https://yexin.wiki/yeow/v1/specifications/task/server | server.* tasks: Broadcast (Message), MOTD, version, TPS, max players; Material query |
| World | https://yexin.wiki/yeow/v1/specifications/task/world | world.* tasks: Time/weather/blocks (BlockData state)/chunks/lighting/biomes/entities/explosions/spawning; block.breakNaturally, material.* static judgment |
| Entity | https://yexin.wiki/yeow/v1/specifications/task/entity | entity.* tasks: Type/name/properties/location/bounding box/health/potion effects |
| Scoreboard | https://yexin.wiki/yeow/v1/specifications/task/scoreboard | scoreboard.* tasks: Board/Objective/Score/Team full operations |
| Recipe | https://yexin.wiki/yeow/v1/specifications/task/recipe | recipe.* tasks: Recipe definition (shaped/shapeless/furnace series) and add/remove |
| PDC | https://yexin.wiki/yeow/v1/specifications/task/pdc | pdc.* tasks: Entity/block persistent key-value data |
| Inventory | https://yexin.wiki/yeow/v1/specifications/task/inventory-gui | inventory.* tasks (unified three addressing: player/container block/custom): Content operations, lifecycle, ItemStack complete format |
| Command | https://yexin.wiki/yeow/v1/specifications/task/command | command.* tasks: Registration/execution/completion (callback protocol) |
| Event System | https://yexin.wiki/yeow/v1/specifications/task/event-system | event.* tasks: subscribe/unsubscribe/complete (eventId matching); concurrent/serial mode |
| Advancement | https://yexin.wiki/yeow/v1/specifications/task/advancement | advancement.* tasks: Grant/revoke/advancement query/criteria |
| BossBar | https://yexin.wiki/yeow/v1/specifications/task/bossbar | bossbar.* tasks: Create/destroy/title/progress/style/players |
Events (/v1/specifications/event/)
| Page | URL | Summary |
|---|---|---|
| Event Overview | https://yexin.wiki/yeow/v1/specifications/event/ | Complete event type index |
| Player Events | https://yexin.wiki/yeow/v1/specifications/event/player-events | Player event fields: Join/quit/chat/move/interact/death (Message object)/respawn/drop/pickup/bucket/experience/level/game mode/advancement/sneak/fly/teleport/eat/resource pack |
| Entity Events | https://yexin.wiki/yeow/v1/specifications/event/entity-events | Entity event fields: Damage/death/spawn/explosion/health regen/target/projectile |
| Block Events | https://yexin.wiki/yeow/v1/specifications/event/block-events | Block event fields: Break/place/fade/grow/spread/explosion |
| Inventory Events | https://yexin.wiki/yeow/v1/specifications/event/inventory-events | Inventory event fields: Open/close/click (slot/key/action) |
| Server Events | https://yexin.wiki/yeow/v1/specifications/event/server-events | Server events: serverPing (writeback motd/icon/maxPlayers/numPlayers), serverCommand, resource pack status |
Sidebar Navigation Structure
Start: Overview · Quick Start · CLI Reference · Build & Distribution · Runtime Warning · Roadmap · Sitemap
Advanced (default collapsed): About Yeow · Advanced Index (architecture/scheduler/events/lifecycle/channels/service/operations & security)
Dependency Package Development: Writing Dependency Packages
API Reference: Index → Player & Server(Player/Server/Env) · World & Blocks(World/Chunk/Location/Block/Material) · Entity(Entity/Potion/Particle) · Interactive Interface(Inventory/BossBar/Scoreboard/Advancement/Recipe) · Events & Commands(Event/Command) · Items(ItemStack) · Services & Network(Service/HTTP/HTTP Server) · Multi-threading(Worker) · Files & Data(FS/Assets/PDC/Util) · Text(Text) · Logging(Log)
Platform Specification: Specification Overview → Message Channels · Task Types · Events · Runtime · Native Service