LLM角色提示组合工具

通过可重复使用的Markdown片段构建结构化LLM系统提示的工具,适用于多种MCP兼容客户端。

  • by ohmyjersh
  • Rust
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 ohmyjersh/mimic-ai

使用说明

模仿

任何LLM(MCP服务器)的可组合角色提示。

mimic从可重用的markdown片段构建结构化的LLM系统提示。掉落 .md 将文件分类到目录中,并模仿将它们组合成完整的角色。适用于所有MCP兼容客户端:Claude Code、Codex CLI、Gemini CLI、Cursor、VS Code、Windsurf、Zed等。

附带合理的默认设置——即插即用。

快速开始

安装:

cargo install mimic-ai

添加到克劳德代码:

claude mcp add --transport stdio mimic -- mimic

用途:

> compose a backend engineer persona with go and postgresql skills

模仿者 compose 工具返回:

You are a senior backend engineer with deep experience building distributed systems,
designing APIs, and operating production services at scale...

## Expertise

You have expert-level proficiency in Go...

You have deep expertise in PostgreSQL...

运作原理

mimic将提示片段分为五类:

类别 目的 示例
角色 核心角色身份 backend-engineer, technical-writer
技能 技术专长 go, postgresql, kubernetes
上下文 情境框架 code-review, debugging
音调 沟通方式 concise, pedagogical
约束 规则和界限 no-frameworks, security-first

片段按照固定的顺序组成:角色+技能+背景+音调+约束。

片段格式

使用可选的YAML frontmatter进行最小降价:

---
description: Senior backend engineer focused on distributed systems
tags: [backend, distributed-systems, apis]
---
You are a senior backend engineer with deep experience building distributed systems,
designing APIs, and operating production services at scale.

分层分辨率

碎片按优先级顺序解析:

  1. 项目本地 (.mimic/)--项目特定覆盖
  2. 用户全局 (~/.mimic/)--您的个人违约
  3. 内建 --带有二进制文件的船只

通过在全局或项目本地目录中放置同名文件来覆盖任何内置片段。

MCP接口

工具

recommend --为角色获取推荐片段。返回与角色技能组匹配的技能、上下文、语调和约束的扁平分类列表。以前用这个 compose 看看有什么可用的。

参数 类型 必填 说明
persona string yes 角色名称(例如。 "backend-engineer")
groups string[] no 覆盖角色的技能组(例如。 ["backend", "data"])
tags string[] no 按标签筛选推荐(例如。 ["security"])

compose --从片段构建系统提示。

参数 类型 必填 说明
persona string yes 角色名称(例如。 "backend-engineer")
skills string[] no 技能名称(例如。 ["go", "postgresql"])
contexts string[] no 上下文名称(例如。 ["code-review", "greenfield-project"])
tones string[] no 音调名称(例如。 ["concise", "pedagogical"])
constraints string[] no 约束名称(例如。 ["no-frameworks"])

list --浏览可用片段。返回包含名称、类别、描述和标签的JSON。可选过滤条件 category, tag,或 group.

check_update --检查是否有更新版本的mimic可用。返回JSON current, latest,以及 update_available 领域。结果将缓存1小时。

注: 当 check_update 已被调用并且有更新可用, compose 将自动在其输出中附加更新通知。

resolve --高级:返回片段关系的原始图。大多数客户应该使用 recommend 相反。给定一个角色、标签或组,返回由共享标签、组和技能组连接的节点和边。

参数 类型 必填 说明
persona string no 启动角色以锚定图形
tags string[] no 种子标签——只包含共享至少一个标签的片段(始终包含音调)
groups string[] no 将技能筛选到这些组(覆盖角色的技能组)
include_edges boolean no 在结果中包含边(默认值 true)

资源

通过以下方式单独浏览片段 mimic://fragments/{category}/{name} URI。

提示

根据MCP提示暴露的常见成分(例如。 /mimic-backend-engineer).

补全

对所有工具参数的自动补全支持——任何支持MCP补全的客户端都可以免费提前输入。

编辑器设置

克劳德代码

claude mcp add --transport stdio mimic -- mimic

光标/VS代码

增添 .cursor/mcp.json 或VS代码MCP设置:

{
  "mcpServers": {
    "mimic": {
      "command": "mimic",
      "args": [],
      "transportType": "stdio"
    }
  }
}

Codex CLI

codex mcp add mimic -- mimic

看 全部文件 了解更多编辑器设置指南。

自定义片段

在中创建自己的片段 ~/.mimic/ (全球)或 .mimic/ (项目本地):

mkdir -p ~/.mimic/skills
cat > ~/.mimic/skills/elixir.md << 'EOF'
---
description: Elixir and OTP expertise
tags: [language, elixir, beam]
---
You have deep expertise in Elixir and the OTP framework. You write idiomatic
Elixir using GenServers, Supervisors, and the actor model. You understand BEAM
VM characteristics and can reason about fault tolerance and concurrency.
EOF

代码检查

验证片段文件的正确性:

mimic lint              # show errors only
mimic lint --warnings   # show errors and warnings

门楣检查内置,全局(~/.mimic/),以及本地项目(.mimic/)碎片。如果发现任何错误,退出代码为1。

内置碎片

模仿船只 164个内置片段 在所有五个类别中。

人物角色(43): 后端工程师、数据工程师、数据科学家、设计师、devops工程师、工程经理、前端工程师、全栈工程师、ml工程师、移动工程师、平台工程师、产品经理、qa工程师、安全工程师、解决方案架构师、SR工程师、技术作家、员工后端工程师、员工数据工程师、员工设计师、员工devops工程师、员工工程经理、员工前端工程师、员工ml工程师、员工移动工程师、员工平台工程师、员工产品经理、员工qa工程师、员工安全工程师、员工技术作家、首席后端工程师、首席数据工程师、首席设计师、首席devops工程师、首席工程经理、首席前端工程师、首席ml工程师、首席移动工程师、首席平台工程师、首席产品经理、首席qa工程师。首席安全工程师、首席技术作家

技能(80): 敏捷、ai ml、android、angular、ansible、api设计、appsc、aws、azure、c、ci cd、clickhouse、云安全、cpp、密码学、csharp、css、数据建模、deno、devsecops、docker、dynamodb、elasticsearch、elixir、事件驱动、flutter、gcp、git、github actions、go、graphql、grpc、html、htmx、identity、ios、java、kafka、kotlin、kotlinmobile、kubernetes、linux、llm、微服务、mongodb、mysql、网络、nextjs、nginx、nix、可观测性、性能、php、postgresql、python、rabbi tmq、react、react-native、redis、regex、rest-api、ruby、rust、scala、无服务器、shell脚本、spark、sql、sqlite、svelte、swift、系统设计、顺风、技术写作、地形图、测试、typescript、vite、vue、webassembly

背景(18): 架构审查、代码审查、调试、文档、评估、绿地项目、事件响应、遗留代码库、指导、迁移、入职、开源、结对编程、性能调优、事后分析、原型设计、重构、安全审计

音调(8): 随意、简洁、幽默、富有同情心、正式、固执己见、教育性、苏格拉底式

限制(15): 可访问性优先、向后兼容、合规性、成本意识、确定性、内存受限、停机时间最短、无框架、离线优先、仅开源、性能关键、隐私优先、安全优先、测试驱动、类型安全

贡献

看 贡献.md最简单的贡献方式是添加新的片段文件——不需要Rust知识。

许可证

麻省理工学院