Skip to main content
Glama
backlog

backlog

by backloghq

backlog

GitHub stars License: MIT CI Docs

Claude Code向けの永続的かつセッション横断的なタスク管理ツールです。タスクはセッションをまたいで保持されるため、あるエージェントが開始した作業を別のエージェントが引き継ぐことができます。

@backloghq/agentdb を基盤として構築されており、型付きスキーマ、自動インクリメントID、仮想フィルタ、BLOBストレージを備えています。純粋なTypeScriptで記述されており、ネイティブ依存関係はありません。

インストール

/plugin marketplace add backloghq/backlog
/plugin install backlog@backloghq-backlog

ソースからインストール

git clone https://github.com/backloghq/backlog.git
cd backlog && npm install && npm run build
claude --plugin-dir /path/to/backlog

スタンドアロンMCPサーバー

プロジェクトの .claude/settings.json に以下を追加します:

{
  "mcpServers": {
    "backlog": {
      "command": "node",
      "args": ["/path/to/agent-teams-task-mcp/dist/index.js"],
      "env": {
        "TASKDATA": "/path/to/task-data"
      }
    }
  }
}

Related MCP server: MCP Project Manager

スキル

スキル

説明

/backlog:tasks

現在のバックログを表示(保留中、アクティブ、ブロック中、期限切れのタスク)

/backlog:plan

目標を依存関係、優先順位、仕様を含むタスクに分解

/backlog:standup

デイリースタンドアップ(完了、進行中、ブロック中、次に行うこと)

/backlog:refine

バックログの整理(曖昧なタスク、優先順位の欠如、壊れた依存関係、古い項目の修正)

/backlog:spec

実装前にタスクの仕様書を作成

/backlog:implement

タスクを選択し、仕様を読み込み、実装し、完了としてマーク

/backlog:handoff

次のセッションへの準備(進捗の注釈、アクティブなタスクの停止、状態の要約)

エージェント

task-planner エージェントは、作業計画が必要な際にClaudeから自動的に呼び出されます。コードベースを読み取り、目標を依存関係のあるタスクに分解し、複雑な項目については仕様書を作成します。

フック

イベント

動作

SessionStart

セッション開始時に保留中のタスク数を表示

TaskCreated

Claudeの組み込みタスクを永続バックログと同期

TaskCompleted

Claudeが組み込みタスクを完了した際に、対応するバックログタスクを完了としてマーク

SubagentStart

未割り当ての保留中タスクを、生成されたエージェントに自動割り当て

ツール (MCP)

タスクのライフサイクル全体を管理するためのツール:

ツール

説明

task_list

フィルタ構文を使用してタスクをクエリ。全フィールドを含むJSON配列を返します。

task_count

フィルタに一致するタスクをカウント。task_listと同じ構文。

task_add

新しい保留中タスクを作成。説明のみ必須で、他のフィールドは任意。

task_log

既に完了した作業を完了ステータスで直接記録。

task_modify

フィルタに一致する1つ以上のタスクを部分更新。指定されたフィールドのみ変更されます。

task_duplicate

既存のタスクをコピー(オプションでフィールドの上書きが可能)。

task_done

タスクを完了としてマークし、終了タイムスタンプを記録。

task_delete

タスクを論理削除。task_undoで復元可能。完全に削除するにはtask_purgeを使用。

task_annotate

タイムスタンプ付きのメモを追加。長いコンテンツにはtask_doc_writeを使用。

task_denotate

テキストの一致により注釈を削除。

task_start

タスクをアクティブな作業中としてマーク。+ACTIVEクエリで表示可能。

task_stop

タスクの作業を停止。保留ステータスに戻します。

task_undo

直前の操作を元に戻す。繰り返し呼び出し可能。

task_info

IDまたはUUIDで単一タスクの完全なJSON詳細を取得。

task_import

JSON配列からタスクを一括作成。アトミックなバッチ操作。

task_purge

削除されたタスクを完全に削除。元に戻せません。

task_doc_write

タスクにMarkdownドキュメント(仕様、メモ、コンテキスト)を添付/置換。

task_doc_read

タスクに添付されたMarkdownドキュメントを読み取り。

task_doc_delete

タスクのドキュメントを削除。永続的。

task_archive

古い完了/削除済みタスクを四半期ごとのアーカイブセグメントに移動。

task_archive_list

利用可能なアーカイブセグメントを一覧表示。

task_archive_load

アーカイブされたタスクを読み取り専用で読み込み。

task_projects

保留中/定期的なタスクを持つプロジェクト名を一覧表示。

task_tags

保留中/定期的なタスクを持つタグを一覧表示。

フィルタ構文

status:pending                    # all pending tasks
project:backend +bug              # bugs in backend project
priority:H due.before:friday      # high priority due before friday
+OVERDUE                          # overdue tasks
+ACTIVE                           # tasks currently being worked on
+BLOCKED                          # tasks blocked by dependencies
+READY                            # actionable tasks (past scheduled date)
agent:explorer                    # tasks assigned to the explorer agent
( project:web or project:api )    # boolean with parentheses
description.contains:auth         # substring match

属性修飾子 (.before, .after, .by, .has, .not, .none, .any, .startswith, .endswith)、タグ (+tag, -tag)、仮想タグ (+OVERDUE, +ACTIVE, +BLOCKED, +READY, +TAGGED, +ANNOTATED など)、およびブール演算子 (and, or) をサポートしています。

タスクドキュメント

任意のタスクにMarkdownドキュメント(仕様、コンテキスト、引き継ぎメモ)を添付できます:

task_doc_write  id:"1"  content:"# Spec\n\nBuild the auth flow.\n"
task_doc_read   id:"1"
task_doc_delete id:"1"

ドキュメントを書き込むと +doc タグと has_doc:yes が追加されるため、エージェントはドキュメント付きのタスクを発見できます:

task_list filter:"+doc"
task_list filter:"has_doc:yes"

エージェントID

タスクは、どのエージェントがタスクを所有しているかを追跡するための agent フィールドをサポートしています:

task_add  description:"Investigate bug"  agent:"explorer"
task_list filter:"agent:explorer status:pending"

プロジェクトの分離

各プロジェクトは自動的に独自のタスクデータを持ちます。プラグインとして使用する場合、タスクデータは ~/.claude/plugins/data/backlog/projects/<project-slug>/ に保存されます。スタンドアロンで使用する場合は、TASKDATA を明示的に設定してください。

変数

説明

TASKDATA

タスクデータディレクトリへの明示的なパス(自動導出を上書き)

TASKDATA_ROOT

プロジェクトごとのタスクデータを自動導出するためのルートディレクトリ

BACKLOG_NAMESPACE

明示的なコレクション名(デフォルト: tasks)

BACKLOG_AUTO_NAMESPACE

true に設定すると、現在の作業ディレクトリからコレクション名を導出

BACKLOG_AGENT_ID

マルチライターサポート用エージェントID(Claude、Geminiなど)

BACKLOG_BACKEND

ストレージバックエンド:ファイルシステム(デフォルト)または s3

BACKLOG_S3_BUCKET

S3バケット名 (BACKLOG_BACKEND=s3 の場合に必須)

BACKLOG_S3_REGION

AWSリージョン(デフォルト認証情報を使用する場合はオプション)

マルチライターサポート

Backlogは、同じデータを共有する複数のプロセス(例:Claude DesktopとGemini CLI)からの同時アクセスをサポートしています。これを有効にするには:

  1. 各プロセスに一意の BACKLOG_AGENT_ID を割り当てます(例:claude, gemini)。

  2. エージェントIDが設定されると、エンジンはエージェントごとの書き込みログを使用し、ファイルロックを回避します。

  3. 各プロセスは操作前に自動的に refresh() を呼び出し、他のエージェントからの変更を取り込みます。

名前空間

複数のプロジェクトで単一の TASKDATA ディレクトリ(共有S3バケットやグローバルな ~/.backlog フォルダなど)を使用したい場合は、名前空間を使用してタスクを分離できます:

  1. 手動: BACKLOG_NAMESPACE=my-project を設定して特定のコレクション名を使用します。

  2. 自動: BACKLOG_AUTO_NAMESPACE=true を設定して、現在の作業ディレクトリからコレクション名を自動的に導出します(例:my-app-a1b2c3d4)。

設定例 (.claude/settings.json):

{
  "mcpServers": {
    "backlog": {
      "command": "node",
      "args": ["/path/to/backlog/dist/index.js"],
      "env": {
        "TASKDATA": "/home/user/.backlog",
        "BACKLOG_AUTO_NAMESPACE": "true",
        "BACKLOG_AGENT_ID": "claude-desktop"
      }
    }
  }
}

どちらの方法でも、複数のプロジェクトが同じストレージバックエンドを共有しながら、プロジェクト固有のバックログを分離して維持できます。

S3バックエンド

チーム共有やクラウドでの永続化のために、タスクデータをS3に保存します。@backloghq/opslog-s3 が必要です:

npm install @backloghq/opslog-s3

.claude/settings.json の環境変数で設定します:

{
  "mcpServers": {
    "backlog": {
      "command": "node",
      "args": ["/path/to/backlog/dist/index.js"],
      "env": {
        "TASKDATA": "my-project/tasks",
        "BACKLOG_BACKEND": "s3",
        "BACKLOG_S3_BUCKET": "my-team-backlog",
        "BACKLOG_S3_REGION": "us-east-1"
      }
    }
  }
}

S3を使用する場合、TASKDATA はファイルシステムパスではなく、バケット内のキープレフィックスになります。

Docker

docker build -t backlog .
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}' \
  | docker run --rm -i backlog

開発

npm install
npm run build          # compile TypeScript
npm run lint           # run ESLint
npm test               # run tests
npm run test:coverage  # run tests with coverage
npm run dev            # watch mode

コミュニティ

backlogが役に立った場合は、スターを付けることを検討してください。他の人がプロジェクトを見つける助けになります。

ライセンス

MIT

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 24 tools

    Disambiguation5/5

    Each tool has a distinct, clearly separated purpose with explicit cross-references in descriptions (e.g., 'use task_log instead', 'use task_doc_write instead'). No overlapping functionality—CRUD, lifecycle, archival, and document operations are cleanly partitioned.

    Naming Consistency5/5

    Strict snake_case convention with consistent 'task_' prefix. Sub-resources follow predictable patterns (task_doc_read/write/delete, task_archive_list/load). Verbs are clear and consistently placed (task_add, task_delete, task_modify).

    Tool Count4/5

    24 tools is above the typical ideal range but justified by the domain complexity. The set covers full task lifecycle, document attachments, archival management, annotations, and discovery without redundancy. Each tool earns its place for a comprehensive backlog system.

    Completeness4/5

    Excellent coverage of CRUD, status workflow (start/stop/done), soft-delete with purge, annotations, document attachments, and archival. Minor gap: archived tasks are view-only with no restore-to-active operation, though this appears to be an intentional cold-storage design.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      C
      maintenance
      Persistent memory and task board for Claude Code. 14 tools spanning projects, tasks, sessions, and activity logs — backed by Firestore, runs on the free tier. Handoff notes survive context compaction; the next session reads the last handoff and picks up where you stopped.
      14
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A comprehensive project management and workflow tracking system that integrates with Claude Code via MCP, automatically capturing sessions, tools, agents, and project tasks into a centralized dashboard and database.
      13 npm
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      MCP server for project planning inside Claude. It tracks progress, knows your codebase, and resumes exactly where you left off every session.
      7 npm
      5
      -