Skip to content

Releases: RIKEN-RCCS/ProjectManagement

v1.1.0

08 Apr 00:33

Choose a tag to compare


v1.1 - ローカルLLM対応

情報セキュリティ対応として、会議議事録・Slackメッセージの処理を外部サービス(Claude API)から R-CCS内のローカルLLM(OpenAI互換API / vLLM)
に切り替えました。機密性の高い議事録・チャット内容が外部に送出されなくなります。


新機能

ローカルLLM対応(cli_utils.py)

  • OPENAI_API_BASE を設定すると call_claude() が自動的にローカルLLMにルーティング。未設定時は従来通り Claude CLI にフォールバック。
  • call_local_llm(): ストリーミングHTTP・SSEパース・CoT除去( タグ、英語前文)・thinking mode対応
  • load_claude_md_context(): docs/project.md からプロジェクト用語・ステークホルダー情報を自動抽出してプロンプトに埋め込み

高品質議事録生成(generate_minutes_local.py)

  • ../Minutes/scripts/ から本リポジトリへコピー。pm_from_recording.sh から参照。
  • マルチステージ処理(文字起こし → チャンク要約 → 統合議事録)
  • ストリーミング出力・CoT除去・thinking mode対応

pm_from_recording.sh リライト

  • Slurm/sbatch を除去してローカル実行に変更。GPU環境があればそのまま実行可能。
  • 新パイプライン:
    Whisper文字起こし → generate_minutes_local.py(ローカルLLMで議事録生成)
    → pm_minutes_import.py --no-llm(議事録DB保存)
    → pm_minutes_to_pm.py(pm.db転記)→ .mdファイル削除

pm_minutes_import.py 強化

  • テーブル形式アクションアイテムのパーサーを追加(generate_minutes_local.py の出力形式と互換)
  • プロンプトにプロジェクト文脈(用語集・ステークホルダー)を自動埋め込み(抽出精度向上)

バグ修正

  • pm_extractor.py / pm_minutes_import.py: NULL content レコードの INSERT 前ガードを追加(content が空のアイテムをスキップ)
  • pm_report.py: NULL content による AttributeError を修正(detect_risk_items・format_action_items・format_decisions の3箇所)

設定方法

~/.secrets/slack_tokens.sh に以下を追記してください:

export OPENAI_API_BASE="http://localhost:8000/v1" # vLLM エンドポイント
export OPENAI_API_KEY="dummy" # 認証不要のサーバは "dummy" で可
export OPENAI_MODEL="google/gemma-4-26B-A4B-it" # 読み込まれているモデル名
export OPENAI_MAX_TOKENS="8192" # Slack要約・抽出用(任意)

OPENAI_API_BASE 未設定時は従来通り Claude CLI(claude -p)で動作します。


v1.0.0 - Project Management System first release

24 Mar 23:16

Choose a tag to compare

富岳NEXT プロジェクトマネジメント支援システム v1.0.0

会議議事録・Slack投稿からの自動抽出、ゴール・マイルストーン管理、週次レポート・LLMインサイト生成を統合したPM支援システムの初回リリース。

主な機能

情報収集・蓄積

  • Slack チャンネルのメッセージを差分取得・スレッド単位で要約して SQLite DB に蓄積 (slack_pipeline.py)
  • 会議録音の Whisper 文字起こし → 詳細議事録DB (pm_minutes_import.py) → pm.db 転記 (pm_minutes_to_pm.py)
  • LLM によるアクションアイテム・決定事項の自動抽出と pm.db への保存 (pm_extractor.py)

ゴール・マイルストーン管理

  • goals.yaml にトップダウンでゴール・マイルストーンを定義し git で変更履歴を管理
  • pm_goals_import.py で pm.db に完全同期(追加・更新・削除)
  • 各アクションアイテムを LLM がマイルストーンに自動紐づけ推定

レポート・インサイト生成

  • 週次進捗レポートを Slack Canvas に投稿 (pm_report.py)
  • LLM によるプロジェクト健全性評価・リスク特定・改善提案を生成 (pm_insight.py)

Canvas 連携

  • Canvas 上でのアクションアイテム編集内容を pm.db に同期 (pm_sync_canvas.py)
  • 決定事項の確認チェックボックスと acknowledged_at の同期
  • 変更前後を audit_log テーブルに記録

セキュリティ

  • 全 DB を SQLCipher AES-256 で暗号化 (db_utils.py)
  • 平文ファイルをディスクに残さない録音インポートフロー

設計思想

LLM によるボトムアップの情報収集と、人間が承認するトップダウンのゴール管理を組み合わせた2層構造。「今どこにいるか」「ゴールに向けて前進しているか」を常に把握できる PM 支援システム。