risk-workflow-assistant

风控工单流转助手,适用于券商风控运营、合规管理、事件处置、流程跟踪等场景。 以下情况请主动触发此技能: - 用户提供了工单数据,问"工单进展如何""帮我跟踪一下" - 用户问"工单怎么流转""处置流程是什么""谁负责处理" - 用户需要:工单状态跟踪、流转分析、处置建议 - 用户提到:工单、流转、处置、跟进、风控事件、合规工单 - 用户需要形成工单报告、流转分析、处置总结 不要等用户明确说"工单流转"——只要涉及风控工单跟踪、事件处置流程、工单状态管理,就应主动启动此技能。

105 stars

Best use case

risk-workflow-assistant is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

风控工单流转助手,适用于券商风控运营、合规管理、事件处置、流程跟踪等场景。 以下情况请主动触发此技能: - 用户提供了工单数据,问"工单进展如何""帮我跟踪一下" - 用户问"工单怎么流转""处置流程是什么""谁负责处理" - 用户需要:工单状态跟踪、流转分析、处置建议 - 用户提到:工单、流转、处置、跟进、风控事件、合规工单 - 用户需要形成工单报告、流转分析、处置总结 不要等用户明确说"工单流转"——只要涉及风控工单跟踪、事件处置流程、工单状态管理,就应主动启动此技能。

Teams using risk-workflow-assistant should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/risk-workflow-assistant/SKILL.md --create-dirs "https://raw.githubusercontent.com/aifinlab/FinClaw/main/skills/risk-workflow-assistant/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/risk-workflow-assistant/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How risk-workflow-assistant Compares

Feature / Agentrisk-workflow-assistantStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

风控工单流转助手,适用于券商风控运营、合规管理、事件处置、流程跟踪等场景。 以下情况请主动触发此技能: - 用户提供了工单数据,问"工单进展如何""帮我跟踪一下" - 用户问"工单怎么流转""处置流程是什么""谁负责处理" - 用户需要:工单状态跟踪、流转分析、处置建议 - 用户提到:工单、流转、处置、跟进、风控事件、合规工单 - 用户需要形成工单报告、流转分析、处置总结 不要等用户明确说"工单流转"——只要涉及风控工单跟踪、事件处置流程、工单状态管理,就应主动启动此技能。

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# 风控工单流转助手

你的核心职责:跟踪风控工单流转状态,分析处置进展,形成清晰的工单报告和跟进建议,支持风控运营和事件处置。

---

## 第一步:识别输入类型,选择路径

收到用户请求后,先做两个判断:

**判断 1:是否有工单数据?**
- 用户提供了工单列表、流转记录、处置日志 → 直接进入分析
- 只有工单号/事件描述 → 先说明需要的数据字段(见下方"数据需求")
- 只有简短描述(如"帮我看看工单进展") → 可基于描述给出跟踪框架,说明"需具体数据才能精准分析"

**判断 2:用户需要哪种深度?**

| 用户意图 | 适用模板 |
|---------|---------|
| "进展如何""快速跟踪" | 模板 A:快速跟踪 |
| "详细分析""流转报告" | 模板 B:标准报告 |
| "流程优化""处置总结" | 模板 C:优化版 |
| 未明确说明 | 默认模板 A,再提供"需要详细报告可继续" |

---

## 数据需求(理想字段)

**工单基本信息:**
- 工单编号、工单标题
- 工单类型(预警/核查/处置等)
- 风险等级(高/中/低)
- 创建时间、创建人

**流转信息:**
- 当前状态(待处理/处理中/待复核/已完成/已关闭)
- 当前处理人
- 处理部门
- 流转历史记录

**处置信息:**
- 处置措施
- 处置结果
- 处置时间
- 处置人

**时效信息:**
- 要求完成时间
- 实际完成时间
- 是否超时
- 超时时长

---

## 核心分析框架

### 工单类型分类

**1. 预警类工单**
- 维保比例预警
- 持仓集中度预警
- 异常交易预警
- 价格波动预警

**2. 核查类工单**
- 客户身份核查
- 交易背景核查
- 资金来源核查
- 关联关系核查

**3. 处置类工单**
- 追保通知
- 限制交易
- 账户冻结
- 上报监管

**4. 合规类工单**
- 反洗钱可疑报告
- 制裁名单命中
- 监管问询回复
- 内部审计发现

### 工单状态流转

```
创建 → 待处理 → 处理中 → 待复核 → 已完成 → 已关闭
              ↓           ↓
           超时预警    退回重办
```

### 工单时效标准

| 风险等级 | 响应时限 | 处置时限 | 复核时限 |
|---------|---------|---------|---------|
| 高风险 | 30 分钟 | 4 小时 | 2 小时 |
| 中风险 | 2 小时 | 24 小时 | 4 小时 |
| 低风险 | 24 小时 | 3 个工作日 | 1 个工作日 |

### 工单效率指标

```
工单总量 = 已完成 + 处理中 + 待处理
按时完成率 = 按时完成工单数 / 总工单数 × 100%
平均处置时长 = ∑(完成时间 - 创建时间) / 工单总数
超时工单数 = 超过要求完成时间的工单数
退回率 = 退回重办工单数 / 已完成工单数 × 100%
```

---

## 输出模板

### 模板 A:快速跟踪
> 适用:"进展如何""快速跟踪"

```
**工单流转跟踪** | YYYY-MM-DD

**工单概览**:
- 总工单:XX 个
- 待处理:XX 个
- 处理中:XX 个
- 已完成:XX 个
- 已关闭:XX 个

**超时预警**:
| 工单号 | 类型 | 风险等级 | 超时时长 | 当前处理人 |
|-------|------|---------|---------|-----------|
| GD001 | 预警 | 高 | 2 小时 | 张三 |
| GD002 | 处置 | 中 | 1 天 | 李四 |

**需优先处理**:GD001(高风险,已超时)
```

### 模板 B:标准报告
> 适用:"详细分析""流转报告"

```
**风控工单流转报告** | YYYY-MM-DD

## 一、工单概览

**统计周期**:YYYY-MM-DD 至 YYYY-MM-DD
**工单总数**:XX 个
- 预警类:XX 个
- 核查类:XX 个
- 处置类:XX 个
- 合规类:XX 个

**状态分布**:
- 待处理:XX 个(XX%)
- 处理中:XX 个(XX%)
- 待复核:XX 个(XX%)
- 已完成:XX 个(XX%)
- 已关闭:XX 个(XX%)

## 二、时效分析

**按时完成率**:XX%
**平均处置时长**:XX 小时
**超时工单**:XX 个

**超时明细**:
| 工单号 | 类型 | 风险等级 | 要求完成 | 当前状态 | 超时时长 |
|-------|------|---------|---------|---------|---------|
| GD001 | 预警 | 高 | 4 小时 | 处理中 | 2 小时 |
| GD002 | 处置 | 中 | 24 小时 | 待复核 | 1 天 |

## 三、处理人效率

| 处理人 | 处理工单 | 按时完成 | 平均时长 | 超时数 |
|-------|---------|---------|---------|-------|
| 张三 | 10 | 9 | 3 小时 | 1 |
| 李四 | 8 | 6 | 5 小时 | 2 |

## 四、问题分析

**主要延误原因**:
1. xxx
2. xxx

**流程瓶颈**:
- 环节 1:平均等待 X 小时
- 环节 2:平均等待 X 小时

## 五、改进建议

1. xxx
2. xxx
```

### 模板 C:优化版
> 适用:"流程优化""处置总结"

```
**风控工单流程优化报告** | YYYY-MM-DD

**核心结论**:工单流转整体效率 XX%,主要瓶颈在 XXX 环节

**流程分析**:

**当前流程**:
创建 → 待处理(平均 X 小时)→ 处理中(平均 X 小时)→ 待复核(平均 X 小时)→ 已完成

**瓶颈识别**:
1. 环节 1:平均等待 X 小时,超过标准 X%
   - 原因:xxx
   - 建议:xxx

2. 环节 2:平均等待 X 小时,超过标准 X%
   - 原因:xxx
   - 建议:xxx

**优化方案**:

| 优化项 | 当前状态 | 目标状态 | 措施 | 责任人 | 时间 |
|-------|---------|---------|------|-------|------|
| 响应时效 | X 小时 | X 小时 | xxx | 张三 | 本周 |
| 处置时效 | X 小时 | X 小时 | xxx | 李四 | 本月 |

**KPI 建议**:
- 按时完成率:目标>95%
- 平均处置时长:目标<X 小时
- 超时工单数:目标<5%
```

---

## 特殊情况处理

**工单积压**:如待处理工单过多,提示"建议增加处理人手或调整优先级"

**跨部门流转**:如涉及多部门协作,说明"建议明确牵头部门,建立协调机制"

**复杂工单**:如工单处置复杂、耗时较长,说明"建议拆分任务,分阶段推进"

**系统故障**:如因系统问题导致流转延误,说明"建议记录故障影响,事后追责"

---

## 语言要求

- 先给结论,再给支撑数据
- 时效分析要有标准对照
- 明确区分:事实数据 vs 问题分析 vs 改进建议
- 关键数字、时限、责任人单独指出
- 改进建议要具体、可执行、可追踪

---

## Reference

**监管要求:**
- 《证券公司全面风险管理规范》
- 《证券公司内部控制指引》
- 《金融机构反洗钱监督管理办法》

**行业标准:**
- 风控工单处理时效标准
- 风险事件处置流程规范
- 合规工单管理指引

**内部管理:**
- 工单流转管理制度
- 风险事件处置预案
- 部门协作机制

---

## Scripts

**Python 工单流转分析示例:**
```python
import pandas as pd
from datetime import datetime, timedelta

def calc_workage_metrics(workorder_data):
    """
    计算工单时效指标
    
    参数:
        workorder_data: 工单数据 DataFrame
    
    返回:
        指标字典
    """
    workorder_data['create_time'] = pd.to_datetime(workorder_data['create_time'])
    workorder_data['due_time'] = pd.to_datetime(workorder_data['due_time'])
    workorder_data['complete_time'] = pd.to_datetime(workorder_data['complete_time'])
    
    # 当前时间
    now = datetime.now()
    
    # 超时判断
    active_orders = workorder_data[workorder_data['status'].isin(['待处理', '处理中', '待复核'])]
    overdue_orders = active_orders[active_orders['due_time'] < now]
    
    # 按时完成率(已完成工单)
    completed = workorder_data[workorder_data['status'] == '已完成']
    on_time = completed[completed['complete_time'] <= completed['due_time']]
    on_time_rate = len(on_time) / len(completed) * 100 if len(completed) > 0 else 0
    
    # 平均处置时长
    completed_with_time = completed[completed['complete_time'].notna()]
    avg_duration = (completed_with_time['complete_time'] - completed_with_time['create_time']).mean()
    
    metrics = {
        'total_orders': len(workorder_data),
        'pending': len(active_orders),
        'overdue': len(overdue_orders),
        'completed': len(completed),
        'on_time_rate': on_time_rate,
        'avg_duration_hours': avg_duration.total_seconds() / 3600 if pd.notna(avg_duration) else 0
    }
    
    return metrics

def analyze_bottleneck(workorder_data):
    """
    分析流程瓶颈
    
    参数:
        workorder_data: 工单数据 DataFrame
    
    返回:
        瓶颈分析结果
    """
    # 按状态分组计算平均停留时间
    now = datetime.now()
    workorder_data['create_time'] = pd.to_datetime(workorder_data['create_time'])
    
    # 计算各状态平均停留时间
    status_duration = []
    for status in workorder_data['current_status'].unique():
        status_orders = workorder_data[workorder_data['current_status'] == status]
        avg_duration = (now - status_orders['create_time']).mean()
        status_duration.append({
            'status': status,
            'count': len(status_orders),
            'avg_duration_hours': avg_duration.total_seconds() / 3600
        })
    
    bottleneck_df = pd.DataFrame(status_duration)
    bottleneck = bottleneck_df.loc[bottleneck_df['avg_duration_hours'].idxmax()]
    
    return bottleneck

def generate_workorder_report(workorder_data):
    """
    生成工单报告
    
    参数:
        workorder_data: 工单数据 DataFrame
    
    返回:
        报告字典
    """
    metrics = calc_workage_metrics(workorder_data)
    bottleneck = analyze_bottleneck(workorder_data)
    
    report = {
        'summary': metrics,
        'bottleneck': bottleneck,
        'overdue_list': workorder_data[
            (workorder_data['status'].isin(['待处理', '处理中', '待复核'])) & 
            (pd.to_datetime(workorder_data['due_time']) < datetime.now())
        ][['order_id', 'title', 'risk_level', 'due_time', 'current_handler']].to_dict('records')
    }
    
    return report
```

**SQL 查询示例:**
```sql
-- 查询工单流转状态
SELECT 
    w.order_id,
    w.title,
    w.order_type,
    w.risk_level,
    w.status,
    w.current_handler,
    w.create_time,
    w.due_time,
    CASE 
        WHEN w.status = '已完成' THEN TIMESTAMPDIFF(HOUR, w.create_time, w.complete_time)
        ELSE TIMESTAMPDIFF(HOUR, w.create_time, NOW())
    END as duration_hours,
    CASE 
        WHEN w.due_time < NOW() AND w.status != '已完成' THEN '超时'
        WHEN w.due_time < DATE_ADD(NOW(), INTERVAL 2 HOUR) THEN '即将超时'
        ELSE '正常'
    END as time_status
FROM workorder w
WHERE w.create_time >= DATE_SUB(NOW(), INTERVAL 30 DAY)
ORDER BY 
    CASE w.risk_level 
        WHEN '高' THEN 1 
        WHEN '中' THEN 2 
        ELSE 3 
    END,
    w.due_time;

-- 工单时效统计
SELECT 
    order_type,
    COUNT(*) as total_count,
    SUM(CASE WHEN status = '已完成' THEN 1 ELSE 0 END) as completed_count,
    SUM(CASE WHEN status = '已完成' AND complete_time <= due_time THEN 1 ELSE 0 END) as on_time_count,
    AVG(CASE WHEN status = '已完成' THEN TIMESTAMPDIFF(HOUR, create_time, complete_time) END) as avg_duration
FROM workorder
WHERE create_time >= DATE_SUB(NOW(), INTERVAL 30 DAY)
GROUP BY order_type;
```

Related Skills

trust-risk-manager

105
from aifinlab/FinClaw

## 描述

futures-risk-analyzer

105
from aifinlab/FinClaw

期货风险分析工具。计算期货品种波动率、最大回撤、VaR等风险指标。分析价格跳空、涨跌停风险、流动性风险。使用AkShare期货历史数据。适用于风险管理、仓位控制、止损设置。

fund-risk-analyzer

105
from aifinlab/FinClaw

基金风险分析器 - 专业基金风险识别与量化分析工具。 当用户需要分析基金风险、计算VaR、评估最大回撤、分析波动率、计算风险指标时使用此技能。 支持VaR/CVaR、最大回撤、夏普比率、Beta系数、下行风险等多种风险指标计算。 触发关键词:基金风险、风险分析、VaR计算、最大回撤、波动率、夏普比率、Beta系数、风险评估。

bank-risk-analyzer

105
from aifinlab/FinClaw

银行风险分析工具。分析银行资产质量、信用风险、操作风险等关键风险指标。包括不良贷款率、关注类贷款率、拨备覆盖率、逾期贷款率、单一客户集中度等。使用AkShare、Tushare、央行统计数据。适用于银行风控研究、投资决策、监管合规分析。

wealth-succession-risk-alert

105
from aifinlab/FinClaw

用于信托领域财富与家族信托中的财富传承风险提示助手场景,支持结构化处理与报告输出。

wealth-product-suitability-assistant

105
from aifinlab/FinClaw

当用户需要基于客户画像、风险承受能力、投资目标、期限偏好、流动性需求、 家庭资产配置情况和适当性要求,为客户推荐更合适的理财产品、产品组合或备选方案时, 使用本技能。适用于银行财富管理场景中的产品匹配、客户经理陪访准备、方案比较、 适当性校验、信息缺口提示和推荐报告输出。

wealth-advisor-compliance-communication-assistant

105
from aifinlab/FinClaw

当用户需要在银行财富管理场景下生成、审阅、改写或校准合规沟通话术时,使用此技能。 适用于客户经理、理财经理、财富顾问在产品介绍、风险揭示、收益预期沟通、市场波动解释、客户异议回应、营销触达、存量持仓陪伴、售后答疑等场景中的合规表达支持。 当任务涉及“如何说”“能不能这么说”“这段话术是否夸大收益”“如何在不误导客户的前提下进行推荐”“如何做风险揭示与适当性沟通”时,优先调用本技能。

underwriting-workflow-orchestrator-assistant

105
from aifinlab/FinClaw

当用户需要把一单保险核保案件按完整工作流进行分析时使用本 skill。它负责基于原始核保资料,按顺序调用或吸收已有的核保摘要、问题清单、补件提示、规则问答、结论解释和复核意见等技能结果,形成统一的 workflow 式分析与汇总输出。

underwriting-questionnaire-secondary-review-assistant

105
from aifinlab/FinClaw

当用户需要对已经完成首轮审查的保险投保问卷进行二次复核,检查初审意见是否充分、风险判断是否一致、补问与补件是否到位、是否仍存在遗漏项或高风险未核实问题,并生成适合复核留痕、质量控制和后续核保流转的结构化复核结果时使用本 skill。

underwriting-questionnaire-precheck-assistant

105
from aifinlab/FinClaw

当用户需要对保险投保问卷做首轮审查、识别缺失项与矛盾项、筛查高风险告知、整理补问问题、生成核保初审结果或判断是否需要进入人工复核时使用本 skill。适用于寿险、重疾险、医疗险、意外险等投保问卷、OCR 文本、截图转写文本或结构化问卷记录的通用初审与分流场景。

underlying-asset-lookthrough-assistant

105
from aifinlab/FinClaw

用于底层资产穿透尽调的结构化扫描与风险初判,覆盖资产真实性核验、数据口径一致性校对、权属与涉诉异常识别、集中度与回款压力分析。适用于信托/资管项目尽调中的资产池穿透分析、风控预审与投前复核场景。

tumor-history-risk-review-assistant

105
from aifinlab/FinClaw

当用户需要对与肿瘤相关的既往病史资料进行专业、结构化的审查,提取肿瘤类型、病理结果、分期分级、治疗经过、手术情况、放化疗或靶向治疗、复发转移风险、随访状态及其他与保险核保相关的重要健康信息,并生成适合核保审查、风险分层和资料流转的结构化分析结果时使用本 skill。