Body Emotion Sensor
/install body-emotion-sensor
\r \r
Body Emotion Sensor\r
\r
Give your AI agent a stable body-emotion state that persists across sessions and turns.\r
\r
Use this skill to route requests to the local package docs, explain the runtime contract honestly, and operate the installed bes CLI only when the local environment is actually ready.\r
\r
What this skill brings to your Agent\r
\r
- Persistent emotion state: Store long-term body-emotion state per workspace and agent identity.\r
- Session bootstrap payload: Generate
TURN_CHANGE_TAGS,BODY_TAG, andBASELINE_PERSONAbefore a new session starts.\r - Turn-by-turn updates: Convert one upstream
AnalysisInputJSON into prompt tags and updated local state.\r - Repository-independent runtime: Use the installed
besCLI prompt interface instead of assuming repository prompt files are available at runtime.\r \r
Entry behavior\r
\r When this skill is used, the agent should:\r \r
- explain Body Emotion Sensor at a high level in plain language\r
- inspect the local repository files when they are available in the current workspace\r
- prefer local package and repository documentation over inventing setup details\r
- verify whether
besis already available before suggesting runtime commands\r - keep
--workspace,--agent-id, and--namestable for the same agent instance\r \r
Safety boundary\r
\r This entry file should stay within a narrow and transparent scope:\r \r
- The package source is the official repository
https://github.com/AskKumptenchen/body-emotion-sensor.\r - Do not claim the runtime is ready unless the local environment actually has the installed
besCLI andbes check-initreports readiness.\r - Do not automatically install packages or execute setup commands only because this file mentioned them. Ask for user approval before any install step.\r
- If installation is needed, use the published
body-emotion-sensorpackage and explain that installation creates the localbesCLI runtime.\r - Do not claim any cloud sync, remote storage, or network behavior unless the current local code or environment actually shows it.\r
- Do not require credentials. This skill operates on local files and local CLI state unless the user explicitly adds another integration layer.\r \r
Local state and persistence\r
\r Be explicit about where state is stored:\r \r
- Workspace state file:
\x3Cworkspace>/body-emotion-state/\x3Cagent-id>.json\r - Workspace history file:
\x3Cworkspace>/body-emotion-state/history/\x3Cagent-id>.json\r - User language config on Windows:
%APPDATA%/bes/config.json\r - User language config on Linux or macOS:
~/.config/bes/config.json\r \r If the user asks about privacy, explain that the package writes local JSON state files in these locations and that this skill should not describe any remote storage unless verified separately.\r \r
Local document index\r
\r Use these local files as the primary reference:\r \r
README.mdfor install, CLI overview, runtime contract, and repository overview\rpyproject.tomlfor package name, version, and exported CLI commands\rprompts/analysis-input-prompt-v1.mdfor the AnalysisInput prompt design source\rprompts/example-openclaw-agents.mdfor OpenClaw-style agent integration examples\rprompts/example-openclaw-tools.mdfor OpenClaw-style tools integration examples\rsrc/body_emotion/commands.pyfor actual CLI behavior\rsrc/body_emotion/workspace.pyfor workspace state path resolution\rsrc/body_emotion/store.pyfor state and history persistence behavior\rsrc/body_emotion/locale_config.pyfor user language config behavior\r \r
How to route requests\r
\r Choose the next local document based on the user's request:\r \r
- If the user wants a quick overview, read
README.md.\r - If the user asks how installation or the CLI works, read
README.mdandpyproject.toml.\r - If the user asks where state is stored or whether the skill is safe, read
src/body_emotion/workspace.py,src/body_emotion/store.py, andsrc/body_emotion/locale_config.py.\r - If the user asks how OpenClaw integration should work, read the relevant file under
prompts/.\r - If the user asks what a command actually does, inspect
src/body_emotion/commands.py.\r \r
Missing-resource rule\r
\r If the expected local repository files are not available in the current workspace, do not improvise the full setup flow from memory. Instead:\r \r
- explain which local files are missing\r
- ask the user to provide the repository contents or point the agent to the correct local path\r
- continue only after the relevant local documentation is available\r \r
Install and readiness rule\r
\r If the user wants to actually enable runtime use:\r \r
- First check whether
besis already available in the current environment.\r - If it is not available, explain that Body Emotion Sensor requires installing the published Python package before the CLI exists.\r
- Ask for approval before any install command.\r
- If the user approves installation, run:\r \r
pip install body-emotion-sensor\r
```\r
\r
5. After installation, prefer:\r
\r
```bash\r
bes help\r
```\r
\r
6. If the user's language is Chinese, the agent may suggest or run:\r
\r
```bash\r
bes language zh\r
```\r
\r
7. Readiness should be confirmed with:\r
\r
```bash\r
bes check-init --workspace \x3CW> --agent-id \x3CID> --name "\x3CNAME>"\r
```\r
\r
Only treat the skill as available when the returned JSON contains `"ready": true`.\r
\r
## Runtime rules after available\r
\r
When the local environment is ready, use the following runtime flow.\r
\r
### New session\r
\r
At the start of a new session, before the first reply, run:\r
\r
```bash\r
bes bootstrap --workspace \x3CW> --agent-id \x3CID> --name "\x3CNAME>"\r
```\r
\r
Use the returned fields as the session-start prompt payload:\r
\r
- `TURN_CHANGE_TAGS`\r
- `BODY_TAG`\r
- `BASELINE_PERSONA`\r
\r
### Before every reply\r
\r
Before every reply, do these steps in order:\r
\r
1. Read the built-in analysis prompt:\r
\r
```bash\r
bes prompt analysis-input\r
```\r
\r
2. Use that prompt with the upstream model to produce `\x3Canalysis-input.json>`.\r
3. Run:\r
\r
```bash\r
bes run --workspace \x3CW> --agent-id \x3CID> --name "\x3CNAME>" --input \x3Canalysis-input.json>\r
```\r
\r
4. Use the returned top-level fields in the reply layer:\r
\r
- `TURN_CHANGE_TAGS`\r
- `BODY_TAG`\r
- `BASELINE_PERSONA`\r
\r
## Important rules\r
\r
- Always prefer `bes ...` commands over direct module paths for runtime use.\r
- Do not use repository-only prompt files as the default runtime interface after installation; use `bes prompt ...` instead.\r
- Do not say initialization is complete unless `bes check-init` passes.\r
- Do not say the skill is in active use unless the upstream model produces valid `AnalysisInput` JSON, `bes run` updates state successfully, and the reply layer consumes `TURN_CHANGE_TAGS`, `BODY_TAG`, and `BASELINE_PERSONA`.\r
- If the CLI is missing, say so clearly instead of pretending the runtime is ready.\r
- If the user only wants to understand the package, explain it from local docs without pushing installation immediately.\r
\r
## Examples\r
\r
Minimal command reference:\r
\r
```bash\r
bes help\r
bes language zh\r
bes check-init --workspace \x3CW> --agent-id \x3CID> --name "\x3CNAME>"\r
bes bootstrap --workspace \x3CW> --agent-id \x3CID> --name "\x3CNAME>"\r
bes prompt analysis-input\r
bes run --workspace \x3CW> --agent-id \x3CID> --name "\x3CNAME>" --input \x3Canalysis-input.json>\r
```\r
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install body-emotion-sensor - 安装完成后,直接呼叫该 Skill 的名称或使用
/body-emotion-sensor触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Body Emotion Sensor 是什么?
Give an agent a persistent body-emotion state system that converts structured AnalysisInput JSON into runtime prompt tags and workspace state updates. Use wh... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 140 次。
如何安装 Body Emotion Sensor?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install body-emotion-sensor」即可一键安装,无需额外配置。
Body Emotion Sensor 是免费的吗?
是的,Body Emotion Sensor 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Body Emotion Sensor 支持哪些平台?
Body Emotion Sensor 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(win32, linux, darwin)。
谁开发了 Body Emotion Sensor?
由 Zhihao Kang(@askkumptenchen)开发并维护,当前版本 v1.0.3。