扩展仓库管理工具

Kamiwaza平台的扩展仓库,包含应用、服务和工具的开发、测试与部署管理。

  • by kamiwaza-drew
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 kamiwaza-drew/tool-git

使用说明

git mcp扩展

kamiwazaai的Kamiwaza扩展库。

概述

此存储库包含Kamiwaza平台扩展:

  • 应用 (apps/):部署到App Garden的多服务应用程序
  • 服务 (services/):App Garden后端服务(例如矢量数据库)
  • 工具 (tools/):MCP协议服务器部署到工具棚

快速开始

先决条件

  • Docker和Docker Compose
  • Python 3.10+
  • 紫外线 (推荐)或pip

设置

# Install development dependencies
make install

# List available extensions
make list

创建扩展

# Create a new app
make new TYPE=app NAME=my-app

# Create a new service
make new TYPE=service NAME=service-milvus

# Create a new tool
make new TYPE=tool NAME=my-tool

开发流程

# Build an extension
make build TYPE=app NAME=my-app

# Test an extension
make test TYPE=app NAME=my-app

# Validate all extensions
make validate

# Run full CI pipeline
make ci-pipeline

结构

git-mcp-extensions/
├── apps/                    # Multi-service applications
│   └── {app-name}/
│       ├── kamiwaza.json    # Extension metadata
│       ├── docker-compose.yml
│       ├── backend/
│       └── frontend/
├── services/                # App Garden backend services
│   └── {service-name}/
│       ├── kamiwaza.json
│       └── docker-compose.yml
├── tools/                   # MCP tool servers
│   └── {tool-name}/
│       ├── kamiwaza.json
│       ├── Dockerfile
│       └── src/
├── shared/                  # Shared libraries
│   ├── python/
│   └── typescript/
├── make/                    # Build system modules
├── scripts/                 # Build/test scripts
└── .ai/                     # AI assistant rules

扩展要求

每个扩展必须具有:

  • kamiwaza.json 包含名称、版本、风险等级
  • Dockerfile 对于每项服务
  • docker-compose.yml 促进地方发展
  • 健康终点位于 GET /health (仅限应用程序)

看 .ai/rules/architecture.md 详细要求。

从上游更新

此存储库是根据Kamiwaza扩展模板创建的。要获取基础设施更新,请执行以下操作:

# Update shared infrastructure (preserves apps/, services/, and tools/)
copier update --trust --skip-answered --defaults

# Review changes
git diff

# Commit updates
git add -A && git commit -m "Update infrastructure from upstream"

提示:保持 .copier-answers.yml 已提交,因此模板源是已知的。上述标志通过重用存储的答案使更新非交互式。

命令参考

命令 描述
make list 列出所有扩展名
make new TYPE=app NAME=x 创建新应用
make new TYPE=service NAME=x 创建新服务
make new TYPE=tool NAME=x 创建新工具
make build TYPE=app NAME=x 构建扩展
make test TYPE=app NAME=x 测试扩展
make validate 验证所有扩展
make sync-compose 生成App Garden配置
make build-registry 构建扩展注册表
make ci-pipeline 运行完整的CI管道

配置

Docker镜像前缀为: kamiwazaai/

GitHub Bootstrap

在GitHub上创建仓库后,配置主题、分支和保护规则:

# Interactive mode - prompts for each option
./scripts/setup-github-repo.sh

# Or use a config file for non-interactive setup
cp .github/repo-setup.yml.example .github/repo-setup.yml
# Edit config as needed, then run:
./scripts/setup-github-repo.sh

它配置了什么:

  • 主题(extensions)
  • 从主发展分支
  • 分支命名规则(强制执行 feature/*, fix/*等等)
  • 分支保护(PR审查、状态检查、强制推送阻止)

看 .github/repo-setup.yml.example 对于所有配置选项。

许可证

专有-kamiwazaai