Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 16 additions & 6 deletions src/constants/prompts.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// biome-ignore-all assist/source/organizeImports: ANT-ONLY import markers must not be reordered

Check failure on line 1 in src/constants/prompts.ts

View workflow job for this annotation

GitHub Actions / ci

format

File content differs from formatting output
import { type as osType, version as osVersion, release as osRelease } from 'os'
import { env } from '../utils/env.js'
import { getIsGit } from '../utils/git.js'
Expand Down Expand Up @@ -82,10 +82,20 @@
require('@claude-code-best/builtin-tools/tools/BriefTool/prompt.js') as typeof import('@claude-code-best/builtin-tools/tools/BriefTool/prompt.js')
).BRIEF_PROACTIVE_SECTION
: null
const briefToolModule =
feature('KAIROS') || feature('KAIROS_BRIEF')
? (require('@claude-code-best/builtin-tools/tools/BriefTool/BriefTool.js') as typeof import('@claude-code-best/builtin-tools/tools/BriefTool/BriefTool.js'))
: null

let briefToolModule:
| typeof import('@claude-code-best/builtin-tools/tools/BriefTool/BriefTool.js')
| null = null

function getBriefToolModule() {
if (briefToolModule) return briefToolModule
if (!(feature('KAIROS') || feature('KAIROS_BRIEF'))) return null
briefToolModule = require(
'@claude-code-best/builtin-tools/tools/BriefTool/BriefTool.js',
) as typeof import('@claude-code-best/builtin-tools/tools/BriefTool/BriefTool.js')
return briefToolModule
}

const DISCOVER_SKILLS_TOOL_NAME: string | null = feature(
'EXPERIMENTAL_SKILL_SEARCH',
)
Expand Down Expand Up @@ -800,7 +810,7 @@
// Whenever the tool is available, the model is told to use it. The
// /brief toggle and --brief flag now only control the isBriefOnly
// display filter — they no longer gate model-facing behavior.
if (!briefToolModule?.isBriefEnabled()) return null
if (!getBriefToolModule()?.isBriefEnabled()) return null
// When proactive is active, getProactiveSection() already appends the
// section inline. Skip here to avoid duplicating it in the system prompt.
if (
Expand Down Expand Up @@ -864,5 +874,5 @@

The user context may include a \`terminalFocus\` field indicating whether the user's terminal is focused or unfocused. Use this to calibrate how autonomous you are:
- **Unfocused**: The user is away. Lean heavily into autonomous action — make decisions, explore, commit, push. Only pause for genuinely irreversible or high-risk actions.
- **Focused**: The user is watching. Be more collaborative — surface choices, ask before committing to large changes, and keep your output concise so it's easy to follow in real time.${BRIEF_PROACTIVE_SECTION && briefToolModule?.isBriefEnabled() ? `\n\n${BRIEF_PROACTIVE_SECTION}` : ''}`
- **Focused**: The user is watching. Be more collaborative — surface choices, ask before committing to large changes, and keep your output concise so it's easy to follow in real time.${BRIEF_PROACTIVE_SECTION && getBriefToolModule()?.isBriefEnabled() ? `\n\n${BRIEF_PROACTIVE_SECTION}` : ''}`
}
Loading