7.5 KiB
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 audit 或 gaokao-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 列出全部能力。每个能力包含:
namedescriptioncli子命令路径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