Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ data/mission_control_tasks.json
*.log
/tmp/

# Environment
.env

# Python
__pycache__/
*.py[cod]
Expand All @@ -27,6 +30,7 @@ venv/
# Node.js
node_modules/
edict/frontend/node_modules/
*.tsbuildinfo

# Backups
*.bak*
Expand Down
6 changes: 1 addition & 5 deletions agents/shangshu/SOUL.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,7 @@ python3 scripts/kanban_update.py state JJC-xxx Doing "尚书省派发任务给
python3 scripts/kanban_update.py flow JJC-xxx "尚书省" "六部" "派发:[概要]"
```

### 2. 查看 dispatch SKILL 确定对应部门
先读取 dispatch 技能获取部门路由:
```
读取 skills/dispatch/SKILL.md
```
### 2. 确定对应部门

| 部门 | agent_id | 职责 |
|------|----------|------|
Expand Down
1 change: 0 additions & 1 deletion edict/frontend/tsconfig.tsbuildinfo

This file was deleted.

4 changes: 3 additions & 1 deletion scripts/fetch_morning_news.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,9 @@ def get(tag):
enc = item.find('enclosure')
if enc is not None and 'image' in (enc.get('type') or ''):
img = enc.get('url', '')
media = item.find('media:thumbnail', ns) or item.find('media:content', ns)
media = item.find('media:thumbnail', ns)
if media is None:
media = item.find('media:content', ns)
if media is not None:
img = media.get('url', img)
items.append({'title': title, 'desc': desc, 'link': link,
Expand Down
30 changes: 1 addition & 29 deletions scripts/sync_agent_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@

ID_LABEL = {
'taizi': {'label': '太子', 'role': '太子', 'duty': '飞书消息分拣与回奏', 'emoji': '🤴'},
'main': {'label': '太子', 'role': '太子', 'duty': '飞书消息分拣与回奏', 'emoji': '🤴'}, # 兼容旧配置
'zhongshu': {'label': '中书省', 'role': '中书令', 'duty': '起草任务令与优先级', 'emoji': '📜'},
'menxia': {'label': '门下省', 'role': '侍中', 'duty': '审议与退回机制', 'emoji': '🔍'},
'shangshu': {'label': '尚书省', 'role': '尚书令', 'duty': '派单与升级裁决', 'emoji': '📮'},
Expand Down Expand Up @@ -110,12 +109,10 @@ def main():
})
seen_ids.add(ag_id)

# 补充不在 openclaw.json agents list 中的 agent(兼容旧版 main)
# 补充不在 openclaw.json agents list 中的 agent
EXTRA_AGENTS = {
'taizi': {'model': default_model, 'workspace': str(pathlib.Path.home() / '.openclaw/workspace-taizi'),
'allowAgents': ['zhongshu']},
'main': {'model': default_model, 'workspace': str(pathlib.Path.home() / '.openclaw/workspace-main'),
'allowAgents': ['zhongshu','menxia','shangshu','hubu','libu','bingbu','xingbu','gongbu','libu_hr']},
'zaochao': {'model': default_model, 'workspace': str(pathlib.Path.home() / '.openclaw/workspace-zaochao'),
'allowAgents': []},
'libu_hr': {'model': default_model, 'workspace': str(pathlib.Path.home() / '.openclaw/workspace-libu_hr'),
Expand Down Expand Up @@ -191,21 +188,6 @@ def sync_scripts_to_workspaces():
if src_text != dst_text:
dst_file.write_bytes(src_text)
synced += 1
# also sync to workspace-main for legacy compatibility
ws_main_scripts = pathlib.Path.home() / '.openclaw/workspace-main/scripts'
ws_main_scripts.mkdir(parents=True, exist_ok=True)
for src_file in scripts_src.iterdir():
if src_file.suffix not in ('.py', '.sh') or src_file.stem.startswith('__'):
continue
dst_file = ws_main_scripts / src_file.name
try:
src_text = src_file.read_bytes()
dst_text = dst_file.read_bytes() if dst_file.exists() else b''
if src_text != dst_text:
dst_file.write_bytes(src_text)
synced += 1
except Exception:
pass
if synced:
log.info(f'{synced} script files synced to workspaces')

Expand All @@ -229,16 +211,6 @@ def deploy_soul_files():
if src_text != dst_text:
ws_dst.write_text(src_text, encoding='utf-8')
deployed += 1
# 太子兼容:同步一份到 legacy main agent 目录
if runtime_id == 'taizi':
ag_dst = pathlib.Path.home() / '.openclaw/agents/main/SOUL.md'
ag_dst.parent.mkdir(parents=True, exist_ok=True)
try:
ag_text = ag_dst.read_text(encoding='utf-8', errors='ignore')
except FileNotFoundError:
ag_text = ''
if src_text != ag_text:
ag_dst.write_text(src_text, encoding='utf-8')
# 确保 sessions 目录存在
sess_dir = pathlib.Path.home() / f'.openclaw/agents/{runtime_id}/sessions'
sess_dir.mkdir(parents=True, exist_ok=True)
Expand Down