Skip to content

Profiles & Environment

Chapter 02 of the ResearchTools manual. Back to table of contents.

Profiles

A domain profile centralizes everything domain-specific (Scopus subject areas and exclusions, topical-relevance signals, off-topic flag, stats profile, author, course context, language) in one YAML file under profiles/, so the agents and skills stay shared across users and labs: one maintained core, N profiles.

Profile Domain Author Default
engineering.yaml Mechanical / electrical / ML / control / systems engineering Martin Otis (UQAC) yes
cosmetic.yaml Cosmetic / formulation science (SPF, microbiome, dermatology, sensory) Lionel Ripoll (UQAC) no
_template.yaml Copy it to profiles/<domain>.yaml to add a new domain - -

The active profile is recorded in .claude/CLAUDE.md as the machine-readable line active_profile: <name>. Select it at install time (.\install.ps1 -Profile <name>, or the interactive prompt) or edit that line directly. Currently wired consumer: scopus-researcher (search clauses, Step 3a relevance check, synthesis framework); the remaining fields (author, stats_profile, course_context, language) are schema-ready and will be wired incrementally. Field-by-field spec, fallback rules, and the add-a-profile procedure: profiles/README.md.

Environment variables / API keys

Set these at the Windows User scope (PowerShell), then restart Claude Code:

[System.Environment]::SetEnvironmentVariable('SCOPUS_API_KEY', 'your-key', 'User')
Variable / source Required for Where to get it
SCOPUS_API_KEY Required — all /scopus, /auditreview, /auditpaper, /auditthesis, /litreview, /litreview-updater, /bibclean, /replyreviewer, and PDF retrieval Elsevier Developer Portal
.scopus_key file Fallback for SCOPUS_API_KEY — place the key in .claude/skills/scopus/.scopus_key (gitignored) same key as above
UNPAYWALL_EMAIL Optional — enables the Unpaywall open-access tier in download_pdf.py (HTML/PDF fallback when no publisher PDF); a plain contact email, or pass --email any institutional email
GEMINI_API_KEY Optional — Gemini 2.0 Flash cross-review and table enrichment (deliberation panel) Google AI Studio
GITHUB_TOKEN Optional — GPT-4o cross-review via GitHub Models (deliberation panel) GitHub → Settings → Developer settings → Personal access token
S2_API_KEY (or SEMANTIC_SCHOLAR_API_KEY) Optional — Semantic Scholar author/PDF backfill; without it the throttled public pool is used Semantic Scholar API key request
--insttoken (CLI flag, not an env var) Optional — off-campus Elsevier access when not on the UQAC network/VPN UQAC library / Elsevier institutional token

An on-campus network connection or active UQAC VPN is required for Scopus access unless an --insttoken is supplied. Secrets are kept out of git: .env, secrets/, and credentials/ are listed in .gitignore.


← 01 Installation | Table of contents | 03 Token management →