Skip to content
Back to skills

Research

ASecurity

Full lifecycle guide for conducting structured research: check existing findings, create a record, gather evidence, and record

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
researchgobashnodegitapiperformance

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

Scanned November 7, 2026

npx -y skills add Next-AI-Labs-Inc/alignment-harness --skill research --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Research?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Research
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/next-ai-labs-inc-research/badge)](https://www.skillsdirectory.com/skills/next-ai-labs-inc-research)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: research
description: "Full lifecycle guide for conducting structured research: check existing findings, create a record, gather evidence, and record"
triggers:
  - "research"
  - "investigate"
  - "analyze metric"
  - "validate hypothesis"
  - "research finding"
  - "conduct research"
  - "explore topic"
---

# Research — Full Lifecycle Guide

Before your output, print `## RESEARCH_FINDING` on its own line. This enables automated extraction to the compaction admin UI.

## Overview

This harness has a structured research system built on local `research` records (`alignment-harness store`), artifact caching, and semantic search. This skill walks through the complete research lifecycle.

**Base URL:** `alignment-harness store add|list|get|update research`
**Auth:** none (local records)
**Admin UI:** the folder `alignment-harness records research` prints

---

## Research Rigor Standard

**Conclude nothing without /research rigor and /evidence. Build from ideation to evidence without skipping over conflation of "looks like" with "means."**

Every research product must distinguish between:
- **Observed data** — what the numbers actually show (measurement)
- **Correlation** — two things that move together (pattern, not causation)
- **Causal claim** — X caused Y (requires mechanism + controlled comparison)

"Looks like" is an observation. "Means" is a conclusion. Never bridge from one to the other without stating the evidence chain that justifies the leap. If the chain has gaps, say so — gaps are valuable, not shameful.

---

## Step 1: Check Existing Knowledge First

Before creating a new finding, search for prior research on the topic.

```bash
# Semantic search across all IX knowledge (swarm, intents, tools, commits)
# MCP tool:
agent_find({ query: "your research topic here" })

# CLI fallback if MCP is down:
node "${CLAUDE_PLUGIN_ROOT}/mcp/agent-find/cli.js" "your research topic"

# Search existing ResearchFindings in local records:
alignment-harness store list research --json | jq '.[] | select(tostring | test("YOUR_TOPIC"; "i")) | {id, title, verdict, confidence}'

# Read a cached artifact by 5-digit ID:
# MCP tool:
agent_read({ id: "10805" })
```

If existing research covers your question, build on it instead of starting fresh. Link to it via `linkedCompactionIds`.

---

## Step 2: Create a ResearchFinding

Create a finding with your hypothesis BEFORE conducting the research. This ensures the research is trackable from the start.

```bash
alignment-harness store add research --json '{
    "title": "Descriptive title of what you are investigating",
    "subtitle": "One-line context",
    "researchType": "metric-analysis",
    "hypothesis": "We believe X because Y, and expect to see Z",
    "kpiKey": "exchanges_per_user",
    "dataSource": "mongodb",
    "tags": ["coaching", "retention"],
    "verdict": "in-progress"
  }'
```

**Save the returned `id`** — you will need it for all subsequent updates.

### Research Type Options

| Type | When to use |
|------|-------------|
| `metric-analysis` | Analyzing a KPI, conversion rate, or behavioral metric |
| `ux-regression` | Investigating a UX degradation or regression |
| `decision-audit` | Reviewing whether a past decision had its intended effect |
| `prompt-regression` | Coaching prompt quality changed unexpectedly |
| `cohort-analysis` | Comparing user cohorts (by signup date, plan, behavior) |
| `funnel-analysis` | Analyzing drop-off in a conversion funnel |
| `ab-test-review` | Reviewing results of an A/B experiment |
| `system-health` | System performance, error rates, infrastructure |
| `other` | Anything that does not fit the above |

---

## Step 3: Conduct the Research

### Web Research (firecrawl)

Use the firecrawl CLI for any web-based research:

```bash
# Search the web
firecrawl search "your query" --limit 5

# Scrape a specific page
firecrawl scrape "https://example.com/article" --format markdown

# Deep research (multi-step, agent-driven)
firecrawl agent "What is the current best practice for X?"
```

### Internal Data Research

```bash
# Query MongoDB via admin tooling
curl -s "<your-api>/..." \
  -H "x-api-key: $YOUR_API_KEY"

# Check coaching telemetry
curl -s "<your-api>/<your-telemetry-endpoint>" \
  -H "x-api-key: $YOUR_API_KEY"
```

### Codebase Research

```bash
# Semantic search across code, commits, and institutional knowledge
agent_find({ query: "specific code pattern or system behavior" })

# Direct code search
# Use Grep and Read tools as normal
```

---

## Step 4: Record Findings

Update the ResearchFinding with your methodology and results.

```bash
alignment-harness store update research FINDING_ID --json '{
    "methodology": "Queried MongoDB for sessions in date range, compared exchange counts pre/post change",
    "findings": "## Key Findings\n\n1. Exchange count dropped 15% after commit abc123\n2. Drop concentrated in new users (< 7 days)\n3. Returning users unaffected",
    "conclusion": "The prompt change in abc123 reduced first-session engagement for new users",
    "timeRange": {
      "from": "2026-03-01T00:00:00Z",
      "to": "2026-03-15T00:00:00Z"
    }
  }'
```

---

## Step 5: Add Measurements

Attach quantitative data points to track the metric over time.

```bash
alignment-harness store update research FINDING_ID --json "$(alignment-harness store get research FINDING_ID | jq -c '{measurements: ((.measurements // []) + [{
    "date": "2026-03-10T00:00:00Z",
    "value": 4.2,
    "label": "Avg exchanges per session (new users)",
    "notes": "Week of Mar 10, post-change"
  }])}')"
```

Add multiple measurements to build a time series. The admin UI renders these as charts.

---

## Step 6: Link Decisions

Connect code changes or decisions that caused the observed effect.

```bash
alignment-harness store update research FINDING_ID --json "$(alignment-harness store get research FINDING_ID | jq -c '{linkedDecisions: ((.linkedDecisions // []) + [{
    "commitHash": "abc123def",
    "date": "2026-03-08T00:00:00Z",
    "description": "Changed greeting prompt to be more directive",
    "impact": "negative"
  }])}')"
```

**Impact options:** `positive`, `negative`, `neutral`, `unknown`

You can also update existing linked decisions:

```bash
alignment-harness store update research FINDING_ID --json "$(alignment-harness store get research FINDING_ID | jq -c '{linkedDecisions: (.linkedDecisions | .[0] += { "impact": "negative" })}')"
```

---

## Step 7: Set Verdict and Confidence

When research is complete, set the final verdict.

```bash
alignment-harness store update research FINDING_ID --json '{
    "verdict": "confirmed",
    "confidence": 85,
    "actionRecommendation": "Revert commit abc123 and A/B test the new prompt against baseline",
    "status": "actionable"
  }'
```

**Verdict options:**

| Verdict | Meaning |
|---------|---------|
| `in-progress` | Research is ongoing |
| `confirmed` | Hypothesis validated by evidence |
| `refuted` | Hypothesis disproven by evidence |
| `inconclusive` | Evidence does not clearly support or refute |
| `needs-more-data` | Insufficient data to reach a conclusion |

**Confidence:** 0-100 continuous score. Never bucket it. 85 means exactly 85.

**Status options:** `backlog`, `actionable`, `in-progress`, `reviewed`, `done`, `in-production`, `archived`

---

## Quick Reference: API Endpoints

| Command | Purpose |
|---------|---------|
| `alignment-harness store list research [--where k=v]` | List all (filters: status, researchType, verdict) |
| `alignment-harness store list research --json \| jq '.[] \| select(tostring \| test("X"; "i"))'` | Agent-optimized search (compact fields) |
| `alignment-harness store get research :id` | Get single finding |
| `alignment-harness store add research --json '{...}'` | Create finding (title required) |
| `alignment-harness store update research :id --json '{...}'` | Update finding |
| `rm "$(alignment-harness records research)/:id.json"` | Delete finding |
| append to `comments` (same pattern as Step 5) | Add comment (text required) |
| append to `measurements` (Step 5) | Add measurement (value required) |
| append to `linkedDecisions` (Step 6) | Add linked decision (description required) |
| `.linkedDecisions[:index]` update (Step 6) | Update linked decision |

## Quick Reference: MCP Tools and Slugs

| Tool | Purpose |
|------|---------|
| `agent_find({ query })` | Semantic search across all IX knowledge |
| `agent_read({ id })` | Read cached artifact by 5-digit ID |
| `alignment-harness store list research` | List findings via local store |
| `alignment-harness store add research` | Create finding via local store |
| `alignment-harness store update research` | Update finding via local store |
| `alignment-harness store list research --json \| jq` | Agent search via local store |

## Quick Reference: Related Skills

| Skill | When to use |
|-------|-------------|
| `/agentic-artifact-cache` | Reading/managing cached research artifacts |

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.