Files
gaokao-volunteer-system/docs/CLI_API_MAPPING.md
Hermes Agent 78a9cb6fd9
Some checks failed
CI / pytest (Python 3.10) (push) Has been cancelled
CI / pytest (Python 3.11) (push) Has been cancelled
CI / pytest (Python 3.12) (push) Has been cancelled
docs(planning): add 2026-06-16 realignment audit and rule/cli/major design
2026-06-16 17:35:09 +08:00

7.5 KiB

CLI_API_MAPPING

最后更新: 2026-06-16 真相源: 本文件是"CLI / HTTP / Skill / 内部 import"四层调用关系的入口索引。 设计上下文: docs/DESIGN_RULES_TRUSTED_CLI_2026-06-16.md §5-§7


1. 四层关系

┌──────────────────────────────────────────────────────────────┐
│ 入口层                                                        │
│  - gaokao-cli (CLI)                                          │
│  - admin FastAPI (HTTP)                                      │
│  - Hermes skill tool (Agent)                                 │
│  - 旧 scripts/* (compatibility, 3-6 个月内 alias)            │
└────────────────┬─────────────────────────────────────────────┘
                 ▼
┌──────────────────────────────────────────────────────────────┐
│ Transport 层 (gaokato/transport/)                            │
│  - cli.py      — argparse/typer 入口                         │
│  - http_client — admin 内部调用封装                           │
│  - skill_adapter — 给 hermes skill 用的稳定接口              │
└────────────────┬─────────────────────────────────────────────┘
                 ▼
┌──────────────────────────────────────────────────────────────┐
│ Application Services 层 (gaokato/services/)                  │
│  - audit.py, order.py, plan.py, report.py,                   │
│    payment.py, majors.py, rules.py, delivery.py             │
└────────────────┬─────────────────────────────────────────────┘
                 ▼
┌──────────────────────────────────────────────────────────────┐
│ Domain 层(现有 data/ 域)                                     │
│  data/rules, data/orders, data/payments, data/majors_catalog,│
│  data/crowd_db, data/notifications                            │
└──────────────────────────────────────────────────────────────┘

2. CLI 入口对照

旧入口 新 CLI 子命令 服务层
scripts/gaokao-checker gaokao-cli audit run gaokato.services.audit
scripts/gaokao-audit gaokao-cli audit run 同上
scripts/gaokao-order-manager gaokao-cli order {create,get,list,...} gaokato.services.order
scripts/gaokao-shortlink gaokao-cli share (TBD) (新增)
scripts/gaokao-data-trace gaokao-cli majors list-changes gaokato.services.majors
scripts/gaokao-channel-fallback gaokao-cli channel fallback (新增)
scripts/gaokao-delivery-dispatch.py gaokao-cli delivery dispatch gaokato.services.delivery
scripts/gaokao-delivery-watchdog.py gaokao-cli delivery watchdog 同上
scripts/gaokao-retention-cleanup.py gaokao-cli retention cleanup (新增)
scripts/payment_provider_doctor.py gaokao-cli payment doctor gaokato.services.payment
scripts/backup_snapshot.sh gaokao-cli backup snapshot (新增)
scripts/backup_verify.sh gaokao-cli backup verify (新增)

3. HTTP / admin 路由对照

现有 admin 路由 服务层
admin/routes/orders.py gaokato.services.order.*
admin/routes/cases.py gaokato.services.case.* (待抽)
admin/routes/users.py gaokato.services.user.* (待抽)
admin/routes/stats.py gaokato.services.stats.* (待抽)
admin/routes/notifications.py gaokato.services.notification.* (待抽)
admin/routes/payments.py (隐含在 web_public) gaokato.services.payment.*
admin/routes/web_public.py 直接调 gaokato.services.*

4. Hermes skill 调用对照

Skill 改前 改后
gaokao-counselor-long import skills.gaokao-audit.scripts.audit_service from gaokato.services import auditgaokao-cli audit run ...
gaokao-audit 自包含脚本 gaokato.services.audit.audit_plan
gaokao-spec-checker 自包含 regex gaokato.services.audit 薄 wrapper
gaokao-college-advisor prompt 内部 gaokato.services.plan.generate
zhangxuefeng-skillset prompt 内部 不变(只借用表达风格)

5. 退出码与输出规范

退出码 含义
0 成功
1 业务错误(校验不通过 / 查询无结果)
2 调用错误(参数 / IO / 网络)
3 不可恢复(权限 / 数据完整性)

JSON 错误:

{
  "ok": false,
  "code": "E05099",
  "message": "...",
  "details": {}
}

6. 智能体能力注册表

gaokato/capabilities/registry.py 列出全部能力。每个能力包含:

  • name
  • description
  • cli 子命令路径
  • schema(参数 JSON schema)
  • risk(read / write / destructive)
  • roles(可调用角色)
  • examples

7. Phase 4 必须收口

  • 全部 25+ 子命令上线
  • 旧 scripts/* 全部 alias + deprecation warning
  • gaokao-cli doctor 自检全绿
  • gaokato/capabilities/registry.py 全集登记

下一阶段: Phase 4-5 实施,见 docs/DESIGN_RULES_TRUSTED_CLI_2026-06-16.md §11