culture

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

/culture

/culture

Two modes:
  1. Internal mode (default). Other workflow skills — and
    /cheese
    itself — invoke
    /culture
    silently as a thinking pass: restate the question, list assumptions, name candidate options, run a quick shape check, pick the next action. The dialogue does not surface to the user; only the resulting decision (and any code edits the calling skill makes) does. The most common callers are:
    • /cheese
      step 1 — silent classification reasoning before announce.
    • /cheese
      tier-2 escalation (see
      skills/cheese/SKILL.md
      § Escalation) — fills missing context when the cook-fast-path clarity check fails on the raw input; the synthesis lands in the mini-spec's
      ## Provenance
      section.
    • Other workflow skills' own pre-dispatch reasoning passes (mold, cook taste-test, etc.).
  2. User-facing mode. The user has explicitly opted out of writes for this session. Conversation is the deliverable; no code, no spec, no PR. Reach this mode only when the user said "no writes" / "rubber-duck this" / "just talk" or equivalent.
Do not use the user-facing mode when the user wants a written spec (
/mold
), implementation (
/cook
), review (
/age
), or external evidence gathering (
/briesearch
) — those targets get the internal-mode call instead, and the calling skill does the work.
两种模式:
  1. 内部模式(默认)。其他工作流技能——包括
    /cheese
    本身——会静默调用
    /culture
    作为思考环节:重述问题、列出假设、列举候选方案、快速进行形态检查、选择下一步行动。这段对话不会展示给用户;只有最终的决策(以及调用技能所做的任何代码修改)会呈现给用户。最常见的调用者包括:
    • /cheese
      第一步——在告知用户之前进行静默分类推理。
    • /cheese
      二级升级(详见
      skills/cheese/SKILL.md
      § 升级)——当快速处理路径的清晰度检查在原始输入上失败时,补充缺失的上下文;合成内容会放入迷你规范的
      ## Provenance
      部分。
    • 其他工作流技能自身的预调度推理环节(mold、cook尝试验证等)。
  2. 面向用户模式。用户明确选择在本次会话中不进行写入操作。交付物为对话内容;不生成代码、规范文档或PR。只有当用户说出“no writes”/“rubber-duck this”/“just talk”或类似表述时,才进入此模式。
当用户需要书面规范(
/mold
)、代码实现(
/cook
)、代码评审(
/age
)或外部证据收集(
/briesearch
)时,请勿使用面向用户模式——这些场景应调用内部模式,由调用技能完成相应工作。

Invariant

不变规则

/culture
does not write production code, commit changes, open PRs, or mutate project state. The only sanctioned artifact is the opt-in notes handoff at
.cheese/notes/<slug>.md
(see
## Handoff slug
below), written only at session end of a user-facing session and only when the user asks for notes — never during dialogue, never in internal mode. If a user-facing conversation reveals that something should be built, route to
/mold
or
/cook
and stop. In internal mode, just return the decision and let the calling skill act.
/culture
不会写入生产代码、提交变更、创建PR或修改项目状态。唯一被允许生成的产物是可选的会话结束时的交接文件
.cheese/notes/<slug>.md
(详见下文
## 交接文件
),仅在面向用户的会话结束且用户要求记录时才会生成——对话过程中或内部模式下绝不会生成。如果面向用户的对话中发现需要构建的内容,引导至
/mold
/cook
并停止当前操作。在内部模式下,仅返回决策结果,由调用技能执行后续操作。

Flow

流程

Both modes share the same reasoning loop. The difference is what the agent does with the output: internal mode returns a single decision back to the calling skill; user-facing mode renders the dialogue and waits for the user.
  1. Restate the question or tension in one sentence. If the question rests on a false premise or a loaded assumption, name it.
  2. Identify assumptions, constraints, and decision criteria.
  3. Explore trade-offs and likely blast radius. When the trade-off hinges on "what does this touch", run a read-only shape check on the candidate seam — a
    cheez-search
    callers query (
    tilth_search kind: "callers"
    ) plus
    tilth_deps
    — and label each option
    [low | medium | high blast radius]
    . Procedure mirrors
    ../mold/references/shape-check.md
    ; culture stops at the verdict and never drafts signatures. Steelman the rejected option before settling on a recommendation.
  4. Use evidence only when it helps the reasoning; avoid deep research unless explicitly asked.
  5. Converge on a single recommended next action. In internal mode, return that recommendation and stop. In user-facing mode, render a compact summary, open questions tagged with confidence (
    certain | speculating | don't know
    ), and a
    ## Handoff
    prompt (see below).
Default the model's own contribution to maximum useful depth — full pseudocode signatures over hand-waving, named edge cases over "consider edge cases", concrete file:line evidence over vague pointers. Smallest-useful-question discipline applies only to what you ask the user, never to what you offer them.
两种模式共享相同的推理循环。区别在于Agent对输出结果的处理方式:内部模式将单个决策结果返回给调用技能;面向用户模式则展示对话内容并等待用户反馈。
  1. 用一句话重述问题或核心矛盾。如果问题基于错误前提或隐含假设,需明确指出。
  2. 识别假设条件、约束因素和决策标准。
  3. 分析权衡因素及可能的影响范围。当权衡取决于“该内容会影响哪些部分”时,对候选衔接点进行只读形态检查——调用
    cheez-search
    查询(
    tilth_search kind: "callers"
    )并结合
    tilth_deps
    ——为每个选项标记
    [低 | 中 | 高影响范围]
    。流程与
    ../mold/references/shape-check.md
    一致;culture环节仅得出结论,绝不会草拟签名。在确定推荐方案前,需充分论证被否决的选项。
  4. 仅在有助于推理时使用证据;除非明确要求,避免深入研究。
  5. 收敛至单个推荐的下一步行动。在内部模式下,返回该推荐并停止操作。在面向用户模式下,生成简洁的总结、带有置信度标签(
    certain | speculating | don't know
    )的待解决问题,以及
    ## 交接
    提示(详见下文)。
默认模型输出应达到最大实用深度——提供完整的伪代码签名而非模糊描述,明确列出边缘案例而非仅提示“考虑边缘案例”,给出具体的文件:行证据而非模糊指向。最小有效问题原则仅适用于向用户提出的问题,不适用于向用户提供的内容。

Preferred tools and fallbacks

首选工具及备选方案

Code search and reading go through the
cheez-*
skills (
/cheez-search
,
/cheez-read
) — see those skills for tool selection rules. Blast-radius reads specifically use
cheez-search
callers (
kind: "callers"
) plus
tilth_deps
(read-only shape check); culture stops at the verdict and never drafts signatures.
Beyond
cheez-*
there are culture-specific tools:
NeedPreferFallback
Visualizing diffs or examples
delta
plain
git diff
External sanity check
/briesearch
clearly mark as an assumption
Missing optional tools should not interrupt the conversation. Keep tool use light; this is a thinking session.
代码搜索和阅读通过
cheez-*
技能(
/cheez-search
/cheez-read
)完成——详见这些技能的工具选择规则。影响范围读取专门使用
cheez-search
调用者查询(
kind: "callers"
)并结合
tilth_deps
(只读形态检查);culture环节仅得出结论,绝不会草拟签名。
cheez-*
外,还有culture专属工具:
需求首选工具备选方案
可视化差异或示例
delta
普通
git diff
外部合理性校验
/briesearch
明确标记为假设
缺失可选工具不应中断对话。工具使用应尽量精简;这是一个思考会话。

Output

输出

Return a short conversational summary:
  • Current understanding
  • Trade-offs or options
  • Open questions
返回简短的对话式总结:
  • 当前理解
  • 权衡因素或可选方案
  • 待解决问题

Handoff slug

交接文件

When (and only when) the user asks for notes at session end, write an optional handoff slug to
.cheese/notes/<slug>.md
. The slug uses the same minimum schema as the other phase handoffs so
/cheese --continue <slug>
can read it:
markdown
status: ok | halt: <one-line reason>
next: mold | cook | ultracook | stop
artifact: <path-if-any>
<one-line orientation: what the culture session converged on>
next:
is culture-specific — values are
mold
(fuzzy idea, route to spec),
cook
(clear ask, route to implementation),
ultracook
(clear ask with high blast radius, route to autonomous fresh-context chain), or
stop
(no further action). The orientation line captures the punchline of the dialogue in one factual sentence; deeper notes go in the body of the same file.
The notes slug is the only thing culture is allowed to write. No commits, no PRs, no production-code edits — those route to
/mold
or
/cook
.
当(且仅当)用户在会话结束时要求记录时,生成可选的交接文件至
.cheese/notes/<slug>.md
。该文件使用与其他阶段交接文件相同的最小化 schema,以便
/cheese --continue <slug>
可以读取:
markdown
status: ok | halt: <单行原因>
next: mold | cook | ultracook | stop
artifact: <如有路径则填写>
<单行定位:culture会话达成的核心结论>
next:
是culture专属字段——可选值为
mold
(模糊想法,引导至规范文档)、
cook
(明确需求,引导至代码实现)、
ultracook
(明确需求且高影响范围,引导至自主新上下文链)或
stop
(无进一步操作)。定位行用一句事实性语句概括对话的核心要点;更详细的记录放在同一文件的正文中。
该记录文件是culture唯一被允许生成的内容。禁止提交变更、创建PR或修改生产代码——这些操作需引导至
/mold
/cook

Handoff

交接

Pipeline: [culture] → mold → cook → press → age → cure → ship
When the conversation reveals real work, ask via the shared handoff gate in
../../shared/handoff-gate.md
. Lead each option with the verb (what the user wants to do next); the skill command is the backing detail. Before asking, render a compact context packet so the downstream skill can dispatch without losing the discussion:
yaml
handoff_context:
  source_skill: /culture
  summary: <one factual sentence>
  open_questions: [<only blockers, if any>]
  artifact: <.cheese/notes/<slug>.md if written, otherwise none>
Default options (pick at most three of these plus a stop):
  • Shape this into a written spec (recommended when the idea is still fuzzy)
    /mold
    with the context packet, or
    /mold .cheese/notes/<slug>.md
    when a notes slug exists.
  • Implement it directly (recommended when the ask is clear and unambiguous)
    /cook
    with the context packet as the accepted contract.
  • Implement and auto-review
    /cook --auto
    with the context packet, chains through
    /press → /age → /cure
    autonomously, fixing every medium-or-above finding plus cheap (contained-fix) lows across up to two cure passes. Stops at the final cure pass; opening or updating the PR stays a manual step. Pre-select this when the conversation reached an unambiguous contract; offer the non-auto
    /cook
    as an alternative when the user wants per-step approval.
  • Research more first (when the conversation hit a factual gap external docs could close)
    /briesearch
    .
  • Pause — dispatch none; keep the dialogue in head.
After a non-stop selection, run the selected downstream skill immediately with the context packet.
/age
is never the next step from culture — review needs a diff to look at.
流程管线: [culture] → mold → cook → press → age → cure → ship
当对话中涉及实际工作任务时,通过
../../shared/handoff-gate.md
中的共享交接入口发起请求。每个选项以动词开头(用户接下来想要执行的操作);技能命令作为支持细节。发起请求前,生成简洁的上下文数据包,以便下游技能可以调度而不丢失之前的讨论内容:
yaml
handoff_context:
  source_skill: /culture
  summary: <一句事实性语句>
  open_questions: [<仅包含阻塞性问题(如有)>]
  artifact: <若已生成记录文件则填写`.cheese/notes/<slug>.md`,否则填写none>
默认选项(最多选择其中三个加上“暂停”选项):
  • 整理为书面规范文档(当想法仍模糊时推荐)——携带上下文数据包调用
    /mold
    ,若已生成记录文件则调用
    /mold .cheese/notes/<slug>.md
  • 直接实现(当需求明确且无歧义时推荐)——携带上下文数据包调用
    /cook
    ,将其作为已确认的约定。
  • 实现并自动评审——携带上下文数据包调用
    /cook --auto
    ,自动串联
    /press → /age → /cure
    流程,修复所有中高优先级问题以及最多两次cure流程中可低成本修复(范围可控)的低优先级问题。在最终cure流程结束时停止;创建或更新PR仍为手动步骤。当对话达成明确约定时默认选择此选项;若用户希望逐步骤确认,则提供非自动的
    /cook
    作为替代选项。
  • 先进行更多研究(当对话遇到可通过外部文档填补的事实空白时)——调用
    /briesearch
  • 暂停——不调度任何技能;保持对话状态。
选择非“暂停”选项后,立即携带上下文数据包运行选定的下游技能。
/age
永远不会是culture的下一步——评审需要查看差异内容。

Rules

规则

  • No production-code writes, no commits, no PRs. The only sanctioned write is the opt-in
    .cheese/notes/<slug>.md
    handoff at session end, and only when the user asks for it.
  • Ask one useful question at a time when the user is exploring.
  • Prefer clarity over completeness.
  • Agree when agreement is warranted; do not manufacture counterpoints to seem balanced.
  • When external evidence raises an alternative ("X uses Y or Z"), name it as a trade-off in the dialogue and a candidate option — never silently recommend "add both" or "expose a knob". Design choices need explicit user adjudication, not agent inference from a citation.
  • Apply the shared voice kernel (lives at
    skills/age/references/voice.md
    in this repo): lead with the answer, flag confidence as
    certain | speculating | don't know
    , steelman, track contradictions across turns.
  • 禁止写入生产代码、提交变更或创建PR。唯一被允许的写入操作是会话结束时的可选
    .cheese/notes/<slug>.md
    交接文件,且仅在用户要求记录时生成。
  • 当用户在探索需求时,一次只提一个有用的问题。
  • 优先保证清晰性而非完整性。
  • 当需要达成共识时明确同意;不要为了显得客观而刻意制造反对意见。
  • 当外部证据提出替代方案(“X使用Y或Z”)时,需在对话中作为权衡因素和候选选项明确指出——绝不要静默推荐“同时添加两者”或“提供配置开关”。设计选择需要用户明确裁决,而非Agent根据引用内容自行推断。
  • 应用统一语音准则(位于本仓库的
    skills/age/references/voice.md
    ):先给出答案,标记置信度为
    certain | speculating | don't know
    ,充分论证对立观点,跟踪多轮对话中的矛盾点。