| name | satellite |
| description | Weekly Satellite MetaSkill for OpenClaw. Every 168 hours, read recent OpenClaw memory, discover repeated workflows, propose Skill creation or upgrade, propose cognition document updates, and produce an observation report for user review. |
| metadata | {"openclaw":{"emoji":"🛰️","recommended_interval_hours":168,"default_command":"python3 scripts/run_satellite.py run --hours 168 --source markdown --memory \"$OPENCLAW_WORKSPACE/memory\" --skills-dir \"$OPENCLAW_WORKSPACE/skills\" --identity \"$OPENCLAW_WORKSPACE/IDENTITY.md\" -v","safety":["Do not silently install generated Skills.","Do not silently edit cognition documents.","Ask the user before applying staged changes."]}} |
Satellite
Satellite 是 OpenClaw 的每周观测元技能。OpenClaw 可以每 168 小时运行一次它,用最近一周真实用户历史来判断:
- 是否存在值得自动化的重复工作流;
- 是否应该生成或升级 Skill;
- 是否应该提出
IDENTITY.md、SOUL.md、AGENTS.md、USER.md 的修改建议;
- 本轮观察到了什么、建议是什么、哪些内容仍需用户确认。
Satellite 默认应当先生成候选和报告,不应静默安装 Skill,也不应静默改写自我认知文档。
放到哪里
把整个 Satellite 目录复制到 OpenClaw 当前 workspace 的 skills 目录:
OPENCLAW_WORKSPACE="$HOME/.openclaw/workspace-hausmeister"
mkdir -p "$OPENCLAW_WORKSPACE/skills"
cp -R /Users/sorcerer/AI/取完队名就享福了/20260630-XHAUS-main/Satellite "$OPENCLAW_WORKSPACE/skills/Satellite"
复制后目录应类似:
$OPENCLAW_WORKSPACE/
├── memory/
├── IDENTITY.md
├── SOUL.md
├── AGENTS.md
├── USER.md
└── skills/
└── Satellite/
├── SKILL.md
└── meta_skill/
memory 路径放到哪里
Satellite 通过命令参数读取用户历史,不需要把 memory 文件搬进 Satellite。
推荐把 OpenClaw 的真实 memory 目录作为 --memory 传入:
--memory "$OPENCLAW_WORKSPACE/memory"
如果你的 memory 在别处,直接改成实际路径:
--memory "/absolute/path/to/openclaw/memory"
对应代码:
- 默认 memory 路径:
meta_skill/log_sniffer.py 的 DEFAULT_MEMORY_DIR
- CLI 参数:
scripts/run_satellite.py run 的 --memory
- 实际读取逻辑:
meta_skill/log_sniffer.py 的 fetch_recent_logs_markdown
人为直接启动命令
在 OpenClaw workspace 里手动运行:
OPENCLAW_WORKSPACE="$HOME/.openclaw/workspace-hausmeister"
cd "$OPENCLAW_WORKSPACE/skills/Satellite"
python3 scripts/run_satellite.py run \
--hours 168 \
--source markdown \
--memory "$OPENCLAW_WORKSPACE/memory" \
--skills-dir "$OPENCLAW_WORKSPACE/skills" \
--identity "$OPENCLAW_WORKSPACE/IDENTITY.md" \
-v
如果用 DeepSeek:
export DEEPSEEK_API_KEY="sk-..."
如果通过 OpenClaw Gateway:
export SATELLITE_LLM_PROVIDER="openclaw"
export OPENCLAW_GATEWAY_TOKEN="..."
OpenClaw 自动周期也应使用同一条命令,并把运行间隔设为 168 小时。
生成内容在哪里
1. 新生成的 Skill
在用户确认前,生成到 Satellite 的暂存目录:
$OPENCLAW_WORKSPACE/.satellite/runs/<run-id>/generated-skill/<skill-name>/
控制方式:
- 命令行:
scripts/run_satellite.py run --staging <path>
- 默认值代码:
config/models.py 的 PathConfig.generated_skill_staging_dir(run_id)
- 调用位置:
meta_skill/cycle_runner.py 的 run_satellite_cycle
用户确认后,Skill 会移动到:
$OPENCLAW_WORKSPACE/skills/<skill-name>/
控制方式:
- 命令行:
scripts/run_satellite.py run --skills-dir <path>
- 默认值代码:
meta_skill/cycle_runner.py 的 LIVE_SKILLS_DIR
- 挂载逻辑:
meta_skill/cycle_runner.py 的 _mount_skill
2. 新生成或修改的自我认知文档
认知修改建议会先暂存为:
$OPENCLAW_WORKSPACE/.satellite/runs/<run-id>/generated-skill/identity_patches.json
用户确认后,按 target 写入:
$OPENCLAW_WORKSPACE/IDENTITY.md
$OPENCLAW_WORKSPACE/SOUL.md
$OPENCLAW_WORKSPACE/AGENTS.md
$OPENCLAW_WORKSPACE/USER.md
控制方式:
- 命令行:
scripts/run_satellite.py run --identity "$OPENCLAW_WORKSPACE/IDENTITY.md"
- 注意:
--identity 控制的是身份文件所在目录,Satellite 会使用它的父目录写入四个文档。
- 可写目标列表:
meta_skill/cycle_runner.py 的 TARGET_FILES
- 应用逻辑:
meta_skill/cycle_runner.py 的 _apply_identity_updates
3. 最终观测报告
当前主入口会把本轮观测报告打印到终端,包括:
- 是否发现可生成或升级的 Skill;
- Skill 名称与用途;
- 暂存文件;
- 认知文档修改建议;
- 用户下一步确认动作。
如果使用结构化报告模块,报告默认写到:
$OPENCLAW_WORKSPACE/.satellite/reports/json/
$OPENCLAW_WORKSPACE/.satellite/reports/markdown/
$OPENCLAW_WORKSPACE/skills/Satellite/reports/json/ # mirror
$OPENCLAW_WORKSPACE/skills/Satellite/reports/markdown/ # mirror
控制方式:
- 环境变量:
SATELLITE_EXPLANATION_REPORT_DIR
- 默认值代码:
meta_skill/reporting/report_store.py 的 default_report_root
- 报告写入逻辑:
meta_skill/reporting/report_store.py 的 ReportStore.save
评估报告默认写到:
$OPENCLAW_WORKSPACE/skills/Satellite/meta_skill/.evaluation_reports/
控制方式:
- 环境变量:
SATELLITE_EVALUATION_REPORT_DIR
- 默认值代码:
meta_skill/evaluation/evaluation_report.py 的 default_report_root
Forge 工作区默认写到:
$OPENCLAW_WORKSPACE/skills/Satellite/meta_skill/.forge_workspace/
控制方式:
- 环境变量:
SATELLITE_FORGE_WORKSPACE
- 默认值代码:
meta_skill/forge/forge_orchestrator.py 的 default_workspace_root
Skill Registry 默认写到:
$OPENCLAW_WORKSPACE/skills/Satellite/meta_skill/.skill_registry/
控制方式:
- 环境变量:
SATELLITE_SKILL_REGISTRY_ROOT
- 环境变量:
SATELLITE_SKILL_REGISTRY_PATH
- 默认值代码:
meta_skill/registry/skill_registry.py
运行原则
- 每
168 小时运行一次即可,不要过于频繁。
- 默认读取最近
168 小时历史。
- 生成 Skill 和修改自我认知文档都必须先进入暂存或报告。
- 用户确认前,不应安装新 Skill。
- 用户确认前,不应改写
IDENTITY.md、SOUL.md、AGENTS.md、USER.md。
- 一次性任务不应直接生成 Skill。