重新调整模板
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
"""兄弟技能 CLI 调用模板。
|
||||
"""兄弟技能 CLI 调用工具。
|
||||
|
||||
通用工具:通过子进程调用同级其他 skill 的 main.py,并解析 JSON 输出。
|
||||
具体调用哪些兄弟技能,由具体业务 skill 决定(在 task_service.py 中按需 import 调用)。
|
||||
通过子进程调用同级其他 skill 的 main.py,并解析 JSON 输出。
|
||||
具体调用哪些兄弟技能,由复制后的业务 skill 在 service 层按需决定。
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
@@ -50,16 +50,8 @@ def call_sibling_json(skill_slug: str, args: List[str]) -> Optional[Dict[str, An
|
||||
def get_sibling_main_path(skill_slug: str) -> str:
|
||||
"""获取兄弟技能的 main.py 绝对路径。
|
||||
|
||||
使用示例(在你的 task_service.py 中):
|
||||
使用示例(在 task_service.py 中):
|
||||
from service.sibling_bridge import get_sibling_main_path, call_sibling_json
|
||||
# 调用名为 account-manager 的兄弟技能:
|
||||
result = call_sibling_json("account-manager", ["list", "--limit", "10"])
|
||||
"""
|
||||
return os.path.join(get_skills_root(), skill_slug, "scripts", "main.py")
|
||||
|
||||
|
||||
# ============================================================
|
||||
# 复制本模板后,按需在你自己的 task_service.py 中调用上面的工具。
|
||||
# 不要在本文件中硬编码具体兄弟技能函数(如 get_account_manager_main_path),
|
||||
# 那是发布类技能的特定需求,不属于通用模板。
|
||||
# ============================================================
|
||||
|
||||
@@ -7,12 +7,14 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import json
|
||||
import sys
|
||||
from typing import Optional
|
||||
|
||||
from jiangchang_skill_core import collect_runtime_diagnostics, format_runtime_health_lines
|
||||
|
||||
from db import task_logs_repository as tlr
|
||||
from service.entitlement_service import check_entitlement
|
||||
from util.constants import SKILL_SLUG, SKILL_VERSION
|
||||
from util.constants import PLATFORM_KIT_MIN_VERSION, SKILL_SLUG, SKILL_VERSION
|
||||
from util.runtime_paths import get_skill_root
|
||||
from util.timeutil import unix_to_iso
|
||||
|
||||
|
||||
@@ -89,7 +91,16 @@ def cmd_log_get(log_id: str) -> int:
|
||||
|
||||
|
||||
def cmd_health() -> int:
|
||||
return 0 if sys.version_info >= (3, 10) else 1
|
||||
runtime = collect_runtime_diagnostics(
|
||||
skill_slug=SKILL_SLUG,
|
||||
platform_kit_min_version=PLATFORM_KIT_MIN_VERSION,
|
||||
skill_root=get_skill_root(),
|
||||
)
|
||||
status = "failed" if runtime.has_fatal_issues else "ok"
|
||||
print(f"{SKILL_SLUG} health: {status}")
|
||||
for line in format_runtime_health_lines(runtime):
|
||||
print(line)
|
||||
return 1 if runtime.has_fatal_issues else 0
|
||||
|
||||
|
||||
def cmd_version() -> int:
|
||||
|
||||
Reference in New Issue
Block a user