TS Studio Input (Text)
The marker that tells TS Image Studio where your prompt goes
- text
TS Image Studio is the full-screen image generation and editing app that lives inside this pack - one node opens it, and underneath it runs ordinary ComfyUI graphs called backend workflows. This node, TS_StudioInputText, is one of the marker nodes those backends are built from. It doesn't do image math. Its whole job is to tell the studio where a text value goes at run time.
Standalone - i.e. outside the studio, in a regular graph - it's honestly just a string source. A text box that spits a STRING out the other side. That's not a bug; it's the whole point. The same node has to be inert when you run the workflow by hand and become a live parameter slot when the studio drives it.
How it works
The studio hunts for these markers by param_name. When you press a mode button in the studio, it reads the backend workflow, finds every marker, and fills each one's value from whatever the user typed in the studio's own UI. That's how the prompt you type in a slick form ends up inside a plain CLIPTextEncode you never see.
The two fields that matter:
value- the text the studio replaces at run time. Multiline, so it works for prompts, negative prompts, and edit instructions alike.param_name- the name the studio uses to find this marker and set its value, e.g.prompt,width,source_image. The tooltip's warning is worth taking seriously: it must be unique per workflow. Two markers claiming the same name means the studio can't tell which one to fill.
There's also an optional label - a human-readable name shown in the studio UI instead of the raw param_name. Nice for end users who shouldn't have to read negative_prompt_xl_v2.
Wiring it
The single output, text, is a plain STRING. In a hand-built graph you'd wire it straight into a CLIPTextEncode. In a studio backend, the graph author wires it the same way - the studio just owns the value that lands in it.
Installing it
This node ships inside comfyui-timesaver, so installing the pack installs it:
- ComfyUI Manager → Custom Nodes Manager → search
Timesaver→ install, or -
then restart ComfyUI. Use the same Python ComfyUI runs from (on the Windows portable build, that'scd ComfyUI/custom_nodes git clone https://github.com/AlexYez/comfyui-timesaver cd comfyui-timesaver python -m pip install -r requirements.txtpython_embeded\python.exe).
Gotchas
The usual trap is forgetting what the node is for: people grab it as a plain text source, it works fine, and then they wonder why the studio ignores it. If you're authoring a backend, keep param_name unique and let the studio fill value - that's the contract. If you just wanted a string to hand to a text encoder, this works, but any primitive string node does the same job with less mystery.
Everything in the graph is ComfyUI V3 API (comfy_api.v0_0_2), which is the pinned namespace this pack targets. If the pack updates and a workflow breaks, the README's advice holds: check doc/migration.md, re-run pip install -r requirements.txt, and restart ComfyUI fully - not just the browser tab.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| value | STRING | The text the studio replaces at run time. | |
| param_name | STRING | prompt | Name the studio uses to find this marker and set its value (e.g. 'prompt', 'width', 'source_image'). Must be unique per workflow. |
| labelopt | STRING | Optional human-readable label shown in the studio UI instead of param_name. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |