# shidi Β· 师弟 β€” Your Junior Lab Mate in an Agent Skill πŸ§‘β€πŸ”¬ *Research workflow skill for AI coding agents: literature review Β· experiment design Β· scientific figures Β· paper reading Β· data organization* ### *You bring the ideas, shidi does the legwork.* [![License](https://img.shields.io/badge/license-MIT-2ea44f)](LICENSE) [![Version](https://img.shields.io/badge/version-0.3-blue)](https://github.com/IcyCreamDAS/shidi-skill/releases) [![GitHub stars](https://img.shields.io/github/stars/IcyCreamDAS/shidi-skill.svg?style=social)](https://github.com/IcyCreamDAS/shidi-skill/stargazers) [![Agent](https://img.shields.io/badge/agent-Claude%20Code%20%7C%20Codex%20%7C%20OpenClaw-111827)](README.md) [![Zero-Dep](https://img.shields.io/badge/dependencies-zero-ff69b4)](README.md) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen)](https://github.com/IcyCreamDAS/shidi-skill/pulls) [δΈ­ζ–‡](./README.md) | English > shidi (*"junior lab mate"* in Chinese) is a complete research workflow that lives inside your AI IDE β€” not a prompt template. Hand it an idea (literature research / experiment design / figures / paper reading / data chores), and it returns **real deliverable files**. Your data stays local. No platform or model lock-in. > > It's not fire-and-forget, either β€” shidi is meant to be bossed around while you do something else. Say "shidi, help me with …", and it asks when it must, runs the rest, and hands you the files. > **Built for AI for Science workflows, grad students and researchers using agentic AI** β€” literature review, experiment design, figures and paper reading become deliverable, cross-verifiable files instead of chat answers.

What's New Β· Deliverables Β· Why shidi Β· Quick Start Β· Demo Β· Guardrails

--- ## πŸ‘€ Demo > Screenshots below are **illustrative** (content redacted) β€” real runs produce fresh files for your own topic.

Final report structure Cross-verification brief structure

--- ## ✨ What's New - **2026-08** β€” πŸ“₯ Batch PDF download (OpenAlex/Unpaywall OA lookup; failures classified and reported, never silently skipped) - **2026-08** β€” πŸ“„ Multi-format reports (Markdown β†’ HTML β†’ PDF via headless Edge printing, zero deps) - **2026-08** β€” πŸ” PDF extraction layer (text-based β†’ Markdown to save context; scans auto-tagged `needs_vision` for the vision route) - **2026-08** β€” πŸ—‚ Per-angle intermediate reports (parallel multi-agent research: one file per angle, merge by reading files only β€” main context never overflows) ## πŸ“€ Deliverables Every job ends in **real files** β€” not chat text.
πŸ“„ Final Report(`~/shidi-output/`οΌ‰
Markdown / Word Β· full report or experiment plan
shidi_<topic>_v3_20260814.md
β”œβ”€β”€ 1. Background & chosen approach
β”œβ”€β”€ 2. Principle (literature-anchored)
β”œβ”€β”€ 3. Steps & details
β”œβ”€β”€ 4. Precautions
β”œβ”€β”€ 5. Flaw list (unvarnished)
β”œβ”€β”€ 6. Literature summary (by angle)
β”œβ”€β”€ 7. References (reading depth βœ…/⚠/❌)
└── 8. Changelog (v1β†’v2β†’v3)
βœ… Cross-Verification Brief(`~/shidi-verify/`οΌ‰
A task sheet for another LLM β€” also your self-check list
shidi-verify_<topic>_v3_20260814.md
β”œβ”€β”€ 1. Task description
β”œβ”€β”€ 2. Original question (verbatim)
β”œβ”€β”€ 3. Full output (with reading depth)
β”œβ”€β”€ 4. Verification checklist
└── 5. Required output format
> Every delivery looks like this. Take the brief to **another LLM** for independent verification β€” every comment gets an adopt/reject + reason, loop until you're satisfied. ## ✨ Why shidi | Chatting with a raw model | shidi | |:--|:--| | Answers live in the chat log | Delivers **files**: reports, briefs, figures, CSVs β€” archivable, citable, shareable | | You nudge it step by step | Built-in workflow (search β†’ score β†’ read β†’ report β†’ verify); answer 3 parameters and it runs | | Hallucinations on your conscience | Six-dim scoring, DOI triple-dedup, no-fabrication rule, honest reading-depth labels, mandatory verification brief | | Behavior changes with the model | Pure SKILL.md + Markdown β€” works in Claude Code / Codex / OpenClaw / any SKILL.md agent | ## πŸš€ Capabilities | Capability | Description | |:--|:--| | πŸ“š **Literature research** | 3 parameters up front β†’ 3Γ—3=9 angles β†’ top-journal targeted search + fallback chain β†’ six-dim scoring β†’ graded reading β†’ batch PDF download β†’ file report | | πŸ§ͺ **Experiment design** | Free-form approach brainstorm β†’ literature-backed β†’ principle / steps / precautions / **unvarnished flaw list** | | πŸ“ˆ **Figures** | CSV/TXT/Excel β†’ clean β†’ compute (numpy/scipy/sympy) β†’ publication-grade rendering, with Origin-ready data export | | πŸ”¬ **Paper reading** | source-map six-step deep read β†’ 16-section paper cards β†’ glossary | | πŸ”„ **Cross-verification (the soul)** | Always emits a verification brief β†’ another LLM checks independently β†’ iterate in loops | | πŸ“‹ **Lab notes** | Standardized experiment/batch IDs, YAML frontmatter archiving | ## 🧭 Flow ```mermaid flowchart TD A["Decide topics"] --> B["Research"] B --> C["3 parameters
{count, domain, requirements}"] C --> D["Search (T1β†’T2β†’T3)"] D --> H["Merge & score"] H --> E["Read (βœ…/⚠/❌)"] E -->|out| F["Lit summary β‘ "] E -->|out| G["References β‘‘β‘’
PDF or DOI+GB/T 7714"] F --> I{"More full-texts?"} G --> I I -->|yes| J["User uploads PDF"] J -->|supplement| H I -->|no| K["Final report"] I -->|no| L["Verify brief (always)"] K --> M{"Cross-verify?"} L --> M M -->|yes| N["Another LLM checks"] N -->|revise| D M -->|no| O["Done βœ“"] ``` ## πŸš€ Quick Start ```bash git clone https://github.com/IcyCreamDAS/shidi-skill.git cp -r shidi-skill/skills/shidi ~/.claude/skills/ ``` Then just say: ```text shidi, research the literature on XX β€” 20 papers shidi, design an experiment for XX shidi, plot this data shidi, read this paper in depth for me ``` Just "shidi" works too β€” it confirms the task type before starting. Compatible with any agent that follows the SKILL.md spec (Claude Code / Codex / OpenClaw / OpenCode…). > [!IMPORTANT] > ### An executor, not a genie > `harness + model = agent` β€” shidi owns the workflow, the model sets the ceiling. And it never decides for you: angle selection, parameters, trade-offs all bounce back to you. It takes the grunt work; the ideas and judgment stay yours. ## πŸ€– Persona - Calls you "senior" (or "senior sister" if you say so) - A humble, slightly cheeky junior: *"here's what I made, what do you think?"* - Praises you when corrected ("good catch, senior"), never bends on science - Persona activates only on the trigger word β€” other conversations unaffected *Yes, it asks a lot of questions β€” that's how you know it's really shidi.* ## βš™οΈ Dependencies - **Zero external deps**: pure SKILL.md + Markdown, nothing to install - Optional: numpy/scipy/matplotlib/pandas/sympy (figures; pyvista for 3D), pdf-inspector (PDF extraction layer) - Search fallback chain: WebSearch β†’ open scholarly APIs (OpenAlex/Crossref/arXiv, no keys needed) ## πŸ›‘ Guardrails 1. Capped six-dim scoring, totals recomputed 2. Topic-match <10 β†’ veto 3. DOI / arXiv ID / URL triple dedup 4. **No fabrication** β€” unverifiable claims are labeled "unverified" 5. Honest reading-depth labels: full text βœ… / abstract ⚠ / unavailable ❌ 6. Every verification comment gets adopt/reject + reason β€” never blind agreement ## πŸ“œ Credits Design ideas borrowed from [nature-skills](https://github.com/Yuan1z0825/nature-skills) (Yuan1z0825 team): routing, six-dim scoring, search fallback chain, paper cards. ## πŸ“„ License [MIT License](LICENSE) β€” free to use; just buy shidi a bubble tea πŸ§‹