diff --git a/PLAN.md b/PLAN.md index 1111b30..6abb280 100644 --- a/PLAN.md +++ b/PLAN.md @@ -89,7 +89,32 @@ Query example: - better query pagination & filtering - management commands & validation -## 9) Notes & Decisions +## 9) Project Structure (recommended) +``` +openclaw-plugin-yonexus/ +├─ plugin.json +├─ src/ +│ ├─ index.ts +│ ├─ store/ # in-memory + JSON persistence +│ ├─ models/ +│ ├─ permissions/ +│ ├─ tools/ +│ ├─ memory/ +│ └─ utils/ +├─ scripts/ +│ └─ install.sh +├─ dist/ +│ └─ yonexus/ # build output target +└─ data/ + └─ org.json +``` + +## 10) Install Script Requirement +- Provide `scripts/install.sh` +- It should register the OpenClaw plugin name as **`yonexus`** +- Build artifacts must be placed into **`dist/yonexus`** + +## 11) Notes & Decisions - Structure data is not stored in memory_store. - Shared memory uses memory_store (compatible with memory-lancedb-pro). - Queryable fields are whitelisted via schema. diff --git a/scripts/install.sh b/scripts/install.sh new file mode 100755 index 0000000..841e9ff --- /dev/null +++ b/scripts/install.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Yonexus install script +# - Registers plugin name: yonexus +# - Places build output in dist/yonexus + +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +DIST_DIR="$ROOT_DIR/dist/yonexus" + +mkdir -p "$DIST_DIR" + +# Build step placeholder (replace with actual build command when ready) +# e.g., npm run build + +# Example: copy plugin manifest and compiled assets into dist/yonexus +# cp -r "$ROOT_DIR/plugin.json" "$DIST_DIR/" +# cp -r "$ROOT_DIR/dist-build/*" "$DIST_DIR/" + +echo "[yonexus] install complete -> $DIST_DIR"