用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/10CG/aether-plugin --skill aether-doctor命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Aether 集群集成规范速查 —— 四域 investigation-first hub。消费方项目在 **Aether 集群**上 手写 dev env / 测试配置 / 连接串时的规范速查点 (#185→#186→#241 同根因三次复发的知识层加固)。 **适用前提: 问题落在 Aether 集群 / Nomad / Consul / 内网 192.168.69.x 语境内。** 回答: "集群内服务连接该用 consul 名还是 IP"、"集群里的 postgres / redis / 内网服务怎么连"、 "集群内服务的 DATABASE_URL / REDIS_URL 该怎么写"、"连集群里的库该用 IP 还是 consul 名"、 "host volume 该注册几个节点 / volume 规范"、"Nomad 上 stateful 服务该怎么配 / 有状态服务 模板规范"、"集群里应用的 DB 密码 / 连接串密码该存哪"、"应用 secret 该存哪"、 "连接串密码能不能硬编码进 HCL"。 **不适用 (缺少集群语境就让位, 不要触发本 skill)**: 与 Aether 集群无关的通用数据库 / 连接串问题 —— 本地或第三方托管 DB 的驱动与客户端用法、连接参数排错、SQL 调优、ORM 配置。 这类问句里出现 "数据库怎么连" / "连接串" / "DATABASE_URL" 等字样**不构成触发条件**: 本 skill 的触发靠的是集群语境, 不是这些裸词。
Forgejo PAT (Personal Access Token) 凭据轮换工具 (Tier 1 / Aether #45)。 自动化 list / rotate / resume / cleanup 完整闭环, 含 atomic rollback + journal-based interrupt recovery + 24h grace + token fingerprint guard。 使用场景: "轮换 PAT", "rotate token", "PAT 即将过期", "doctor pat_age 报警", "registry-auth", "Forgejo token 过期", "凭据轮换", "renew PAT", "credential rotation", "rotation drill", "cleanup _OLD"
Aether 环境下 Forgejo 凭据的决策 / 诊断 / 轮换指南。回答"该用哪个 token"、 拆解人机两账号模型 (simonfish 人 / 10cg-ci-bot 机)、辨别 CF Access 与 forgejo PAT 两个凭据平面、诊断误导性 403 ("Only signed in user")、安全轮换 (先枚举全部 store)、 凭据卫生红线。深度内容指向 docs/guides/forgejo-token-map.md + .aether/pat-inventory.yaml。 使用场景: "该用哪个 forgejo token"、"which forgejo token"、"forgejo 401"、 "forgejo 403"、"Only signed in user"、"docker login forgejo"、"CF Access 403"、 "token rotation"、"凭据轮换"、"FORGEJO_TOKEN"、"forgejo credential"、 "人机账号"、"registry pull 401"、"docker push unauthorized"
基于 SOC 职业分类
正在显示 SKILL.md
| name | aether-doctor |
| description | Aether 环境诊断工具。检查 CLI、配置、集群连接、SSH、CI/CD 配置等环境状态,更新配置缓存。 使用场景:"诊断环境"、"检查配置"、"环境有问题"、"SSH 连接失败"、"CI 配置错误"、"首次使用" |
| argument-hint | [--ssh|--cluster|--ci|--refresh] [--fix] |
| disable-model-invocation | false |
| user-invocable | true |
| allowed-tools | Bash, Read, Write, AskUserQuestion |
| dependencies | {"cli":{"required":false,"role":"此 Skill 负责安装和检测 CLI,不是依赖方","install_capability":true}} |
版本: 2.1.0 | 优先级: P0
/aether:doctor # 完整诊断
/aether:doctor --ssh # 仅 SSH 检查
/aether:doctor --cluster # 仅集群连接
/aether:doctor --fix # 自动修复问题
| 项目 | 检查内容 | 修复建议 |
|---|---|---|
| aether CLI | 安装状态、版本 | 自动安装 |
| 配置文件 | 格式、地址有效性 | 引导配置 |
| 集群连接 | Nomad/Consul API | 网络检查 |
| SSH 配置 | 密钥、权限、连接 | 提供命令 |
| CI/CD | Secrets 配置 | 修复建议 |
if [ -f "./.aether/config.yaml" ]; then
CACHE_FILE="./.aether/environment.yaml"
else
CACHE_FILE="$HOME/.aether/environment.yaml"
fi
检测逻辑:
command -v aether → PATH 中~/.aether/aether → 用户安装~/.aether/aether.exe → Windows如果未安装或版本过低:
# 检查配置
cat ~/.aether/config.yaml 2>/dev/null
cat ./.aether/config.yaml 2>/dev/null
# 配置优先级
# 环境变量 > 项目配置 > 全局配置
详见 集群拓扑和验证
详见 SSH 诊断
详见 CI 配置检查
详见 环境缓存格式
| 主题 | 文档 |
|---|---|
| CLI 安装流程 | cli-installation.md |
| 集群拓扑和验证 | cluster-validation.md |
| SSH 诊断 | ssh-diagnostics.md |
| CI 配置检查 | ci-configuration.md |
| 环境缓存格式 | environment-cache.md |
| 输出示例 | output-examples.md |
# 获取集群信息
SERVERS=$(yq '.cluster.servers[] | .ip' ./.aether/environment.yaml)
LEADER=$(yq '.cluster.current_leader' ./.aether/environment.yaml)
HEAVY_NODES=$(yq '.cluster.clients[] | select(.class == "heavy_workload") | .ip' ./.aether/environment.yaml)
| 错误类型 | 建议 |
|---|---|
command not found | 运行 /aether:doctor 安装 CLI |
connection refused | 运行 /aether:doctor --cluster |
permission denied (SSH) | 运行 /aether:doctor --ssh |
# 检查 CLI
aether version
# 检查集群
curl -s http://192.168.69.70:4646/v1/status/leader
curl -s http://192.168.69.70:4646/v1/nodes
# 测试 SSH
ssh -o ConnectTimeout=5 root@192.168.69.80 "hostname"
Skill 版本: 2.0.0 最后更新: 2026-03-12 维护者: 10CG Infrastructure Team