oomi-ai 0.2.16 → 0.2.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +238 -203
- package/agent_instructions.md +209 -184
- package/bin/oomi-ai.js +3989 -3460
- package/bin/sessionBridgeState.js +78 -78
- package/lib/channelPluginClient.js +119 -0
- package/lib/personaApiClient.js +221 -0
- package/lib/personaJobExecutor.js +115 -0
- package/lib/personaJobPoller.js +112 -0
- package/lib/personaRuntimeProcess.js +152 -0
- package/lib/scaffold.js +108 -0
- package/lib/template.js +45 -0
- package/openclaw.extension.js +602 -424
- package/openclaw.plugin.json +17 -17
- package/package.json +67 -65
- package/skills/oomi/SKILL.md +191 -170
- package/skills/oomi/agent_instructions.md +80 -78
- package/skills/oomi/config.json +2 -2
- package/skills/oomi/scripts/get_avatar_capabilities.py +40 -40
- package/skills/oomi/scripts/get_data.py +49 -49
- package/skills/oomi/scripts/install_agent_instructions.py +78 -78
- package/skills/oomi/scripts/send_goal.py +53 -53
- package/skills/oomi/scripts/sync.py +46 -46
- package/skills/oomi/setup.py +41 -41
- package/templates/persona-app/.env.example +8 -0
- package/templates/persona-app/README.md +35 -0
- package/templates/persona-app/eslint.config.js +28 -0
- package/templates/persona-app/index.html +18 -0
- package/templates/persona-app/oomi.runtime.json +13 -0
- package/templates/persona-app/package.json +42 -0
- package/templates/persona-app/persona/brief.md +14 -0
- package/templates/persona-app/persona.json +14 -0
- package/templates/persona-app/public/manifest.webmanifest +8 -0
- package/templates/persona-app/public/oomi.health.json +6 -0
- package/templates/persona-app/src/App.css +180 -0
- package/templates/persona-app/src/App.tsx +14 -0
- package/templates/persona-app/src/index.css +32 -0
- package/templates/persona-app/src/main.tsx +10 -0
- package/templates/persona-app/src/pages/HomePage.tsx +73 -0
- package/templates/persona-app/src/pages/ScenePage.tsx +18 -0
- package/templates/persona-app/src/persona/config.ts +6 -0
- package/templates/persona-app/src/persona/notes.ts +5 -0
- package/templates/persona-app/src/vite-env.d.ts +3 -0
- package/templates/persona-app/template.json +13 -0
- package/templates/persona-app/tsconfig.app.json +23 -0
- package/templates/persona-app/tsconfig.json +7 -0
- package/templates/persona-app/tsconfig.node.json +21 -0
- package/templates/persona-app/vite.config.ts +18 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import "../App.css";
|
|
2
|
+
import { personaConfig } from "../persona/config";
|
|
3
|
+
|
|
4
|
+
export function ScenePage() {
|
|
5
|
+
return (
|
|
6
|
+
<main className="scene-shell">
|
|
7
|
+
<section className="persona-panel scene-panel">
|
|
8
|
+
<p className="persona-eyebrow">Scene</p>
|
|
9
|
+
<h1>{personaConfig.name}</h1>
|
|
10
|
+
<p>{personaConfig.description}</p>
|
|
11
|
+
<p>
|
|
12
|
+
This route is intentionally separate so WebSpatial scene launching has a dedicated
|
|
13
|
+
surface. Extend this page with persona-specific spatial UI.
|
|
14
|
+
</p>
|
|
15
|
+
</section>
|
|
16
|
+
</main>
|
|
17
|
+
);
|
|
18
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export const personaNotes = [
|
|
2
|
+
"Keep persona-specific logic inside src/persona/ unless Oomi explicitly instructs otherwise.",
|
|
3
|
+
"Preserve the WebSpatial router basename and scene-launch flow.",
|
|
4
|
+
"Do not remove public/oomi.runtime.json, public/oomi.health.json, or public/manifest.webmanifest.",
|
|
5
|
+
];
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "persona-app",
|
|
3
|
+
"version": "v1",
|
|
4
|
+
"displayName": "Oomi Persona App",
|
|
5
|
+
"appKind": "oomi-persona-app",
|
|
6
|
+
"defaultPort": 4789,
|
|
7
|
+
"healthPath": "/oomi.health.json",
|
|
8
|
+
"startCommand": "npm run dev",
|
|
9
|
+
"editableZones": [
|
|
10
|
+
"src/persona",
|
|
11
|
+
"persona"
|
|
12
|
+
]
|
|
13
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"jsxImportSource": "@webspatial/react-sdk",
|
|
4
|
+
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
|
|
5
|
+
"target": "ES2020",
|
|
6
|
+
"useDefineForClassFields": true,
|
|
7
|
+
"lib": ["ES2020", "DOM", "DOM.Iterable"],
|
|
8
|
+
"module": "ESNext",
|
|
9
|
+
"skipLibCheck": true,
|
|
10
|
+
"moduleResolution": "bundler",
|
|
11
|
+
"allowImportingTsExtensions": true,
|
|
12
|
+
"isolatedModules": true,
|
|
13
|
+
"moduleDetection": "force",
|
|
14
|
+
"noEmit": true,
|
|
15
|
+
"jsx": "react-jsx",
|
|
16
|
+
"strict": true,
|
|
17
|
+
"noUnusedLocals": true,
|
|
18
|
+
"noUnusedParameters": true,
|
|
19
|
+
"noFallthroughCasesInSwitch": true,
|
|
20
|
+
"noUncheckedSideEffectImports": true
|
|
21
|
+
},
|
|
22
|
+
"include": ["src"]
|
|
23
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"jsxImportSource": "@webspatial/react-sdk",
|
|
4
|
+
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
|
|
5
|
+
"target": "ES2022",
|
|
6
|
+
"lib": ["ES2023"],
|
|
7
|
+
"module": "ESNext",
|
|
8
|
+
"skipLibCheck": true,
|
|
9
|
+
"moduleResolution": "bundler",
|
|
10
|
+
"allowImportingTsExtensions": true,
|
|
11
|
+
"isolatedModules": true,
|
|
12
|
+
"moduleDetection": "force",
|
|
13
|
+
"noEmit": true,
|
|
14
|
+
"strict": true,
|
|
15
|
+
"noUnusedLocals": true,
|
|
16
|
+
"noUnusedParameters": true,
|
|
17
|
+
"noFallthroughCasesInSwitch": true,
|
|
18
|
+
"noUncheckedSideEffectImports": true
|
|
19
|
+
},
|
|
20
|
+
"include": ["vite.config.ts"]
|
|
21
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import react from "@vitejs/plugin-react";
|
|
2
|
+
import webSpatial from "@webspatial/vite-plugin";
|
|
3
|
+
import { defineConfig } from "vite";
|
|
4
|
+
import { createHtmlPlugin } from "vite-plugin-html";
|
|
5
|
+
|
|
6
|
+
export default defineConfig({
|
|
7
|
+
plugins: [
|
|
8
|
+
react(),
|
|
9
|
+
webSpatial(),
|
|
10
|
+
createHtmlPlugin({
|
|
11
|
+
inject: {
|
|
12
|
+
data: {
|
|
13
|
+
XR_ENV: process.env.XR_ENV,
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
}),
|
|
17
|
+
],
|
|
18
|
+
});
|