Files
jsc-marketplace/plugins/jsc-mod-companion

jsc-mod-companion

指令

/jsc-mod-companion:status

查看目前角色、心情、關係階段與四維度(好感、信賴、親密、依賴)與待辦數量。

/jsc-mod-companion:status

/jsc-mod-companion:switch <角色>

切換角色;不給角色會列出可用角色。

/jsc-mod-companion:switch 小明

/jsc-mod-companion:disable

關閉陪伴,所有資料保留。

/jsc-mod-companion:disable

/jsc-mod-companion:setup [key=value…]

不給參數時顯示目前設定;給 key=value 則儲存。可設定:nickname、wake=HH:MM、sleep=HH:MM、tz=+0800、careLimit=N(每日主動關心上限)、quietStart=HH:MM、quietEnd=HH:MM。

/jsc-mod-companion:setup nickname=阿明 wake=07:30 sleep=23:30 tz=+0800 careLimit=3 quietStart=22:00 quietEnd=08:00

/jsc-mod-companion:todo [list]

列出未完成的待辦。

/jsc-mod-companion:todo

/jsc-mod-companion:todo add <內容> [due=YYYY-MM-DDTHH:MM]

新增待辦,可指定到期時間(依 tz 設定換算)。

/jsc-mod-companion:todo add 買牛奶 due=2026-10-15T18:00

/jsc-mod-companion:todo promise <內容> [due=YYYY-MM-DDTHH:MM]

記錄角色答應使用者的事(列表中標示【承諾】),用法同 todo add。

/jsc-mod-companion:todo promise 週末一起討論新章節 due=2026-10-17T10:00

/jsc-mod-companion:todo done <編號>

將待辦標為完成。

/jsc-mod-companion:todo done 1

/jsc-mod-companion:quiet [分鐘]

暫時靜音,不主動關心;預設 60 分鐘,0 取消靜音。

/jsc-mod-companion:quiet 30

/jsc-mod-companion:ingest

解析單章小說(txt/md),逐一詢問合併、新建或略過後寫入角色資料;提供章節檔或要求建立角色時也會自動使用。

/jsc-mod-companion:ingest chapter1.md 章節編號 1

關係與階段

關係有好感、信賴、親密、依賴四個維度(0–100),各有「原典基準」(朋友線為 0)與「存檔累積」兩本帳,有效值為兩者相加。階段為 陌生、熟人、朋友、好友,只升不降:

階段 條件
熟人 好感 ≥ 15
朋友 好感 ≥ 30、信賴 ≥ 25
好友 好感 ≥ 50、信賴 ≥ 45、親密 ≥ 30
  • 每日增量有日限(好感 4,信賴、親密、依賴依角色 relationTraits 的心防、害羞、撒嬌、依賴傾向調整);有效增量 = 原始增量 × (1 − 今日累計 / 日限) × (1 − 目前值 / 100)。
  • 被罵時好感 −3,信賴依期望違反公式扣除(越親密扣越多,單次上限 −30)。
  • 14 天無互動後,每個維度每天 −0.5;階段不會降低。
  • 舊版單一好感值(affinity)的存檔在讀檔時自動升級:好感值保留,其餘維度依比例推估,階段不低於原本。

與第 9 章的差異:不實作曖昧、戀人、穩定戀人與冷戰子狀態;負向事件目前只有「被罵」一種嚴重度(0.4);增量沿用原有的「有意義互動/被罵」判斷,尚未接標籤管線。

人格 18 參數(與第 9 章的差異)

人格參數依 wiki 9.2 實作於 hooks/companion/core/params.ts:

  • 三層值:角色包基準(core.json 的 params)+存檔偏移(每次 ±1,上限 ±15)+今日偏移(N(0,5),上限 ±10),總值限制在 0–100。
  • 衍生值:有效心防、有效害羞、有效口是心非,公式同 9.2;信賴與親密以 0–100 輸入。
  • Big Five 保留為推導值:有 params 時,神經質(心情半衰期)與外向性(關心頻率)改由 18 參數推導,加權為設計啟發式;沒有 params 的舊角色沿用 neuroticism、extraversion。ingest 的 Big Five 推論與證據機制不變。
  • 姓名、性別、年齡、核心信念不可由 AI 改動,filterAiPatch 會剔除這些欄位。
  • 目前只提供計算與儲存欄位(state.json 的 params);每日抽樣、存檔偏移累積的觸發時機留待後續工作項目。

評估標籤

使用者每句話會對應到一個評估標籤,再由 rules.ts 的規則表換成心情增減量;模型只負責分類,不給數值。

  • 正則先判明確的情況(責罵、感謝、完成)。
  • 正則沒判出時,採用模型於回覆末尾補的 <評估:標籤>;標籤須在 tags.ts 的白名單內,缺失或不在白名單就當作沒有標籤。
  • 白名單約 20 個,參考 wiki 第 9.4 章;不含戀愛與親密類標籤。