Skip to content

Latest commit

 

History

History
198 lines (126 loc) · 26.1 KB

File metadata and controls

198 lines (126 loc) · 26.1 KB

設定與參數

工作室的所有設定集中在一個地方:頂列的 ⚙️ 齒輪 › 設定。這份帶你逐一看過六個子頁,以及最容易被找的 參數調整

用哪個主題、語言、版面這類個人偏好在頭像下拉 › 偏好設定,不在這裡(改密碼與兩步驟驗證也不在這裡,它們是頭像下拉裡自己的一列,不在「偏好設定」內)。唯一例外是主題的「管理」(新增/編輯/匯入/匯出)——它放在設定頁的「主題」子頁(見下)。簡單記:偏好設定選主題,設定頁管理主題。


設定的六個子頁

點頂列 ⚙️ 齒輪 打開設定,左側有六個子頁:

子頁 放什麼
系統更新與備份(System update & backup) 目前版本、檢查與升級、接收 Beta、自動更新開關、備份健康、簽章金鑰
全域情境(Global context) 送到成員眼前的那些文件,依三組陳列:上線、下線、任務事件
角色誌(Role journal) 每個角色的定義(Duty)與判準(Insight)
任務手冊(Task manuals) 每一「類」任務的作業手冊(用途、要哪些欄位、SOP、負責誰)
參數調整(Parameters) 登入有效期、自動換手門檻(Claude 與 Codex 各一組)、加速停止秒數、監控刷新間隔、三個文件字數上限、四個傳承字數上限(成員傳承、任務傳承、傳承標題、傳承內容)、任務步驟備註字數上限、喚醒聊天字數預算、備份保留份數、三份建議回覆清單
主題(Theme) 管理主題:新增、編輯顏色與用語、匯入、匯出、刪除。詳見 主題(外觀與用語)

系統更新與備份

升級不必重跑安裝腳本。 這一頁就是你日常升級 OffiCraft 的地方:

  • 目前版本 — 這台 server 現在跑的建置身分。

  • 檢查更新 — 直接問 GitHub Releases 有沒有新版;有的話一鍵升級(下載 → sha256 驗證 → 原地抽換重啟)。

  • 接收 Beta 版本 — 打開後也吃 GitHub 的 prerelease。預設關閉。

  • 簽章金鑰 — 這台 server 用來簽發登入憑證的金鑰。可以同時有好幾把:只有一把在簽,其餘的仍然驗得過,這就是換金鑰的過渡期。

    • 產生新金鑰 — 產生一把新的並讓它接手簽章。沒有人會被登出(舊金鑰留著繼續驗),而且不必重啟,下一個請求就生效。
    • 移除 — 這是撤銷,沒有復原。那把金鑰簽過的登入憑證會當場全部被拒,用它產生的分享連結也會一起壞掉(檔案的、比較的都算),而且不會通知持有連結的人。 ⚠️ 機器(warden)的憑證雖然會過期(長度由設定頁的「機器憑證壽命」決定,預設 30 天),但那不是這裡的判準——它太慢,而且比它更早安裝的機器手上那張根本沒有到期時間。判準是「每一台機器都已經換到新金鑰了嗎」,不是「等幾天就好」,也不是「都重新連過就好」——重新連上但仍拿舊金鑰簽的憑證,一樣會在你按下移除的當下失聯。 產生新金鑰之後,這件事會自己收斂:伺服器在驗證每個請求時就看得出對方用的是哪一把,看到還在用舊的就請那台自己去換(伺服器不會、也不能改寫任何機器上的檔案)。離線的機器要等它自己上線才會換,所以「還沒換完」跟「那台關機中」在畫面上是同一件事。 ⚠️ 目前這個「還剩幾台沒換」的數字還沒有做進設定頁,只在機器清單的 API 資料裡(每台機器帶 token_key_idtoken_key_current)。要在畫面上一眼看出來,還缺這一步。
  • 自動更新 — 打開後在背景自動升級,不用你手動按。預設關閉。

  • 備份健康 — 排程備份現在是不是還在產生還原點:綠=新鮮、紅=出事(從來沒跑過/太舊/這次失敗,並寫明壞了多久)、灰=還不知道。灰色不是「大概沒事」

server 升級後,機器上的 warden 與 ocagent 也會跟著自我更新。完整的更新機制見 架構與運作原理;從頭安裝/升級/移除見 安裝、升級與移除


全域情境

送到成員眼前的每一句話,都住在一份你編輯得動的文件裡,依三組陳列(這裡不列有幾份——那個數字會變,而清單自己就在畫面上):

這一組 誰能改 是什麼
上線 你可編輯 成員被叫醒時讀到的:系統給的通用開機內容(怎麼跟大家互動、用哪些工具)、你這間工作室自己的規矩、以及開機當下依序做的步驟(Claude 與 Codex 各一份)
下線 你可編輯 收尾要做哪幾件事。不隨開機送——server 要收掉某個成員的那一刻才夾給它,因為那時候開機說明多半已經被壓縮掉了。被要求提前收工時送的是另一份,它會帶著截止時間
任務事件 你可編輯 任務結案、被轉派、接手別人做過的任務、接下一張新任務、以及擋著你的票解開時,通知它的那一句(份數以畫面上列出的為準,這裡不重複列一份會過期的清單)

改壞了的那幾份,只要留著出廠版就可以「還原出廠版」拿回原文。有幾份文件的第一行是程式填好的(成員的名字、截止時間那類),你看得到但改不動;下面那一段才是你寫的。不是每一份都有那一行——沒有那一行的那幾份,整份都是你寫的。

十份全部真的接上了送出端:你在這裡改的字,成員收到的就是那些字。(上一版這裡寫著「只有一部分接上、其餘編輯了也不會改變成員收到的字」——那句話在接線補完之後就過期了,而它比一個過期的名字危險得多:它會讓你不敢去編輯一份其實編輯得動的文件。)

「使用者自訂」是你最該花時間的一塊。 把「你是誰、專案在做什麼、預算多少、哪些 repo 絕對不能動」寫進去,成員每次開機都讀得到,你就不必每次重講。這正是 OffiCraft 相對「開一堆終端機各跑一個 Claude Code」最省事的地方——詳見 建議用法


角色誌

每個角色一塊,這裡看得到、改得動:

  • 角色定義 — 這個職位是誰、負責什麼、遵守哪些規矩。你可編輯——改了它,這個角色的成員下次開機就讀到。
  • 判準(Insight) — 這個角色反覆用到的取捨與界線,由該角色的成員自己搬進來。出廠時只有助理帶著一份(標成「預設」,那是隨軟體附的,不是誰寫的);其餘角色是空的,直到那個角色自己寫進第一句。 ⚠️ Insight 目前不是私有的,只是分開的。 任何已認證的成員都讀得到任何角色的 Insight;這一版只讓它成為獨立的一塊,沒有讓它變成秘密才有限制:只有該角色自己的 agent 與 admin 寫得動。

新增/刪除角色(=多請或裁掉一位正職)的做法,見 成員與外包


版本紀錄(改壞了可以退回去)

上面這些可編輯的長文——使用者自訂的全域情境、角色定義、判準(Insight),以及任務手冊的 SOP——每一次被覆寫,系統都會把被取代掉的那一版留下來,最多保留三版。

入口在編輯模式的按鈕列裡。 按下那一段的「編輯」之後,同一排按鈕上就多一顆「版本紀錄」——它站在原本「重置」的位置,而且取代了重置(重置已經沒有自己的按鈕,去處見下)。所以版本紀錄只在編輯模式下看得到,而且按下去才會去拿資料;在哪一個編輯器裡按,開出來就是那一份文件的歷史,不會有「這是哪一段的版本」的疑問。

打開後是一份挑版本用的清單:每一列只有什麼時候被取代掉的、以及是誰把它取代掉的(顯示「名字(代號)」;已解僱的成員或已釋出的外包名冊上查不到名字,就只顯示代號)。列上不預覽內容——內容在點進去之後才佔滿整個面板,免得好幾份長文擠在同一張清單上,要捲很久才找得到你要的那一版。唯一的例外是還原不回去的版本,那個原因會在點進去之前就寫在列上(見下面的字數上限)。

有預設值的文件,清單最後會多一列「初始版本」——那就是現在的「重置」。 它排在最後,因為它是這份文件最早的樣子,而清單是新的在上面。它跟其他版本的行為完全一樣:點下去先打開來看——看得到出廠內容本身,也看得到它跟你現在這份的差異(全域情境的出廠內容是空的,所以差異會把你寫過的每一行都列出來,那就是還原會拿掉的東西)——看完再決定要不要還原,還原仍然要再確認一次。沒有預設值的文件(你自己新增的角色、任務手冊、判準)不會有這一列,它們沒有可退回的原廠內容。

點一列會打開那一版:預設看到的是那一版排版後的內容,右上角可以切換成與目前存檔內容的差異(差異是拿原始文字比的,所以會看到 ## 這種符號本身)。比的對象一律是伺服器上目前存著的內容,不是編輯框裡還沒存的草稿。還原也在這裡按(看完再決定要不要覆蓋回去;還原本身也算一次寫入,所以當下那一版同樣會被留起來,你可以再退回來)。

差異畫面照 GitHub 看 pull request 的樣子做:

  • 刪掉的那一行整列紅底、新加的整列綠底——認的是顏色,不是行首那個符號(+ 還在,但只是輔助)。
  • 兩排行號:左邊是舊版本的行號、右邊是現在這份的行號。沒動過的行兩邊都有;只存在於一邊的行,另一邊那格是空的。
  • 同一行只改了幾個字時,改到的字會被標得更亮,不必自己逐字對。整行被換掉時不標——那時整列的顏色已經把話講完了。
  • 預設是「單欄」上下對照(舊的在上、新的在下,每一行都用整個寬度);右上角可以切成**「兩欄對照」。單欄是預設,因為中文長句在兩欄裡會被擠得很窄。兩欄對照時,太長的行會在自己那一欄裡折行——兩欄各佔一半、不會有一欄被擠到畫面外,左右行號仍然逐行對齊。單欄則相反:長行不折,需要時整個表格左右捲。 ⚠️ 這一段講的是這個畫面**(版本紀錄裡的比較)。用 ocagent diff 產生的比較連結用的是同一個畫面,但多一件這裡沒有的事:那邊的兩個標題可以點進去看單側原文(見 控制台導覽的「比較連結」那一節)。這裡的標題不能點,因為你本來就站在這份文件上。
  • 整份顯示,不摺疊:沒有變動的內容一律全部列出來,沒有「展開更多」要按。
  • 兩種看起來都空白的情況會明確講出是哪一種:兩版一模一樣時說「內容完全相同」,文件太長而拒絕比對時說「太長無法逐行比對」並寫出行數——後者不會偽裝成前者。

任務手冊只有 SOP 留版本用途與識別鍵不留版本——改它們不會產生任何可還原的版本。

這件事有四個邊界,先知道比較好:

  • 只涵蓋「編輯」,不涵蓋「刪除」。 整份刪掉一個任務手冊或一個角色時,它的版本紀錄會跟著一起刪掉——刪除就是刪除,不會有一份還讀得到的殘影留在系統裡,但也因此還原不回來。要清掉一份手冊或一個角色之前,自己先留一份。
  • 第一次自訂一份原本用預設值的文件時,只會有兩版可退——它在被你改之前沒有「你的版本」可留,那不是一個版本,是預設狀態。
  • 角色定義、Insight、手冊 SOP 各自有一份字數上限(角色定義那一份明顯比其餘小,三個都可在 參數調整 調高——當前值就顯示在那三個欄位上,這裡不複述;全域情境仍然沒有上限),而且超過上限的舊版本,在文件變短之後就還原不回去了(規則是超標只能往下縮)。這種版本在清單上會標成「無法還原」並寫出原因——它看得到但按不下去,不是介面壞了。
    ⚠️ 角色定義是 2026-08-03 才開始有上限的(在那之前它完全沒有),所以現有的角色定義有些本來就超過它的上限。那些不會被截斷,只是下一次改它們的時候必須改得更短。(出廠附的助理角色定義本身已經在上限之內,不在此列。)
  • 保留三版是最近三次覆寫,更早的會自動淘汰。真正重要的東西不要只靠它。

任務手冊

每一「類」任務的標準流程(SOP):這是什麼任務、要哪些欄位(哪個是必填、哪個當識別鍵)、該怎麼做,以及指派給誰(常駐成員或外包、跑幾份)。

手冊由你建一次、跨任務長期存在,而且愈用愈準——每張結案任務都把學到的做法收斂回同一本的 SOP,值得單獨留一條的寫成任務傳承掛在同一本上。手冊怎麼建、識別鍵怎麼挑,有一個完整例子在 任務是怎麼運作的

手冊「由誰負責」只有你(owner)或你的 admin 助理能設。 那是治理面的設定,一般成員改不了。


參數調整

幾個伺服器層級的開關:

參數 是什麼 可選
登入有效期(Session length) 登入後多久需要重新輸入密碼 12 小時 / 24 小時 / 7 天 / 30 天
Claude 第一次通知 / Claude 最後通牒 一個 Claude 成員的記憶用到這個比例,先把〈停止〉送給它、再自動換手 1–89% / 40–90%,通知那格必須比通牒那格小
Codex 第一次通知 / Codex 最後通牒回合 一個 Codex 成員做過這麼多輪 context compaction 之後,先收到〈停止〉、再自動換手;換手不看你設的百分比 各 1–10 回合,通知那格必須比通牒那格小
加速停止秒數(Accelerated stop deadline) 按下加速停止之後,成員還有多少秒可以收尾;記憶第二段門檻自動換手走的是同一個時鐘。這個時刻會原文告訴成員(它讀到的是一個絕對時間,不是倒數) 10–3600 秒(預設 120 秒)
監控刷新間隔(Monitoring refresh interval) 連續監控事件之間,監控頁最多多久刷新一次 1–60 秒(預設 5 秒)
角色定義字數上限(Duty size cap) 一個角色的角色定義的字數上限 下限=它自己的出廠預設(比其餘每一格都小很多),上限 100000 字
Insight 字數上限(Insight size cap) 一個角色的 Insight 的字數上限 下限=出廠預設,上限 100000 字
任務手冊 SOP 字數上限(Manual SOP size cap) 任務手冊的 SOP 的字數上限 下限=出廠預設,上限 100000 字
任務步驟備註字數上限(Task step note size cap) 一個任務步驟備註(step note)可以寫多少字 1000–100000 字(預設 10000);調高調低都可以
喚醒聊天字數預算(Wake chat budget) 成員被喚醒時,那份喚醒快照裡聊天那一塊可以花多少字 1000–13000 字(預設 6000);調高調低都可以
備份保留份數(Backups kept) 資料庫備份要保留幾份;超過的在下一次備份時直接從磁碟刪掉 1–20 份/池(預設 5);是份數不是天數,是每一池不是每個資料夾
請示卡建議回覆(Reply-card suggestions) 請示卡回覆框下面那排一鍵回覆的句子 最多 20 句、每句最多 120 字;留空是合法的,那一邊就完全不顯示
任務訊息建議回覆(Task-message suggestions) 任務卡「傳訊息給○○…」那個框下面的一鍵回覆句子 同上,而且跟上面那格各自獨立
傳承訊息建議回覆(Lore-message suggestions) 傳承頁每一條下面「傳訊息給撰寫人」那個框下面的一鍵回覆句子 同上,而且跟上面兩格各自獨立

上面三格文件上限刻意不寫死出廠預設是多少:那三個數字是設定值,owner 隨時可以調(2026-08-03 就調過一次)。要看現在是多少,直接看設定頁上那三個欄位的當前值。

那四格換手門檻是這幾個裡比較值得理解的:成員的記憶(context)是有限的,用到門檻就會自動 checkpoint、收尾退場,server 原地重生一個新的它接著跑——你察覺不到接縫。門檻調低=換手更勤、記憶更清爽但接手更頻繁;調高=跑得更久才換。多數情況預設就好。(你也可以在成員面板按 Refocus 手動觸發一次換手,見 成員與外包。)

兩種 runtime 各看自己那一組,調錯那一組不會有任何提示。 Claude 成員看百分比;Codex 成員看的是做過幾輪 context compaction,跟百分比無關。所以一個只用 Codex 成員的人去調百分比那兩格,行為不會有任何改變——要調的是回合數那兩格。

三個文件字數上限擋的是另一件事:agent 會把整理過的東西寫回這幾份長文,這些上限逼它們「整理」而不是「一直往後貼」——超過上限而且沒有變短的寫入會被整份擋下。

為什麼是三個而不是一個:這三種文件被刪掉的成本差很多。角色定義是一份「這個角色負責什麼」的常設說明,應該一眼看得完;Insight 則是逐次累積的取捨紀錄,本來就長;手冊的 SOP 又是一份會被改寫、收斂的做法藍圖。2026-08-03 之前它們共用同一個數字,於是同一把尺同時量了幾種完全不同的東西。

每個上限的下限都是 100、上限 100000,兩個方向都能調(owner 2026-09-07 裁定;在那之前每一格的下限是它自己的出廠預設,所以只能調高)。調低不會動到任何已經存下來的東西:既有文件不會被截斷,也照樣完整讀得回來——這個上限只在寫入的當下檢查,管的是下一次寫入。而且已經超過上限的舊文件也不是被凍住:只要新版比舊版短,那次寫入仍然過得去,也就是「往下收」的方向一直是開的。這條規則對三種文件完全一樣。

另外,agent 讀一份角色定義、Insight 或任務手冊時,回應會直接附上「這份現在多少字」與「目前上限多少」,所以它在動筆前就知道要整理多少,不必等寫下去被擋才發現。任務步驟的步驟備註(step note,卡上顯示為「備註」)以前是唯一沒有這兩個數字的一格,現在它的寫入回執與 get_task 的步驟視圖也會附上;而且從 2026-09-06 起它的上限也在上面那張表裡,不再是寫死的 4000 字。

以前這裡還有一層主動提醒,2026-08-22 拿掉了。 那時候任何一份文件快滿,agent 的喚醒快照與下線通知會多出一小塊,逐份寫出它現在多少字、還剩多少。owner 的判斷是:那是第二條路去講一件讀者手上已經有的事 —— 上一段那些數字本來就跟著每一次讀取一起送到 agent 眼前,它動筆之前就知道還剩多少。拿掉之後座艙上什麼都不會變(畫面從來沒有讀過它);變的是 agent 的喚醒快照少了那一塊,以及那份快照的「總共多少字」估計值會比以前小。

備份保留份數是這一頁上唯一一個「調低就會刪掉東西」的格子,所以它的兩個常見誤讀值得先講清楚。

它算的是份數,不是天數。 5 就是 5 個檔,能回溯多久完全看那幾天實際備份了幾次——這台機器上 2026-08-19 產生了 19 份,2026-08-24 只有 4 份;同一個 5,在前者連三天都蓋不到,在後者可以蓋超過一週。想要「保證回溯 N 天」的人,這個格子給不了那個保證。

它是每一池,不是每個資料夾。 日常備份(定時+手動)與升級前備份(premigration)各有各的額度——後者存在的理由就是不能被前者擠掉。所以這裡填 5,磁碟上最多會有十份,不是五份;佔用空間大約是「這個數字 × 2 × 一份備份的大小」,上限 20 就是照這個算式定的。

超過的份數是真的刪掉,救不回來。 在這次改動之前它們是被搬進 trash/ 的,而沒有任何東西會清那個資料夾——碼上的註解說「回收是 warden 的事」,但 warden 的回收器只接受 agents 目錄底下的路徑,server 的資料目錄根本不在那底下,它從來沒被呼叫過、被呼叫也會拒絕。結果是備份只進不出,一路長到 141.6 GiB/278 個檔。現在淘汰就是刪除,而且升級到這一版之後的第一次備份會順手把 trash/ 裡累積的舊備份一起收掉。它只碰自己產生的檔(officraft-…​.db):手動存的快照、半途中斷的 .partial、子資料夾都看不到,也就都不會被算進份數、也不會被刪。

三份建議回覆是三份,不是一份。 請示卡的回覆、任務訊息與傳承訊息各有自己的清單,改其中一份不會動到另外兩份——回答一張請示卡、對進行中的任務交代事情、去問一條傳承的撰寫人「這條還適用嗎」,是三種對話,同一句話放錯格子就不合用。

點一下只會把句子填進框裡,不會替你送出。 這三個框送出去的東西都收不回來,所以誤點的代價必須是一次退格,不是一則訊息。已經打到一半的字也不會被蓋掉:選的句子會接在後面另起一行。

清單留空是正常狀態,不是壞掉。 留空的那一份,它的框跟沒有這個功能時完全一樣。超過上限會被整份拒絕,不會被截短——被截短的句子是 owner 沒寫過的句子,而它會擺在離送出只有一下的地方。

喚醒聊天字數預算是另一回事,而且規則剛好相反:它管的不是一份存起來的文件,而是成員每次被喚醒時拿到的那份快照裡,聊天那一塊可以花多少字(訊息、摺疊起來的請示卡、快照抬頭與截斷提示全部計入)。因為那一塊是每次重新裝箱的,不是存在資料庫裡的東西,所以調低不會弄壞任何既有內容——下次喚醒就只是從最新一則往前少帶幾則,被留在外面的部分照樣會標成「更早的訊息已省略」讓 agent 自己去撈。它的下限是 1000,是這一格自己的數字,跟上面那五格的 100 不一樣:兩邊現在都能上下調,但理由不同——那五格管的是存起來的文件,靠「調低只約束下一次寫入」才安全;這一格根本沒有存起來的東西可以弄壞。
調高會讓每個成員每次醒來多讀一些對話(比較不會漏掉久沒說話的同事),代價是每次喚醒都多花那些字;調低則相反。上限 13000 不是隨便挑的:伺服器在裝箱前只讀固定則數的最新訊息,預算再往上就可能還沒花完就沒訊息可放了,所以要再調高得先動那一側。

任務步驟備註字數上限跟喚醒聊天字數預算同一種規則,理由不一樣:它管的是一個任務步驟的備註——agent 換手時「做到哪、下一步接什麼」寫在那裡的那一格。它以前跟聊天訊息本文共用一個寫死的 4000 字,理由是「同一種寫作、同一個讀者」;但那兩者其實不同:聊天訊息是送出去一次就定型的一則話,步驟備註是一份跨換手一直被改寫、一直長大的工作文件,4000 字對後者很快就不夠用。所以 2026-09-06 起它獨立成這個設定,出廠 10000 字。

它可以調低,而且調低不會弄丟任何東西。 這個上限只在寫入時檢查:已經超過新上限的舊備註照樣完整讀得回來(get_task_step 給的是全文),只是在寫短到上限以下之前改不動。這跟上面五格文件上限是同一個代價,而那五格從 2026-09-07 起也一樣能調低;差別只在數字:這一格的下限是 1000,那五格是 100。

它只管步驟備註這一格。 轉派任務的交接說明聊天訊息本文仍然是寫死的 4000 字,不跟著這個設定走(owner 2026-09-06 裁定)。調高這一格不會讓你能貼一則更長的聊天訊息,也不會讓交接說明變長。


順帶一提:偏好設定在哪

選主題、語言、版面頭像下拉 › 偏好設定(密碼與兩步驟驗證是頭像下拉裡自己的一列,不在偏好設定內):

  • 主題 — 在這裡要用哪個主題(內建的辦公室,或你已建立/匯入的自訂主題)。主題換的是顏色與用語、不動版面,也不蓋過語言新增/編輯/匯入/匯出主題在設定頁的「主題」子頁——完整說明見 主題(外觀與用語)
  • 語言 — 介面語言。
  • 版面 — 窄/寬兩種版面寬度。

頭像下拉裡還有姓名(可直接改)、帳號安全相關的幾列(改密碼——換 owner 登入密碼、通知信箱兩步驟驗證)與登出


相關文件