research-acquire
Download research papers and extract metadata
What this skill does
# Research Acquire Command
Download research papers from public repositories and extract metadata.
## Instructions
When invoked, perform automated paper acquisition:
1. **Identify Source**
- Parse DOI, arXiv ID, or URL
- Determine paper hosting location
- Check if paper already exists in `.aiwg/research/sources/`
2. **Download Paper**
- Attempt direct PDF download from source
- Try fallback sources (arXiv mirror, Unpaywall, PMC)
- Save to `.aiwg/research/sources/[ref-id].pdf`
- Verify download integrity (file size, PDF structure)
3. **Extract Metadata**
- Parse PDF metadata (title, authors, year)
- Query CrossRef/Semantic Scholar for enhanced metadata
- Extract abstract, keywords, citation count
- Determine source type (journal, conference, preprint)
4. **Generate Frontmatter**
- Create YAML frontmatter per @$AIWG_ROOT/agentic/code/frameworks/sdlc-complete/schemas/research/frontmatter-schema.yaml
- Assign REF-XXX identifier
- Calculate PDF checksum (SHA-256)
- Set initial GRADE baseline from source type
5. **Extract Full Text** (default, unless `--no-extract-text`)
- Extract full text from PDF to `.aiwg/research/sources/text/REF-XXX.txt`
- This text is the primary input for downstream analysis — analysis agents
must read this file, not just metadata or abstract
- If extraction fails (scanned PDF, encrypted): log warning, set
`full_text_available: false` in frontmatter
6. **Create Finding Document**
- Generate `.aiwg/research/findings/REF-XXX-[slug].md` from template
- Populate frontmatter with extracted metadata
- Add placeholder sections for key findings
- Update fixity manifest
7. **Post-Acquisition**
- Log acquisition in `.aiwg/research/acquisition-log.yaml`
- Update corpus index
- Suggest next steps (quality assessment, documentation)
## Arguments
- `[identifier]` - DOI, arXiv ID, or URL (required)
- `--output [path]` - Custom output location (default: auto-generate)
- `--ref-id [REF-XXX]` - Specific REF-XXX identifier (default: auto-assign)
- `--extract-text` - Extract full text to `.txt` file for analysis (default: enabled; use `--no-extract-text` to skip)
- `--no-metadata` - Skip metadata enrichment
- `--force` - Re-download even if paper exists
## Examples
```bash
# Acquire by DOI
/research-acquire 10.48550/arXiv.2308.08155
# Acquire by arXiv ID
/research-acquire arXiv:2308.08155
# Acquire with custom identifier
/research-acquire https://arxiv.org/pdf/2308.08155.pdf --ref-id REF-022
# Acquire with full text extraction
/research-acquire 10.1145/3377811.3380330 --extract-text
```
## Expected Output
```
Acquiring Paper: 10.48550/arXiv.2308.08155
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Step 1: Resolving identifier
✓ DOI resolved to arXiv:2308.08155
✓ Paper not found in corpus
Step 2: Downloading PDF
✓ Downloaded from arxiv.org (2.4 MB)
✓ Saved to .aiwg/research/sources/REF-022.pdf
✓ Checksum: a1b2c3d4e5f6...
Step 3: Extracting metadata
✓ Title: AutoGen: Enabling Next-Gen LLM Applications...
✓ Authors: Wu, Q., Bansal, G., Zhang, J., et al. (9 authors)
✓ Year: 2023
✓ Source: arXiv preprint
✓ Citations: 234 (as of 2026-02-03)
Step 4: Creating finding document
✓ Generated .aiwg/research/findings/REF-022-autogen.md
✓ Frontmatter populated
✓ Template sections added
Step 5: Updating corpus
✓ Added to fixity manifest
✓ Updated INDEX.md
✓ Logged acquisition
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Acquisition complete!
REF-ID: REF-022
Title: AutoGen: Enabling Next-Gen LLM Applications...
File: .aiwg/research/sources/REF-022.pdf
Finding: .aiwg/research/findings/REF-022-autogen.md
Next Steps:
1. /research-quality REF-022 - Assess evidence quality
2. /research-document REF-022 - Create detailed summary
3. /research-cite REF-022 - Generate citation
```
## Provenance Tracking
All acquisitions create provenance records:
```yaml
# .aiwg/research/provenance/records/REF-022-acquisition.yaml
entity:
id: "urn:aiwg:artifact:.aiwg/research/sources/REF-022.pdf"
type: "research_paper"
activity:
id: "urn:aiwg:activity:acquisition:REF-022:001"
type: "acquisition"
started_at: "2026-02-03T12:00:00Z"
ended_at: "2026-02-03T12:00:15Z"
agent:
id: "urn:aiwg:agent:research-acquisition-agent"
type: "aiwg_agent"
source:
identifier: "10.48550/arXiv.2308.08155"
url: "https://arxiv.org/pdf/2308.08155.pdf"
```
## References
- @$AIWG_ROOT/agentic/code/frameworks/research-complete/agents/research-acquisition-agent.md - Acquisition Agent
- @$AIWG_ROOT/src/research/services/acquisition-service.ts - Download implementation
- @$AIWG_ROOT/agentic/code/frameworks/sdlc-complete/schemas/research/frontmatter-schema.yaml - Metadata format
- @.aiwg/research/fixity-manifest.json - Checksum tracking
- @$AIWG_ROOT/agentic/code/frameworks/sdlc-complete/rules/provenance-tracking.md - Provenance requirements
## Storage Routing (#934, #968)
This skill's persistence flows through `resolveStorage('research')`. On the default `fs` backend the research corpus lives at `.aiwg/research/`. **Heavy artifacts (papers, archived sources) can move to a secondary drive** by setting `roots.research` in `.aiwg/storage.config` (one of the headline #934 use cases).
```bash
aiwg research-store path # resolved root
aiwg research-store list --prefix sources/
aiwg research-store get sources/paper-123.md
```
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.