mcpField
M
migrate-create

migrate-create

github.com/ruvnet数据与数据库80.0k729 次安装今天更新
代码仓库

关于 migrate-create

用于创建按序号排列的数据库迁移,并生成配对的 up/down SQL 文件。它根据迁移名称选择模板,并记录迁移元数据及历史模式搜索结果。

主要功能

  1. 01按序号生成迁移
  2. 02按名称选择 SQL 模板
  3. 03生成 up/down SQL 文件
  4. 04搜索历史模式并存储元数据

适用场景

  1. 01创建表或修改架构
  2. 02添加列或索引
  3. 03准备可回滚的数据库变更

MCP 相关

使用 Ruflo 模式搜索查找相似迁移,并将迁移元数据存储在 migrations 命名空间中。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ruvnet/ruflo --skill migrate-create

安装后在 Claude Code 中输入/migrate-create确认已加载。

详细介绍

创建迁移

生成新的数据库迁移,包含按顺序编号的 up/down SQL 文件对。

适用场景

需要为架构变更创建新的数据库迁移时,例如创建表、添加列、创建索引或修改约束。

步骤

  1. 确定下一个编号 —— 使用 Glob 扫描迁移目录中的现有迁移文件,找出最高编号,然后加 1(补零至 3 位)
  2. 选择模板 —— 根据 <name> 选择合适的 SQL 模板:
    • 名称以 create_ 开头 -> CREATE TABLE 模板
    • 名称以 add_ 开头 -> ALTER TABLE ADD COLUMN 模板
    • 名称以 drop_ 开头 -> 带安全检查的 DROP
    • 名称包含 index -> CREATE INDEX 模板
    • 其他 -> 带占位注释的通用迁移模板
  3. 生成 up 迁移 —— 使用适当的 SQL 写入 NNN_<name>.up.sql,并使用 IF NOT EXISTS 确保幂等性
  4. 生成 down 迁移 —— 使用反向操作写入 NNN_<name>.down.sql,并使用 IF EXISTS
  5. 搜索以往模式 —— 调用 mcp__plugin_ruflo-core_ruflo__agentdb_pattern-search(通过 ReasoningBank 路由;不要传入 namespace 参数——pattern-* 工具会忽略该参数)。
  6. 存储元数据 —— 调用 mcp__plugin_ruflo-core_ruflo__memory_store --namespace migrations,记录迁移的编号、名称、状态(pending)和文件路径。memory_* 工具系列按命名空间路由;agentdb_hierarchical-* 不按命名空间路由(它按层级 working|episodic|semantic 路由),因此此处应使用 memory_*。参见 ruflo-agentdb ADR-0001 §"Namespace convention"。
  7. 报告 —— 显示:迁移编号、已创建的文件路径、所用模板,以及找到的任何类似以往迁移

CLI 替代方案

npx @claude-flow/cli@latest memory store --namespace migrations --key "migration-NNN_NAME" --value '{"number": NNN, "name": "NAME", "status": "pending"}'

评论

支持 Markdown