# How to Set Up the News-Pulse Skill for Stock Price Movement Attribution

> Learn how to set up the news-pulse skill for stock price movement attribution. Discover rapid analysis of stock swings with AI Berkshire's agent orchestration.

- Repository: [Xbt Lin/ai-berkshire](https://github.com/xbtlin/ai-berkshire)
- Tags: how-to-guide
- Published: 2026-07-11

---

**The news-pulse skill in AI Berkshire delivers a 10-15 minute rapid attribution analysis by orchestrating a team-lead agent and four parallel scout agents to investigate large stock price swings.**

The **news-pulse skill** in the `xbtlin/ai-berkshire` repository provides automated attribution analysis for unexpected stock price movements through a declarative multi-agent workflow. This skill orchestrates parallel research tasks to determine whether volatility stems from fundamental value events, regulatory shifts, industry peer movements, or sentiment-driven market dynamics.

## Architecture of the News-Pulse Skill

The news-pulse implementation follows the three-tier architecture defined in the project’s [`README.md`](https://github.com/xbtlin/ai-berkshire/blob/main/README.md) (lines 60-70), separating concerns into distinct layers that ensure deterministic execution.

### Skill Layer Configuration

The skill is defined as a declarative Markdown file located at [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md). This file specifies the command syntax, required arguments (company name, time window, price movement magnitude, and focus area), and the complete execution flow. The skill validates input parameters and computes an **information-availability rating** (A/B/C) to determine research depth—C-rated stocks trigger "扫盲模式" (basic education mode) with explicit "真因不明" (unknown cause) conclusions when data is scarce.

### Agent Orchestration Pattern

Upon invocation, the skill spawns a **team-lead agent** and four parallel **scout agents** using the `TeamCreate` tool (implementation at [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md) lines 44-49). The scouts operate independently:

- **Company-event scout**: Investigates corporate announcements and fundamental developments
- **Regulatory-watcher scout**: Monitors policy changes and compliance filings  
- **Industry-peer scout**: Analyzes competitor movements and sector beta
- **Sentiment-tracker scout**: Tracks market mood and social media signals

Each agent receives a custom prompt template (defined in [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md) lines 50-66) and executes via `TaskCreate` calls, achieving **four-times the search volume** of single-agent workflows.

### Tool Layer Integration

Agents utilize built-in tools including `WebSearch`, `WebFetch`, `TaskCreate`, `TaskUpdate`, and `SendMessage` to gather primary sources. Numeric data validation occurs through [`tools/financial_rigor.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/financial_rigor.py), which provides cross-validation and precise decimal calculations to prevent hallucinated figures.

## Executing the News-Pulse Workflow

The workflow runs through six deterministic stages defined in [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md).

### Parameter Validation and Information Rating

First, the system validates inputs and assigns an information-richness rating (lines 21-41). This rating determines whether the stock qualifies for full analysis or requires basic background research.

### Parallel Scout Execution

The skill creates a dedicated team named `{company}-newspulse` and launches four concurrent `TaskCreate` operations (lines 50-66). Each scout fetches primary sources using `WebFetch`, performs independent verification, and outputs a **core-findings** list plus a chronological timeline table.

### Aggregation and Report Generation

The team-lead agent synthesizes the four scout reports (lines 54-89) while enforcing consistency using a [`CLAUDE.md`](https://github.com/xbtlin/ai-berkshire/blob/main/CLAUDE.md)-style objective tone to prevent hallucinations. The synthesis produces:

- A one-sentence attribution summary
- An attribution table with estimated contribution percentages  
- A nature-of-movement judgment (value event, sentiment, mixed, or unknown)
- An action-recommendation checklist

The final markdown report writes to `reports/{company}/{company}-news-{YYYYMMDD}.md` (lines 117-124), after which `TeamDelete` removes the temporary team.

## How to Invoke the News-Pulse Skill

### Claude Code Slash Commands

The simplest invocation uses the slash command interface:

```text
/news-pulse 腾讯

```

This generates a complete analysis report at `reports/腾讯/腾讯-news-20260702.md` (date reflects execution time).

### Codex Prompt Integration

For Codex compatibility, use the prompt defined in [`codex-prompts/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/codex-prompts/news-pulse.md):

```text
Use news-pulse to analyse 拼多多 跌12% 一周内

```

This wrapper forwards requests to the same underlying skill, maintaining identical behavior to the Claude command.

### Programmatic JSON Payload

For internal API integration, structure the payload as:

```json
{
  "skill": "news-pulse",
  "arguments": {
    "company": "阿里巴巴",
    "window_days": 14,
    "price_move": "涨 8% 5 天"
  }
}

```

The backend converts this into the series of `TeamCreate`, `TaskCreate`, and `TaskUpdate` calls defined in the skill specification.

## Understanding the Output Format

The generated report includes structured sections:

```markdown
#### 一句话归因

这次 8% 涨幅主要由行业 Beta + 新品发布驱动，价值事件贡献约 20%，情绪贡献约 80%。

#### 异动归因表

| 候选解释       | 估算贡献 | 置信度 |
|----------------|----------|--------|
| 新品发布（双11预热） | +5%      | 高 |
| 行业 Beta (电商整体复苏) | +2%      | 中 |
| 市场情绪（大V看好） | +1%      | 高 |
| 基本面未出现负面 | 0%      | 极高（排除） |

```

## Summary

- The **news-pulse skill** resides in [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md) and provides rapid 10-15 minute attribution analysis for stock price movements
- Execution requires the **three-tier architecture**: declarative skill definition, agent orchestration (team-lead plus four scouts), and tool integration (`WebSearch`, `WebFetch`, etc.)
- Invoke via **Claude slash commands** (`/news-pulse`), **Codex prompts**, or **programmatic JSON** with identical backend behavior
- Output generates to `reports/{company}/{company}-news-{YYYYMMDD}.md` with attribution tables, confidence scores, and action recommendations
- The **information-availability rating** (A/B/C) ensures appropriate handling of data-scarce securities through "扫盲模式"

## Frequently Asked Questions

### What is the difference between A, B, and C information ratings?

The **information-availability rating** computed during parameter validation (lines 21-41 of [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md)) categorizes stocks based on data richness. **A-rated** stocks receive full multi-agent analysis, while **C-rated** stocks enter "扫盲模式" (basic education mode) with explicit "真因不明" (unknown cause) conclusions when data is insufficient.

### How long does the news-pulse analysis take to complete?

The **news-pulse skill** delivers results in **10-15 minutes** according to the architecture documentation. This efficiency stems from parallel execution of four scout agents simultaneously investigating different signal sources, compared to sequential single-agent workflows that would require 40-60 minutes for equivalent coverage.

### Can I customize the scout agents or add additional research tasks?

The skill definition in [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md) (lines 50-66) uses declarative `TaskCreate` calls with custom prompt templates for each scout. While the default configuration includes four specialized scouts, you can modify the Markdown skill file to add additional `TaskCreate` operations or adjust the prompt templates within the "每个 Agent 的 prompt 模板" block before execution.

### Where are the analysis reports stored?

Completed reports write to the **`reports/{company}/{company}-news-{YYYYMMDD}.md`** path as defined in [`skills/news-pulse.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/news-pulse.md) lines 117-124. The filename includes the execution datestamp, and temporary teams are automatically torn down via `TeamDelete` after report generation to prevent resource accumulation.