Analyst Research logo

Analyst Research

Community
genli-ai
analyst-research

End-to-end research workflow skill for investment analysts and policy researchers. Three scope modes the user picks at trigger time — light (4-5 page decision memo, ~15 min, 0 charts), medium (12-15 page topic brief, ~1 h, 6-10 charts), heavy (flagship report 30-40 pages / 15k+ words, ~2-3 h, 25-35+ charts, multi-stage workflow, multi-LLM, PDF + Word + WeChat + HTML derivations). Reports default to English; the AI replies in the user's chat language. Battle-tested on real macro/policy/equity reports (e.g. Saudi Vision 2030 deep-dive). Triggers when user types /analyst-research, /flagship-research, or describes needs like "research report", "topic analysis", "investment research", "做研报", "投研报告", "主题分析", "深度分析", "policy assessment", "industry deep-dive". Not for: pure news commentary (use topic-brief), slide decks (use deckster-slide-generator), one-shot Q&A.

Overview

Publishergenli-ai
Repositorymarket-research-skills
Skill nameanalyst-research
Stars
65
Forks
6
Bundled files
18
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 18 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by genli-ai on GitHub. Read the source before you install it.

Installation

Install the Analyst Research AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/genli-ai/market-research-skills/tree/main/skills/analyst-research
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/genli-ai/market-research-skills.git /tmp/market-research-skills
mkdir -p .claude/skills
cp -r /tmp/market-research-skills/skills/analyst-research .claude/skills/analyst-research
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Analyst Research in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Analyst Research on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Analyst Research is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

analyst-research · investment research workflow skill

A field-validated AI-assisted research workflow for investment analysts and policy researchers, packaged as a reusable Claude skill. Built on the methodology that produced the Saudi Vision 2030 deep-dive (35 figures, 15k+ words). Three scope modes; user picks at trigger time.

License: MIT. Copyright © 2026 Ligen ligen.thu@gmail.com. See LICENSE.

Step 0 — pick a mode (REQUIRED before loading references)

When this skill is triggered, before loading any reference file, ask the user to pick a scope. Present these three options verbatim:

This skill has three scope modes. Pick one based on your project size:

  light    4-5 page decision memo, 0 charts, ~15 min budget
           Single LLM session. Pure markdown footnote citations.
           Use for: exec brief, internal memo, quick decision support.

  medium   12-15 page topic analysis, 6-10 charts, ~1 h budget
           Single LLM. PDF + Word derivations. Sign-off checkpoint after draft.
           Use for: topic deep-dive, board memo with data, same-day analysis.

  heavy    Flagship report 30-40 pages / 15k+ words, 25-35+ charts, ~2-3 h budget
           Single or multi-LLM. PDF + Word + WeChat md + HTML publication.
           Runs the full 11-step staged workflow (framing → sourcing →
           analysis → drafting → review), with 3 sign-off checkpoints.
           Use for: industry deep-dive, macro thesis, policy assessment,
                    flagship investor publication.

Which mode fits your project? (reply with light, medium, or heavy)

If the user's trigger message already contains explicit scope hints (page count, chart count, time budget), infer the mode and ask one-line confirmation instead of presenting the full menu:

"Sounds like ~10 pages with a few charts — medium mode. Going with that?"

After the mode is confirmed, ask one short language question: "Report language — English (default), or another language?" (see Language policy below). Then load the reference files for that mode.

Loading order per mode

First always read references/workflow.md (≈40 lines, mode router). It points you to the mode-specific workflow file. (Each reference also has a .zh.md Chinese mirror; the agent reads the English .md.)

light mode

  1. Required references/workflow.md — overview + mode router
  2. Required references/workflow_light.md — 6-step skeleton, soft stops only, BLUF executive summary, grep self-check
  3. Required references/_quarto-light.yml — Quarto template optimized for a 4-5 page memo (no TOC, no number sections, footnote citations, 11pt body)
  4. No charts. No bibliography. No HTML/WeChat derivation. Skip report_style_spec.md and chart_template.py.

Then proceed to workflow_light.md §1 hypothesis lock to start the 6-step flow.

medium mode

  1. Required references/workflow.md — overview + mode router
  2. Required references/workflow_medium.md — 8-step skeleton, single LLM, one sign-off checkpoint after draft
  3. Required references/report_style_spec.md — visual spec for the 6-10 charts (chart_template interface contract, color palette, font policy)
  4. Required references/_quarto-medium.yml — Quarto template (footnote citations, no .bib, 11pt body, Songti SC CJK)
  5. On demand scripts/chart_template.py — chart styling implementation

Then proceed to workflow_medium.md §1 onboarding to scaffold the project and start.

heavy mode

  1. Required references/workflow.md — overview + mode router
  2. Required references/workflow_heavy.md — full 11-step skeleton, multi-LLM optional, 3 sign-off checkpoints (outline / draft / final)
  3. Required references/report_style_spec.md — visual spec including HTML publication derivation
  4. On demand scripts/chart_template.py — chart styling implementation
  5. On demand scripts/publication-style-template.html — HTML publication template
  6. On demand scripts/author.jpg — author photo placeholder for HTML page

Quarto template for heavy mode comes from report_style_spec.md §5.1 (no separate _quarto-heavy.yml file — the spec is the source of truth for heavy mode quarto config).

Then proceed to workflow_heavy.md §1.3 new-project onboarding to scaffold the project (copies the whole analyst-research/ folder into project root) and start.

Mode comparison at a glance

Quick summary below; authoritative source of truth is MODE_REGISTRY.md. Edit that file first when mode parameters change, then propagate here.

Dimensionlightmediumheavy
Output length4-5 pages12-15 pages30-40 pages / 15k+ words
Charts06-1025-35+
Runtime budget~15 min~1 h~2-3 h
LLM modelsinglesinglesingle or multi-LLM
Workflow steps6811
Hard stops01 (sign-off after draft)3 (outline / draft / final)
Derived outputsPDF + WordPDF + WordPDF + Word + WeChat md + HTML
CitationMarkdown footnoteMarkdown footnoteBibTeX + APA
Project scaffoldingminimalminimalfull (10 numbered dirs)
Chart templaten/ashared (chart_template.py)shared (chart_template.py)

For per-mode file dependencies, mode-upgrade trajectory, and retrospective section pointers, see MODE_REGISTRY.md.

When NOT to use this skill

  • Single-piece news commentary → use market-research-skills:topic-brief
  • Slide deck / PPT → use deckster-slide-generator
  • One-shot Q&A (no written report) → just answer directly, no skill
  • Pure literary or marketing copy → not this skill's domain
  • Tool/script-only project with no report output → not this skill's domain

This skill is built for synthesis-and-analysis of an existing body of research and data (it does not build original models, per workflow_heavy.md §2.2). It works best on topics with a deep existing literature (IMF / World Bank / IEA / BIS, investment-bank and consulting research, academic papers, regulatory disclosure). Bleeding-edge, news-driven topics with thin institutional coverage are a poor fit.

How to upgrade or downgrade scope mid-project

If you start a project in light and find it needs more depth, re-trigger the skill in medium — the workflow's first step is identical (hypothesis lock), so the early work transfers. Going medium → heavy is the same. Downgrading is harder (you've already invested in scaffolding); cut deliverables rather than re-run.

Project scaffold lives outside the skill

The skill stays read-only in ~/.claude/plugins/.../analyst-research/. Per-project artifacts live in the user's project directory.

For light mode, the skill creates only _quarto.yml (copied from _quarto-light.yml) and a single working file in the project. No subfolders.

For medium mode, the skill creates _quarto.yml (from _quarto-medium.yml), 5_scripts/_path.py (sys.path injector to load chart_template), and minimal numbered output directories.

For heavy mode, the skill copies the entire analyst-research/ folder into the project root as a local working copy, then creates the full 10-numbered-directory scaffold per workflow_heavy.md §11. This lets project-level overrides (palette, fonts, domain conventions) live in the local copy without polluting the skill.

Skill evolution

After each project closes, follow the retrospective section of the mode-specific workflow file (workflow_heavy.md §9, workflow_medium.md §8, workflow_light.md §6) to decide which project learnings get promoted back to the skill itself. The skill is git-versioned; each promotion bumps minor version. Major architectural changes bump major version.

Language policy

This skill is bilingual (English + Chinese) following the marketplace convention. Every authored doc exists in two files: an English .md (e.g. SKILL.md, references/workflow_heavy.md) and a Chinese mirror .zh.md (e.g. SKILL.zh.md, references/workflow_heavy.zh.md). English is the single source of truth; the .zh.md is a synchronized translation, not an independent version. Edit protocol, no exceptions: always write or change the English .md first, then propagate the same change to the .zh.md translation in the same change-set. Never edit only the Chinese, and never let the two drift; when wording conflicts, the English .md wins.

  1. Conversation replies follow the user's chat language. English chat → reply in English; Chinese chat → reply in Chinese; likewise for any other language. This is runtime behaviour, not a stored artifact.
  2. Report language defaults to English. At Step 0 / onboarding, after the mode is picked, ask one short question: "Report language — English (default), or another language?" If the user does not specify, write the draft in English; if they name another language, write in that. Lock the choice in the project CLAUDE.md. This supersedes any older "draft follows hypothesis language" rule.
  3. Language-conditioned grep redlines. For an English report the Chinese colon-ratio redline is skipped and the unescaped-$ redline is mandatory (escape dollar amounts as \$). For a Chinese report the reverse applies.

The Chinese mirror of this file is SKILL.zh.md. 中文版见 SKILL.zh.md。

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Analyst Research AI skill do?

End-to-end research workflow skill for investment analysts and policy researchers. Three scope modes the user picks at trigger time — light (4-5 page decision memo, ~15 min, 0 charts), medium (12-15 page topic brief, ~1 h, 6-10 charts), heavy (flagship report 30-40 pages / 15k+ words, ~2-3 h, 25-35+ charts, multi-stage workflow, multi-LLM, PDF + Word + WeChat + HTML derivations). Reports default to English; the AI replies in the user's chat language. Battle-tested on real macro/policy/equity reports (e.g. Saudi Vision 2030 deep-dive). Triggers when user types /analyst-research, /flagship-re...

Why use Analyst Research on TypingMind?

Because you install it once and use it with any model. Analyst Research is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Analyst Research in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/genli-ai/market-research-skills/tree/main/skills/analyst-research. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Analyst Research?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Analyst Research?

As many as you like. As long as a model supports skills, you can use Analyst Research with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Analyst Research AI skill free?

Yes. It is published on GitHub by genli-ai under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇