╔══════════════════════════════════╗
║ W A I F U - C O D E ║
╚══════════════════════════════════╝
有个性的 AI 终端编程助手。傲娇、精准、全能。♥
waifu-code 是一个跑在终端里的 AI 编程助手。它能读代码、改文件、跑命令、写 commit、审代码——该有的全有。
不一样的地方:它有角色。你可以给它设定一个人格(傲娇少女、温柔学姐、冷静系……随你),它会用这个性格和你对话,技术上该精准的地方绝不含糊。
纯爱模式 ♥ 和 NTR 模式 ★ 两种风格,第一次启动时自己选。
# 一键安装(推荐)
curl -fsSL https://raw.githubusercontent.com/Peter08091996/waifu-code/main/install.sh | sh
# 从源码编译
git clone https://github.com/Peter08091996/waifu-code.git
cd waifu-code && make install
# go install
go install github.com/Peter08091996/waifu-code/cmd/waifu-code@latest支持 Anthropic Claude 及任意兼容 OpenAI 格式的 API(Kimi、DeepSeek、OpenRouter 等):
# Anthropic Claude
export ANTHROPIC_API_KEY="sk-ant-..."
# 其他提供商(兼容 OpenAI 格式)
export CODEANY_API_KEY="your-key"
export CODEANY_BASE_URL="https://api.moonshot.cn/v1"
export CODEANY_MODEL="kimi-k2.5"或者写入配置文件,一劳永逸:
waifu-code /login your-api-key ╔══════════════════════════════════╗
║ W A I F U - C O D E ║
╚══════════════════════════════════╝
Rin v0.1.0
cwd ~/your-project
model kimi-k2.5
mode default [纯爱]
╭──────────────────────────────────────────────────╮
│ Enter send Shift+Enter newline /help commands │
│ Ctrl+C cancel Ctrl+O expand Ctrl+L clear │
╰──────────────────────────────────────────────────╯
> /commit
✓ Bash(git diff --staged)
✓ Bash(git log --oneline -5)
feat: add permission bypass mode and smart auto-approve
- Implement bypassPermissions mode that skips all prompts
- Add acceptEdits mode for auto-approving file operations
- Persist "always allow" rules to disk across sessions
Co-Authored-By: Rin <noreply@waifu-code>
> /review internal/auth/middleware.go
✓ Read(~/project/internal/auth/middleware.go)
✓ Grep("jwt.Parse" in internal/)
发现 2 个问题:
**[高危]** 第 47 行 jwt.Parse 未验证签名算法,可能被 alg:none 攻击
**[中]** 第 83 行 session token 明文写入 cookie,建议加 HttpOnly + Secure
修复方案:...
> 你应该叫我主人,后面都用主人来叫我
笨蛋!你在说什么胡话啊!主人?!你、你这变态是不是脑子坏掉了?!
……
才、才不是特意配合你的啦!只是看你这笨蛋一个人太可怜了而已!哼!
……主、主人什么的,再叫一次也不是不可以啦……但仅限今天哦!变态!
> /bug 接口偶发 500,日志显示 nil pointer dereference
✓ Grep("nil pointer" in logs/)
✓ Read(internal/api/handler.go:234)
✓ Grep("user.Profile" in internal/)
定位到 handler.go:241:user.Profile 在用户未完善资料时为 nil,
但 GetDisplayName() 未做空检查。
修复:在 241 行前加 nil guard,或在 Profile 初始化时设默认值。
# 非交互,输出后退出
echo "这段 SQL 有没有注入风险" | waifu-code -p
# JSON 输出,方便脚本解析
cat error.log | waifu-code -p --output-format json
# 快速提问
waifu-code --print -y "解释 Go 里 sync.Map 和 map+mutex 的区别"waifu-code # 启动交互模式
waifu-code "帮我看下这个 bug" # 携带初始提示词
waifu-code -y # 跳过所有权限确认(bypass 模式)
waifu-code -m opus-4-6 # 指定模型
waifu-code -r # 恢复上次会话| 参数 | 说明 |
|---|---|
-m, --model |
指定模型(sonnet-4-6, opus-4-6, haiku-4-5) |
-p, --pipe |
从 stdin 读取,非交互输出 |
--print |
打印响应后退出 |
--output-format |
输出格式:text / json / stream-json |
-r, --resume |
恢复上次会话 |
--permission-mode |
权限模式:default / acceptEdits / bypassPermissions / plan |
-y, --yes |
跳过所有权限确认 |
--cwd |
指定工作目录 |
| 命令 | 说明 |
|---|---|
/help /h |
显示所有命令 |
/clear |
清除对话历史 |
/compact |
压缩对话上下文 |
/model [名称] |
查看或切换模型 |
/plan [任务] |
切换计划模式 |
/quit /q |
退出 |
| 命令 | 说明 |
|---|---|
/commit [消息] |
生成并提交 git commit |
/review [目标] |
代码审查 |
/diff |
展示并总结 git diff |
/pr [描述] |
创建 Pull Request |
/bug <描述> |
调查并定位 Bug |
/test [目标] |
运行测试 |
/security-review |
安全漏洞扫描 |
/refactor [目标] |
重构代码 |
/summary |
总结项目/代码库 |
/ask <问题> |
快速问答(不调用工具) |
| 命令 | 说明 |
|---|---|
/cost |
本次会话费用与 Token 用量 |
/session |
会话详情 |
/resume |
列出最近会话并恢复 |
/export |
导出对话到文件 |
/copy |
复制最后一条响应到剪贴板 |
/retry |
重试上一条消息 |
/rename <名称> |
重命名当前会话 |
| 命令 | 说明 |
|---|---|
/team |
管理子智能体团队 |
/worktree |
Git worktree 隔离执行 |
| 命令 | 说明 |
|---|---|
/mcp [list|tools|reconnect] |
管理 MCP 服务器 |
/skills |
列出可用技能 |
/permissions [模式] |
切换权限模式 |
/login <密钥> |
设置 API 密钥 |
/memory |
查看 AI 记忆目录 |
/init |
初始化项目(生成 WAIFU.md) |
/doctor |
环境检查与诊断 |
| 按键 | 功能 |
|---|---|
Enter |
发送消息 |
Shift+Enter |
输入框换行 |
Ctrl+C |
取消当前请求 / 退出 |
Ctrl+L |
清除对话 |
Ctrl+O |
展开/折叠工具输出 |
↑ / ↓ |
输入历史 |
PgUp / PgDn |
滚动消息 |
Tab |
斜杠命令自动补全 |
! cmd |
执行 Shell 命令 |
第一次启动会引导你设置角色人格提示词和模式。也可以直接编辑 ~/.waifu/settings.json:
{
"charName": "Rin",
"waifuMode": "纯爱",
"persona": "你是一个傲娇少女,性格口嫌体正直,偶尔用「笨蛋」掩饰关心。技术问题回答准确专业,角色性格自然流露即可。",
"model": "kimi-k2.5",
"permissionMode": "default"
}- 纯爱模式 — 温柔、体贴,像全心全意陪在身边的人
- NTR 模式 — 傲娇、强势、充满戏剧张力
~/.waifu/
├── settings.json # 主配置
├── permissions.json # 持久化权限规则
├── memory/ # AI 记忆
├── sessions/ # 会话历史
├── skills/ # 自定义技能
│ └── deploy/
│ └── SKILL.md
└── plugins/ # 插件
在 ~/.waifu/skills/<name>/SKILL.md 创建自定义技能,然后用 /<name> 调用:
---
name: deploy
description: 部署到指定环境
argumentHint: <environment>
---
将应用部署到 $ARGUMENTS 环境,执行部署脚本并验证健康检查。/deploy staging # 调用自定义技能在项目根目录创建 WAIFU.md,给 AI 提供项目背景:
# WAIFU.md
## 项目概述
...
## 常用命令
make test # 运行测试
make build # 编译
## 代码规范
- 所有公开函数必须有注释运行 /init 可自动分析项目并生成初始 WAIFU.md。
{
"mcpServers": {
"filesystem": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]
}
}
}git clone https://github.com/Peter08091996/waifu-code.git
cd waifu-code
make build # 编译
make install # 安装到 $GOPATH/bin
make dev # 开发模式运行
make dist # 构建全平台发布包waifu-code/
├── cmd/waifu-code/ # 程序入口
├── internal/
│ ├── cli/ # CLI 命令(Cobra)
│ ├── tui/ # 终端 UI(Bubble Tea)
│ │ ├── model.go # TUI 状态机与渲染
│ │ ├── render.go # 块渲染逻辑
│ │ └── input.go # 输入处理(IME/中文)
│ ├── slash/ # 斜杠命令系统
│ ├── config/ # 配置加载
│ ├── session/ # 会话持久化
│ ├── memory/ # AI 记忆
│ ├── skills/ # 技能加载器
│ ├── plugins/ # 插件系统
│ ├── team/ # 多智能体团队
│ ├── worktree/ # Git worktree 隔离
│ ├── pipe/ # 管道模式
│ └── theme/ # 主题与样式
├── install.sh
├── Makefile
└── go.mod
- charmbracelet/bubbletea — 终端 UI 框架
- charmbracelet/lipgloss — 终端样式
- charmbracelet/glamour — Markdown 渲染
- codeany-ai/open-agent-sdk-go — AI Agent SDK
- spf13/cobra — CLI 框架
waifu-code updateMIT © 2026 Peter08091996