# opencode 通用开发插件规则
**Repository Path**: superliuge/opencode-skills-plugins
## Basic Information
- **Project Name**: opencode 通用开发插件规则
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-01-18
- **Last Updated**: 2026-01-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# OpenCode AI Agent System
[](LICENSE)
[](CHANGELOG.md)
[](https://nodejs.org)
**基于 AI Agent 的智能开发助手系统**
[English](README.md) | [中文](README_CN.md)
---
## 📖 目录
- [✨ 特性](#特性)
- [🚀 快速开始](#快速开始)
- [🏗️ 架构设计](#架构设计)
- [🔌 插件系统](#插件系统)
- [🛠️ 技能系统](#技能系统)
- [📝 配置说明](#配置说明)
- [💡 使用示例](#使用示例)
- [🤝 贡献指南](#贡献指南)
- [📄 许可证](#许可证)
---
## ✨ 特性
### 🤖 多模型协作
- **3个免费模型** 无需配置 API Key 即可使用
- **智能任务分配** 根据任务类型自动选择最合适的模型
- **委员会投票** 重大决策通过多模型加权投票决定
### 🔄 RALPH Loop 自动化
- **自动执行循环** 用户确认后自动执行,最多 10 次重试
- **任务类型感知** 自动识别新应用开发 vs 功能迭代
- **约束验证** 自动验证 LSP 诊断、测试覆盖率等
### 📦 智能上下文管理
- **自动持久化** 所有操作日志自动保存到本地
- **历史追溯** 支持跨时间搜索历史记录
- **重要决策标记** 自动识别和保存关键决策
### ⚡ 模式自动切换
- **Plan/Build 模式** 根据操作类型自动切换
- **空闲超时** 空闲自动切回 Plan 模式
- **任务类型检测** 识别 new_app 和 iteration 任务
---
## 🚀 快速开始
### 环境要求
- Node.js >= 14.0
- npm 或 yarn
- OpenCode 编辑器 (https://opencode.ai)
- [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode) - 插件框架依赖
### 安装 oh-my-opencode
```bash
# 1. 安装 oh-my-opencode (如果尚未安装)
npm install -g oh-my-opencode
# 或使用 npx
npx oh-my-opencode --help
```
### 安装步骤
```bash
# 1. 克隆项目
git clone https://github.com/yourusername/opencode-agent-system.git
cd opencode-agent-system
# 2. 安装项目依赖
npm install
# 3. 在 OpenCode 中加载项目
# 直接在项目目录中运行 opencode,或在 OpenCode 中打开此目录
opencode
```
### OpenCode 环境配置
```bash
# 1. 在项目根目录运行
cd /path/to/opencode-agent-system
# 2. 安装项目依赖
npm install
# 3. 启动 OpenCode(会自动加载 .opencode 配置)
opencode
# 4. 验证插件加载
/opencode plugins list
# 应该显示:
# ✓ mode-switcher (v1.1.0)
# ✓ context-manager (v1.1.0)
# ✓ council-voting (v1.0.0)
# ✓ ralph-loop (v1.1.0)
# 5. 查看所有可用技能
/opencode skills list
# 应该显示 11 个技能
```
### 首次使用
```bash
# 启动后,系统会自动加载配置
opencode
# 查看当前模式
/getCurrentMode
# 查看所有插件状态
/opencode plugins status
# 创建你的第一个 RALPH Loop
/createRalphLoop
{"lsp_diagnostics": "clean", "functionality": "all requirements satisfied"}
```
---
## 🏗️ 架构设计
```
┌─────────────────────────────────────────────────────────────────┐
│ OpenCode 编辑器 │
├─────────────────────────────────────────────────────────────────┤
│ ┌───────────────────────────────────────────────────────────┐ │
│ │ oh-my-opencode 框架 │ │
│ │ (https://github.com/code-yeongyu/oh-my-opencode) │ │
│ ├───────────────────────────────────────────────────────────┤ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ 插件 │ │ 技能 │ │ 模型 │ │ │
│ │ ├─────────────┤ ├─────────────┤ ├─────────────┤ │ │
│ │ │mode-switcher│ │requirement │ │minimax-m2.1 │ │ │
│ │ │context- │ │ -to- │ │ -free │ │ │
│ │ │ manager │ │ program │ │ │ │ │
│ │ │council- │ │council- │ │ big-pickle │ │ │
│ │ │ voting │ │ voting │ │ │ │ │
│ │ │ralph-loop │ │ralph-loop │ │ grok-code │ │ │
│ │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │ │
│ │ │ │ │ │ │
│ │ └────────────────┼────────────────┘ │ │
│ │ │ │ │
│ │ ┌─────┴─────┐ │ │
│ │ │ 核心 │ │ │
│ │ │ 引擎 │ │ │
│ │ └───────────┘ │ │
│ └───────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
```
### 核心组件
| 组件 | 描述 | 职责 |
|------|------|------|
| **oh-my-opencode** | 框架 | OpenCode 插件框架基础 |
| **Plugins** | 插件 | 提供底层功能工具 (文件 I/O、状态管理) |
| **Skills** | 技能 | 定义工作流和触发条件 |
| **Models** | 模型 | AI 推理和生成能力 |
| **Core Engine** | 核心引擎 | 编排调度、上下文管理 |
### 依赖关系
本项目依赖于 [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode) 框架:
- **框架**: oh-my-opencode 提供插件加载、技能管理、工具注册等核心功能
- **插件**: 4个自定义插件扩展框架功能
- **技能**: 11个工作流技能定义任务流程
- **模型**: 3个免费AI模型提供推理能力
---
## 🔌 插件系统
### 1. Mode Switcher Plugin (v1.1.0)
**路径:** `.opencode/plugins/mode-switcher/index.js`
**功能:**
- 自动在 Plan/Build 模式间切换
- 检测任务类型 (new_app vs iteration)
- 为 RALPH Loop 提供合适的约束
**工具:**
```javascript
// 获取当前模式
getCurrentMode()
// 手动切换模式
switchMode("plan") // 或 "build"
// 自动检测模式
autoDetectMode("创建一个新的待办应用")
// 检测任务类型
detectTaskType("给现有的Todo模型添加writable字段")
// 返回: "iteration"
// 设置任务类型
setTaskType("new_app")
// 获取任务类型对应的 RALPH 约束
getRalphConstraints()
```
### 2. Context Manager Plugin (v1.1.0)
**路径:** `.opencode/plugins/context-manager/index.js`
**功能:**
- 上下文存储和检索
- 自动保存到 `.opencode/history/`
- 历史记录搜索
**工具:**
```javascript
// 添加上下文
addContext("选择了 React + Next.js 技术栈", { decision: true })
// 获取上下文
getContext({ limit: 10 })
// 搜索历史
searchAllHistory("todo")
// 自动记录任务执行
logTaskExecution(
"new_app",
"创建Todo应用",
"completed",
{ features: ["CRUD", "writable"] }
)
// 列出历史文件
listHistoryFiles()
```
### 3. Council Voting Plugin (v1.0.0)
**路径:** `.opencode/plugins/council-voting/index.js`
**功能:**
- 多模型委员会投票
- 加权决策机制
- 自动投票模拟
**工具:**
```javascript
// 创建提案
createProposal(
"技术栈选择",
"应该选择什么技术栈?",
["React+Next.js", "Vue+Nuxt", "SvelteKit"]
)
// 自动投票
autoVote("proposal_id")
// 统计结果
tallyVotes("proposal_id")
// 获取委员会成员
getCouncilMembers()
```
### 4. RALPH Loop Plugin (v1.1.0)
**路径:** `.opencode/plugins/ralph-loop/index.js`
**功能:**
- 自动执行循环
- 约束验证
- 任务类型感知约束
**工具:**
```javascript
// 创建循环
createRalphLoop({
code_quality: "lsp_diagnostics clean",
functionality: "all requirements satisfied"
})
// 启动循环
startRalphLoop("loop_id")
// 查看状态
ralphStatus("loop_id")
// 获取报告
ralphReport("loop_id")
// 任务类型感知创建
createRalphLoopWithTaskType({}, { taskType: "new_app" })
```
---
## 🛠️ 技能系统
### 1. Requirement to Program
**文件:** `.opencode/skills/requirement-to-program.yml`
将用户需求转换为可工作程序的主要工作流。
```
用户输入需求 → 分析 → 架构设计 → 技术选型 → 代码生成 → 验证迭代
```
### 2. Council Voting Skill
**文件:** `.opencode/skills/council-voting-skill.yml`
通过多模型投票进行集体决策。
**触发短语:**
```
vote, council, decide together, what should we do
```
### 3. Tech Stack Selector Skill
**文件:** `.opencode/skills/tech-stack-selector-skill.yml`
智能技术栈选择。
**触发短语:**
```
tech stack, framework, library, what should I use
```
### 4. Code Generator Skill
**文件:** `.opencode/skills/code-generator-skill.yml`
基于架构设计生成代码。
**触发短语:**
```
generate code, write code, implement, create function
```
### 5. Context Manager Skill
**文件:** `.opencode/skills/context-manager-skill.yml`
智能上下文管理。
**触发短语:**
```
remember, context, as we discussed, keep in mind
```
### 6. RALPH Loop Skill
**文件:** `.opencode/skills/ralph-loop-skill.yml`
自动执行循环系统。
**触发短语:**
```
repeat until, iterate, keep trying, auto execute
```
---
## 📝 配置说明
### 主配置文件 (oh-my-opencode.json)
```json
{
"version": "1.1.0",
"name": "OpenCode AI Agent System",
"models": {
"main": "opencode/minimax-m2.1-free",
"oracle": "opencode/minimax-m2.1-free",
"librarian": "opencode/big-pickle",
"explore": "opencode/grok-code"
},
"plugins": [...],
"skills": [...],
"council": {
"votingMembers": [...],
"defaultThreshold": 0.6,
"autoVoteEnabled": true
},
"ralphLoop": {
"maxRetries": 10,
"defaultConstraints": {...},
"taskTypeConstraints": {...}
}
}
```
### 启动配置 (opencode.json)
```json
{
"version": "1.0.0",
"mainAgent": "opencode/minimax-m2.1-free",
"features": {
"modeSwitching": true,
"contextManagement": true,
"councilVoting": true,
"ralphLoop": true,
"taskTypeDetection": true,
"filePersistence": true
},
"logging": {
"level": "info",
"historyDir": ".opencode/history"
}
}
```
---
## 💡 使用示例
### 示例 1: 创建新应用
```bash
# 1. 设置任务类型
/setTaskType
"new_app"
# 2. 创建 RALPH Loop
/createRalphLoopWithTaskType
{"metadata": {"description": "创建Todo应用"}}
# 3. 开始执行
"开始创建"
# 4. 查看进度
/ralphStatus
# 5. 查看结果
/ralphReport
```
### 示例 2: 功能迭代
```bash
# 1. 检测任务类型
/detectTaskType
"给Todo模型添加writable字段"
# 系统返回: iteration
# 2. 创建迭代循环
/createRalphLoopWithTaskType
{"metadata": {"description": "添加writable功能"}}
# 3. 执行并验证
"开始添加"
```
### 示例 3: 技术选型投票
```bash
# 1. 创建提案
/createProposal
"技术栈选择"
"这个项目应该使用什么技术栈?"
["React+Next.js", "Vue+Nuxt", "SvelteKit"]
# 2. 自动投票
/autoVote
"proposal_id"
# 3. 查看结果
/tallyVotes
"proposal_id"
```
### 示例 4: 上下文管理
```bash
# 1. 记录决策
/addContext
"经过投票,选择了 React + Next.js 技术栈"
{"decision": true}
# 2. 搜索历史
/searchAllHistory
"技术栈"
# 3. 查看今天日志
/getHistoryByDate
"2026-01-18"
```
---
## 📁 文件结构
```
opencode-agent-system/
├── .opencode/
│ ├── oh-my-opencode.json # 主配置文件
│ ├── opencode.json # 启动配置
│ ├── history/ # 日志存储目录
│ ├── plugins/ # 插件
│ │ ├── mode-switcher/
│ │ ├── context-manager/
│ │ ├── council-voting/
│ │ └── ralph-loop/
│ ├── skills/ # 技能
│ │ ├── requirement-to-program.yml
│ │ ├── council-voting-skill.yml
│ │ └── ...
│ └── doc/ # 文档
│ ├── README.md
│ └── INTEGRATION.md
├── package.json
└── README.md
```
---
## 🤝 贡献指南
欢迎贡献代码!请遵循以下步骤:
### 1. Fork 项目
点击页面右上角的 Fork 按钮
### 2. 创建分支
```bash
git checkout -b feature/your-feature
```
### 3. 提交更改
```bash
git add .
git commit -m "Add: your feature description"
git push origin feature/your-feature
```
### 4. 创建 Pull Request
在 GitHub 上创建 PR,描述你的更改
### 开发指南
- 遵循现有代码风格
- 添加单元测试
- 更新文档
- 确保所有测试通过
---
## 📄 许可证
本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件。
---
## 🙏 致谢
- [OpenCode](https://opencode.ai) - AI 编程助手
- [MiniMax](https://minimaxi.com) - 提供免费模型
- [Big Pickle](https://bigpickle.ai) - 文档分析模型
- [Grok Code](https://x.ai) - 代码搜索模型
---
**如果这个项目对你有帮助,请给个 ⭐ Star!**