research-scout
Skill1 starsChanged 9 days agoMITView on GitHub
Phase 1 Research Scout for VibeCraft. Compares 3 to 4 concrete software stacks with epistemic provenance tags (verified, inferred, gotcha), surfaces two non-obvious domain gotchas per stack, and populates stack_matrix_artifact.html. Activate on Phase 1 or /vibecraft:stack.
5 other projects use a version of this.
Adopted by
Most recently taken up by
- vasilyu1983/AI-Agents-publictheir own version, first seen Oct 13, 2026
- jaron-goh-centr/claude-skillstheir own version, first seen Oct 11, 2026
- Swpn0neel/academic-skillstheir own version, first seen Jun 8, 2026
- talgacapri/pm-ostheir own version, first seen May 23, 2026
- sergeeey/Claude-cod-top-2026their own version, first seen May 13, 2026
Other versions5 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 5
- vasilyu1983/AI-Agents-public★ 94same name
- sergeeey/Claude-cod-top-2026★ 9same name
- Swpn0neel/academic-skills★ 1same name
- jaron-goh-centr/claude-skills★ 0same name
- talgacapri/pm-os★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository5 other files it gives its agents.
- brand-artisanSkill
- fullstack-builderSkill
- qa-auditorSkill
- system-architectSkill
- vibecraftSkill
The file
We split this skill into the rules it gives an agent
6 rules. 0 are common, 0 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 4 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 21
If the initial prompt was Brief (<= 30 words, <= 2 sentences, missing >= 2 of platform/user/features/constraints), Q1 Angle and Q2 Ambition …
- Very specific: line 26
Verify limits and APIs: Use web search and fetch tools (when available) to check current SDK versions, browser/OS quotas, pricing tiers, …
- Very specific: line 29
Emit
stack_matrix_artifact.html: Read templates/generative-ui/stack_matrix_artifact.html (via ${CLAUDE_PLUGIN_ROOT} or … - Very specific: line 35
Recommendation tie-breaker: Prefer the stack with offlineCapable === true when Q1 requests local-first/offline, latencyMs <= 100 for …
- Very specific: line 77
Search / fetch unavailable or HTTP 401/429/timeout: Do not stall or fabricate citations.
- Very specific: line 84
If the user asks to compare > 4 stacks, group variants into the top 4 distinct architectures and explain the grouping in 1 prose line.
“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Phase 1: Research Scout
Purpose
Turn a scoped product brief into an interactive 3-to-4-option Stack Matrix (stack_matrix_artifact.html) backed by dated documentation evidence, honest epistemic tags, and two concrete failure modes per candidate stack.
Inputs
- Product idea text (either Detailed on Turn 1, or Brief paired with locked
Q1 AngleandQ2 Ambitionanswers). - Existing repository
package.json,Cargo.toml, orpyproject.tomlwhen invoked standalone via/vibecraft:stack. - Domain starter catalog in
references/gotcha-library.md(load only the matching domain section).
Preconditions
- Safety and scope gate passed (zero harmful or credential-harvesting intent).
- If the initial prompt was Brief (
<= 30words,<= 2sentences, missing>= 2of platform/user/features/constraints),Q1 AngleandQ2 Ambitionhave already been answered before running stack web searches.
Step Procedure
- Select 3 to 4 distinct stack candidates: Include one pragmatic recommended default (
recommended: true), one lighter zero-backend or static option when viable, and one scale/native alternative. - Verify limits and APIs: Use web search and fetch tools (when available) to check current SDK versions, browser/OS quotas, pricing tiers, and cold-start or binary size limits. Record the source domain and verification date in
whyornotes. - Classify every metric honestly: Assign lowercase enum strings
'verified' | 'inferred' | 'gotcha'tolatencyTag,offlineTag, andcostTag. Never use'verified'unless checked against primary documentation or measured in the current session. - Surface 2 non-obvious gotchas per stack: Consult
references/gotcha-library.mdfor baseline traps, then tailor two specific{ issue, mitigation }pairs to the user's data volume, offline needs, and platform. Populategotcha+mitigationwith the primary trap andgotchaswith both pairs. - Emit
stack_matrix_artifact.html: Readtemplates/generative-ui/stack_matrix_artifact.html(via${CLAUDE_PLUGIN_ROOT}or${CLAUDE_SKILL_DIR}) and replace onlyconst STACKS = [...]. Write tovibecraft/01-stack-matrix.htmlin Claude Code or render as an HTML Artifact in Claude Desktop. - Reply in chat: Emit the 3-line HUD (
Phase 1/4 · Stack Matrix ready · Paste VIBECRAFT PICK or name a stack) plus1 to 3prose lines (<= 60words) naming the recommended stack, its decisive advantage, and the paste-back instruction.
Decision Rules (Numeric Thresholds)
- Candidate count: Emit
3candidates for narrow single-platform tools; emit4candidates when cross-platform trade-offs (web PWA vs desktop Tauri vs mobile Expo) materially change architecture. Never emit< 3or> 4. - Recommendation tie-breaker: Prefer the stack with
offlineCapable === truewhenQ1requests local-first/offline,latencyMs <= 100for interactive input loops, and zero recurring monthly cost ($0/moat MVP volume< 1,000MAU) whenQ2is weekend MVP. - Latency bar sanity:
latencyMsmust be an integer>= 1and<= 10000representing a named critical-path operation (for example P95 local query or cold-start TTFB), never0orNaN.
Output Contract
type EpistemicTag = 'verified' | 'inferred' | 'gotcha';
interface GotchaPair {
issue: string; // Concrete failure mode with numeric limit or API name
mitigation: string; // Architectural fix that Phase 3/4 must implement
}
interface StackCandidate {
id: string; // Kebab-case slug, e.g. 'tauri-sqlite'
name: string; // Archetype label, e.g. 'Local-First Desktop'
recommended: boolean; // Exactly one candidate is true
stack: string; // Concrete frameworks + storage, e.g. 'Tauri v2 + React 19 + SQLite WASM'
why: string; // 1-2 sentences citing workload fit
latencyMs: number; // Integer >= 1
latencyNote: string; // Named operation, e.g. 'P95 FTS5 query on 10k rows'
latencyTag: EpistemicTag; // Lowercase only: 'verified' | 'inferred' | 'gotcha'
offlineLabel: string; // e.g. 'Full local R/W' or 'Online required'
offlineTag: EpistemicTag;
cost: string; // e.g. '$0 local binary' or '$0 free tier (<50k req/mo)'
costTag: EpistemicTag;
gotcha: string; // Primary gotcha summary (backward-compat mirror of gotchas[0].issue)
mitigation: string; // Primary mitigation (backward-compat mirror of gotchas[0].mitigation)
gotchas: [GotchaPair, GotchaPair];
}Pasted gate output (VIBECRAFT PICK v2 · Phase 1 · Research Scout) locks Stack, ArchetypeId, Performance, Offline, Cost, and both [Gotcha] items as mandatory Phase 3 and Phase 4 requirements.
Worked Examples
See references/examples.md for two complete runs:
- Clean Detailed Prompt: Local Markdown knowledge base with FTS5 search (
3stacks compared, verified SQLite OPFS limits). - Messy Contradictory Prompt:
"real-time multiplayer video editor that runs 100% free on GitHub Pages with no server"(resolves impossibility honestly via WebCodecs + WebRTC signaling trade-offs).
Failure Modes & Recovery
- Search / fetch unavailable or HTTP 401/429/timeout: Do not stall or fabricate citations. Downgrade unconfirmed runtime/pricing claims to
'inferred'and note"Web verification unavailable in session"insidelatencyNoteorwhy. - Contradictory user constraints (for example zero-server multiplayer): Explain the physical constraint in 1 prose line (
<= 25words) and compare the closest viable approximations inSTACKS. - Read-only workspace (
EACCES): Emit the populated HTML inline and print the fallback notice in 1 line.
Refusal & Escalation Rules
- Refuse scraping kits targeting authentication walls, CAPTCHA bypassers, or abuse automation in 1 plain line with zero HUD and zero searches.
- If the user asks to compare
> 4stacks, group variants into the top4distinct architectures and explain the grouping in 1 prose line.
Token / Word Budget
SKILL.mdtarget:< 1,200words (< 6,000bytes).- Chat reply budget: 3-line HUD +
1 to 3prose lines (<= 60words total).
Self-Check List
- Exactly
3or4candidates inSTACKS, withrecommended: trueon exactly one? - Are
latencyTag,offlineTag, andcostTagstrictly lowercase'verified' | 'inferred' | 'gotcha'? - Does every candidate include 2 specific
{ issue, mitigation }entries ingotchas(and mirrored primarygotcha/mitigation)? - Is chat prose
1 to 3lines and<= 60words with zero code blocks outside the HUD?
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

