arkcli resources
CRITICAL — 开始前 MUST 先用 Read 工具读取 ../arkcli-shared/SKILL.md,其中包含认证闸门、配置排查与命令选择顺序
CRITICAL — 用户已经看到 Endpoint NotFound,又要核对当前完整 ID / 历史用量时,必须先转读 ../arkcli-infer-endpoint/SKILL.md,由其按 infer endpoint list → usage stats --endpoint 证据链主导。不得只跑 resources resolve/list 就猜测 ID 后缀或宣称已删除。
使用原则
arkcli resources域始终只读。即使用户在资源列表语境中提出创建意图,也必须先转读../arkcli-deploy/SKILL.md,不能由本 Skill 创建、修改或删除资源- 普通“部署模型并获得 Endpoint”的产品意图继续走
arkcli +deploy。该在线工作流不支持 Client Preview,不得执行arkcli +deploy --dry-run,也不得为了获得 Preview 而静默降级成底层 CRUD - 转入 Deploy Skill 后,先只读核对模型、名称、Region、配置与计费影响并复述给用户;在收到本轮新的明确确认前,不得在同一轮执行真实
arkcli +deploy。严禁 Agent 自行添加--yes、echo Y或设置ARKCLI_ALLOW_HEADLESS_ACTIVATION - 只有用户明确要求 raw CRUD、精确 CreateEndpoint 请求或 CI/脚本预览时,才转
../arkcli-infer-endpoint/SKILL.md,使用叶子命令arkcli infer endpoint create ... --dry-run;Preview 完成后仍需新的确认才能真实执行 arkcli resources list是 read-only 实时控制面查询,每次都打上游,没有本地缓存arkcli resources resolve <ep-id>先按endpoint_model_type判定真实绑定。Custom Model Endpoint 的model_id/custom_model_id必须保持cm-...身份,基础模型只通过base_model_*表达 lineage 与能力来源;不按 ID/模型名子串猜用途- 派发逻辑跟 profile.Type 走:platform →
ListEndpoints,agent-plan / coding-plan → 对应 plan API agent-plan-team三模态使用团队席位 Key + 套餐模型;coding-plan-team只有 text 使用团队席位 Key,image/video 虽可看到 platform Endpoint,但调用还需要后付费 API Keyresources list区分“账号可见”与“当前 profile 可调用”:读取invocable与required_overrides,不要看到 ID 就断言当前凭证可用- 这个 skill 不负责改 default —— 用户要换 default 走
../arkcli-profile/SKILL.md的profile set-default --profile X真切身份(P0-A 修正):用 X 的 token / UserID 打控制面,不是 active=A 的身份打完再展示成 B 的资源
适用场景
- 用户问"当前 profile 下有哪些 endpoint / 模型可用"
- 用户跑
profile set-default时报<id> 不在可用列表,回这里看真实可用 ID - 用户跑
+chat / +gen --model报InvalidEndpointOrModel.NotFound,回这里确认 ID 在 active profile 下可见 - 用户切了 profile,想知道新 profile 下的可用资源跟旧的有什么差异
- 用户只给出一个 Endpoint,不知道该走
+chat、+understand还是+gen - 用户传了 Endpoint + API Key,但未给 Base URL,需要从 Endpoint 权威 region 派生
反唤起信号
- 用户要 找模型 / 挑模型 / "哪个模型最强 / 性价比最高" → 转
../arkcli-models/SKILL.md(带 enrich + 加权排序) - 用户要 创建 endpoint → 转
../arkcli-deploy/SKILL.md(arkcli +deploy);本轮只做只读核对、复述和确认,不直接执行 - 用户明确要 raw CreateEndpoint / CI / 精确请求预览 → 转
../arkcli-infer-endpoint/SKILL.md,使用infer endpoint create --dry-run - 用户要 管理 endpoint(start / stop / get / update / list 详情)→ 转
../arkcli-infer-endpoint/SKILL.md - 用户已经拿到 Endpoint NotFound,想判断 ID 是否少尾部或历史上是否存在 → 转
../arkcli-infer-endpoint/SKILL.md;不要停在 resources 单点解析
resources vs models 的区别
| 维度 | arkcli resources list |
arkcli models ... |
|---|---|---|
| Scope | 当前 profile 下"我能用什么" | 全平台基础模型 catalog |
| 输出 | endpoint ID(ep-xxx)或 plan 模型名 |
foundation_model 全字段 + ArkModels enrich |
| 派发 | 按 profile.type 切 endpoint / plan / coding API | 通用 ListFoundationModel |
| 缓存 | 无 | 有 cache scope(profile/region/project) |
| 主要用途 | 设 default、验 --model <id> 是否 active |
找模型、对比模型、确认 capability |
简言之:resources list 回答 "我(当前 profile)能用什么",models 回答 "平台上有什么"。
Agent 快速执行顺序
- 用户给了
ep-...→arkcli resources resolve <ep-id> --format json,先读endpoint_model_type与model_id,再读supported_workflows/generation_modality/requires_user_intent - 不确定当前 profile →
arkcli profile show --format json(看type) - text 资源 →
arkcli resources list --modality text --format json - image / video 资源 →
arkcli resources list --modality image --format json/--modality video - 多 profile 对比 → 分别跑
--profile A --modality text和--profile B --modality text - 读取每项的
invocable/required_overrides;is_default: true只表示默认偏好,不保证当前凭证可调用
命令一览
| 命令 | 说明 |
|---|---|
arkcli resources list |
列当前/指定 profile 下指定 modality 的可见资源、数据面与调用兼容性 |
arkcli resources resolve <endpoint-id> |
权威解析 Endpoint 绑定模型、模态、候选工作流与 region |
输出形态
{
"profile": "platform_cn-beijing_default",
"type": "platform",
"modality": "text",
"items": [
{
"id": "ep-20260424-aaaaa",
"resource_kind": "endpoint",
"data_plane": "platform",
"credential_kind": "paygo",
"invocable": true
}
],
"current_default": "ep-20260424-bbbbb",
"item_count": 3
}
is_default 仅在 items[].id == current_default 时出现;invocable=false 时查看
required_overrides(例如 ["api_key"])。可见资源不等于当前凭证可调用。
resources resolve 的绑定身份契约:
endpoint_model_type=CustomModel:model_id == custom_model_id == cm-...;base_model_*仅描述训练 lineage 和能力元数据来源,不得拿base_model_id替代真实绑定。endpoint_model_type=FoundationModel:model_id仍是基础模型 ID,既有语义不变。resolution_warnings非空时保持 fail-soft,不得根据同时出现的 Custom/Foundation 引用自行猜绑定。
常见错误
- coding-plan profile 下
resources list --modality image|video不再 fail-fast (S10): 会借道 platform 控制面 ListEndpoints, 列出同账号已+deploy的 endpoint id, 用户拿来当+gen --model <ep-id>或profile set-default --modality image <ep-id>. 列表为空 → 用户在 platform 上还没 deploy, 先arkcli +deploy <model> coding-plan resources list: 缺 AccountID (请先 arkcli auth login)→ 仅 text 路径需要 AccountID; SSO 没登录或 token 解析时 claims.Sub 为空, 重新走arkcli auth login volc-ssoListEndpoints: NotLogin / Unauthorized→ 登录态/STS 过期 /--profile X的 X 没在 identity store 里有 token;先auth loginunsupported profile type "X" for resources list→ profile.yaml 被手改成不认识的 type;用profile show看type字段,需要profile create重建
参考
../arkcli-profile/SKILL.md— 看完 resources 后要换 default 时进../arkcli-models/SKILL.md— 找模型 / 对比能力时进../arkcli-deploy/SKILL.md— 没看到想要的 endpoint 时进创建链路../arkcli-shared/references/execution-context.md— Profile/凭证/资源矩阵与临时覆盖