🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

角色作息时钟 2huy4n/ProjectKaren

DeepSeek Harness
2huy4n1 天前有提交已提供中文文档扫描:含敏感能力

一个 DSH 插件:让角色会睡觉、会被吵醒、会自己找事做、也会先开口说话。

45.7/100
综合分
31
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/11/4 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

该插件未发布到 npm,按作者文档从 GitHub 源安装即可(静态检查只覆盖 npm 路径,不代表插件不可用)。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add 2huy4n/ProjectKaren
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · vision
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 1 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包project-karen(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/4 03:20:59

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 11 处,展示前 11 条)
  • 发起网络请求
    dsh/index.js:175
    const response = await fetch(cfg.apiBase + cfg.apiPath, {
  • 发起网络请求
    dsh/index.js:196
    const img = await fetch(imageUrl, { signal })
  • 发起网络请求
    client/client.js:312
    const res = await fetch(API + path, body
  • 发起网络请求
    client/client.js:701
    fetch(API + "/locale", {
  • 读取本地文件
    dsh/store.js:196
    const parsed = JSON.parse(readFileSync(this.filePath, 'utf-8'))
  • 写入本地文件
    dsh/store.js:237
    mkdirSync(path.dirname(this.filePath), { recursive: true })
  • 写入本地文件
    dsh/store.js:239
    writeFileSync(tmp, JSON.stringify({
  • 写入本地文件
    dsh/store.js:247
    renameSync(tmp, this.filePath)
  • 读取本地文件
    dsh/i18n.mjs:12
    const zh = JSON.parse(readFileSync(fileURLToPath(new URL('./i18n/zh.json', import.meta.url)), 'utf8'))
  • 读取本地文件
    dsh/i18n.mjs:13
    const en = JSON.parse(readFileSync(fileURLToPath(new URL('./i18n/en.json', import.meta.url)), 'utf8'))
  • 发起网络请求
    dsh/weather.mjs:41
    const res = await fetch(url, { signal: controller.signal, headers: { 'User-Agent': 'project-karen' } })
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-session@deepseek-ai/dsh-agent@deepseek-ai/dsh-session-projection@deepseek-ai/dsh-llm@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/dsh-attachment@deepseek-ai/dsh-agent-loop
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 睡眠与唤醒
  • 空闲动作
  • 主动闲聊

一个 DeepSeek Harness 插件,给角色扮演角色装上时钟:睡眠/唤醒、问候、空闲动作、主动闲聊,还有外出照片。

README

由 DeepSeek 最新模型翻译生成
ProjectKaren 一个 DSH 插件:让角色会睡觉、会被吵醒、会自己找事做、也会先开口说话。 一个 DeepSeek Harness 插件,给角色扮演角色装上时钟:睡眠 / 唤醒、问候、空闲动作、主动闲聊,以及可选的出游照片。 角色卡与世界观不由本插件提供——懒狗作者假设你的会话里已经有角色了。 本插件只负责「时间」这一维:什么时候睡、什么时候醒、醒来之后干什么。 功能 - 睡眠 / 唤醒:角色也有自己的生活,会睡觉,会起床 - 睡着:当TA睡着的时候,不要打扰TA哦 - 吵醒:TA会因为你的“短信轰炸”醒来 - 问候:早安、午安,还有晚安 - 自由动作:当你不理TA的时候,TA会自己找点事做 - 主动搭话:当你不理TA的时候,TA会主动找上来 - 出游照片:当TA旅游到名胜景点,会给你拍照片 - 静默指令:/mute 30 —— 你让TA闭嘴一段时间,TA就不再主动开口(你说话TA照常回) - 天气:填了城市,TA会知道外面什么天,问候和闲聊里会自然带上 - 节日:节日当天有不一样的问候、话题与行动 - 生日:支持填写你和TA的生日 - 中英双语:面板文案跟随 DSH 界面语言;注入给模型的提示词也跟随 安装 从 GitHub:
展开完整文档(README 剩余 1 节)
ProjectKaren

一个 DSH 插件:让角色会睡觉、会被吵醒、会自己找事做、也会先开口说话。

一个 DeepSeek Harness 插件,给角色扮演角色装上时钟:睡眠 / 唤醒、问候、空闲动作、主动闲聊,以及可选的出游照片。

角色卡与世界观不由本插件提供——懒狗作者假设你的会话里已经有角色了。
本插件只负责「时间」这一维:什么时候睡、什么时候醒、醒来之后干什么。

功能

- 睡眠 / 唤醒:角色也有自己的生活,会睡觉,会起床
- 睡着:当TA睡着的时候,不要打扰TA哦
- 吵醒:TA会因为你的“短信轰炸”醒来
- 问候:早安、午安,还有晚安
- 自由动作:当你不理TA的时候,TA会自己找点事做
- 主动搭话:当你不理TA的时候,TA会主动找上来
- 出游照片:当TA旅游到名胜景点,会给你拍照片
- 静默指令:/mute 30 —— 你让TA闭嘴一段时间,TA就不再主动开口(你说话TA照常回)
- 天气:填了城市,TA会知道外面什么天,问候和闲聊里会自然带上
- 节日:节日当天有不一样的问候、话题与行动
- 生日:支持填写你和TA的生日
- 中英双语:面板文案跟随 DSH 界面语言;注入给模型的提示词也跟随

安装

从 GitHub:

dsh plugin --profile <profile> add "git+https://github.com/2huy4n/ProjectKaren#v0.3.1"

安装后需要重启 DSH,在「设置 → ProjectKaren」里配置。

配置项

| 键 | 含义 |
| enabled | 总开关 |
| defaultMuted | 新会话是否默认静音 |
| sleepStart / sleepJitter | 入睡基准时刻 / 模糊 ±分钟 |
| wakeStart / wakeJitter | 醒来基准时刻 / 模糊 ±分钟 |
| greetEnabled / greetWindowMinutes | 早安+晚安开关 / 醒来后多久内还补早安 |
| greetNoonEnabled / noonStart / noonJitterMinutes | 午安开关 / 中午基准 / 模糊 ±分钟 |
| nightLeadMinutes | 睡前提前多少分钟道晚安 |
| barrageCount / barrageWindowMinutes / barrageAwakeMinutes | 吵醒阈值 / 统计窗口 / 清醒时长 |
| talkEnabled / talkIntervalMinutes / talkJitterMinutes / talkDailyMax | 主动搭话开关 / 间隔 / 模糊 / 每日上限 |
| talkQuietStart / talkQuietEnd | 静默时段(留空 = 不设) |
| planningEnabled / planningHorizonMinutes | 滚动生活规划开关(默认开启)/ 向前规划的时长(分钟,默认 180,范围 5–1440) |
| planningRetryLimit | 滚动规划失败后的重试次数(默认 5,范围 0–100;0 表示不重试) |
| actionEnabled / actionIntervalMinutes / actionJitterMinutes / actionIdleMinutes | 自由动作开关 / 间隔 / 模糊 / 静默多久才动 |
| actionDefaultMinutes / actionMinMinutes / actionMaxMinutes / actionDailyMax | 动作时长默认 / 最短 / 最长 / 每日上限 |
| citySelf / cityUser | 角色所在城市 / 用户所在城市(留空 = 同城) |
| weatherEnabled | 天气开关 |
| holidayEnabled | 节日开关 |
| birthdayEnabled | 生日开关 |
| birthdaySelf / birthdayUser | 角色生日 / 用户生日(MM-DD) |
| apiBase / apiPath / apiKey / model / size | 生图接口(OpenAI 兼容的 /images/generations) |
| photoPrompt | 没传 prompt 时用的默认画面描述 |
| offsetMinutes | 时钟偏移(调试用,整体平移插件看到的"现在") |

planningHorizonMinutes 控制滚动规划每次向前考虑多长时间; actionIntervalMinutes 控制旧版空闲动作调度器两次请求之间的等待时间。
会话开始使用滚动生活记录后,旧版的间隔、抖动、空闲阈值和每日动作上限不再决定该会话的活动。
此时关闭 planningEnabled 会暂停生成新计划和开始已安排的活动,不会恢复旧版调度器;重新开启时,暂停期间错过的活动会被标记为延期。活动只有经工具明确确认后才会记为完成;规划时使用调度器所在时区的本地时间。
未解决活动(计划中、进行中或延期)合计最多新增至 200 条;达到上限时不会删除未完成的活动,须先明确恢复、取消或跳过已有活动才能新增。
已有数据超过上限时也不会自动删除。详见滚动生活规划说明。
规划失败后每 5 分钟最多重试一次;默认初次失败后最多重试 5 次。达到上限会记录警告并停止该会话的规划重试。
排除故障后,可关闭再开启滚动规划、修改重试次数或重启进程来重置计数。计数保存在内存中,不影响已有活动记录。

/mute 指令

让TA闭嘴一段时间。这个指令不会进模型,TA看不到。

| 你输入 | 结果 |
| /mute 30 · /mute 30m · /mute 30min · /mute 30 minutes · /mute 30分钟 | 静默 30 分钟 |
| /mute 2h · /mute 2 hours · /mute 2小时 | 静默 2 小时 |
| /mute 1d · /mute 1 day · /mute 1天 | 静默 1 天 |
| /mute 到22:00 · /mute until 22:00 · /mute 22:00 | 到今晚 22:00(时刻已过则顺延到明天) |
| /mute off · /mute 取消 | 解除静默 |

静默期间:不再主动搭话、不再问候、不再播报自由动作的收尾;你主动找TA时照常回复。
可设范围 1 分钟 ~ 7 天。不写单位按分钟算,大小写和多余空格都无所谓。

天气

在面板里填城市即可(中英文都认,如 杭州 / Hangzhou)。
天气数据来自 Open-Meteo.com(CC BY 4.0),免 API Key、无需注册。

- 两个城市相同(或只填了一个):TA按「TA和你在同一个地方」来说天气。
- 两个城市不同:TA会知道你不在TA那边,可以顺口提一句你那边的天气(比如提醒你带伞)。

天气每小时最多刷新一次,面板里有「立即刷新天气」。取不到天气时TA不会编造。

节日与生日

生日填 MM-DD,例如 05-20。

节日表内置 10 年(2026–2035),含公历节日(元旦 / 情人节 / 妇女节 / 愚人节 / 劳动节 / 儿童节 / 教师节 / 国庆 / 万圣节 / 平安夜 / 圣诞 / 跨年)与农历节日(春节 / 元宵 / 端午 / 七夕 / 中秋 / 重阳)。超出 2035 年会自动只认公历节日,面板会提示。

中英双语

- 面板文案:跟随 DSH 的界面语言设置(客户端 ctx.locale)。
- 注入给模型的提示词、工具描述、报错:同样跟随 DSH 界面语言;客户端还没打开过、没上报时,回退到系统语言。
- 目前只支持中文和英文——DSH 宿主本身也只提供这两种(zh / en)。
- 要改文案只改这两处:dsh/i18n/{zh,en}.json(宿主)与 client/client.js 里的两个字典对象。

状态与日志

配置与每会话状态存在 ~/.dsh/project-karen.json(DSH_HOME 优先)。
除配置与会话状态外,这个文件还保存照片引用、天气缓存和客户端上报的语言。
面板里有「活跃会话」列表(状态 / 入睡醒来时刻 / 正在做什么 / 今日次数 / 是否静默)和「最近动作」日志,可一键清空。

License

AGPL-3.0-or-later —— GNU Affero General Public License v3.0 或更高版本。

Copyright (C) 2026 2huy4n · 完整条文见 LICENSE
预览分享卡片长什么样 ↓2huy4n/ProjectKaren
分享 · DeepSeek Harness Hub
2huy4n/ProjectKaren

一个 DSH 插件:让角色会睡觉、会被吵醒、会自己找事做、也会先开口说话。

这是你的仓库?认领条目

回到顶部