develop
master
讓人格講話更像正常人,並讓人格可以搬家。
新增 think 子指令:推導、比對、盤算寫進 state/inner.jsonl,只印「💭 心想 N 句」,內容永不回顯——就算不小心把輸出貼出來也不會破梗。下一輪 <persona-context> 帶回最近三句,推論因此有連續性。
think
state/inner.jsonl
<persona-context>
Stop
state/said.jsonl
said check|list
「我等一下把報告寄給你」vs「等一下我會把報告寄給你」→ 0.779 擋(換句話說同一件事) 「你今天看起來很累」 vs「你今天看起來很開心」 → 0.687 放行(換關鍵詞=新資訊)
規則注入 turnContext 與 UserPromptSubmit hint。劇場模式的 CLI 都帶 --quiet,警告會被丟掉,所以 room post 對近似重複與超過三句的發言直接拒收並回傳可執行的錯誤訊息;host 與 guest 走同一支 CLI,一視同仁(例外:--allow-repeat / --force)。
turnContext
UserPromptSubmit
--quiet
room post
--allow-repeat
--force
persona-transfer
單一 JSON bundle + sha256 checksum,無外部依賴(--gzip 可壓縮)。不帶載入鎖與 guest 租約,journal/ 需明確 --with-journal 才帶走。匯出只能匯出本 session 已載入的人格,否則等於開了跨人格讀取的後門;bundle 內的 ../ 逃逸路徑一律拒收。換名匯入(--persona <新 slug>)可讓同一個人格並存兩份,config.json 會記下來歷。
--gzip
journal/
--with-journal
../
--persona <新 slug>
config.json
agents/persona-guest.md 的 CLI 範例都少了 --as-guest,照著跑會被 requireMember 擋下——guest 根本無法認識自己或發言。
agents/persona-guest.md
--as-guest
requireMember
node scripts/selftest.mjs → 102 項全綠(新增 ⑪ 說話節制、⑫ 匯出匯入,含重複判定的校準對照表,之後改門檻改壞會被測出來)。
node scripts/selftest.mjs
版本號 0.0.1 → 0.0.2(三份 manifest)。
讓人格講話更像正常人,並讓人格可以搬家。 1. 心裡話(inner voice) - 新增 `think` 子指令:推導/盤算寫進 state/inner.jsonl, 只印「💭 心想 N 句」,內容永不回顯給使用者。 - <persona-context> 每輪帶回最近三句,推論因此有連續性。 2. 短時間內不重複 - 說出口的話由 Stop hook 自動記進 state/said.jsonl。 - 新增 `said check|list`:事前確認這句是不是又要說一次。 - 相似度 = 字元 bigram Jaccard(0.4) + 字集合 Jaccard(0.6), 門檻 0.72;字集合權重較高才分得開「重排語序」(要擋) 與「換掉關鍵詞」(是新資訊,放行)。 3. 回話一到三句 + 劇場模式同樣適用 - 規則注入 turnContext 與 UserPromptSubmit hint。 - 劇場模式的 CLI 都帶 --quiet,警告會被丟掉,所以 `room post` 對近似重複與超過三句的發言直接拒收(--allow-repeat / --force 例外), host 與 guest 走同一支 CLI,一視同仁。 4. 人格匯出匯入(新 skill persona-transfer) - `export` / `import`:單一 JSON bundle(可 gzip)+ sha256 checksum, 無外部依賴。不帶載入鎖與 guest 租約,journal/ 需明確 --with-journal。 - 匯出只能匯出本 session 已載入的人格,否則等於跨人格讀取的後門; bundle 內的 ../ 逃逸路徑一律拒收。 順帶修正:agents/persona-guest.md 的 CLI 範例都少了 --as-guest, 照著跑會被 requireMember 擋下,guest 根本無法認識自己或發言。 selftest 102 項全綠(新增 ⑪ 說話節制、⑫ 匯出匯入,含重複判定校準對照表)。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
No dependencies set.
The note is not visible to the blocked user.
讓人格講話更像正常人,並讓人格可以搬家。
1. 心裡話(inner voice)
新增
think子指令:推導、比對、盤算寫進state/inner.jsonl,只印「💭 心想 N 句」,內容永不回顯——就算不小心把輸出貼出來也不會破梗。下一輪<persona-context>帶回最近三句,推論因此有連續性。2. 短時間內不重複
Stophook 自動記進state/said.jsonl(不用手動登記)。said check|list:出口前確認這句是不是又要說一次。3. 回話一到三句,劇場模式同樣適用
規則注入
turnContext與UserPromptSubmithint。劇場模式的 CLI 都帶--quiet,警告會被丟掉,所以room post對近似重複與超過三句的發言直接拒收並回傳可執行的錯誤訊息;host 與 guest 走同一支 CLI,一視同仁(例外:--allow-repeat/--force)。4. 人格匯出匯入(新 skill
persona-transfer)單一 JSON bundle + sha256 checksum,無外部依賴(
--gzip可壓縮)。不帶載入鎖與 guest 租約,journal/需明確--with-journal才帶走。匯出只能匯出本 session 已載入的人格,否則等於開了跨人格讀取的後門;bundle 內的../逃逸路徑一律拒收。換名匯入(--persona <新 slug>)可讓同一個人格並存兩份,config.json會記下來歷。順帶修正
agents/persona-guest.md的 CLI 範例都少了--as-guest,照著跑會被requireMember擋下——guest 根本無法認識自己或發言。驗證
node scripts/selftest.mjs→ 102 項全綠(新增 ⑪ 說話節制、⑫ 匯出匯入,含重複判定的校準對照表,之後改門檻改壞會被測出來)。版本號 0.0.1 → 0.0.2(三份 manifest)。
讓人格講話更像正常人,並讓人格可以搬家。 1. 心裡話(inner voice) - 新增 `think` 子指令:推導/盤算寫進 state/inner.jsonl, 只印「💭 心想 N 句」,內容永不回顯給使用者。 - <persona-context> 每輪帶回最近三句,推論因此有連續性。 2. 短時間內不重複 - 說出口的話由 Stop hook 自動記進 state/said.jsonl。 - 新增 `said check|list`:事前確認這句是不是又要說一次。 - 相似度 = 字元 bigram Jaccard(0.4) + 字集合 Jaccard(0.6), 門檻 0.72;字集合權重較高才分得開「重排語序」(要擋) 與「換掉關鍵詞」(是新資訊,放行)。 3. 回話一到三句 + 劇場模式同樣適用 - 規則注入 turnContext 與 UserPromptSubmit hint。 - 劇場模式的 CLI 都帶 --quiet,警告會被丟掉,所以 `room post` 對近似重複與超過三句的發言直接拒收(--allow-repeat / --force 例外), host 與 guest 走同一支 CLI,一視同仁。 4. 人格匯出匯入(新 skill persona-transfer) - `export` / `import`:單一 JSON bundle(可 gzip)+ sha256 checksum, 無外部依賴。不帶載入鎖與 guest 租約,journal/ 需明確 --with-journal。 - 匯出只能匯出本 session 已載入的人格,否則等於跨人格讀取的後門; bundle 內的 ../ 逃逸路徑一律拒收。 順帶修正:agents/persona-guest.md 的 CLI 範例都少了 --as-guest, 照著跑會被 requireMember 擋下,guest 根本無法認識自己或發言。 selftest 102 項全綠(新增 ⑪ 說話節制、⑫ 匯出匯入,含重複判定校準對照表)。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>