This skill should be used when the user says "here's a new manifest", "I have a new research queue", "switch research priorities", "load this manifest", "update the research lanes", "new priorities from the Vertix machine", "change what we're researching", "override the research queue", "I'm pasting a manifest", or provides a JSON block that looks like a research queue manifest. Parses the incoming manifest, updates the active lane registry, and confirms the new research priorities before any lanes run.
npx claudepluginhub vertix-solutions/qmi-security-innovations --plugin qmi-security-innovationsThis skill uses the workspace's default tool permissions.
Accept an incoming research queue manifest from the Vertix Solutions primary machine, validate it, update the active lane registry, and confirm the new priorities. The manifest tells this machine what to research next — this skill makes that handoff clean and auditable.
Verifies tests pass on completed feature branch, presents options to merge locally, create GitHub PR, keep as-is or discard; executes choice and cleans up worktree.
Guides root cause investigation for bugs, test failures, unexpected behavior, performance issues, and build failures before proposing fixes.
Writes implementation plans from specs for multi-step tasks, mapping files and breaking into TDD bite-sized steps before coding.
Accept an incoming research queue manifest from the Vertix Solutions primary machine, validate it, update the active lane registry, and confirm the new priorities. The manifest tells this machine what to research next — this skill makes that handoff clean and auditable.
The manifest arrives in one of two ways:
If pasted: parse the JSON directly from the message. If a file: read the file and parse it.
If the content isn't valid JSON or doesn't have a research_queue array, stop and tell the user: "This doesn't look like a valid research queue manifest. It should be a JSON file with a research_queue array. Can you check the file and try again?"
Check each item in research_queue:
| Check | Rule | On Fail |
|---|---|---|
domain_slug present | Required field | Flag item as invalid — skip it |
domain_slug format | Lowercase, hyphens only | Warn — proceed with caution |
notes_target present | Required field | Default to 60, flag assumption |
scope_brief present | Recommended | Note as missing — research will use domain name only |
priority present | Recommended | Assign sequential priority based on list order |
Before making any changes, display a confirmation table:
Incoming Research Queue — [manifest_id]
Generated by: [generated_by field]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Priority Domain Slug Target Current Action
1 microsoft-365-administration 60 [N] [Continue / Start fresh / Already complete]
2 entra-id-identity-management 60 [N] [...]
...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[N] lanes updating | [N] already at target (no action needed)
Action column logic:
Ask: "Does this look right? I'll update the research lanes as soon as you confirm."
Do not update anything until the user confirms.
On confirmation:
qmi-kb/lane-registry.json:{
"manifest_id": "[from manifest]",
"loaded_at": "[YYYY-MM-DD]",
"source": "[generated_by from manifest]",
"lanes": [
{
"lane_id": "L[N]",
"domain_slug": "[slug]",
"notes_target": [N],
"current_notes": [N],
"scope_brief": "[from manifest or 'See domain-scopes.md']",
"priority": [N]
}
]
}
If the incoming manifest includes scope_brief for a domain, use that as the research scope for that lane (it overrides the built-in scope from domain-scopes.md). The Vertix machine may send refined scopes over time.
If no scope_brief is provided, fall back to the built-in scope in references/domain-scopes.md of the research-engine skill.
Manifest has domains not in the built-in registry:
Accept them — the Vertix machine may add new domains over time. Add them to the lane registry as-is. Note to the user that this is a new domain not in the built-in scope library, so research will be guided only by the scope_brief in the manifest.
Manifest has fewer than 8 lanes: That's fine — run only the lanes specified. Inactive lanes retain their existing notes but won't be added to until a future manifest includes them.
User wants to keep some existing lanes and add new ones: If the manifest doesn't include a domain that's already in the registry, ask: "The incoming manifest doesn't include [domain]. Do you want to keep that lane running, or pause it?"
Manifest is the same as what's already loaded:
Detect this by comparing manifest_id. If identical, say: "This manifest is already loaded (ID: [id]). No changes needed."