New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

scientify

Package Overview
Dependencies
Maintainers
1
Versions
47
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

scientify

Scientify - AI-powered research workflow automation for OpenClaw. Includes idea generation, literature review, research pipeline skills, and arxiv tool.

Source
npmnpm
Version
1.13.6
Version published
Weekly downloads
171
-78.33%
Maintainers
1
Weekly downloads
 
Created
Source

Scientify

AI-powered research workflow automation for OpenClaw.

Scientify is an OpenClaw plugin that automates the full academic research pipeline — from literature survey to experiment execution — using LLM-driven sub-agents.

Website: scientify.tech | 中文文档

What It Does

Scientify turns a single research prompt into a complete automated pipeline. Each phase runs as an independent sub-agent — the orchestrator verifies outputs between steps and passes context forward.

Scenario 1 — End-to-End Research Pipeline

"Research scaling laws for classical ML classifiers on Fashion-MNIST"

The research-pipeline orchestrator runs all 6 phases in sequence, spawning a dedicated sub-agent for each:

flowchart LR
    A["Literature\nSurvey"] --> B["Deep\nAnalysis"] --> C["Implementation\nPlan"] --> D["Code\nImplementation"] --> E["Automated\nReview"] --> F["Full\nExperiment"]
What each phase produces
PhaseWhat HappensOutput File
1. Literature SurveySearch arXiv + OpenAlex, filter, download .tex sources, cluster by directionsurvey/report.md
2. Deep AnalysisExtract formulas, map methods to code, build cross-comparisonsurvey_res.md
3. Implementation PlanDesign 4-part plan — Dataset / Model / Training / Testingplan_res.md
4. Code ImplementationWrite ML code in uv-isolated venv, validate with 2-epoch runproject/run.py
5. Automated ReviewReview code → fix issues → rerun → re-review (up to 3 rounds)iterations/judge_v*.md
6. Full ExperimentComplete training + ablation studies with final analysisexperiment_res.md

Scenario 2 — Idea Generation

"Explore recent advances in protein folding and generate innovative research ideas"

The idea-generation skill surveys the field, then:

  • Generates 5 diverse research ideas grounded in real papers
  • Scores each on novelty, feasibility, and impact
  • Selects the best and produces an enhanced proposal with detailed methodology

[!TIP] Output: ideas/selected_idea.md — a ready-to-develop research proposal.

Scenario 3 — Standalone Literature Survey

"Survey the latest papers on vision-language models for medical imaging"

Run just the survey phase when you need a structured reading list without running the full pipeline:

  • Searches arXiv (CS/ML) and OpenAlex (cross-disciplinary, broader coverage)
  • Downloads .tex source files; retrieves open-access PDFs via Unpaywall
  • Clusters papers by sub-topic and extracts key findings
  • Generates a structured survey report

[!TIP] Output: survey/report.md + raw papers in papers/_downloads/

Scenario 4 — Review Paper Drafting

"Write a survey paper based on my project's research outputs"

After completing a research pipeline (or just a literature survey + deep analysis), the write-review-paper skill assembles a draft:

  • Synthesizes survey reports, analysis notes, and comparison tables
  • Structures the paper with Introduction, Related Work, Methods, and Discussion
  • Produces a publication-ready draft in Markdown

[!TIP] Output: a survey/review paper draft based on all accumulated project artifacts.

Advanced Scenarios — Combining OpenClaw Platform Capabilities

As an OpenClaw plugin, Scientify can leverage the platform's MCP servers, browser automation, multi-session concurrency, and more to build powerful composite workflows.

Scenario 5 — Literature Monitoring Bot

"Automatically search for new diffusion model papers every day and push a digest to our Slack channel"

Combine OpenClaw's MCP integration (Slack / Feishu / Email) with scheduled triggers to build automated literature monitoring:

flowchart LR
    A["Scheduled Trigger\n(cron / webhook)"] --> B["arxiv_search\n+ openalex_search"]
    B --> C["LLM Filtering\n+ Summary"]
    C --> D["Push to\nSlack / Feishu / Email"]
  • External cron job or OpenClaw webhook triggers a session periodically
  • Scientify's arxiv_search + openalex_search fetch the latest papers
  • LLM scores and filters by your research interests, generates concise summaries
  • MCP tools push the digest to Slack, Feishu, or email

[!NOTE] Requires: A configured MCP server (e.g., slack-mcp, feishu-mcp). OpenClaw supports declaring MCP servers in openclaw.json.

Scenario 6 — Download Paywalled Papers via Browser

"Download these 5 IEEE papers using my university VPN"

Scientify's built-in arxiv_download and unpaywall_download only handle open-access papers. For paywalled content, combine with OpenClaw's browser automation (Playwright MCP):

flowchart LR
    A["Scientify\nprovides paper URLs"] --> B["Playwright MCP\nopens browser"]
    B --> C["Institutional Proxy\nauto-authenticate"]
    C --> D["Navigate to Publisher\ndownload PDF"]
  • OpenClaw launches a controlled browser via Playwright MCP server
  • The browser accesses publisher sites through your institutional proxy / VPN
  • Automatically navigates to the paper page and downloads the PDF to papers/_downloads/
  • Works with IEEE, Springer, Elsevier, ACM, and other subscription-based publishers

[!NOTE] Requires: Playwright MCP server configured, and institutional network access to the papers.

Scenario 7 — Multi-Topic Parallel Research

"Research 3 directions simultaneously: LoRA fine-tuning, MoE architectures, KV-Cache optimization"

Leverage OpenClaw's multi-session concurrency (sessions_spawn) to run multiple research pipelines in parallel:

flowchart TD
    O["Main Agent\n(Orchestrator)"] --> A["Sub-session 1\nLoRA Fine-tuning"]
    O --> B["Sub-session 2\nMoE Architectures"]
    O --> C["Sub-session 3\nKV-Cache Optimization"]
    A --> D["Independent project dirs\nisolated from each other"]
    B --> D
    C --> D
  • Each sub-topic runs a full pipeline with its own project directory
  • The main agent collects results and produces a cross-topic comparative analysis
  • Ideal for quickly scouting multiple directions during the topic-selection phase of a survey paper

Scenario 8 — Interactive Paper Reading Assistant

"Walk me through 'Attention Is All You Need' section by section, explain every formula"

Combine OpenClaw's conversational interface with Scientify's paper_browser tool for interactive deep reading:

  • paper_browser loads papers page-by-page, avoiding context overflow
  • Discuss section by section: LLM explains derivations, compares with related work, highlights contributions
  • Follow up on implementation details — LLM uses github_search to find corresponding open-source code
  • All analysis notes are saved to notes/paper_{id}.md

Scenario 9 — Paper-to-Reproducible-Experiment

"Reproduce the results from Table 2 of this paper"

End-to-end automation: understand paper → implement code → run experiment → compare results:

flowchart LR
    A["paper_browser\nDeep read paper"] --> B["research-plan\nExtract experiment design"]
    B --> C["research-implement\nWrite code"]
    C --> D["research-experiment\nRun experiment"]
    D --> E["Compare with\npaper's Table 2"]
  • paper_browser reads the method and experiment sections in detail
  • research-plan extracts experiment config (hyperparameters, datasets, metrics)
  • research-implement generates code and validates in a uv-isolated environment
  • research-experiment runs the full experiment
  • LLM automatically compares your results against the paper's reported numbers

Prerequisites

  • Node.js >= 18
  • Python 3 + uv (for ML code execution)
  • git

Install OpenClaw

# Install OpenClaw globally
pnpm add -g openclaw    # or: npm install -g openclaw

# Run onboarding wizard (configures model provider, API key, workspace)
openclaw onboard

# Start the gateway (runs the WebUI server)
openclaw gateway

After openclaw gateway, the WebUI is available at http://127.0.0.1:18789/ (default port).

Proxy users: If you have http_proxy set, access the WebUI with --noproxy 127.0.0.1 or configure your browser accordingly.

Install Scientify

openclaw plugins install scientify

The plugin installs to ~/.openclaw/extensions/scientify/ and is automatically enabled.

From source (development)

git clone https://github.com/user/scientify.git
cd scientify && pnpm install && pnpm build

# Link as dev plugin
openclaw plugins install -l ./

Verify installation

openclaw plugins list
# Should show: scientify (enabled)

After installation, restart the gateway to load the plugin:

# Stop the running gateway (Ctrl+C), then:
openclaw gateway

Usage via WebUI

1. Open the WebUI

Navigate to http://127.0.0.1:18789/ in your browser.

2. Start a research task

Type a research prompt in the chat. Scientify skills are auto-matched by the LLM:

Research "transformer efficiency" and generate some innovative ideas

Or invoke a specific skill directly with a slash command:

/research-pipeline
/research-collect
/idea-generation

3. Monitor sub-agent progress

When the orchestrator spawns sub-agents, you'll see:

  • Spawn notification — "Phase 1: Literature Survey started"
  • Completion announcement — automatic message when the sub-agent finishes
  • Progress updates — the orchestrator verifies outputs and advances to the next phase

You can also check status anytime with:

/research-status

4. Manage projects

/projects              # List all projects
/project-switch <id>   # Switch to a different project
/papers                # List downloaded papers
/ideas                 # List generated ideas

Skills

Pipeline Skills (LLM-powered)

SkillSlash CommandDescription
research-pipeline/research-pipelineOrchestrator. Spawns sub-agents for each phase, verifies outputs between steps.
research-collect/research-collectSearch arXiv → filter → download .tex sources → cluster → generate survey report.
research-survey/research-surveyDeep analysis of papers: extract formulas, map to code, produce method comparison table.
research-plan/research-planCreate 4-part implementation plan (Dataset/Model/Training/Testing) from survey results.
research-implement/research-implementImplement ML code from plan, run 2-epoch validation with uv venv isolation.
research-review/research-reviewReview implementation. Iterates fix → rerun → review up to 3 times.
research-experiment/research-experimentFull training + ablation experiments. Requires review PASS.
idea-generation/idea-generationGenerate 5 innovative research ideas from a topic, select and enhance the best one.

Standalone Skills

SkillDescription
write-review-paperDraft a review/survey paper from project research outputs.
research-subscriptionCreate/list/remove scheduled Scientify jobs via scientify_cron_job (research digests or plain reminders).

Tools (available to LLM)

ToolDescription
arxiv_searchSearch arXiv papers. Returns metadata (title, authors, abstract, ID). Does not download files. Supports sorting by relevance/date and date filtering.
arxiv_downloadBatch download papers by arXiv ID. Prefers .tex source files (PDF fallback). Requires absolute output directory path.
openalex_searchSearch cross-disciplinary academic papers via OpenAlex API. Returns DOI, authors, citation count, OA status. Broader coverage than arXiv.
openreview_lookupLookup OpenReview evidence by title/ID/forum. Returns decision (if available), review rating/confidence aggregates, and concise review summaries for venue-risk analysis.
unpaywall_downloadDownload open access PDFs by DOI via Unpaywall API. Non-OA papers are silently skipped (no failure).
github_searchSearch GitHub repositories. Returns repo name, description, stars, URL. Supports language filtering and sorting.
paper_browserPaginated browsing of large paper files (.tex/.md) to avoid loading thousands of lines into context. Returns specified line range with navigation info.
scientify_cron_jobManage scheduled Scientify jobs from the model (upsert/list/remove). Main fields: action, scope, schedule, topic, project, message, max_papers, recency_days, candidate_pool, score_weights, sources, channel, to, no_deliver, run_now, job_id. run_now=true also returns a status_json snapshot for research tasks.
scientify_literature_statePersistent incremental state for subscriptions: prepare dedupe context (+ memory hints), record pushed papers + project knowledge_state artifacts (including paper_notes deep-reading fields and full-text cleanup run logs), feedback lightweight preference memory, and status inspection with traceable logs.

Commands (direct, no LLM)

CommandDescription
/research-statusShow workspace status and active project
/papersList downloaded papers with metadata
/ideasList generated ideas
/projectsList all projects
/project-switch <id>Switch active project
/project-delete <id>Delete a project
/research-subscribe ...Create/update scheduled Scientify jobs (supports daily, weekly, every, at, cron; options: --channel, --to, --topic, --project, --message, --max-papers, --recency-days, --candidate-pool, --score-weights, --sources, --no-deliver)
/research-subscriptionsShow your scheduled Scientify jobs
/research-unsubscribe [job-id]Remove your scheduled Scientify jobs (or a specific job)
/metabolism-statusCompatibility alias view over project knowledge_state summary

/research-subscribe examples:

  • /research-subscribe daily 09:00 Asia/Shanghai (auto-deliver to current chat sender/channel when possible)
  • /research-subscribe every 2h --channel feishu --to ou_xxx
  • /research-subscribe at 2m --channel feishu --to ou_xxx
  • /research-subscribe weekly mon 09:30 --channel telegram --to 123456789
  • /research-subscribe at 2m --channel webui (webui/tui are aliases of last)
  • /research-subscribe daily 08:00 --topic "LLM alignment"
  • /research-subscribe daily 08:00 --topic "LLM alignment" --project llm-alignment
  • /research-subscribe daily 08:00 --topic "LLM alignment" --max-papers 5 --recency-days 30 --sources arxiv,openalex
  • /research-subscribe daily 08:00 --topic "LLM alignment" --candidate-pool 12 --score-weights relevance:45,novelty:20,authority:25,actionability:10
  • /research-subscribe at 1m --message "Time to drink coffee."
  • /research-subscribe daily 09:00 --no-deliver (background only, no push)

Behavior notes:

  • Scoped upsert: per sender/channel scope, creating a new subscription replaces the previous one in that scope.
  • Delivery aliases: --channel webui and --channel tui map to last; they do not require --to.
  • Reminder-safe fallback: if topic looks like a plain reminder (for example "remind me to sleep"), Scientify auto-routes it as a reminder message instead of literature pipeline.
  • One-shot topic (at ... --topic ...) uses focused retrieval of representative papers; recurring schedules (daily/weekly/every/cron) use incremental tracking mode.
  • Recurring incremental mode uses candidate-pool ranking before Top-K selection; if no unseen paper is found, it runs one representative fallback pass before returning empty.
  • Default max_papers is 5 unless overridden by --max-papers.
  • Built-in quality gates use soft mode by default: non-fatal quality gaps are stored as warnings (quality_gate.severity=warn) while the run remains ok; only fatal issues are downgraded to degraded_quality.
  • Default strict recall behavior uses tiered retrieval (topic-related + broader method + adjacent cross-domain) to avoid sparse core selection on broad topics.
  • Each run executes at most one immediate reflection follow-up and writes trace/results back to knowledge_state for auditability.
  • Hypothesis-facing response policy is gate-driven:
    • if knowledge_state_summary.hypothesis_gate.accepted == 0, Scientify returns factual cycle status only (no speculative roadmap/deep-dive suggestions)
    • if accepted > 0, Scientify includes hypothesis details in the current message by default
    • when channel/runtime clearly supports multi-send, it may optionally split into two consecutive pushes (brief alert + detailed hypothesis)
  • Lightweight preference memory is stored backend-only (keyword/source affinities) and used to rerank future pushes quietly.
  • Incremental dedupe + memory state is persisted under ~/.openclaw/workspace/scientify/ (literature-state.json, literature-push-log.jsonl).
  • Project-level research traceability is persisted under ~/.openclaw/workspace/projects/{project-id}/knowledge_state/.
  • Full-text-first scheduled runs store per-paper deep-reading notes (domain/subdomains/cross-domain links/research goal/approach/design/contributions/practical insights/must-understand points/limitations/evidence anchors) under knowledge_state/paper_notes/.
  • Full-text files should be downloaded to a temporary directory and cleaned after each run; cleanup result is tracked in knowledge_state run logs.
  • Storage: subscription jobs are stored in OpenClaw cron storage; knowledge artifacts are stored in project workspace files.
  • Global inspect: openclaw cron list --all --json
  • Compatibility aliases: openclaw research init/list/status/delete and /metabolism-status are retained for migration, but internally use the same unified projects/*/knowledge_state architecture.

Workspace Structure

All research data is organized under ~/.openclaw/workspace/projects/:

projects/
├── .active                        # Current project ID
├── scaling-law-fashion-mnist/     # Example project
│   ├── project.json               # Metadata
│   ├── task.json                  # Task definition
│   ├── papers/
│   │   ├── _meta/                 # Paper metadata (*.json)
│   │   └── _downloads/            # Raw .tex/.pdf files
│   ├── survey/
│   │   └── report.md              # Literature survey report
│   ├── notes/                     # Per-paper deep analysis
│   │   └── paper_{arxiv_id}.md
│   ├── survey_res.md              # Method comparison table
│   ├── plan_res.md                # Implementation plan
│   ├── project/                   # ML code
│   │   ├── run.py
│   │   └── requirements.txt
│   ├── ml_res.md                  # Implementation results
│   ├── iterations/                # Review iterations
│   │   └── judge_v*.md
│   ├── experiment_res.md          # Final experiment results
│   ├── ideas/                     # Generated ideas
│       ├── idea_*.md
│       └── selected_idea.md
│   └── knowledge_state/           # Scheduled research state artifacts
│       ├── knowledge/
│       ├── paper_notes/           # Per-paper deep-reading records
│       ├── daily_changes/
│       ├── hypotheses/
│       ├── logs/
│       ├── state.json
│       └── events.jsonl
└── another-project/

Configuration

Plugin settings in ~/.openclaw/openclaw.json:

{
  "plugins": {
    "entries": {
      "scientify": {
        "enabled": true
      }
    }
  }
}

Plugin management

openclaw plugins list               # List installed plugins
openclaw plugins enable scientify    # Enable
openclaw plugins disable scientify   # Disable
openclaw plugins update scientify    # Update to latest
openclaw plugins doctor              # Diagnose issues

Known Limitations

  • Sub-agent timeout: Each sub-agent has a 30-minute timeout (runTimeoutSeconds: 1800). Complex literature surveys with many papers may need longer.
  • GPU/Sandbox: Code execution runs on host by default. OpenClaw sandbox does not support GPU passthrough yet.
  • Model dependency: Research quality depends heavily on the LLM model used. Claude Opus 4.5+ or GPT-5+ recommended.

Development

git clone https://github.com/user/scientify.git
cd scientify
pnpm install
pnpm build          # Build TypeScript
pnpm dev            # Watch mode

# Link to OpenClaw for testing
openclaw plugins install -l ./

See CLAUDE.md for version update SOP and contribution guide.

License

MIT

Author

tsingyuai

Keywords

openclaw

FAQs

Package last updated on 11 Mar 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts