Initialize VTube Studio plugin repository
This commit is contained in:
@@ -0,0 +1,3 @@
|
|||||||
|
/target/
|
||||||
|
*.wasm
|
||||||
|
*.trixie-plugin
|
||||||
Generated
+7
@@ -0,0 +1,7 @@
|
|||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
|
version = 4
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "trixie-vtube-studio-plugin"
|
||||||
|
version = "0.1.0"
|
||||||
+15
@@ -0,0 +1,15 @@
|
|||||||
|
[package]
|
||||||
|
name = "trixie-vtube-studio-plugin"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
license = "MIT"
|
||||||
|
description = "Trixie WebAssembly plugin boundary for VTube Studio integrations"
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
crate-type = ["cdylib"]
|
||||||
|
|
||||||
|
[profile.release]
|
||||||
|
opt-level = "z"
|
||||||
|
lto = true
|
||||||
|
codegen-units = 1
|
||||||
|
panic = "abort"
|
||||||
@@ -1,3 +1,31 @@
|
|||||||
# trixie-vtube-studio-plugin
|
# Trixie VTube Studio plugin
|
||||||
|
|
||||||
Trixie WebAssembly plugin for VTube Studio
|
This repository contains the independently versioned VTube Studio integration
|
||||||
|
for Trixie. It produces a WebAssembly plugin package consumed by the Trixie
|
||||||
|
server; it is not part of the Trixie server source tree.
|
||||||
|
|
||||||
|
## Boundary
|
||||||
|
|
||||||
|
The plugin may only use capabilities explicitly exposed by the versioned
|
||||||
|
Trixie plugin host API. It must not open arbitrary network connections, access
|
||||||
|
the filesystem, execute processes, read secrets, or evaluate user-provided
|
||||||
|
code. VTube Studio-specific behavior belongs here; installation, validation,
|
||||||
|
permissions, secret approval, lifecycle, limits, and isolation belong to the
|
||||||
|
Trixie server.
|
||||||
|
|
||||||
|
The initial scaffold is intentionally inert. The local VTube Studio WebSocket
|
||||||
|
connection, user approval/token flow, and action schemas will be added only
|
||||||
|
after the host contract and security review are complete.
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
Work on `dev`. Build the current scaffold with:
|
||||||
|
|
||||||
|
```text
|
||||||
|
rustup target add wasm32-unknown-unknown
|
||||||
|
cargo build --target wasm32-unknown-unknown --release
|
||||||
|
```
|
||||||
|
|
||||||
|
Do not place Twitch credentials, VTube Studio tokens, or generated plugin
|
||||||
|
packages in this repository. See the Trixie plan and server plugin contract
|
||||||
|
documentation for the integration boundary.
|
||||||
|
|||||||
+18
@@ -0,0 +1,18 @@
|
|||||||
|
id = "reaperofveriod.vtube-studio"
|
||||||
|
name = "VTube Studio"
|
||||||
|
version = "0.1.0"
|
||||||
|
api_version = "1"
|
||||||
|
entrypoint = "trixie_plugin_start"
|
||||||
|
description = "Trixie integration boundary for VTube Studio actions and status."
|
||||||
|
|
||||||
|
[runtime]
|
||||||
|
kind = "wasm"
|
||||||
|
target = "wasm32-unknown-unknown"
|
||||||
|
|
||||||
|
[permissions]
|
||||||
|
# Capabilities are intentionally empty until each VTube Studio action has a
|
||||||
|
# reviewed host API, input schema, resource budget, and test fixture.
|
||||||
|
required = []
|
||||||
|
|
||||||
|
[configuration]
|
||||||
|
schema = ""
|
||||||
+16
@@ -0,0 +1,16 @@
|
|||||||
|
//! Trixie's independently released VTube Studio plugin boundary.
|
||||||
|
//!
|
||||||
|
//! This first scaffold deliberately contains no direct WebSocket, filesystem,
|
||||||
|
//! process, or secret access. Those capabilities must be provided by an
|
||||||
|
//! explicitly versioned Trixie host API after the integration contract is
|
||||||
|
//! reviewed and tested.
|
||||||
|
|
||||||
|
/// The plugin entrypoint reserved for the versioned Trixie WASM host contract.
|
||||||
|
///
|
||||||
|
/// Until the host contract is finalized, the entrypoint is inert and returns
|
||||||
|
/// zero. It exists so CI can compile and validate the repository as a plugin
|
||||||
|
/// artifact without implying that VTube Studio actions are implemented.
|
||||||
|
#[no_mangle]
|
||||||
|
pub extern "C" fn trixie_plugin_start() -> i32 {
|
||||||
|
0
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user