Project Hub is a Claude Code plugin for structured project management directly in Claude. It replaces scattered notes, email threads, and spreadsheets with a central, searchable project registry β with contacts, meeting minutes, decisions, and communication drafts, all in the context of the active project.
What Project Hub is:
What Project Hub is not:
| Feature | Manual Notes | Project Hub |
|---|---|---|
| Contact overview | Scattered in emails, notes | Central contact registry per project |
| Meeting minutes | Word files, everywhere | Structured notes with type and date |
| Decisions | Somewhere in chat history | Documented with date and context |
| Communication | Written manually | Context-aware drafts with /compose |
| Search | Full-text search over files | /search across all notes and contacts |
| Handoffs | Requires re-briefing | /resume instantly loads full project context |
Each project is loaded once (/project-hub:resume) and Claude then knows:
Internal and external contacts with:
Typed notes:
/project-hub:compose creates drafts for:
The draft automatically uses project context, known contact names, and current phase.
Per project type, there is a knowledge repository (~/.project-hub/knowledge/{type}/):
/resume is called/project-hub:report generates complete HTML reports:
Project Hub comes with 6 built-in project types:
| Type | Use case |
|---|---|
merchant-onboarding |
Enterprise merchant onboarding (BNPL, Direct Debit, multi-market) |
it-project |
IT / software projects |
consulting |
Consulting engagements |
marketing |
Marketing campaigns |
event |
Event planning and coordination |
generic |
General purpose projects |
Custom types via /project-hub:type-creator β defines knowledge documents, status stages, and role patterns.
Details: Project Types
Project Hub has 18 skills, called via /project-hub:<skill-name>:
| Skill | Purpose |
|---|---|
new-project |
Create a new project |
resume |
Load / switch to a project |
dashboard |
Overview of all projects |
status |
Show and update project status |
add-contact |
Add a contact |
add-note |
Log a note, minutes, email, or decision |
edit-note |
Edit an existing note |
search |
Full-text search across all content |
summarize |
Create summary from email or meeting transcript |
compose |
Draft an email, Slack, or Teams message |
knowledge |
View and manage the knowledge repository |
session-start |
Initialize session, check setup |
next-step |
Recommend the next logical action |
configure |
Edit plugin settings |
setup |
Initial setup |
type-creator |
Create a custom project type |
report |
Generate HTML report |
help |
Show all skills |
Details: Skills Reference
The Project Hub MCP server (project-hub-mcp) provides the following tools:
tool_list_projects(status?) β all projects (filtered by status)tool_get_project(identifier) β load project with all metadatatool_create_project(...) β create a new projecttool_update_project(project_id, ...) β update project datatool_list_contacts(project_id) β all contacts for a projecttool_add_contact(project_id, ...) β add a contacttool_update_contact(contact_id, ...) β edit a contacttool_delete_contact(contact_id) β delete a contacttool_search_contacts(project_id, query) β search contactstool_list_notes(project_id, ...) β list notestool_get_note(note_id) β load a single notetool_add_note(project_id, ...) β add a new notetool_update_note(note_id, ...) β edit a notetool_delete_note(note_id) β delete a notetool_search_notes(project_id, query) β search notestool_get_all_knowledge(project_type) β load all knowledge documents for a typetool_get_knowledge(project_type, doc_name) β load a single knowledge documenttool_save_knowledge(project_type, doc_name, content) β save a knowledge documenttool_delete_knowledge(project_type, doc_name) β delete a knowledge documenttool_list_knowledge(project_type) β list available knowledge documentstool_get_session() β load active sessiontool_set_session(project_id?, ...) β set sessiontool_clear_session() β reset sessiontool_list_attachments(project_id) β list file attachments for a projecttool_attach_file(project_id, file_path) β attach a file| Component | Version |
|---|---|
| Claude Code | Latest |
| Python | 3.11+ |
No API key needed β Project Hub uses Claude Code's built-in Claude access.
# 1. Clone the plugin
git clone https://github.com/markus-michalski/project-hub \
~/.claude/plugins/project-hub
Add to ~/.claude/settings.json:
{
"enabledPlugins": {
"project-hub@project-hub": true
}
}
# 2. Initial setup
/project-hub:setup
Configuration file: ~/.project-hub/config.yaml
name: Your Name # Your name (for communication drafts)
language: en # Default language (de / en)
Interactive configuration via /project-hub:configure.
1. /project-hub:setup # Initial setup
2. /project-hub:new-project # Create a new project
3. /project-hub:add-contact # Add stakeholders
4. /project-hub:add-note # Log the first meeting
5. /project-hub:next-step # What's next?
6. /project-hub:compose email # Draft an email
Second session:
/project-hub:resume [Project Name] # Pick up right where you left off
~/.project-hub/
βββ config.yaml # Plugin configuration
βββ project-hub.db # SQLite database (projects, contacts, notes)
βββ knowledge/
β βββ merchant-onboarding/
β β βββ governance.md
β β βββ process.md
β β βββ roles.md
β βββ it-project/
β β βββ architecture.md
β β βββ charter.md
β β βββ runbook.md
β βββ {custom-type}/
β βββ ...
βββ projects/
βββ {project-slug}/
βββ docs/
βββ emails/
βββ meeting-notes/
βββ misc/
The knowledge system stores project type-specific knowledge that is automatically available when a project is loaded.
Built-in knowledge documents:
| Project Type | Documents |
|---|---|
merchant-onboarding |
governance.md, process.md, roles.md |
it-project |
architecture.md, charter.md, runbook.md |
consulting |
engagement.md, governance.md, roles.md |
event |
logistics.md, runsheet.md, stakeholders.md |
marketing |
campaign-brief.md, stakeholders.md |
generic |
charter.md |
Custom documents: Simply place Markdown files under ~/.project-hub/knowledge/{type}/. They are automatically loaded on the next /resume.
Managing knowledge: /project-hub:knowledge shows all available documents and allows direct editing in context.
When /resume is called, Project Hub loads in 6 steps:
tool_get_session() β Check active sessiontool_list_projects("active") β user selects projecttool_get_project(identifier) β Load full project datatool_get_all_knowledge(project_type) β Load domain knowledgetool_list_notes(project_id, limit=5) β Recent activitiesWith a direct name (/project-hub:resume Acme), step 2 is skipped.
ls ~/.claude/plugins/project-hub/skills/
The plugin directory must be listed under enabledPlugins in ~/.claude/settings.json.
/project-hub:setup
ls ~/.project-hub/
If the directory is missing, run /project-hub:setup once.
Knowledge files must be located under ~/.project-hub/knowledge/{project-type}/. Check with /project-hub:knowledge.
Project Hub is licensed under the PolyForm Noncommercial License 1.0.0. Personal, non-commercial use is free. Commercial use requires a separate license.
CLA for contributors: Contributor Agreement