Skip to content

About

【整活向】奶蛙Agent

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

9 Commits

Folders and files

Repository files navigation

【整活向】奶蛙Agent

只是一个整活软件,除整活尝鲜外不要当作正常Agent在自己正常工作区使用!!!软件本身如有重大问题可反馈,无视本规则将本agent作为主力使用,出现任何事故概不负责。

本README.MD使用AI创作,为介绍内容

Windows 桌面陪伴程序,C# / .NET 9 / WPF。透明立绘与二维动作,配有独立设计的设置和聊天界面。

开始使用

下载安装程序(Windows x64) · 所有版本

下载 Setup 后双击安装,包含运行时和全部动画,无需另装 .NET。可选择创建桌面快捷方式;安装器和快捷方式使用奶蛙图标。安装默认使用当前用户目录,升级和卸载保留原有 API 配置与聊天记录。

从源码构建或使用便携版时:

  1. 双击 output\Naifrog\Naifrog.exe,奶蛙默认出现在屏幕右下角。
  2. 右键奶蛙可直接打开 工程工作台,或进入 设置、退出。托盘菜单也提供工作台入口。
  3. 在 模型与聊天 填写模型连接并保存、测试。
  4. 单击奶蛙即可聊天,拖动可调整位置。

保留 EXE 同级的 animations 和 licenses 文件夹。动画包缺失时会回退原始立绘。

配置自己的 AI

支持兼容 chat/completions 的模型接口。可自行填写:

  • API 地址:服务商提供的 Base URL,例如 https://example.com/v1;本机服务可使用 HTTP。
  • 模型名称 / Model ID:可以从 API 获取模型列表后选择,也可以手动填写。
  • API Key:需要认证时填写;本机无认证服务可留空。
  • 聊天系统提示词:身份、语气、回答要求均可自行修改。
  • 流式输出、回复长度、超时和上下文轮数。

点击「保存并测试连接」会发送一条简短请求。配置需要用户自己的服务和额度;程序没有内置 Key。普通聊天使用文字接口,工程 Agent 使用同一服务的 tools/tool_calls;暂不支持 Anthropic Messages、Responses API 等其它协议。

聊天支持多行输入、Enter 发送、Shift+Enter 换行、取消和重试。完整成功回复才写入记忆,部分或取消回复不自动重试、不保存。

设置页分类

分类 内容
概览 当前状态、聊天、召唤、暂停、工程工作台、专注、立即陪伴、截图预览
外观与动作 大小、透明度、置顶、拖动、位置记忆、动作包、微动作幅度、动作预览
模型与聊天 API、Key、模型、自定义系统提示词、流式和请求参数
情绪与性格 情绪开关、独立模型分析、置信度、冷却、分析提示词
陪伴与专注 问候、闲置动作、散步、提醒、免打扰、频率、陪伴提示词、专注计时
屏幕与隐私 本次屏幕授权、显示器范围、附图、定时观察、排除应用、预览与撤权
数据与高级 记忆、导出和清空、开机启动、快捷键、多实例、诊断和恢复默认
工程 Agent 工程提示词、模型 token 窗口、自动整理上下文、命令超时、工程工作台入口

普通配置修改需点击「保存并应用」。设置会合并其它窗口新保存的未编辑字段。

本地工程 Agent

右键奶蛙 → 工程工作台 直接进入;设置和聊天也保留入口。界面使用原生 WPF,没有 WebView、网页前端或浏览器运行时。工作台、设置与聊天是普通独立窗口,桌宠的置顶设置不再影响它们。

  1. 在「模型与聊天」填写自己的 API 地址、模型和 Key。模型须支持兼容 chat/completions 的 tools / tool_calls,普通聊天连接成功不代表模型支持工具。
  2. 在工程工作台选择工程目录,设置是否允许修改文件和终端策略,描述任务并开始。
  3. 在会话中查看回复,展开命令卡片查看脚本、输出和退出码;「文件改动」打开前后对照。可停止、继续追问,或新建其它工程的任务。

运行中补充引用:任务运行时输入框和发送按钮仍可用,按钮显示「补充引用」。消息先显示「待引用」,在下一次任务模型请求前按顺序纳入上下文;当前请求和整批工具继续执行,不会取消、重启或重复命令。纳入后显示「已加入上下文」。停止时未纳入的引用留在队列,继续任务时先处理旧引用;如果任务正在结束或队列已满,输入保留供稍后发送。每条最多32000字符,待处理队列最多20条/128000字符。

模型选择:工作台底部提供可编辑下拉框和刷新按钮,设置页提供「获取模型」。读取用户 Base URL 对应的 GET /models,使用同一 Key,不筛掉服务返回的模型类型;是否支持聊天/工具由模型和服务决定。服务不提供该接口时可手动输入。工作台选择会保存到模型配置;任务运行期间沿用开始时的模型,停止或结束后可切换。过时的服务列表不会覆盖新服务配置。

文件差异:顶部显示修改文件数与新增/删除行数。打开改动面板,点击文件名查看带行号的差异;新增为绿、删除为红,支持选中行后 Ctrl+C 复制。统计针对本任务文件工具的原始/当前快照;终端产生的改动请通过 Git diff 查看。大段重写使用有界替换展示,避免差异计算阻塞窗口。

已提供 9 种本地工具:目录查看、分段读取文件、文字搜索、创建/覆盖文件、精确替换文字、删除文本文件、PowerShell 命令、Git 状态、Git diff。模型收到真实执行结果后继续处理,可以读取多个文件、修改工程、调用本机编译/测试工具,再根据错误修复。最多 3 个不同工作区同时运行,重叠目录不能同时执行。

终端默认每条询问,显示实际脚本与工作目录;也可在开始任务前禁止终端,或为本任务授权自动执行。终端具有当前 Windows 用户权限,不是沙箱,可访问工作区外和网络。文件工具检查工作区路径、链接和文件哈希,支持最大 1 MiB 的 UTF-8 文本(可含 BOM),其它编码/二进制拒绝自动编辑。新建使用 expected_hash=missing,覆盖/替换/删除必须提供读取所得 sha256。

编译器、Git、SDK 等需要用户在本机安装;终端使用 Windows PowerShell。调用原生命令时应检查 $LASTEXITCODE 并以 exit 返回失败码。程序会将输出和退出码交给模型,不会因为调用了命令就判定测试通过。任务持续到模型结束、用户停止或接口失败,不再用固定轮数停止,也不在主界面展示轮数。支持 SSE 流式正文、普通 JSON 兼容返回以及用量反馈;思考仅显示通用状态,不展示私有推理链。

上下文按 模型 token 窗口 估算,结合服务实际 usage 校准;默认窗口为 128000 tokens,可在设置中按模型规格修改。API Key 用于认证和计费,模型仍有自己的上下文窗口。旧版按 160000 个序列化字符直接停止的限制已移除。

默认自动整理旧历史:保留用户目标、最近完整工具调用与结果、已读取的工程约定、重要失败与修改文件记录,使用同一模型整理摘要;摘要失败时采用本地有界记录。完整会话保留在本机加密历史,当前模型上下文单独保存。服务明确拒绝上下文过长时,会整理并缩小请求后最多重试两次模型请求,已经执行的工具不重复运行。若用户指令自身已超过可用窗口、关闭自动整理或服务持续拒绝,会明确停止并保留记录。没有内置 Codex 引擎或模型额度,任务完成质量取决于用户模型与工程环境。

「文件改动」可预览并保守撤销文件工具产生的修改;用户随后修改过的文件会报告冲突。终端产生的改动不属于文件工具撤销范围,可通过 Git diff 检查。记录和原始字节快照位于数据目录 AgentTasks/<任务ID>/ 并用 Windows 用户加密;历史按钮可打开其中 record.dpapi 只读查看。继续对话仅限当前工作台会话,重启后历史可查看,暂不恢复执行。

工程源码和命令输出会发送给用户配置的服务。工程任务与陪伴聊天的上下文、记忆和情绪分析分开。取消和窗口关闭会停止在运行的请求/命令,已经发生的改动不会自动回滚;授权命令自行启动的脱离进程应由用户管理。

表情与日常行为

动作包提供透明序列和定格表情,程序处理入场、主片段、退场、按情绪冷却、优先级和占用状态。定格图可叠加呼吸、摇摆等整图微动作。不是可旋转 3D,也未实现局部四肢骨骼蒙皮。

模型情绪分析是可选独立请求,默认关闭;失败时仍继续聊天。性格由聊天系统提示词定义。日常功能包括启动问候、等待时思索、快速来回拖动后晕乎、深夜闲置困倦、可选散步、专注计时与主动陪伴。

开启全局快捷键后:

  • Ctrl+Alt+T:打开聊天。
  • Ctrl+Alt+H:召唤到鼠标旁。
  • Ctrl+Alt+P:暂停或恢复自动行为。

快捷键冲突会显示在诊断中,设置页功能入口仍可用。

屏幕功能

默认不截图、不上传。屏幕授权只在本次进程有效,重启后关闭。

「预览屏幕」仅显示本机图片;选择附到聊天后,再点发送才交给模型。开启「每次聊天自动附图」或「定时观察」则按对应设置发送,模型需支持图片。授权或范围改变会明确确认;撤销授权会取消尚在进行的图片请求。排除应用出现在所选显示器时跳过该次截图。

功能精简

已移除其他奶蛙互动、桌面整理和拖入文件接收,包括设置入口和后台行为。聊天、角色动作、专注、屏幕功能和工程 Agent 保留。旧版接收文件、整理产物与撤销记录不会自动删除;旧整理代码不再编入桌宠程序。

数据与隐私

默认数据目录:%APPDATA%\Naifrog。

  • settings.json:普通配置,无明文 API Key。
  • credential-*.dpapi:Windows 当前用户加密的凭据;原子配置引用对应版本。
  • chat-memory.dpapi:加密文字记忆;截图不写入聊天记忆。
  • AgentTasks:加密的工程任务记录和文件修改快照。
  • FileJournals / ReceivedFiles / OrganizedFiles:旧版本可能留下的数据,当前版本不再创建和使用。

为了多实例保持一致,旧的加密凭据文件不会在普通保存时立即删除。关闭记忆会停止使用和保存对话;明确清空会清除已保存的聊天及派生陪伴缓存。聊天导出是用户选择位置保存的明文文本。恢复默认不会删除用户接收/整理的文件或撤销记录。

构建与检查

需要 .NET 9 SDK。默认运行包需要 .NET 9 Desktop Runtime(当前开发机已安装):

.\build.ps1

如需打包给没有运行时的电脑:

.\build.ps1 -SelfContained

构建脚本会清理旧产物、发布 EXE/资源并执行角色资源启动检查。运行中程序若占用发布文件,请先退出。

制作单文件 Setup 安装程序需要额外安装 Inno Setup 6:

.\build-installer.ps1 -Version 1.0.0

生成的安装文件和 SHA256 清单位于 output/installer/。该脚本只编译发布与安装器;安装器配置和重建说明见 installer/README.md。

主要检查:

dotnet run --project tests/ChatChecks/ChatChecks.csproj
dotnet run --project tests/AnimationChecks/AnimationChecks.csproj -- --pack assets/animations
dotnet run --project tests/AgentChecks/AgentChecks.csproj
dotnet run --project tests/AgentTransportChecks/AgentTransportChecks.csproj
dotnet run --project tests/AgentUiChecks/AgentUiChecks.csproj
dotnet run --project tests/ModelCatalogChecks/ModelCatalogChecks.csproj
dotnet run --project tests/DiffChecks/DiffChecks.csproj
dotnet run --project tests/StoreChecks/StoreChecks.csproj
dotnet run --project tests/IntegrationChecks/IntegrationChecks.csproj

界面验收使用 tests/ui-model-server.py / tests/ui-flow.ps1 及 tests/agent-ui-server.py / tests/agent-ui-flow.ps1,仅连接本机模拟接口和临时工作区,不使用真实模型 Key 或修改用户工程。旧 FileChecks 保留作历史模块检查,不属于当前桌宠功能。

源码与资源

Core 管理配置与加密,Chat 管理模型、模型列表与记忆,Animation 管理动作,Desktop 管理日常运行与屏幕,Agent 管理工程任务、引用队列和差异界面,UI 和各窗口实现原生界面。

参考动画的来源和原始声明见 assets/reference-licenses/,运行包同级 licenses/ 也附有说明。原始正面立绘保存在 src/Naifrog/Assets/naifrog.png,生成方式见 assets/imagegen-prompt.txt。

About

【整活向】奶蛙Agent

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages