FF vulkan-rendering-expert-skill
Vulkan 渲染工程专家技能。用于 Vulkan API 设计、实现、调试、优化、Validation Error 处理、Android Vulkan 集成、Swapchain/同步/Image Layout/资源生命周期问题、图形引擎架构、Render Pass、Pipeline、Descriptor、Command Buffer、Compute 工作流和性能分析。
Vulkan 渲染工程专家技能。用于 Vulkan API 设计、实现、调试、优化、Validation Error 处理、Android Vulkan 集成、Swapchain/同步/Image Layout/资源生命周期问题、图形引擎架构、Render…
As a process F 35/100 · Will not run — References files that are not bundled: references/07_integration_pack/task_routing_rules.md, references/07_integration_pack/retrieval_policy.md, references/03_api_manual/api_index.md
How to improve
- Say in the description WHEN to use the skill ("use when…", example requests): that is the agent's main cue.
- The text references files that are not there: add them or drop the references.
- Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
- A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.
Guard findings · 73
✓ No critical or high findings
Medium and low: 73
-
low Secrets in code
secret-high-entropy-tokenreferences/02_core_mental_model/render_graph_resource_lifetime.md:342High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)2. 同一 `VkImage` 在 alias 切换后仍使用旧 `VkImageView`,可能触发 validation `VUID…181` 之类错误(view 引用的 image 已被释放或 layout 不一致)。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/02_core_mental_model/vulkan_1_4_overview.md:23High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)工程意义:在 1.4 设备上,过去需要逐项 `vkGe…es2` 查询并开启扩展的几项关键能力,现在可以直接依赖 core 行为,简化引擎 feature negotiation 路径。[GUIDE][ENGINE]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/02_core_mental_model/vulkan_1_4_overview.md:46High-entropy token-like string (may be an id, hash or a credential)VK_K…ls2
-
low Secrets in code
secret-high-entropy-tokenreferences/02_core_mental_model/vulkan_1_4_overview.md:62High-entropy token-like string (may be an id, hash or a credential)- VkPi…nfo:pipeline create flags 升级到 64-bit,
-
low Secrets in code
secret-high-entropy-tokenreferences/02_core_mental_model/vulkan_1_4_overview.md:70High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)工程影响:引擎层在 1.4 设备上可以直接使用 `VkPi…nfo` 和 `vkCm…KHR`,无需在 device extensions 列表声明 `VK_K…ce6`。[ENGINE]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/02_core_mental_model/vulkan_1_4_overview.md:80High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)Vulkan 1.4 把以下 feature 设为 mandatory,所有声称支持 1.4 的实现必须支持(通过 `vkGe…es2` 返回的对应字段必为 `VK_TRUE`):[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/instance.md:134High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…377` 等。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/maintenance_extensions.md:1High-entropy token-like string (may be an id, hash or a credential)# API Card: Maintenance 扩展系列(VK_K…ce1~7 / VK_E…ce1)
-
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/maintenance_extensions.md:28High-entropy token-like string (may be an id, hash or a credential)→ vkEnumerateDeviceExtensionProperties / vkGe…es2
-
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/maintenance_extensions.md:30High-entropy token-like string (may be an id, hash or a credential)→ VkDeviceCreateInfo.ppEnabledExtensionNames(老版本)或 VkPh…res / VkPh…res 聚合结构(新版本通过 pNext 启用 maintenance features;也可使用独立的 VkPh…eat
-
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/maintenance_extensions.md:36High-entropy token-like string (may be an id, hash or a credential)- VK_E…ce1 的 present mode 切换 / retired swapchain 延迟销毁
-
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/maintenance_extensions.md:43High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- Vulkan 1.3+ 中 `VK_K…ce4` 已进核心,扩展字符串自动可用,但仍需通过 `VkPh…ce4` 显式启用 feature;Vulkan 1.4+ 中 `VK_K…ce5` / `VK_K…ce6` 进核心,需通过 `VkPhysicalD
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/physical_device.md:13High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| 适用 Vulkan 版本 | Vulkan 1.0 核心;feature 查询在 1.1+ 通过 `VkPh…res` 等结构体链 |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/physical_device.md:59High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VkPhysicalDeviceMemoryProperties` / `VkPh…es2`
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/physical_device.md:65High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VkPh…res` / `VkPh…ies`
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/physical_device.md:66High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VkPh…res` / `VkPh…ies`
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/01_instance_device_queue/physical_device.md:67High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VkPh…res` / `VkPh…ies`
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/surface.md:148High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- 关注 `VUID…266`(surface 仍被 swapchain 使用)。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/swapchain_recreate.md:74High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VK_E…ce1`:允许 retired swapchain 延迟销毁,减少卡顿。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/swapchain_recreate.md:156High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…270`:surface 仍被旧 swapchain 使用。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/swapchain_recreate.md:157High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…282`:swapchain 仍被 command buffer 引用。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/swapchain_recreate.md:237High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VK_E…ce1` 可让 retired swapchain 延迟销毁,减少 stall。[GUIDE]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/swapchain_recreate.md:279High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)2. `VK_E…ce1` 的启用与使用条件。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/swapchain.md:74High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VK_E…ce1`:可延迟 retired swapchain 销毁,减少 recreate 卡顿。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/02_surface_swapchain/swapchain.md:292High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)3. `VK_E…ce1` 的启用条件与 retired swapchain 行为。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/command_buffer_lifetime.md:148High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…045`:command buffer 不能处于 pending 状态。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/command_buffer_lifetime.md:149High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…047`:free 的 command buffer 不能处于 pending 状态。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/command_buffer_lifetime.md:150High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…049`:只能从 INITIAL 或 EXECUTABLE(若允许 reset)状态开始。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/command_buffer_lifetime.md:151High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…072`:command buffer 必须处于 executable 状态。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/fence_semaphore.md:174High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…068`:wait semaphore 必须已 signaled 或可被 timeline 满足。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/fence_semaphore.md:175High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…267`:present wait semaphore 必须有效。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/fence_semaphore.md:176High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…122`:reset 前 fence 必须不在 pending submit 中。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/fence_semaphore.md:177High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…258`:timeline semaphore signal value 必须大于当前值。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/frames_in_flight.md:169High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| `vkResetCommandBuffer` 时机 | 必须在 `vkWaitForFences` 之后调用。[SPEC] | 未等 fence 就 reset,触发 `VUID…045`。[TOOL] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/frames_in_flight.md:239High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…045`:command buffer 不能处于 PENDING 状态(说明 fence 未 wait)。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/frames_in_flight.md:240High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…122`:reset 前 fence 不在 pending submit 中。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/frames_in_flight.md:241High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…068`:wait semaphore 必须 signaled 或 timeline 可满足。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/frames_in_flight.md:242High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…267`:present wait semaphore 必须有效。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/indirect_commands.md:165High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| `offset` | `VkDeviceSize`,必须 4 字节对齐。[SPEC] | 错误对齐,触发 `VUID…710` 类错误。[TOOL] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/indirect_commands.md:212High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)1. `VkBuffer.usage` 漏写 `INDIRECT_BUFFER_BIT`,validation 报 `VUID…708`。[TOOL]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/indirect_commands.md:230High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…708`:buffer 缺少 `INDIRECT_BUFFER_BIT`。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/indirect_commands.md:231High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…710`:offset 对齐错误。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/03_command_buffer/indirect_commands.md:232High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…718` / `02719`:`multiDrawIndirect` 未启用。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/buffer.md:64High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| `vkGetBufferMemoryRequirements` / `vkGe…ts2` | 查询 memory requirements。[SPEC] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/framebuffer.md:132High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…904`:framebuffer 与 render pass 兼容。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/host_image_copy.md:43High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- 目标 image 的 `usage`、`format`、`tiling` 必须支持 host image copy(查询 `vkGe…EXT` / performance query)。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/host_image_copy.md:71High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| `vkGe…EXT` | 查询 image 的 host 侧内存布局(行距、偏移等)。[SPEC] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/host_image_copy.md:187High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| 使用场景 | 用于 `vkCopyMemoryToImageEXT` / `vkCopyImageToMemoryEXT`,由 spec 定义何种 layout 组合可标 memcpy。[SPEC] | 自行假定 memcpy 安全,未 query `vkGe…EXT`。[ENGINE] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/host_image_copy.md:234High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…203`:使用 host copy API 时 image flags 必须含 `VK_IMAGE_CREATE_HOST_IMAGE_COPY_BIT_EXT`。[SPEC]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/image_layout.md:129High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…213` 等:transition 合法性。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/image_layout.md:130High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…296`:present 前 layout。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/image.md:65High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| `vkGe…ts2` | 支持 dedicated allocation、device group 等查询。[SPEC] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/image.md:71High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VK_KHR_dedicated_allocation` / `VK_K…ts2`:优化 GPU 特定图像的内存分配。[GUIDE]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/memory_allocation.md:151High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…677`:memory 仍被 resource 使用。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/vma_usage.md:39High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- 推荐:启用 `VK_K…ts2`、`VK_KHR_dedicated_allocation`、`VK_EXT_memory_budget`、`VK_K…ry2` 等扩展并传入 `VmaAllocatorCreateInfo`。[GUIDE]
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/04_buffer_image_memory/vma_usage.md:180High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…683`:map 非 host-visible memory(VMA 通常先返回错误,但若绕过仍会触发)。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/05_descriptor/descriptor_buffer.md:165High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- `VUID…000`:descriptor buffer flag 合法性。
quoted -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/05_descriptor/descriptor_indexing.md:70High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| `vkGe…es2` | 通过 pNext 查询 `VkPhysicalDeviceDescriptorIndexingFeatures`。[SPEC] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/05_descriptor/descriptor_indexing.md:71High-entropy token-like string (may be an id, hash or a credential) (documentation table row)| `vkGe…es2` | 查询 `maxPerSetDescriptors` / `maxUpdateAfterBindDescriptorsInAllPools` 等。[SPEC] |
table -
low Secrets in code
secret-high-entropy-tokenreferences/03_api_manual/05_descriptor/descriptor_indexing.md:90High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)- Vulkan 1.2 核心化:通过 `VkPh…res` 字段访问等价 feature;不再需要 pNext 扩展结构体。[SPEC]
quoted
…and 13 more
Files scanned: 80. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
- warning
description-no-whendescription does not say WHEN to use the skill (no "use when") - warning
missing-refreference to a missing file: references/07_integration_pack/task_routing_rules.md - warning
missing-refreference to a missing file: references/07_integration_pack/retrieval_policy.md - warning
missing-refreference to a missing file: references/03_api_manual/api_index.md - warning
missing-refreference to a missing file: references/04_debug_playbooks/debug_priority_index.md - warning
missing-refreference to a missing file: references/05_workflows/workflow_index.md - warning
missing-refreference to a missing file: references/06_cases/case_index.md
Process rating: all ten parameters 35/100
- 0Tools and files. 6 referenced file(s) missing: references/07_integration_pack/task_routing_rules.md, references/07_integration_pack/retrieval_policy.md, references/03_api_manual/api_index.md
- 0Result and completion. Does not say what the result is
- 0Inputs and preconditions. Does not say what the process needs to start
- 0Failures and branches. Linear process with no failure handling
- 0Progress reporting. Says nothing while it works
- 20When it triggers. No condition that starts the skill
- 100Steps. 36 steps
- 100Consistency. Name and required fields are in place
- 100Execution cost. Instruction body is 507 tokens
- 100Running it twice. No mutating operations
Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.
Quality signals
- +5Description has no quoted example phrases that should trigger the skill
- +4Description does not say when NOT to use the skill (false activations)
- +3Output format is not stated: the model decides each time
- +4No input/output examples
- +2Single-language instructions
- +3Description length 186: enough signal without eating the budget
- +4Structure: 6 headings
- +3Step-by-step instructions: 36 items
- +1License stated
Quality base 70; lint remarks subtract, signals add up to 100. Result: 57.