You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`listen`| Enable listening for incoming connections |`false`|`true`, `false`|
120
120
|`port`| Server listening port |`8000`| Any valid port number (1-65535) |
121
+
|`heartbeatInterval`| Interval in seconds to write a heartbeat file for Docker healthchecks. Set to 0 to disable |`0`|`0` (disabled), positive integer |
121
122
|`protocol.ipv4`| Enable listening on the IPv4 protocol |`true`|`true`, `false`, `auto`|
122
123
|`protocol.ipv6`| Enable listening on the IPv6 protocol |`false`|`true`, `false`, `auto`|
123
124
|`listenAddress.ipv4`| Listen on a specific IPv4 address |`0.0.0.0`| Valid IPv4 address |
@@ -207,6 +208,18 @@ An enabled CORS proxy may be required by some extensions. It is not required by
Copy file name to clipboardExpand all lines: For_Contributors/Function-Calling.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,7 +25,7 @@ Function Calling allows adding dynamic functionality to your extensions by letti
25
25
26
26
## Prerequisites and limitations
27
27
28
-
1. This feature is only available for certain Chat Completion sources: OpenAI, Claude, MistralAI, Groq, Cohere, OpenRouter, AI21, Google AI Studio, Google Vertex AI, DeepSeek, AI/ML API and Custom API sources.
28
+
1. This feature is only available for certain Chat Completion sources: OpenAI, Claude, MistralAI, Groq, Cohere, OpenRouter, AI21, Google AI Studio, Google Vertex AI, DeepSeek, AI/ML API, NanoGPT and Custom API sources.
29
29
2. Text Completion APIs don't support function calls, but some locally-hosted backends like Ollama and TabbyAPI may run in Custom OpenAI-compatible mode under Chat Completion.
30
30
3. The support for function calling must be explicitly allowed by the user first. This is done by enabling the "Enable function calling" option in the AI Response Configuration panel.
31
31
4. There is no guarantee that an LLM will perform any function calls at all. Most of them require an explicit "activation" through the prompt (e.g., the user asking to "Roll a dice", "Get the weather", etc.).
Copy file name to clipboardExpand all lines: For_Contributors/st-script.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -73,6 +73,7 @@ Now let's add a little bit of interactivity to the script. We will accept the in
73
73
-`/setinput (text)` — replaces the contents of the user input bar with the provided text.
74
74
-`/speak voice="name" (text)` — narrates the text using the selected TTS engine and the character name from the voice map, e.g. `/speak name="Donald Duck" Quack!`.
75
75
-`/buttons labels=["a","b"] (text)` — shows a blocking popup with the specified text and button labels. `labels` must be a JSON-serialized array of strings or a variable name containing such an array. Returns the clicked button label into the pipe or empty string if canceled. The text supports lite HTML formatting.
Copy file name to clipboardExpand all lines: Installation/Docker.md
-8Lines changed: 0 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -247,10 +247,6 @@ If you already see a _plugins_ folder within the `docker` folder, you can skip S
247
247
248
248
## Non-root user mode
249
249
250
-
!!!warning Staging Feature
251
-
This is currently only available on the `staging` branch of SillyTavern, and not part of the latest release.
252
-
!!!
253
-
254
250
By default, the container runs as root. If you want files created in mounted volumes to be owned by a specific host user (for example, to avoid root-owned files), you can enable non-root mode.
255
251
256
252
### Option 1: PUID/PGID (recommended)
@@ -300,10 +296,6 @@ docker run \
300
296
301
297
## Container Healthcheck
302
298
303
-
!!!warning Staging Feature
304
-
This is currently only available on the `staging` branch of SillyTavern, and not part of the latest release.
305
-
!!!
306
-
307
299
The Docker image includes a built-in healthcheck mechanism that monitors the SillyTavern server's responsiveness. This is useful for container orchestration systems (like Docker Compose, Kubernetes, or Docker Swarm) to detect and automatically restart unresponsive containers.
Copy file name to clipboardExpand all lines: Usage/Prompts/reasoning.md
+11-10Lines changed: 11 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,6 +59,7 @@ Supported sources:
59
59
- Electron Hub
60
60
- Chutes
61
61
- NanoGPT
62
+
- Moonshot
62
63
63
64
!!!
64
65
For **most** sources, "Request model reasoning" does not determine whether a model does reasoning as it can't be disabled. If the backend and model support explicitly requesting disabled reasoning, the setting will do so. Otherwise, the model will always reason.
@@ -67,7 +68,7 @@ For **most** sources, "Request model reasoning" does not determine whether a mod
67
68
Provider-specific notes:
68
69
69
70
- Claude and Google (2.5 Flash) allow thinking mode to be toggled; see [Reasoning Effort](#reasoning-effort).
70
-
- Reasoning can be disabled for Z.AI (GLM). The setting maps the to `thinking.type` parameter, see the [documentation](https://docs.z.ai/api-reference/llm/chat-completion#body-one-of-0-thinking). It does not support "Reasoning Effort".
71
+
- Reasoning can be disabled for [Z.AI (GLM)](https://docs.z.ai/api-reference/llm/chat-completion#body-one-of-0-thinking) and [Moonshot (Kimi)](https://platform.moonshot.ai/docs/guide/use-kimi-k2-thinking-model). The setting maps the to `thinking.type` parameter. It does not support "Reasoning Effort".
71
72
72
73
### By Parsing
73
74
@@ -117,15 +118,15 @@ Different ephemerality options affect reasoning blocks in the following ways:
117
118
118
119
Reasoning Effort is a Chat Completion setting in the **<iclass="fa-solid fa-sliders"></i> AI Response Configuration** panel that influences how many tokens may potentially be used on reasoning. The effect of each option depends on the source connected to. For the sources below, Auto simply means the relevant parameter is not included in the request.
119
120
120
-
| Option | Claude (≤ 21333 if no streaming) | OpenAI (keyword) | OpenRouter (keyword) | xAI (Grok) (keyword) | Perplexity (keyword) |
| Auto | not specified, **no thinking**| not specified | not specified, effect depends | not specified | not specified | not specified |
125
+
| Minimum | budgets 1024 tokens | "low" | "low", or 20% of max response | "low" | "low" | "none" |
126
+
| Low | 15% of max response, min 1024 | "low" | "low", or 20% of max response | "low" | "low" | "minimal" |
127
+
| Medium | 25% of max response, min 1024 | "medium" | "medium", or 50% of max response | "low" | "medium" | "low" |
128
+
| High | 50% of max response, min 1024 | "high" | "high", or 80% of max response | "high" | "high" | "medium" |
129
+
| Maximum | 95% of max response, min 1024 | "high" | "high", or 80% of max response | "high" | "high" | "high" |
129
130
130
131
- For Claude, budget is capped to 21333 if streaming is disabled. If the calculated budget would be less than 1024, then max response is changed to 2048.
131
132
- For OpenRouter, Perplexity and AI/ML API, only an OpenAI-style keyword is sent.
Copy file name to clipboardExpand all lines: Usage/macros.md
+2-17Lines changed: 2 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -146,10 +146,6 @@ The condition itself is a macro that retrieves a variable value.
146
146
147
147
## Scoped Macros
148
148
149
-
!!!warning Staging Feature
150
-
This is currently only available on the `staging` branch of SillyTavern, and not part of the latest release.
151
-
!!!
152
-
153
149
Any macro that accepts at least one argument supports scoped syntax. The content between opening and closing tags becomes the **last argument** of the macro.
154
150
155
151
### Scoped Syntax
@@ -213,10 +209,6 @@ To preserve all whitespace including leading/trailing newlines, use the `#` flag
213
209
214
210
## Conditional Macros
215
211
216
-
!!!warning Staging Feature
217
-
This is currently only available on the `staging` branch of SillyTavern, and not part of the latest release.
218
-
!!!
219
-
220
212
The `{{if}}` macro renders content conditionally based on whether a value is truthy or falsy.
221
213
222
214
### Simple Condition
@@ -290,10 +282,6 @@ Another example:
290
282
291
283
## Macro Flags
292
284
293
-
!!!warning Staging Feature
294
-
This is currently only available on the `staging` branch of SillyTavern, and not part of the latest release.
295
-
!!!
296
-
297
285
Flags are special symbol characters placed between the opening braces and the macro name that modify macro behavior.
298
286
299
287
### Syntax
@@ -380,10 +368,6 @@ This outputs `{{notAMacro}}` as plain text.
380
368
381
369
## Variable Shorthands
382
370
383
-
!!!warning Staging Feature
384
-
This is currently only available on the `staging` branch of SillyTavern, and not part of the latest release.
385
-
!!!
386
-
387
371
Variable shorthands provide a concise syntax for common variable operations. Use `.` for local variables and `$` for global variables.
388
372
389
373
### Variable Shorthands Prefixes
@@ -773,7 +757,7 @@ Use `/? macros` for the complete list of available macros and their detailed des
773
757
| Macro | Description |
774
758
|-------|-------------|
775
759
|`{{random::a::b::c}}`| Random selection (re-rolls each time) |
776
-
|`{{pick::a::b::c}}`| Stable random selection (consistent per chat and position) |
760
+
|`{{pick::a::b::c}}`| Stable random selection (consistent per chat and position). Can be rerolled with the `/reroll-pick` command|
777
761
|`{{roll::1d20}}`| Dice roll using droll syntax |
778
762
779
763
### Runtime State
@@ -784,6 +768,7 @@ Use `/? macros` for the complete list of available macros and their detailed des
784
768
|`{{model}}`| Model name for the currently selected API |
785
769
|`{{isMobile}}`| "true" if running in mobile environment, "false" otherwise |
786
770
|`{{lastGenerationType}}`| Type of last queued generation request (e.g., "normal", "impersonate", "regenerate", "quiet", "swipe", "continue") |
771
+
|`{{hasExtension::name}}`| Check if an extension is active (returns "true" or "false"). Matches by extension name, case-insensitive |
|[Stable Diffusion WebUI / AUTOMATIC1111](https://github.com/AUTOMATIC1111/stable-diffusion-webui)| Local, open source (AGPL3), free of charge |
52
53
|[Stable Horde](https://stablehorde.net/)| Cloud, open source (AGPL3), free of charge |
@@ -163,6 +164,10 @@ Some special subjects trigger a predefined generation mode:
163
164
164
165
When using the interactive mode of the slash command, automatically extend free-mode generation subject descriptions by prompting your main API.
165
166
167
+
### Minimal prompt processing
168
+
169
+
When enabled, reduces the processing applied to prompts returned by the LLM for image generation. Only normalization and whitespace reduction are performed, skipping the aggressive sanitization that is done by default. This is useful when working with advanced workflows (e.g., ComfyUI) that accept structured prompt formats like JSON.
170
+
166
171
### Snap auto-adjusted resolutions
167
172
168
173
Snap image generation requests with a forced aspect ratio (portraits, backgrounds) to the nearest known resolution, while trying to preserve the absolute pixel counts. Refer to the "Resolution" dropdown for the list of possible options.
Copy file name to clipboardExpand all lines: extensions/TTS.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -40,6 +40,7 @@ Available options (list may change over time):
40
40
-**Ignore \*text, even "quotes", inside asterisks\*** - TTS will not play any text within `*asterisks*`, even "quotes" (internal variable name = `narrate_dialogues_only`)
41
41
-*having both "only narrate quotes" and "ignore asterisks" checkboxes both checked will result in the TTS only reading "quotes" which are not in asterisks, and ignoring everything else.*
42
42
-**Narrate only the translated text** - this will make the TTS only narrate the translated text.
43
+
-**Apply regex** - applies a provided regex pattern to the text before sending it to the TTS provider. Useful for removing unwanted parts from the input text, such as emojis or non-native language characters that the TTS engine doesn't handle well.
43
44
44
45
Given the example text: `*Cohee approaches you with a faint "nya"* "Good evening, senpai", she says.`
45
46
Here's a table showing how the text will be modified based on the boolean states of **Ignore \*text, even "quotes", inside asterisks\*** and **Only narrate "quotes"**:
0 commit comments