npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@53able/conflux

v0.4.6

Published

Multi-agent thinking methodology MCP tools for strategic analysis and decision-making

Readme

🧠 Conflux - Thinking Agents MCP

Type-safe multi-agent thinking methodology tools for strategic analysis and decision-making

TypeScript MCP MIT License Version

9つの構造化された思考法を組み合わせたマルチエージェントシステムで、開発の各局面に最適な意思決定と分析を支援します。

🧠 思考法開始時のコンテキスト

プロジェクト概要 Confluxは9つの構造化された思考法(アブダクション、ロジカル、クリティカル、MECE、演繹、帰納、PAC、メタ、ディベート)を組み合わせたマルチエージェントシステムです。

主要機能

  • 局面特化: 15の開発局面に最適化された思考法の組み合わせ
  • 型安全: Zodスキーマベースの完全な型安全性(any型完全禁止)
  • MCP準拠: Model Context Protocolで他のAIツールと統合可能
  • マルチエージェント: 9つの専門思考法エージェントが連携して動作
  • 関数型スタイル: 純粋関数ベースのエージェント実装(TaskEither型でエラーハンドリング)
  • 自己修復機能: 入力データの自動修復とスキーマ適合
  • フォールバック機能: 複数LLMプロバイダー間の自動切り替え

使用方法

  • 局面別処理: import { processPhaseTaskEither, processGoldenPatternTaskEither } from '@53able/conflux'
  • 単一思考法: import { processSingleMethodTaskEither } from '@53able/conflux'
  • CLI: npx @53able/conflux [command]
  • MCPサーバー: npx @53able/conflux server

詳細情報

✨ 特徴

  • ⚡ 高性能: TypeScript + tsx による高速実行
  • 🎨 美しいCLI: Commander.jsベースの直感的なコマンドライン
  • 🔗 LLM統合: AI SDK v5で複数のLLMプロバイダーをサポート
  • 🛠 自動復旧: スキーマ不一致やエラー時の自動復旧機能搭載
  • 🔧 自己修復: 入力データの自動修復とスキーマ適合機能
  • 🔄 フォールバック: 複数LLMプロバイダー間の自動切り替え
  • 📊 型安全: Zodスキーマベースの完全な型安全性(any型完全禁止)
  • 🐳 Docker対応: 本番環境向けのDockerコンテナ化とマルチステージビルド
  • 🏢 エンタープライズ対応: Cursor、Claude Codeなどの開発環境で使用可能

🧠 思考法エージェント

| 思考法 | 機能 | 適用場面 | |--------|------|----------| | アブダクション | 驚きの事実から説明仮説を形成 | 事業探索、デバッグ | | ロジカルシンキング | 論点から結論への論理的道筋を構築 | 要件定義、計画 | | クリティカルシンキング | 前提・論点・根拠を体系的に疑う | リファクタリング、レビュー | | MECE | 漏れなく重複なく分類・整理 | 優先順位付け、設計 | | 演繹的思考 | 一般原則から具体的結論を導出 | アーキ設計、実装 | | 帰納的思考 | 個別事例から共通パターンを発見 | 価値検証、実験 | | PAC思考 | 前提・仮定・結論に分解して検証 | 仮説分解 | | メタ思考 | 思考プロセス自体を評価・改善 | ふりかえり | | ディベート思考 | 賛成・反対論点で意思決定支援 | 重要な意思決定 |

🚀 クイックスタート

インストール

# ライブラリとしてインストール
pnpm install @53able/conflux
# or
npm install @53able/conflux

# MCPサーバーとして使用
npx @53able/conflux server

# CLIツールとして使用
npx @53able/conflux list

# バージョン確認
npx @53able/conflux version

初回セットアップ

# 1. 思考法一覧を確認(API KEY不要)
npx @53able/conflux list

# 2. API KEYを設定して思考分析を試す
OPENAI_API_KEY=sk-proj-your-key-here npx @53able/conflux method critical '{"claim": "この実装で十分"}'

推奨: このプロジェクトはpnpmでの使用を推奨しています。

🔧 環境設定

API キーの設定

実際の思考分析を行うには、LLMプロバイダーのAPIキーが必要です。

環境変数での設定(推奨)

# 一時的に環境変数を設定して実行
OPENAI_API_KEY=sk-proj-your-key-here npx @53able/conflux method critical '{"claim": "この実装で十分"}'

# または Anthropic
ANTHROPIC_API_KEY=sk-ant-your-key-here npx @53able/conflux method critical '{"claim": "この実装で十分"}'

# または Google Gemini
GOOGLE_GENERATIVE_AI_API_KEY=your-google-key npx @53able/conflux method critical '{"claim": "この実装で十分"}'

永続的な設定

方法1: シェル設定ファイル

# .bashrc または .zshrc に追加
export OPENAI_API_KEY=sk-proj-your-key-here
export ANTHROPIC_API_KEY=sk-ant-your-key-here
export GOOGLE_GENERATIVE_AI_API_KEY=your-google-key-here
export DEFAULT_LLM_PROVIDER=openai  # or anthropic or google

# 設定を反映
source ~/.bashrc  # または source ~/.zshrc

方法2: .envファイル

# プロジェクトルートに.envファイルを作成
cat > .env << EOF
# LLM Provider API Keys
OPENAI_API_KEY=sk-proj-your-key-here
ANTHROPIC_API_KEY=sk-ant-your-key-here
GOOGLE_GENERATIVE_AI_API_KEY=your-google-api-key-here

# Model Configuration
OPENAI_MODEL=gpt-5-nano
ANTHROPIC_MODEL=claude-3-5-haiku-latest
GOOGLE_MODEL=gemini-2.5-flash

# Default Provider
DEFAULT_LLM_PROVIDER=openai

# AI SDK v5 Settings
AI_SDK_DISABLE_TELEMETRY=true
AI_SDK_VERCEL_AI_GATEWAY_DISABLED=true
EOF

APIキーの取得方法

OpenAI API Key(デフォルト:gpt-5-nano)

Anthropic API Key(デフォルト:claude-3-5-haiku-latest)

Google Generative AI API Key(デフォルト:gemini-2.5-flash)

CLIでの動作確認

# 1. 思考法一覧の確認(API KEYなしでも動作)
npx @53able/conflux list

# 2. 局面別推奨思考法(API KEYなしでも動作)
npx @53able/conflux recommend debugging

# 3. 実際の思考分析(API KEYが必要)
# 環境変数を設定して実行
OPENAI_API_KEY=sk-proj-your-key-here npx @53able/conflux method abduction '{"surprisingFact": "APIが遅い"}'

# Google Geminiを使用する場合
GOOGLE_GENERATIVE_AI_API_KEY=your-google-key npx @53able/conflux method abduction '{"surprisingFact": "APIが遅い"}'

# または永続的に設定済みの場合
npx @53able/conflux method abduction '{"surprisingFact": "APIが遅い"}'

💡 ヒント: 初回使用時は、まずlistコマンドで思考法一覧を確認し、recommendコマンドで局面別推奨を確認してから、実際の思考分析を試してみてください。

📋 基本的な使用方法

1. ライブラリとして使用

局面別思考プロセス

import { processPhaseTaskEither, globalLLMManager, toLanguageModel } from '@53able/conflux';
import * as E from 'fp-ts/lib/Either.js';

// デバッグ場面での思考プロセス
const result = await processPhaseTaskEither(
  'debugging',
  {
    issue: 'APIが500エラーを返す',
    context: 'DB接続エラーが発生している様子',
    observations: ['他のAPIは正常', 'ログにタイムアウト']
  },
  { 
    llmProvider: toLanguageModel(globalLLMManager.getProvider()),
    llmIntegration: globalLLMManager.getIntegration(),
    userId: 'user123',
    sessionId: 'debug-session-123'
  }
)();

if (E.isRight(result)) {
  console.log(result.right.synthesis); // 統合分析結果
  console.log(result.right.actionItems); // 具体的なアクションアイテム
} else {
  console.error('Error:', result.left);
}

黄金パターン(探索→実装)

import { processGoldenPatternTaskEither, globalLLMManager, toLanguageModel } from '@53able/conflux';
import * as E from 'fp-ts/lib/Either.js';

// アブダクション→演繹→帰納→クリティカル→ロジカル→メタ→ディベートの統合フロー
const result = await processGoldenPatternTaskEither(
  {
    problem: '新機能の設計方針',
    context: 'パフォーマンスとメンテナンス性のバランス',
  },
  { 
    llmProvider: toLanguageModel(globalLLMManager.getProvider()),
    llmIntegration: globalLLMManager.getIntegration(),
    userId: 'user123',
    sessionId: 'golden-pattern-session-123'
  }
)();

if (E.isRight(result)) {
  console.log(result.right.synthesis); // 統合分析結果
  console.log(result.right.actionItems); // 具体的なアクションアイテム
} else {
  console.error('Error:', result.left);
}

単一思考法の使用

import { processSingleMethodTaskEither, globalLLMManager, toLanguageModel } from '@53able/conflux';
import * as E from 'fp-ts/lib/Either.js';

// クリティカルシンキングで前提を疑う
const result = await processSingleMethodTaskEither(
  'critical',
  {
    claim: 'マイクロサービス化で開発速度向上',
    evidence: ['独立デプロイ可能', '技術選択の自由']
  },
  { 
    llmProvider: toLanguageModel(globalLLMManager.getProvider()),
    llmIntegration: globalLLMManager.getIntegration(),
    userId: 'user123',
    sessionId: 'session-123'
  }
)();

if (E.isRight(result)) {
  console.log(result.right.analysis); // 分析結果
  console.log(result.right.reasoning); // 推論プロセス
} else {
  console.error('Error:', result.left);
}

2. コマンドライン使用

# 局面別思考プロセス
npx @53able/conflux phase debugging '{"issue": "APIエラー", "context": "DB問題"}'

# 黄金パターン実行
npx @53able/conflux golden '{"problem": "アーキテクチャ設計"}'

# 単一思考法
npx @53able/conflux method critical '{"claim": "この実装で十分"}'

# カスタム戦略
npx @53able/conflux strategy '{"primary": "critical", "secondary": ["logical"], "sequence": ["critical", "logical"]}' '{"problem": "設計方針の検討"}'

# 思考法一覧
npx @53able/conflux list

# 局面別推奨思考法
npx @53able/conflux recommend debugging

# バージョン確認
npx @53able/conflux --version

# ヘルプ表示
npx @53able/conflux --help

🛠 MCPサーバーとして使用

Model Context Protocol準拠のサーバーとして他のAIツールと統合できます。自己修復機能とフォールバック機能を搭載し、高い信頼性を提供します。

サーバー起動

方法1: npx経由(推奨)

# npx経由で起動(推奨)
# API KEYは環境変数で設定
OPENAI_API_KEY=sk-proj-your-key-here npx @53able/conflux server

# 開発時:npm scriptsで起動
npm run mcp-server

# 開発時:tsxで直接実行
npx tsx src/mcp/server.ts

方法2: Docker経由

# Dockerイメージをビルド
docker build -t conflux-mcp .

# 環境変数を指定して実行
docker run -it --rm \
  -e OPENAI_API_KEY=your_api_key \
  -e DEFAULT_LLM_PROVIDER=openai \
  conflux-mcp

# Docker Composeで起動(推奨)
docker compose --env-file .env.docker up --build

💡 注意: MCPサーバーを起動する前に、環境変数でAPI KEYを設定してください。

🐳 Docker: 本番環境での使用にはDockerコンテナでの実行を推奨します。詳細はDocker Deployment Guideを参照してください。

MCP設定例

Claude Desktop / Cursor設定

{
  "mcpServers": {
    "conflux-thinking-agents": {
      "command": "npx",
      "args": ["@53able/conflux", "server"],
      "env": {
        "OPENAI_API_KEY": "sk-proj-your-openai-api-key-here",
        "OPENAI_MODEL": "gpt-5-nano",
        "ANTHROPIC_API_KEY": "sk-ant-your-anthropic-api-key-here",
        "ANTHROPIC_MODEL": "claude-3-5-haiku-latest",
        "GOOGLE_GENERATIVE_AI_API_KEY": "your-google-api-key-here",
        "GOOGLE_MODEL": "gemini-2.5-flash",
        "DEFAULT_LLM_PROVIDER": "openai",
        "AI_SDK_DISABLE_TELEMETRY": "true",
        "AI_SDK_VERCEL_AI_GATEWAY_DISABLED": "true"
      }
    }
  }
}

環境変数の説明

| 環境変数 | 説明 | 必須 | デフォルト | |---------|------|------|-----------| | OPENAI_API_KEY | OpenAI APIキー | 推奨 | - | | OPENAI_MODEL | 使用するOpenAIモデル | 任意 | gpt-5-nano | | ANTHROPIC_API_KEY | Anthropic APIキー | 推奨 | - | | ANTHROPIC_MODEL | 使用するAnthropicモデル | 任意 | claude-3-5-haiku-latest | | GOOGLE_GENERATIVE_AI_API_KEY | Google Generative AI APIキー | 任意 | - | | GOOGLE_MODEL | 使用するGoogleモデル | 任意 | gemini-2.5-flash | | DEFAULT_LLM_PROVIDER | デフォルトのLLMプロバイダー | 任意 | openai | | AI_SDK_DISABLE_TELEMETRY | テレメトリを無効化 | 推奨 | true | | AI_SDK_VERCEL_AI_GATEWAY_DISABLED | Vercel AI Gatewayを無効化 | 推奨 | true |

💡 ヒント: 最低限、OPENAI_API_KEYANTHROPIC_API_KEY、またはGOOGLE_GENERATIVE_AI_API_KEYのいずれかを設定すれば動作します。複数設定すると、DEFAULT_LLM_PROVIDERで選択できます。

利用可能なモデル

AI SDK v5でサポートされている最新のモデル一覧は、AI SDK v5公式ドキュメントで確認できます。

利用可能なプロバイダーとモデル:

  • OpenAI: gpt-4o-mini, gpt-4o, gpt-5-nano, gpt-5, gpt-5-mini, gpt-5-chat-latest
  • Anthropic: claude-3-5-haiku-latest, claude-sonnet-4-latest, claude-3-5-sonnet-20241022, claude-3-5-sonnet-latest
  • Google: gemini-2.5-flash, gemini-2.0-flash-exp, gemini-1.5-flash, gemini-1.5-pro
  • OpenAI互換: カスタムエンドポイント(openai-compatibleタイプ)
  • Mock: 開発・テスト用(mockタイプ)

📚 注意: モデル名は実際の利用可能性に依存します。最新の利用可能なモデル一覧はAI SDK v5公式ドキュメントで確認してください。

📚 詳細: 各プロバイダーの最新モデル一覧と機能比較はAI SDK v5公式ドキュメントを参照してください。

Cursor / Claude Codeでの使用

プロジェクトセットアップ(開発者向け)

# リポジトリのクローン
git clone https://github.com/53able/conflux.git
cd conflux

# 依存関係のインストール(pnpm推奨)
pnpm install

# ビルド
pnpm run build

# 型チェック(any型完全禁止)
pnpm run type-check

# Lintチェック(ESLint v9)
pnpm run lint

# MCPサーバーとして起動
pnpm run mcp-server
# または
npx @53able/conflux server

# CLIツールとして使用
npx @53able/conflux list

Docker環境でのセットアップ

# Dockerイメージをビルド
docker build -t conflux-mcp .

# 環境変数ファイルを作成
cat > .env.docker << 'EOF'
OPENAI_API_KEY=your-key-here
ANTHROPIC_API_KEY=your-anthropic-key-here
GOOGLE_GENERATIVE_AI_API_KEY=your-google-key-here
DEFAULT_LLM_PROVIDER=openai
NODE_ENV=production
AI_SDK_DISABLE_TELEMETRY=true
AI_SDK_VERCEL_AI_GATEWAY_DISABLED=true
EOF

# Docker Composeで起動
docker compose --env-file .env.docker up --build

# 開発用(ホットリロード)
docker compose -f docker-compose.yml -f docker-compose.dev.yml up

📚 詳細: Docker環境での詳細な設定方法はDocker Deployment Guideを参照してください。

コード品質と型安全性

このプロジェクトは最高レベルの型安全性とコード品質を実現しています:

型安全性

  • TypeScript厳密モード: strict: trueで完全な型チェック
  • any型完全禁止: ESLintで@typescript-eslint/no-explicit-any: error
  • Zodスキーマ: 実行時型検証とコンパイル時型安全性の両立
  • AI SDK v5統合: 複雑な型定義に対応した適切な型アサーション

コード品質

  • ESLint v9: 最新のESLint設定でコード品質を保証
  • 未使用変数検出: @typescript-eslint/no-unused-varsで未使用コードを排除
  • 一貫した命名: 未使用パラメータは_プレフィックスで統一
  • 自動フォーマット: 一貫したコードスタイルを維持

信頼性機能

  • 自己修復機能: 入力データの自動修復とスキーマ適合
  • フォールバック機能: 複数LLMプロバイダー間の自動切り替え
  • 自動復旧機能: スキーマ不一致やエラー時の自動再試行
  • エラーハンドリング: 包括的なエラー処理とログ記録

開発コマンド

# 型チェック(エラー0個を保証)
pnpm run type-check

# Lintチェック(エラー0個、警告0個を保証)
pnpm run lint

# ビルド(型チェック + コンパイル)
pnpm run build

# 開発モード(ファイル監視)
pnpm run dev

📋 開発局面と推奨思考法

| 局面 | 主要思考法 | 併用思考法 | 目的 | |------|------------|------------|------| | 事業/課題探索 | アブダクション | 帰納→演繹→メタ | 驚きから仮説形成 | | 要件定義 | ロジカルシンキング | MECE→クリティカル | 論点→結論の道筋 | | 価値仮説検証 | 帰納的思考 | クリティカル | データから一般化 | | アーキ設計 | 演繹的思考 | ディベート | 原則→設計結論 | | 優先順位付け | MECE | ロジカル | 粒度揃え・重複排除 | | 見積もり/計画 | ロジカルシンキング | メタ | 前提→分解→見積 | | 実装 | 演繹的思考 | クリティカル | 原則→具体コード | | デバッグ | アブダクション | 演繹→帰納 | 兆候→原因仮説 | | リファクタリング | クリティカルシンキング | MECE→ロジカル | 前提・依存を疑う | | コードレビュー | クリティカルシンキング | 演繹→MECE | 結論↔根拠の検証 | | テスト設計 | 演繹的思考 | MECE→帰納 | 仕様→条件導出 | | 実験/ABテスト | 帰納的思考 | クリティカル | データ→効果一般化 | | 意思決定 | ディベート思考 | メタ | 賛否論点の顕在化 | | ふりかえり | メタ思考 | ロジカル→PAC | 思考プロセス見直し | | 仮説分解 | PAC思考 | クリティカル | 前提・仮定・結論分解 |

⚙️ 設定

プログラムでの設定

import { globalLLMManager } from '@53able/conflux';

// カスタムプロバイダーの登録例
globalLLMManager.registerProvider('custom', {
  type: 'openai-compatible',
  baseURL: 'https://api.your-provider.com/v1',
  model: 'your-model',
  apiKey: 'your-key',
});

📚 詳細: 利用可能なモデル一覧と詳細な設定方法はAI SDK v5公式ドキュメントを参照してください。

📚 高度な使用方法

カスタム思考法戦略

import { processCustomStrategy, globalLLMManager, toLanguageModel } from '@53able/conflux';
import * as E from 'fp-ts/lib/Either.js';

// カスタム戦略の実行
const result = await processCustomStrategy(
  {
    primary: 'critical',
    secondary: ['logical', 'mece'],
    sequence: ['critical', 'logical', 'mece']
  },
  {
    problem: '複雑な問題',
    context: '技術的制約あり'
  },
  {
    llmProvider: toLanguageModel(globalLLMManager.getProvider()),
    llmIntegration: globalLLMManager.getIntegration(),
    userId: 'user123',
    sessionId: 'custom-strategy-session-123'
  }
);

if (E.isRight(result)) {
  console.log(result.right.synthesis); // 統合分析結果
  console.log(result.right.actionItems); // 具体的なアクションアイテム
} else {
  console.error('Error:', result.left);
}

思考プロセスの連鎖

import { processPhaseTaskEither, globalLLMManager, toLanguageModel } from '@53able/conflux';
import * as E from 'fp-ts/lib/Either.js';

// 要件定義 → 設計 → 実装の連鎖
const requirements = await processPhaseTaskEither('requirement_definition', input, context)();
if (E.isRight(requirements)) {
  const architecture = await processPhaseTaskEither('architecture_design', {
    ...input,
    requirements: requirements.right.results,
  }, context)();
  
  if (E.isRight(architecture)) {
    const implementation = await processPhaseTaskEither('implementation', {
      ...input,
      architecture: architecture.right.results,
    }, context)();
    
    if (E.isRight(implementation)) {
      console.log('連鎖完了:', implementation.right.synthesis);
    }
  }
}

MCPツールの活用

MCPサーバーとして起動することで、他のAIツールと統合して高度な思考分析が可能です。

利用可能なMCPツール

| ツール名 | 説明 | 入力パラメータ | |---------|------|---------------| | process-phase | 局面に応じた統合思考プロセスを実行します | phase (開発局面), input (入力データ) | | process-golden-pattern | 黄金パターン(探索→実装)の統合思考プロセスを実行します | input (入力データ) | | process-single-method | 単一の思考法を実行します | method (思考法), input (入力データ) | | process-custom-strategy | PHASE_THINKING_MAP形式で思考法戦略を指定して実行します | primary (主要思考法), secondary (併用思考法), sequence (実行順序), input (入力データ) | | list-thinking-methods | 利用可能な思考法の一覧と詳細を取得します | なし | | get-phase-recommendations | 指定した局面に推奨される思考法を取得します | phase (開発局面) |

思考プロセスの連鎖

MCPツールを組み合わせることで、複数の思考法を連鎖させた高度な分析が可能です。

🤝 貢献

このプロジェクトへの貢献を歓迎します!

  1. このリポジトリをフォーク
  2. フィーチャーブランチを作成 (git checkout -b feature/amazing-feature)
  3. 変更をコミット (git commit -m 'Add amazing feature')
  4. ブランチにプッシュ (git push origin feature/amazing-feature)
  5. プルリクエストを作成

📄 ライセンス

MIT License - 詳細は LICENSE ファイルを参照してください。

🙏 謝辞

  • Anthropic - エージェント設計指針
  • Vercel - AI SDK v5の開発とメンテナンス

構造化された思考で、より良い意思決定を。