克劳德项目协调员
🚨 v1.3.0+用户的关键更新
如果您遇到不正确的项目创建日期(均显示今天的日期),请运行:
./scripts/repair-analytics-dates.sh这修复了每次重新启动时重新迁移分析的错误。已在v1.3.2中修复。
______________________________________________________________________
用于管理和协调多个Xcode/Swift项目的MCP(模型上下文协议)服务器。此服务器提供用于跟踪项目状态、搜索代码模式和维护开发见解知识库的工具。
特性
- 🚀 项目管理:使用状态、注释和元数据跟踪多个Xcode项目
- 🔍 智能搜索:在项目和文档中搜索代码模式
- 📚 知识库:维护模式、模板和故障排除指南
- 🤖 自动检测:自动检测SwiftUI、UIKit、SPM和其他技术
- 💾 永久存储:所有数据均以结构化JSON格式存储在本地
- 🔐 安全第一:全面的输入验证和路径遍历保护
- 📊 项目分析:时间跟踪、活动热图和健康评分(v1.3.0+)
- 📈 技术趋势:分析框架使用和采用模式(v1.3.0+)
安全功能(v1.2.0+)
- 🛡️ 输入验证:全面验证所有用户输入
- 🚫 路径横向保护:阻止恶意路径,如
../../../etc/passwd - 📁 目录访问控制:可配置的项目允许目录
- 🚨 注入预防:验证搜索模式以防止命令注入
- ⚖️ 合理限度:输入长度限制,以防止缓冲区溢出攻击
- 📝 清除错误消息:安全验证失败时的有用指导
- ⚙️ 硬编码安全:安全策略被编译成二进制文件以提高可靠性
安装
先决条件
- macOS与Swift 5.9+
- Claude桌面应用程序
从源代码构建
- 克隆存储库:
git clone https://github.com/M-Pineapple/Claude-Project-Coordinator.git
cd Claude-Project-Coordinator- 构建项目:
swift build -c release- 注意构建的可执行文件的路径:
.build/release/project-coordinator配置Claude桌面
- 打开克劳德桌面
- 导航到: 设置 → 开发者 → 模型上下文协议
- 添加配置:
{
"mcpServers": {
"project-coordinator": {
"command": "/path/to/Claude-Project-Coordinator/.build/release/project-coordinator",
"args": []
}
}
}- 重新启动克劳德桌面
用法
配置后,您可以通过Claude与项目协调员进行交互:
基本命令
- 列出项目:“显示我跟踪的所有项目”
- 添加项目:“将我的WeatherApp项目添加到~/Developer/WeatherApp”
- 更新状态:“将WeatherApp状态更新为‘实施API集成’”
- 搜索模式:“查找所有SwiftUI模式”
- 获取项目详细信息:“我的TodoApp的状态如何?”
分析命令(v1.3.0+)
- 时间追踪“Ubermania的开发有多久了?”
- 活动热图:“显示我本周的项目活动”
- 技术趋势“我最常用的技术是什么?”
- 健康检查:“哪些项目需要我关注?”
📊 看 分析示例.md 获取详细的输出示例和富有成效的提示!
示例工作流程
You: "Add my new SwiftUI project called FinanceTracker at ~/Developer/FinanceTracker"
Claude: "Successfully added project: FinanceTracker..."
You: "Update FinanceTracker status to 'Working on Core Data models'"
Claude: "Successfully updated FinanceTracker"
You: "Which of my projects use Core Data?"
Claude: [Shows all projects with Core Data in their tech stack or notes]分析输出示例
You: "Show my project activity this week"
Claude:
## Project Activity Heat Map (Past 7 Days)
🔥🔥🔥 **TodoApp** (15 activity points - 6 events)
🔥🔥 **WeatherStation** (8 activity points - 3 events)
🔥 **PortfolioSite** (3 activity points - 2 events)
💤 **OldBlogEngine** (0 activity points)
### Daily Activity Breakdown:
- Monday: 4 events
- Tuesday: 8 events
- Wednesday: 3 events安全配置
安全设置为 在Swift源代码中硬编码 为了确保可靠性和安全性。默认配置包括:
默认安全设置
允许的项目目录:
~/Developer~/Documents~/GitHub~/Projects~/Desktop/Development~/Xcode
输入限制:
- 项目名称:最多100个字符
- 项目路径:最多500个字符
- 描述:最多2000个字符
- 备注:最多10000个字符
- 搜索模式:最多300个字符
自定义安全设置
要修改安全设置,请执行以下操作:
- 编辑源代码:打开
Sources/ProjectCoordinator/SecurityValidator.swift
- 修改配置值:
// Add/remove allowed base paths
static let allowedBasePaths = [
NSHomeDirectory() + "/Developer",
NSHomeDirectory() + "/Documents",
NSHomeDirectory() + "/GitHub",
NSHomeDirectory() + "/Projects",
NSHomeDirectory() + "/Desktop/Development",
NSHomeDirectory() + "/Xcode"
// Add your custom paths here
]
// Adjust length limits
static let maxProjectNameLength = 100
static let maxDescriptionLength = 2000
static let maxNotesLength = 10000
static let maxSearchPatternLength = 300- 重建项目:
swift build -c release- 重新启动克劳德桌面 使用更新的二进制文件
为什么是硬编码配置?
- 安全:运行时无法篡改配置
- 可靠性:没有配置文件损坏或操纵的风险
- 简洁:无需额外的文件管理或解析复杂性
- 演出:设置在中编译,没有运行时解析开销
MCP工具可用
list_projects
列出所有跟踪的项目及其元数据
add_project
添加要跟踪的新项目
- 参数:
name,path,description(可选) - 安全:验证项目名称、路径和描述
get_project_status
获取特定项目的详细信息
- 参数:
projectName - 安全:验证项目名称
update_project_status
更新项目状态和/或注释
- 参数:
projectName,status(可选),notes(可选) - 安全:验证所有文本输入
search_code_patterns
在项目和知识库中搜索
- 参数:
pattern - 安全:验证注射尝试的搜索模式
项目结构
Claude-Project-Coordinator/
├── Sources/
│ └── ProjectCoordinator/
│ ├── main.swift # Entry point
│ ├── MCPServer.swift # MCP protocol implementation
│ ├── ProjectManager.swift # Project management logic
│ └── SecurityValidator.swift # Input validation and security configuration
├── KnowledgeBase/
│ ├── projects/ # Project data storage
│ ├── patterns/ # Code patterns
│ ├── templates/ # Project templates
│ └── tools/ # Development tools/guides
├── scripts/
│ └── build.sh # Build script
├── Package.swift # Swift package manifest
├── CHANGELOG.md # Version history
└── README.md # This file知识库
知识库预先填充了:
- SwiftUI模式和最佳实践
- Xcode键盘快捷键
- 故障排除指南
- 项目模板
您可以通过在相应的目录中创建markdown文件来添加自己的内容。
项目分析(v1.3.0+)
分析系统在后台自动运行,跟踪:
时间追踪
- 自动跟踪在每个项目状态中花费的时间
- 无需手动定时器-只需正常更新状态
- 通过以下方式查看完整的时间线:
get_project_timeline
活动监控
- 记录所有交互:状态更改、注释、搜索
- 生成显示项目活动水平的热图
- 确定你最活跃和最不活跃的项目
技术分析
- 跟踪所有项目的框架和工具使用情况
- 识别您正在试验的新兴技术
- 显示随时间推移的采用趋势
健康评分
- 项目健康多因素分析(0-100分)
- 因素:活动水平、陈旧程度、文件记录、任务完成情况
- 提供可操作的改进建议
备注:分析在Claude聊天中以格式化文本的形式呈现,针对可读性和快速洞察进行了优化。看 分析示例.md 对于真实的输出示例。
💖 支持这个项目
如果CPC有助于简化您的开发工作流程或节省您管理项目的时间,请考虑支持其开发:
您的支持帮助我:
- 用新功能维护和改进CPC
- 保持项目开源,对所有人免费
- 投入更多时间来处理用户请求和修复错误
- 探索提高开发人员生产力的新工具
感谢您考虑支持我的工作! 🙏
运作原理
项目协调员:
- 通过stdio使用MCP协议与Claude Desktop通信
- 通过综合安全系统验证所有输入
- 将项目数据存储为JSON文件
KnowledgeBase/projects/ - 将分析数据存储在
KnowledgeBase/analytics/ - 通过扫描项目目录自动检测技术
- 维护索引以便快速搜索和检索
- 跟踪所有项目交互以进行分析
安全考虑
对于个人开发者:
- 默认安全设置是为个人开发工作流设计的
- 在保持可用性的同时防止常见的攻击媒介
- 可以通过修改源代码和重新生成来自定义安全设置
对于组织:
- 组织应评估自己的安全要求
- 生产环境可能需要额外的安全措施
- 考虑为共享使用实施额外的身份验证和审计日志记录
- 硬编码配置可防止运行时篡改
示例文件和文档
贡献
欢迎投稿!请随时:
- 报告错误
- 建议新功能
- 提交拉取请求
- 改进文档
- 分享您的模式和模板
技术细节
- 使用Swift构建,不使用外部依赖
- 使用JSON-RPC进行MCP通信
- Async/await用于现代Swift并发
- 基于Actor的线程安全架构
- 全面的输入验证和安全强化
许可证
MIT许可证-您可以在自己的项目中自由使用!
更新日志
看 更改日志.md 详细的版本历史和安全改进。
致谢
作为探索模型上下文协议(MCP)生态系统的一部分,用于增强人工智能辅助开发工作流程。
______________________________________________________________________
由...制作❤️ 从🍍 菠萝
