Tutorial#tutorial#advanced#workflow

Claude Skills でドキュメントワークフローを自動化

Claude Skills を使用してエンドツーエンドのドキュメント処理パイプラインを構築。PDF を処理し、レポートを生成し、運用を効率化。

ClaudeSkills Team
20 分で読める

Claude Skills でドキュメントワークフローを自動化

Skills を使用して完全なドキュメント処理パイプラインを構築。このチュートリアルは実世界の自動化パターンを示す。

ワークフロー 1: 請求書処理

目標: PDF 請求書からデータを抽出 → 検証 → データベースに保存

markdown
1# 請求書処理ワークフロー
2
3## 必要な Skills
41. pdf-extractor: PDF からテキストを抽出
52. invoice-parser: 請求書フィールドを解析
63. data-validator: 抽出データを検証
74. database-writer: 結果を保存
8
9## ワークフローステップ
101. PDF 請求書を受信
112. pdf-extractor を使用してテキスト内容を抽出
123. invoice-parser を使用して請求書フィールドを解析
134. data-validator を使用してデータを検証
145. database-writer を使用してデータベースに保存
156. 確認メールを送信

実装

python
1# workflow.py
2from skills import pdf_extractor, invoice_parser, data_validator, database_writer
3
4def process_invoice(invoice_path):
5    # ステップ 1: テキストを抽出
6    text = pdf_extractor.extract(invoice_path)
7
8    # ステップ 2: フィールドを解析
9    data = invoice_parser.parse(text)
10
11    # ステップ 3: 検証
12    if not data_validator.validate(data):
13        return {"status": "error", "message": "無効なデータ"}
14
15    # ステップ 4: 保存
16    database_writer.insert("invoices", data)
17
18    return {"status": "success", "invoice_id": data['id']}

ワークフロー 2: レポート生成

目標: データを収集 → 分析 → PDF レポートを生成 → 配布

markdown
1# レポート生成ワークフロー
2
3## 必要な Skills
41. data-collector: ソースからデータを収集
52. data-analyzer: 分析を実行
63. chart-generator: 可視化を作成
74. pdf-generator: PDF レポートを構築
85. email-sender: レポートを配布
9
10## スケジュール
11タスクスケジューラを使用して毎日午前 9 時に実行

実装

python
1def generate_daily_report():
2    # データを収集
3    data = data_collector.fetch_yesterday_metrics()
4
5    # 分析
6    insights = data_analyzer.analyze(data)
7
8    # チャートを生成
9    charts = chart_generator.create_charts(data)
10
11    # PDF を構築
12    pdf = pdf_generator.create_report({
13        "data": data,
14        "insights": insights,
15        "charts": charts
16    })
17
18    # メールを送信
19    email_sender.send(
20        to=["[email protected]"],
21        subject="日次レポート",
22        attachment=pdf
23    )

ワークフロー 3: ドキュメント変換パイプライン

目標: 複数の形式を変換 → 標準化 → アーカイブ

markdown
1# ドキュメント変換ワークフロー
2
3## 必要な Skills
41. format-detector: ファイル形式を識別
52. word-converter: Word を PDF に変換
63. excel-converter: Excel を PDF に変換
74. ppt-converter: PowerPoint を PDF に変換
85. document-archiver: アーカイブに保存

実装

python
1def convert_and_archive(document_path):
2    # 形式を検出
3    format = format_detector.detect(document_path)
4
5    # PDF に変換
6    converters = {
7        "docx": word_converter,
8        "xlsx": excel_converter,
9        "pptx": ppt_converter
10    }
11
12    if format in converters:
13        pdf = converters[format].to_pdf(document_path)
14    else:
15        pdf = document_path  # すでに PDF
16
17    # アーカイブ
18    document_archiver.store(pdf, metadata={
19        "original_format": format,
20        "converted_at": datetime.now()
21    })

ベストプラクティス

1. エラーハンドリング

各ステップに try-catch ブロックを追加:

python
1def process_with_error_handling(doc):
2    try:
3        result = extractor.extract(doc)
4    except Exception as e:
5        log_error(f"抽出失敗: {e}")
6        send_alert("抽出エラー", doc)
7        return None

2. ログ記録

ワークフローの進行を追跡:

python
import logging

logger.info(f"{doc_id} のワークフローを開始")
logger.debug(f"{len(text)} 文字を抽出")
logger.error(f"検証失敗: {errors}")

3. 監視

ワークフローの健全性を監視:

python
1from prometheus_client import Counter, Histogram
2
3processed = Counter('docs_processed', '処理されたドキュメント')
4duration = Histogram('processing_duration', '処理時間')
5
6@duration.time()
7def process_document(doc):
8    result = workflow(doc)
9    processed.inc()
10    return result

実世界の例: Box 統合

Box は Claude Skills を使用してドキュメントワークフローを自動化:

  • 保存されたファイルを PowerPoint、Excel、Word に変換
  • 組織全体で形式を標準化
  • 大幅な時間節約

出典: 53AI - 実世界のケース

リソース


読書時間: 5分

著者: ClaudeSkills Team
Claude Skills でドキュメントワークフローを自動化