Skip to main content

TF Design

TF Design is a local design workspace that builds presentations (decks), posters, landing pages, prototypes, design systems, and brand visuals. TF Code can delegate a design brief to it through the tfdesign tool.

It is an add-on, not a default: the tfdesign tool and the TF Design agent only exist while the tfdesign CLI is installed. Follow the same setup/doctor pattern as voice and computer use.

Install​

tfcode tfdesign setup --install

This runs npm install -g @toothfairyai/tfdesign. Verify with:

tfcode tfdesign doctor

If tfcode was already running before the add-on was installed, restart it or start a new session so the tfdesign tool and the TF Design agent appear.

How delegation works​

The tfdesign tool hands the user's design brief to TF Design's design pipeline. It may ask the user design questions (discovery brief, visual direction, first-slide design picks, fonts) — those are relayed to the user automatically through TF Code's question UI, and the answers flow back to TF Design. Let the call run to completion (it can take several minutes; do not retry or interrupt it).

The finished artifact:

  • Stays in the TF Design project (versioned) for this working directory
  • Is mirrored as plain files into design/<project-slug>/ in the working directory
  • Is previewable at the returned previewUrl (open it in a browser)

Continuing a design​

Pass project (an id or name from a previous call's result) to continue an existing design. When the user asks for changes ("make the title bigger", "try a different direction"), pass the project id together with the change request as task. Never edit the design/ mirror files yourself to change a design — iterate through the tool so versions accumulate in TF Design. You may read the mirror files to inspect or report on the result.

Tool​

The tfdesign tool is only registered while the tfdesign CLI is installed (cached detection — tfcode tfdesign setup installs and re-probes).

ParameterRequiredDescription
taskyesThe design brief, verbatim from the user. For follow-ups, the change request.
projectnoTF Design project id or name to continue. Omit to create a new project.
skillnoBind a TF Design skill id (e.g. a deck mode)
designSystemnoBind a TF Design design system id
modelnoModel for the nested design agent (default: TF Design's default)
daemonUrlnoTF Design daemon URL override (default http://127.0.0.1:7456)

Configuration​

The tfdesign config section controls CLI resolution and the mirror location:

{
"tfdesign": {
"bin": "/usr/local/bin/tfdesign",
"url": "http://127.0.0.1:7456",
"mirror_dir": "design"
}
}
KeyDefaultDescription
binTFDESIGN_BIN env, then PATH (tfdesign, od)Path to the TF Design CLI.
urlhttp://127.0.0.1:7456TF Design daemon URL.
mirror_dirdesignWorkspace directory (relative to cwd) where delegated artifacts are mirrored.

The CLI is resolved in this order: TFDESIGN_BIN env → tfdesign.bin config → tfdesign on PATH. The resolved binary must advertise the run subcommand; an older CLI without it is skipped.