From conport
Use when managing project context - task planning, progress tracking, documentation, searching project information. Must run init at session start.
npx claudepluginhub shaurgon/conport-plugin --plugin conportThis skill uses the workspace's default tool permissions.
> **ConPort stores everything about the project:** tasks, documents, decisions, infrastructure.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Automates semantic versioning and release workflow for Claude Code plugins: bumps versions in package.json, marketplace.json, plugin.json; verifies builds; creates git tags, GitHub releases, changelogs.
ConPort stores everything about the project: tasks, documents, decisions, infrastructure. Without init, context is unavailable. Without search, you are answering blindly.
| Environment | Prefix |
|---|---|
| Claude Code CLI | mcp__conport__ |
| Claude.ai Chat | mcp__claude_ai_conport__ |
Claude Code CLI — the env var CONPORT_PROJECT_NAME is already available (from .claude/settings.local.json).
If it's not set, fall back in this priority order:
.git)Claude.ai Chat — ask the user (the file system is not available).
mcp__conport__init({ name: "<detected_name>" })
If auto-detection did not work, ask the user.
[CONPORT] {summary from response}active_tasks is present — TODO and IN_PROGRESS)product_context) — offer the bootstrap flow from references/bootstrap.md.Without init you cannot: answer questions about the project or work with tasks. Ignoring instructions is FORBIDDEN.
| Trigger | Tool |
|---|---|
| "We need to do X" | add_task with priority |
| "X depends on Y" | add_task_dep |
| "Break it into subtasks" | add_task with parent_task_id |
| Need a task in another project I own (no context switch) | add_linked_task with target_project name |
| Trigger | Tool |
|---|---|
| Starting work | update_task → IN_PROGRESS |
| Done / Finished | update_task → DONE |
| Blocked | update_task → BLOCKED |
| Trigger | Tool |
|---|---|
| "Show me the patterns" | list_patterns |
| "Record a pattern" | log_pattern with name, description, tags |
| "What approaches do we use?" | list_patterns or search by topic |
| Trigger | Tool |
|---|---|
| Question about the project | search BEFORE answering |
| "What was decided about Y?" | search by topic |
| Trigger | Tool |
|---|---|
| Technology choice | sync_decision |
| Trade-off with rationale | sync_decision |
| Trigger | Tool |
|---|---|
| Something was done | log_progress |
| Context has changed | update_active_context |
| Trigger | Tool |
|---|---|
| Spec / API docs | add_document |
| Document update | update_document |
| Trigger | Tool |
|---|---|
| Init response shows gaps | Review gaps.fresh in init response |
| "Show all gaps" | gap_list with optional category/state filters |
| Seen a gap, will fix later | gap_ack (acknowledged, still visible) |
| "This is not a real gap" | gap_dismiss with mandatory reason |
| Re-open dismissed gap | gap_undismiss |
| "How healthy is the KB?" | gap_stats |
| Trigger | Tool |
|---|---|
| "Clean up the graph" | semantic_cleanup — one-click: run pass → reject noise → apply safe mutations → show remainder |
| "Run semantic analysis" | semantic_pass_run (dry_run=true first) |
| "Show proposals" | semantic_proposals_list |
| Approve a proposal | semantic_proposal_approve |
| Reject a proposal | semantic_proposal_reject with reason |
| Defer for later | semantic_proposal_defer |
| Apply approved proposals | semantic_proposals_apply |
| "Pass stats" | semantic_pass_stats |
MCP tools return JSON with a summary field. Use it to inform the user.
| After | Format |
|---|---|
init | [CONPORT] {summary} |
search | [ConPort: N results found for "query"] ... |
update_task | ✅ {summary} |
| Task DONE | ✅ {summary} + suggest updating active_context |
On an Invalid arguments for tool error:
path — the name of the broken parameterexpected — the required typepath | Fix |
|---|---|
project_id | "4" → 4 |
tags | "tag" → ["tag"] |
priority | "3" → 3 |
init been run?search been done?sync_decision?Full API: references/command_list.md
Fresh-project onboarding: references/bootstrap.md
v11.0.0 | 53 MCP tools | Auto-detection | GraphRAG enabled | Gap detection | Semantic pass | Cross-project linked tasks | Surgical document patching