research
boshu2/agentops
Trace code patterns and test recurring implementations to answer specific questions with cited evidence.
What is research?
Research answers bounded questions about codebases by inspecting sources, tracing flows, and testing patterns. Use it when you need evidence-backed answers to specific uncertainties—not for external feature analysis (use reverse-engineer instead).
- Investigate specific questions with cited evidence from code, commits, and primary sources
- Trace repository flows from entry points through domain logic, integration, and tests
- Mine recurring implementation patterns across distinct exemplars to identify reusable rules
- Generate durable research reports with findings, contradictions, and explicit unknowns
- Validate codebase reconnaissance and pattern-mining outputs against strict contracts
How to install research
npx skills add https://github.com/boshu2/agentops --skill researchHow to use research
- 1.State your specific question and what decision it informs
- 2.Identify the smallest relevant sources to inspect (code files, commits, tests)
- 3.Inspect sources directly; verify search results against actual code
- 4.Distinguish observations from inferences; cite all material claims with file:line references
- 5.Lead with the answer, then present evidence and any remaining gaps or unknowns
Use cases
- Verify how a specific authorization flow works before implementing a security change
- Identify whether a recurring error-handling pattern is intentional or a bug to fix
- Trace a data persistence layer from API entry to database to understand transaction boundaries
- Discover common patterns in test setup across multiple test files to propose a helper
- Answer whether a deprecated API is still in use before removing it
- Backend engineers investigating codebase behavior before making changes
- Security researchers tracing authorization and data flows
- Architects auditing bounded contexts and integration patterns
- Developers refactoring repeated patterns into reusable rules
research FAQ
Use research to answer specific questions about your own codebase with cited evidence. Use reverse-engineer to understand external features or third-party systems.
A validated reconnaissance pack includes codebase-recon.json and a companion markdown report with commit OID, complete baseline flows, claims with confidence levels, and explicit coverage boundaries.
At least three distinct, independent exemplars anchored by their role in behavior, plus a candidate pattern tested against a separate holdout before back-application to originals.
Yes for inline investigation with explicit limits stated, but durable codebase-recon.v1 packs require clean source and commit-bound evidence only.
Retain each source's identifier, author, and revision; compare claims as agreement, contradiction, or unknown while preserving original evidence without recursive synthesis.
Full instructions (SKILL.md)
Source of truth, from boshu2/agentops.
name: research description: 'Trace code or test a recurring pattern to answer one cited question. Use when: uncertainty needs evidence. Not for external feature teardowns; use reverse-engineer.' practices:
- pragmatic-programmer
- ddd-bounded-context hexagonal_role: driving-adapter consumes:
- research-question produces:
- research-report
- codebase-recon.v1
- pattern-mining.v1
context_rel: []
skill_api_version: 1
user-invocable: true
allowed-tools: Read, Grep, Glob, Bash, Write
metadata:
capabilities: [research, codebase_recon, pattern_mining]
effects: [write_research_report, write_recon_pack, write_pattern_evidence]
canonical_status: canonical
disposition: keep_specialist
tier: execution
dependencies: []
context:
window: fork
intent:
mode: task
sections:
exclude:
- HISTORY output_contract: cited answer; findings.json for ordinary durable reports; validated codebase-recon.v1 or pattern-mining.v1 for selected evidence modes
Research
Answer the caller's bounded question with cited evidence. Choose ordinary investigation, repository tracing or pattern evidence according to the question; these are optional modes, not a sequence. A quick answer needs no report file. Plan owns unified discovery and resumption when the question is part of shaping a change; return this cited answer to that existing intent without restarting its interview or taking over caller choices.
Investigation
- State the question and the decision it informs. Reuse the accepted scope and identify what evidence would answer it; do not expand the objective mid-search.
- Inspect the smallest relevant sources. For changing external facts, use current primary sources. Verify search hits against the actual source.
- Distinguish observation, inference, contradiction and unknown. Every material claim cites evidence; source agreement does not erase shared provenance.
- Lead with the answer, then show evidence and remaining gaps. Each part of the question is answered or explicitly unknown with the searched scope disclosed.
Code claims cite the observed commit plus file:line. For uncommitted content,
state HEAD and the changed-file status; do not claim the working bytes can be
replayed from HEAD. Keep source identity and freshness visible. Search output,
CASS, MS and prior reports are leads, not authority or required phases. Use the
current agent by default; additional readers and runtimes require caller
selection or existing authorization.
For several supplied reports, retain each source's identifier, author/runtime when known and revision/date. Compare claims as agreement, contradiction or unknown while preserving their original evidence. Repeated quotations of one upstream source are not independent corroboration. Verify decisive claims at their source and return one synthesis; do not launch recursive synthesis passes.
Repository tracing
For a repository model or audit, start from its declared entry points in docs, build manifests or command help and verify them against executable paths. Follow a relevant flow through entry, domain logic, integration and tests; prefer a completed trace to a shallow directory inventory. Report an interrupted trace at its exact file/line and explain what is missing. Choose a useful lens such as persistence, authorization, CLI, build or test without requiring a sweep of every lens.
An inline investigation may use dirty working-tree evidence with explicit limits.
When a durable codebase-recon.v1 pack is selected, its stricter contract applies:
- Write
codebase-recon.jsonand a citedcodebase-recon.mdcompanion at the caller's chosen location, default.agents/scratch/codebase-recon/<run-id>/. Keep mental model, bounded audit, pattern evidence and synthesis distinct. - Bind the exact current full commit OID, at least one complete baseline flow, claims with kind, confidence and evidence, and inspected/uninspected scope. Fact and inference citations resolve to repository-relative regular files at that commit; the companion report includes line references. Unknowns remain explicit.
- The manifest
reportnames the companion and its lowercase SHA-256. The companion has one<!-- codebase-recon-report.v1 -->marker andmanifest_commit,manifest_mode,flows_sha256,claims_sha256, andcoverage_sha256markers; section digests hash thejq -cSoutput for each section, including its trailing newline. - Discover validated priors with
skills/research/scripts/codebase-recon/validate-output.sh --repo-root <target> --discover-priors. Prefer a verified delta when it answers the request. Delta evidence needs a valid ancestor chain,baseline_verified: trueand the exact changed paths between the prior and current commits; do not relabel a directory scan as delta. - Run
skills/research/scripts/codebase-recon/validate-output.sh --repo-root <target> <recon.json>before handoff. It checks both artifacts and rechecks their identities, HEAD and source state; dirty source outside.agents/cannot satisfy this commit-bound pack. Return a validation failure without disguising it as a completed recon pack.
Preserve earlier .agents/recon/<run-id>/ packs and their exact cited identities.
Prior discovery checks both legacy and current roots; never move or delete old
proof to match a new layout. See the recon scenarios.
Pattern evidence
For a recurring implementation shape, test whether the similarity represents a reusable rule. Record replayable searches, examined hits and exclusions. Align independent implementations by their role in the behavior, then separate required invariants, legitimate variation and incidental syntax. Copies of one lineage do not count as independent evidence.
A pattern-mining.v1 promotion needs at least three distinct anchored exemplars,
a candidate formed before inspecting a separate holdout, a passing holdout and
successful back-application of every refinement to the original exemplars.
Every invariant needs supporting alignment. Otherwise preserve the result as
outcome: hypothesis with route: no-action; do not package weak evidence as a rule.
For this selected durable mode, write pattern-mining.json to
.agents/scratch/pattern-mining/<run-id>/ or an authorized caller location and
run skills/research/scripts/pattern-mining/validate-output.sh <pattern.json>.
Preserve the schema's outcome, exemplars, invariants, variations,
incidental, holdout, back_application and route fields. The compatibility route
value operationalize on a valid promotion refers to
Skill Builder's distillation mode;
it is not a retired skill invocation or automatic dispatch.
Recommend the least committed useful shape: no action, a reference/checklist line, a template, helper or gate. A gate needs demonstrated cost of violation, not merely recurrence. Research returns evidence; adoption remains an explicit caller decision. See pattern scenarios.
Output and boundaries
Return a cited answer directly unless a durable output was requested or the
selected evidence contract requires one. Ordinary durable reports follow
findings.json: question, scope, answer, evidence,
contradictions, unknowns, checked and unchecked areas. Multi-report synthesis
also retains source_ledger and comparison. Selected recon and pattern modes
retain their own validated formats instead of forcing them into this schema.
Use only authorized sources and destinations. For restricted or mined episode material, follow Memory's access and storage boundary. Research selects no work, owns no merged context store, mutates no lifecycle state and issues no semantic verdict. The native caller owns implementation, judgment and completion of the authorized outcome.
Related skills
More from boshu2/agentops and the wider catalog.

retro
Capture a session learning.

reverse-engineer-rpi
Reverse-engineer product specs.

rpi
Apply outcome-to-judgment charter for authorized work completion with plan, implement, and validate phases.

security
Review code for vulnerabilities, secrets, dependencies, and prompt risks with read-only security scanning.

security-suite
Run composable security analysis.

shared
Shared reference contracts and CLI patterns for AgentOps multi-agent skills.