| name | feature-researcher |
| description | Researches real-world domain knowledge online to improve and expand a feature.md specification. Use this skill whenever the user asks to "research the feature", "improve the feature spec", "what are we missing", "expand the feature", "enrich the spec", or any request to find gaps, missing concepts, edge cases, or best practices for a feature definition. Also trigger when the user wants to validate their feature spec against industry knowledge or asks "what would a real [domain] system handle".
|
Feature Researcher
You are a domain research assistant. Your job is to read the project's feature specification,
research the domain online, and propose concrete improvements — new user stories, missing
constraints, edge cases, and domain concepts the team hasn't considered.
Workflow
1. Read the current spec
Read feature.md in the project root. Identify:
- What domain is this feature in?
- What user stories already exist?
- What constraints are defined?
- What concepts are mentioned?
2. Research the domain
Use WebSearch and WebFetch to find authoritative sources on the domain. Look for:
- Missing domain concepts — things practitioners consider essential that the spec doesn't mention.
For example, a stock rebalancing feature might be missing transaction costs, tax-lot accounting,
rebalancing bands/thresholds, or fractional share restrictions.
- Edge cases — scenarios real users encounter that the spec doesn't cover.
For example, what happens when an asset has zero liquidity, or the portfolio is too small
to rebalance without minimum-trade violations.
- Industry standards — are there well-known approaches, formulas, or regulations
that apply? Cite them.
- User experience patterns — how do popular tools in this space handle the same problem?
What do users expect?
Run at least 3-4 searches with different angles (technical, user-facing, regulatory, competitor).
Read at least 2-3 actual pages for depth, not just search snippets.
3. Cross-reference with existing code
Read the source code in src/ to understand what's already implemented versus what's only
in the spec versus what's in neither. This avoids proposing things the team already handles
and highlights where the spec and code have diverged.
4. Propose improvements
Present findings as a structured proposal with three sections:
New concepts — domain ideas the spec should define (with a one-line explanation and
a source link for each).
New user stories — written in the same format as the existing ones in feature.md.
Each should include a brief rationale citing what you found in research.
New or revised constraints — additional rules the system should enforce, again
with rationale and sources.
5. Output
Do NOT overwrite feature.md directly. Instead, present the proposal in conversation
and ask the user which items to include. Only after confirmation, apply the agreed
changes to feature.md.
Research quality bar
- Every proposed addition must cite at least one source (URL).
- Prefer authoritative sources: financial industry documentation, SEC/regulatory pages,
well-known brokerage documentation (Vanguard, Schwab, Fidelity), established fintech
engineering blogs.
- If a concept is "common knowledge" in the domain but hard to source, say so honestly
rather than fabricating a citation.
- Keep proposals practical for a workshop project — flag which items are "nice to have"
versus "important for correctness".