Overview
Deep-Research-skills (https://github.com/Weizhena/Deep-Research-skills) is an MIT-licensed, multi-platform research skill library authored by Weizhena (released 2025-12-29). It targets Claude Code, OpenCode, and Codex, and turns coding-assistant CLIs into structured research workflows with explicit human-in-the-loop control points, suitable for academic, technical, market, and due-diligence investigations.
Design Philosophy
The project engineers the ideas from the paper RhinoInsight: Improving Deep Research through Control Mechanisms for Model Behavior and Context (arXiv:2511.18743, Yu Lei, Shuzheng Si, Wei Wang et al., DeepLang AI + Tsinghua University, November 2025).
Three guiding principles:
1. Two-stage architecture — outline generation is extensible; deep investigation is traceable; the two stages connect via user confirmation. 2. Human-in-the-loop — every critical step requires user confirmation rather than a fully autonomous black-box run. 3. Breakpoint-resume — long investigations can pause and resume; JSON files act as durable intermediate state.
The workflow runs in three phases:
- Phase 1 — /research: outline generation producing
outline.yaml+fields.yaml - Phase 2 — /research-deep: parallel-agent deep investigation producing per-item JSON files
- Phase 3 — /research-report: aggregation into
report.md - Main agent:
web-search-agent.md - 5 strategy modules under
web-search-modules/: academic-papers— Google Scholar, arXiv, Semantic Scholarchinese-tech— CSDN, Juejin, Zhihu, V2EXgithub-debug— GitHub Issues, README, Releasesstackoverflow— Stack Overflow, Stack Exchangegeneral-web— Reddit, official docs, blogs, Hacker Newsoutline.yaml:topic,items(name/category/description),execution(batch_size,items_per_agent,output_dir)fields.yaml:fieldsarray withname/description/category/detail_level, plusuncertainplaceholder arraydetail_level: minimal → brief → detailedcategory: basic info / technical features / performance metrics / milestones / business / competition & ecosystem / historical evolution / market positioning- JSON result: flat or nested (under category sub-dict); uncertain values marked
"[不确定]"and listed inuncertain report.md: anchor-linked TOC, skips fields containing[不确定]validate_json.py: checks JSON coverage of all fields defined infields.yamland validates JSON syntax. Run:python validate_json.py -f {fields_path} -j {json_path}/research-add-itemsand/research-add-fieldsdynamically expand an in-progress investigation.- Custom fields are freely defined via
fields.yaml. - The five skills are decoupled through the file system and can be invoked individually or chained.
- OpenClaw does not natively support Claude Code's
/skillsslash commands; trigger via natural language or alias. sessions_spawnparallelism is limited by OpenClaw's concurrency policy.kimi_search/kimi_fetchrate limits differ from Claude Code's WebSearch; adjustbatch_sizeaccordingly.feishu_ask_user_questionis only available on Feishu channels.- YAML frontmatter format differs slightly (e.g.,
aliasesfield). - RhinoInsight (arXiv:2511.18743) is the academic backbone; the project engineeringizes its verifiable checklist and evidence audit into runtime file-based checkpoints.
- Replacing a linear pipeline with a two-stage outline→deep loop, plus four explicit user confirmations, is the primary defense against context rot and accumulated error.
- Five decoupled slash-command skills compose into a fully chained workflow but remain individually callable.
- JSON-as-state enables true breakpoint-resume and cheap re-validation via
validate_json.py. - Five search strategy modules cover academic, Chinese-tech, GitHub, Stack Overflow, and general web sources with bilingual support.
- The OpenClaw adapter collapses five skills into
/deep-flowand substitutes Kimi tools + Feishu interactive prompts, with verified deployment as of 2026-05-27.
Four human confirmation nodes: after outline (items + fields + time range), after each batch (continue? add items/fields?), after report (TOC format), and optional archive.
Skill System
| Command | Function | Trigger |
|---|---|---|
| /research | Generate outline with items and fields | Research kickoff |
| /research-add-items | Add more research objects to existing outline | Missing dimensions discovered |
| /research-add-fields | Add more field definitions to existing outline | Insufficient fields |
| /research-deep | Parallel agents investigate each item | After outline confirmed |
| /research-report | Render JSON results as markdown report | After investigation completes |
Deep phase auto-scans output_dir/*.json to skip completed items; JSON files are named {item_name_slug}.json.
Search Agents and Modules
The agent reads the main config, then loads relevant strategy modules based on task type. Bilingual support (Chinese + English); Chinese-technical outputs are required.
Output Specifications
Platform Adaptation
| Platform | Skill Path | Agent Path | Tooling |
|---|---|---|---|
| Claude Code 2.1.0+ | ~/.claude/skills/research-zh (Chinese) or research-en (English) | ~/.claude/agents/ | Native WebSearch + Task; requires pip install pyyaml |
| OpenCode | Same path as Claude Code | ~/.config/opencode/agents/ | Requires OPENCODE_ENABLE_EXA=1 to enable websearch (otherwise only web fetch); Exa search API; requires pip install pyyaml |
| Codex | ~/.codex/skills/research-codex-zh or research-codex-en | ~/.codex/agents/ | web-researcher.toml; requires multi_agent in ~/.codex/config.toml; auto-install via /scripts/install-codex.sh; requires pip install pyyaml |
Validation and Quality Control — Three Layers
1. Field coverage: validate_json.py flags missing fields
2. Human confirmation gates: pause and wait for user after each batch
3. Uncertain-value filter: report generator skips fields tagged [不确定] and entries in the uncertain array
Extensibility
Installation (Quick Start)
1. pip install pyyaml
2. Clone the repo and copy the appropriate skill folder to the platform-specific path.
3. Copy agents/ to the platform-specific agents directory.
4. Trigger with /research <topic> → confirm outline → /research-deep → confirm per batch → /research-report.
A full topic investigation typically completes in 5–10 minutes.
OpenClaw Adaptation
Four adaptations were applied:
1. Path replacement: ~/.claude/skills/ → ~/.openclaw/skills/research-zh/deep-flow/
2. Tool replacement: WebSearch → kimi_search; WebFetch → kimi_fetch; Task → sessions_spawn
3. Flow encapsulation: 5 skills wrapped into a single /deep-flow entry
4. allowed-tools adaptation: Read,Write,exec,kimi_search,kimi_fetch,feishu_ask_user_question
/deep-flow <topic> runs a 5-step closed loop: generate outline → confirm items/fields → run /research-deep in batches → generate report → optionally archive to zhichai.net.
Known limitations:
Validation status: ✅ Deployed to ~/.openclaw/skills/research-zh/deep-flow/SKILL.md on 2026-05-27 21:18 and used to produce this meta-investigation.