docs: 重写 README 并加入 uv 示例与端到端自检
- README 重排为快速开始、执行语义、输入校验、API 参考与故障排查 - 新增 samples/python-task:uv 管理的演示任务 - 新增 tools/verify.py:14 项 API 全链路自检
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
"""TaskPilot 演示任务。
|
||||
|
||||
在 TaskPilot 里把「项目工作目录」指向本目录、解释器填 ``python.exe``、脚本填
|
||||
``main.py``,后端会自动关联同级的 ``.venv`` 并以虚拟环境解释器运行。
|
||||
|
||||
常用参数:
|
||||
--lines N 输出 N 行中文(默认 3)
|
||||
--sleep N 执行前等待 N 秒,用于验证超时与取消
|
||||
--fail 以退出码 3 结束,用于验证失败状态
|
||||
--append PATH 把一行结果追加到指定文件,用于验证副作用
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
from datetime import datetime, timezone
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
def main() -> int:
|
||||
parser = argparse.ArgumentParser(description="TaskPilot python demo task")
|
||||
parser.add_argument("--lines", type=int, default=3)
|
||||
parser.add_argument("--sleep", type=float, default=0.0)
|
||||
parser.add_argument("--fail", action="store_true")
|
||||
parser.add_argument("--append", type=Path)
|
||||
args = parser.parse_args()
|
||||
|
||||
started = datetime.now(timezone.utc).isoformat(timespec="seconds")
|
||||
print(f"[demo] 启动时间 {started}")
|
||||
print(f"[demo] 解释器 {sys.executable}")
|
||||
print(f"[demo] VIRTUAL_ENV {os.environ.get('VIRTUAL_ENV', '<未设置>')}")
|
||||
print(f"[demo] 工作目录 {Path.cwd()}")
|
||||
print(f"[demo] 参数 lines={args.lines} sleep={args.sleep} fail={args.fail}")
|
||||
|
||||
for index in range(args.lines):
|
||||
print(f"[demo] 第 {index + 1} 行:中文输出与勾选 √")
|
||||
|
||||
if args.append is not None:
|
||||
args.append.parent.mkdir(parents=True, exist_ok=True)
|
||||
with args.append.open("a", encoding="utf-8") as handle:
|
||||
handle.write(f"{started} ok\n")
|
||||
print(f"[demo] 已追加写入 {args.append}")
|
||||
|
||||
if args.sleep > 0:
|
||||
print(f"[demo] 开始等待 {args.sleep} 秒", flush=True)
|
||||
time.sleep(args.sleep)
|
||||
|
||||
if args.fail:
|
||||
print("[demo] 按要求返回失败", file=sys.stderr)
|
||||
return 3
|
||||
|
||||
print("[demo] 完成")
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
raise SystemExit(main())
|
||||
@@ -0,0 +1,6 @@
|
||||
[project]
|
||||
name = "taskpilot-python-demo"
|
||||
version = "0.1.0"
|
||||
description = "TaskPilot 演示任务:验证虚拟环境、中文输出与退出码"
|
||||
requires-python = ">=3.10"
|
||||
dependencies = []
|
||||
Reference in New Issue
Block a user