# Research

> Research a factual, codebase, product, or external-documentation question using primary sources and return an evidence-backed answer. Use when the user asks to investigate, compare docs, find current behavior, answer a research ticket, or gather facts before a spec, prototype, or implementation.

- Skill: `carlitose/research` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add carlitose/research`
- Raw SKILL.md: https://api.skillmd.com/api/skills/carlitose/research/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: carlitose (https://skillmd.com/u/carlitose)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/carlitose/research

---


# Research

Answer a bounded question with evidence. Prefer primary sources over commentary, and
trace every important claim back to the source that owns it.

Run the reading pass inline. For requested delegation, apply the
[operating defaults](../ask-skills/OPERATING-DEFAULTS.md). The question's breadth changes
the research scope, not execution authority.

## Process

### 1. Pin the question

Write a one-sentence research question before collecting evidence. Include:

- The decision the research should support.
- The scope: repo-local, external documentation, product behavior, market/tooling, or a
  mix.
- The expected output location if this came from a ticket or wayfinding map.

Ask one concise question only when the research target is too ambiguous to begin.

### 2. Query an existing LLM wiki

Before collecting sources elsewhere, check whether the project already has a compatible
LLM wiki root containing `purpose.md`, `schema.md`, and `wiki/index.md`. If it does, invoke
[llm-wiki](../llm-wiki/SKILL.md) and run its `query` operation with the pinned research
question. Do not scaffold a wiki merely to satisfy this step.

Treat the saved query and the wiki pages it cites as compiled context and source pointers,
not as primary evidence. Follow their provenance to the owning repository artifacts or raw
sources, and continue collecting evidence when the wiki is incomplete.

### 3. Collect primary sources

Use the strongest available sources for the claim:

- Repo source, tests, configs, logs, migrations, specs, tickets, and commit history for
  project-local behavior.
- Official documentation, source repositories, API references, standards, release notes,
  changelogs, schemas, or first-party examples for external behavior.
- The user's supplied artifacts for product, design, or business context.

Use secondary sources only as pointers to primary sources. Do not base the final answer
on a blog post, forum reply, generated summary, or search-result snippet when an owning
source is available.

### 4. Check the evidence

- Compare at least two independent primary anchors for risky or surprising claims when
  possible.
- Note versions, dates, flags, environment constraints, and repository state when they
  affect the answer.
- Run small local commands or tests when they can verify repo behavior cheaply.
- Separate observed facts from inference.

For fast-changing external facts, verify current documentation before answering.

### 5. Save durable findings

If this research is tied to a local research ticket, spec, or wayfinding map, update that
artifact or write a short report under `docs/research/<slug>.md` when no repo convention
exists. Create the folder only when a durable artifact is useful. Every durable report
includes one `## Artifact Graph` section with a stable Artifact ID, `Role: research`, and
exactly `Standalone: true` or one `Parent`. A ticket-owned report points to that research
ticket, and the ticket adds the reciprocal `Produces` link in the same change.

For quick questions, a concise final answer with evidence is enough.

## Output

Use this shape when the answer is more than a quick reply:

```markdown
## Answer

<Direct answer in one or two paragraphs.>

## Evidence

- <Source path or citation> - <fact supported by that source>.

## Unknowns

- <Remaining uncertainty, or "None".>

## Next Step

<Decision, prototype, spec update, or implementation step this research enables.>
```

Keep the output proportionate. Do not dump notes, transcripts, or long quotes unless the
user asked for raw research materials.

