# Imported from ~/.pi/agent/models.json (pi agent settings) # - apiKey "EMPTY" -> auth: none (keyless local endpoint) # - thinkingLevelMap {max: xhigh} -> compat.reasoningEffortMap providers: "llamacpp (dankserver)": baseUrl: http://192.168.0.235:7770/v1 api: openai-completions auth: none models: - id: frank-small name: "frank-small (dankserver)" contextWindow: 262144 maxTokens: 262144 reasoning: true input: [text] compat: reasoningEffortMap: max: xhigh "llamacpp (dankclaw)": baseUrl: http://192.168.0.143:7770/v1 api: openai-completions auth: none models: - id: frank-large name: "frank-large (dankclaw-gpu)" contextWindow: 200000 # Halogen caps max_tokens at HALOGEN_MAX_TOKENS_CAP=65536 (a request # above it is a 400). Admission reserves prompt + max_tokens against # the KV pool (401,408 positions since 2026-09-13): 200,000 + 65,536 # = 265,536, comfortably inside. Overshooting the pool hangs for the # 3600 s queue timeout before a 503. maxTokens: 65536 reasoning: true input: [text, image] compat: reasoningEffortMap: max: xhigh # Qwen3.8-Flash-Next recommended sampling; halogen has no server-side # sampler defaults, so without this the endpoint decodes greedy. # extraBody is merged last (after compat policy) and wins. extraBody: temperature: 1.0 top_p: 0.95 top_k: 20 min_p: 0.0 presence_penalty: 0.0 repetition_penalty: 1.0 # Keep prior thinking blocks in the rendered prompt across turns; # halogen honours it top-level (verified: 275-token prompt delta vs false). preserve_thinking: true