- scan_skills() 支持两种格式: .yaml 文件 和 目录/SKILL.md - 解析 SKILL.md 的 YAML frontmatter 提取 name/description - 自动扫描 scripts/ 子目录的 .py 脚本 - skill_exec 支持 asyncio 子进程执行脚本 - 新增示例 OpenClaw 技能: skills/time-tool/
35 lines
896 B
Python
35 lines
896 B
Python
#!/usr/bin/env python3
|
|
"""时间信息脚本 - OpenClaw skill 示例"""
|
|
import sys
|
|
from datetime import datetime
|
|
|
|
try:
|
|
import pytz
|
|
HAS_PYTZ = True
|
|
except ImportError:
|
|
HAS_PYTZ = False
|
|
|
|
def main():
|
|
tz_name = sys.argv[1] if len(sys.argv) > 1 else "Asia/Shanghai"
|
|
|
|
if HAS_PYTZ:
|
|
try:
|
|
tz = pytz.timezone(tz_name)
|
|
now = datetime.now(tz)
|
|
except Exception:
|
|
now = datetime.now()
|
|
tz_name = "本地时间"
|
|
else:
|
|
now = datetime.now()
|
|
tz_name = "本地时间"
|
|
|
|
weekdays = ["星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"]
|
|
|
|
print(f"时区: {tz_name}")
|
|
print(f"日期: {now.strftime('%Y年%m月%d日')}")
|
|
print(f"星期: {weekdays[now.weekday()]}")
|
|
print(f"时间: {now.strftime('%H:%M:%S')}")
|
|
|
|
if __name__ == "__main__":
|
|
main()
|