Skip to content

DotCraft Full Configuration Reference

This page collects configuration fields in one place. For first-time setup, read Configuration Guide. For file, shell, sandbox, and network boundaries, read Security Configuration.

Basic Configuration

FieldDescriptionDefault
ApiKeyOpenAI-compatible API keyEmpty
ModelDefault model namegpt-4o-mini
EndPointAPI endpoint URLhttps://api.openai.com/v1
LanguageUI language: Chinese / EnglishChinese
MaxToolCallRoundsMaximum tool-call rounds for the main Agent100
SubagentMaxToolCallRoundsMaximum tool-call rounds for subagents50
SubagentMaxConcurrencyMaximum concurrent subagents3
MaxSessionQueueSizeMaximum queued requests per session; 0 means unlimited3
ConsolidationModelMemory consolidation model. Empty uses the main modelEmpty
DebugModePrints untruncated tool arguments in the consolefalse
EnabledToolsGlobally enabled tool names. Empty enables all tools[]

Memory

FieldDescriptionDefault
Memory.AutoConsolidateEnabledEnables automatic long-term memory consolidationtrue
Memory.ConsolidateEveryNTurnsSuccessful turns per thread between long-term memory consolidation attempts5

Compaction

FieldDescriptionDefault
Compaction.AutoCompactEnabledEnables threshold-based auto compactiontrue
Compaction.ReactiveCompactEnabledEnables reactive compaction for prompt_too_long errorstrue
Compaction.ContextWindowModel context window in tokens200000
Compaction.SummaryReserveTokensTokens reserved for summary output20000
Compaction.AutoCompactBufferTokensToken buffer below the hard limit that triggers auto compaction13000
Compaction.WarningBufferTokensToken buffer before auto threshold that emits warning20000
Compaction.ErrorBufferTokensToken buffer before auto threshold that emits error10000
Compaction.ManualCompactBufferTokensToken buffer below the hard limit where manual /compact remains allowed3000
Compaction.KeepRecentMinTokensMinimum recent tail tokens after partial summary10000
Compaction.KeepRecentMinGroupsMinimum recent API groups after partial summary3
Compaction.KeepRecentMaxTokensMaximum recent tail tokens after partial summary40000
Compaction.MicrocompactEnabledEnables micro-compactiontrue
Compaction.MicrocompactTriggerCountCompressible tool-result count that triggers micro-compaction30
Compaction.MicrocompactKeepRecentRecent tool results kept during micro-compaction8
Compaction.MicrocompactGapMinutesAlso triggers after this many minutes since last assistant message; 0 disables it20
Compaction.MaxConsecutiveFailuresConsecutive failures before circuit breaking compaction3

Reasoning

FieldDescriptionDefault
Reasoning.EnabledRequests provider reasoning supportfalse
Reasoning.EffortReasoning depth: None / Low / Medium / High / ExtraHighMedium
Reasoning.OutputReasoning visibility: None / Summary / FullFull

Entry Points and Services

FieldDescriptionDefault
Api.EnabledEnables API modefalse
Api.HostHTTP listen address127.0.0.1
Api.PortHTTP listen port8080
Api.ApiKeyAPI bearer token. Empty disables authEmpty
Api.AutoApproveAutomatically approves all file/shell operationstrue
AgUi.EnabledEnables AG-UI servicefalse
AgUi.HostHTTP listen address127.0.0.1
AgUi.PortHTTP listen port5100
AgUi.PathSSE endpoint path/ag-ui
AgUi.RequireAuthEnables bearer token authenticationfalse
AgUi.ApiKeyBearer token valueEmpty
AgUi.ApprovalModeTool approval mode: interactive / autointeractive
Acp.EnabledEnables ACP modefalse
DashBoard.EnabledEnables Dashboardfalse
DashBoard.HostDashboard listen address127.0.0.1
DashBoard.PortDashboard listen port8080
Gateway.EnabledEnables Gateway Hostfalse

Automation and Workflows

FieldDescriptionDefault
Automations.EnabledEnables the Automations orchestratortrue
Automations.LocalTasksRootLocal task root. Empty uses .craft/tasks/Empty
Automations.PollingIntervalPolling interval00:00:30
Automations.MaxConcurrentTasksMaximum concurrent local tasks3
Automations.TurnTimeoutSingle-turn timeout00:30:00
Automations.StallTimeoutStall timeout without response00:10:00
Automations.MaxRetriesMaximum retry count3
Automations.RetryInitialDelayInitial retry delay00:00:30
Automations.RetryMaxDelayMaximum retry delay00:10:00
Hooks.EnabledEnables Hookstrue
Hooks.EventsHook event configuration list[]
Cron.EnabledEnables Cron scheduled taskstrue
Heartbeat.EnabledEnables heartbeat servicefalse
Heartbeat.IntervalSecondsCheck interval in seconds1800
Heartbeat.NotifyAdminSends results to admin in social channelstrue

MCP and LSP

FieldDescriptionDefault
McpServersMCP server configuration map{}
Tools.DeferredLoading.EnabledEnables deferred tool loadingfalse
Tools.DeferredLoading.AlwaysLoadedToolsTool names that are always loaded[]
LspServersLSP server configuration map{}
Tools.Lsp.EnabledEnables the built-in LSP toolfalse

SubAgent

For the beginner path and examples, read SubAgent Configuration Guide.

FieldDescriptionDefault
SubAgent.MaxDepthMaximum session-backed SubAgent spawn depth; the first child is depth 11
SubAgent.ModelModel used by DotCraft native SubAgents; empty inherits the current thread's effective main modelEmpty
SubAgent.EnableExternalCliSessionResumeAllows external CLI profiles that support resume to reuse saved external sessionsfalse
SubAgent.DisabledProfilesSubAgent profile names hidden and disabled for this workspace[]
SubAgent.RolesWorkspace-defined SubAgent roles; entries with built-in names override built-in roles[]

Fields inside each SubAgent.Roles entry:

FieldDescription
NameRole name, also the value used by SpawnAgent.agentRole
DescriptionShort role description exposed to the main Agent
ToolAllowListExact tool allow-list; empty means no additional restriction on eligible tools
ToolDenyListExact tool deny-list removed after the tool set is assembled
AgentControlToolAccessAgentTools policy: Disabled / Full / AllowList
AllowedAgentControlToolsAgentTools names allowed when AgentControlToolAccess is AllowList
PromptProfileNative SubAgent prompt profile: subagent-light / full
InstructionsRole instructions appended to the SubAgent prompt
ModeOptional mode override
ModelOptional model override
OverrideBasePromptReplaces the base prompt with Instructions; by default instructions are appended

External Channels

TypeScript external channels such as QQ and WeCom are registered with ExternalChannels:

json
{
  "AppServer": {
    "Mode": "WebSocket",
    "WebSocket": {
      "Host": "127.0.0.1",
      "Port": 9100,
      "Token": ""
    }
  },
  "ExternalChannels": {
    "qq": {
      "enabled": true,
      "transport": "websocket"
    },
    "wecom": {
      "enabled": true,
      "transport": "websocket"
    }
  }
}

Platform connections, allowlists, and approval timeouts live in adapter-specific files such as .craft/qq.json and .craft/wecom.json.

Custom Commands

CustomCommands stores reusable prompts or workflows as commands. Command content usually lives under workspace .craft/commands/ or the corresponding configuration entry, then can be reused from CLI, Desktop, and other entry points.

Apache License 2.0