olares-shared 是 olares-cli 技能套件的前置入口,本身不是独立工具,而是在调用具体运行时技能前需先阅读的共享规则。其用途包括:判断当前任务应由哪个领域技能处理,理解任务所依赖的 Olares 平台模型,以及决定何时需要停下处理登录。
主要能力与内容:一是技能套件地图,说明哪个技能负责哪类任务,以及在 olares-cli 不在 PATH 时如何安装;当任务尚未路由到具体技能时读取。二是活动 profile 模型:一个 profile 对应一个 Olares 实例和一个身份,所有基于 profile 的命令都作用于该选择,没有逐命令的 --profile 覆盖。相关命令包括 olares-cli profile list、whoami、use <name|->、login、import、remove <name>,可用 olares-cli profile --help 查看参数。三是机器可读输出约定:各 profile 命令统一使用 -o json(--json 等价),失败时在 stderr 返回 {"error":{"code","message","retryable","action"}},且 stderr 不含其他内容,便于整体解析。error.code 中 auth_no_profile、auth_not_logged_in、auth_token_expired、auth_token_invalidated、timeout 等值得分支处理,其余多为 unclassified;retryable 与 action 仅在失败信息知晓时出现,缺失表示未知而非否。
平台入口概念涵盖用户空间存储、uid/gid 1000、受保护的 Home 目录、应用与命名空间网络、系统中间件及 Olares 版本语义,涉及文件、chart、集群或设置任务时阅读。应用状态机涵盖生命周期转换、允许操作、后端超时、串行下载、运行语义与不可靠进度,用于市场操作或运行时诊断。
认证判断规则:默认继续执行,已登录和已过期可继续,过期令牌通常在下次请求时刷新;never 和 invalidated 则停止并执行 profile login 或 profile import;未知或无法解析的令牌应直接运行业务命令并根据类型化错误反应。不要为每个命令做预检;CLI 会对认证拒绝自动刷新并重试一次。仅当 CLI 明确表示凭据缺失或失效,或在持续 401/459 后打印登录动作时才停下登录;403、网络错误或 5xx 不是登录信号,也不应围绕认证错误构建重试循环。
安全约定:禁止把密码放入命令行参数,应使用交互式提示或 --password-stdin;禁止打印访问或刷新令牌,导入源应来自密钥环境变量或密钥管理器;在登录、替换凭据、目标不明确或超出授权范围的操作前需先询问。在已授权的 chart 部署或调试任务中,安装、升级、重启、卸载和干净重装属于常规步骤,无需逐条再问。具体安装命令与详细参考链接资料未提供。