ultraplan-research
Per-stack research stage — produces library choices, established patterns, pitfalls, and test architecture for one applicable stack
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Per-stack research stage — produces library choices, established patterns, pitfalls, and test architecture for one applicable stack
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Handle cross-platform compatibility including file paths, environment detection, platform-specific dependencies, and testing across Windows, macOS, and Linux. Use when dealing with platform-specific code or OS compatibility.
Use when creating, modifying, debugging, or scaffolding OMP extensions, slash commands, custom tools, event hooks, TUI primitives, ExtensionAPI integrations, .omp/extensions, .omp/commands, .omp/tools, package.json omp.extensions, or OMP lifecycle handlers.
Design Director state machine for `/supi:ui-design`. Drives 9 model-owned phases from scope selection through user review, producing a validated HTML mockup artifact.
Guides the harness-engineering pipeline — turn a codebase into one that resists agentic slop with agent-neutral docs, mechanically enforced architecture, and three runtime guardrails
Gray-area extraction stage — surfaces decisions the user must make before the plan can be authored, without expanding scope
Structured extraction of the user's seed prompt into a typed intake artifact — first stage of the UltraPlan authoring pipeline
| name | ultraplan-research |
| description | Per-stack research stage — produces library choices, established patterns, pitfalls, and test architecture for one applicable stack |
Produce a research artifact for a single assigned stack. This stage is spawned once per applicable stack. It runs after discover and before synthesize. Outputs are consumed by the synthesize stage to ground scenario authoring in observable evidence.
| Aspect | Detail |
|---|---|
| Inputs | Intake + scout + discover artifacts; the assigned stack identifier (frontend, backend, or infrastructure) |
| Output | Research artifact written via ultraplan_research_record |
| Tools | web_search, read, search, find |
| Scope | The assigned stack only — do not research other stacks |
| Storage tool | ultraplan_research_record — called exactly once |
reusableAssets and package manifest. Prefer what is already installed.web_search to confirm current versions, security advisories, and API stability.web_search.gotchas list for this stack.testPatterns)?Every claim You MUST cite. Use:
src/lib/auth.ts:45)web_searchRead the intake goal, scout findings for your assigned stack, and discover decisions that affect your stack.
Read the package manifest for your stack's directory. Note what is already present; do not propose replacing it.
For each gap in the existing stack, use web_search with specific queries (library name + version + use case). Read official docs or changelog pages. Do not use web_search for things already visible in the repo.
Call ultraplan_research_record exactly once:
ultraplan_research_record({
stack: "frontend" | "backend" | "infrastructure",
content: {
libraryChoices: [
{
capability: string,
chosen: string,
version: string | null,
reasoning: string,
alternativesConsidered: string[],
source: string // file path or URL
}
],
patterns: [
{
name: string,
description: string,
source: string // file path or URL
}
],
pitfalls: [
{
description: string,
mitigation: string,
source: string
}
],
testArchitecture: {
unitScope: string,
integrationScope: string,
e2eScope: string,
runner: string,
fixtureApproach: string,
source: string
}
}
})
| MUST DO | MUST NOT DO |
|---|---|
| Cite every claim with a file path or URL | Assert best practices without evidence |
| Prefer packages already in the repo over new introductions | Propose replacing existing working libraries |
Use web_search for capability gaps only | Use web_search for things the repo already answers |
Call ultraplan_research_record exactly once | Research stacks other than your assigned stack |
| Consult discover decisions before proposing library choices | Contradict a RESOLVED discover decision |
ultraplan_research_record called exactly once with stack matching the assigned stack