LinuxCommandLibrary

smartcat

TLDR

Process text with AI

$ echo "[text]" | sc "[summarize this]"
copy
Transform piped input
$ cat [file.txt] | sc "[translate to French]"
copy
Use with command output
$ git diff | sc "[write a commit message for these changes]"
copy
Specify a custom prompt template
$ echo "[text]" | sc -c [my_template]
copy
Use a specific model
$ echo "[text]" | sc -m [claude]
copy
Interactive mode
$ sc -i "[explain Kubernetes networking]"
copy

SYNOPSIS

sc [options] [prompt]

DESCRIPTION

smartcat (command: sc) puts an AI brain behind Unix pipes. It reads from stdin, processes the content with a language model, and writes the result to stdout, fitting naturally into Unix pipelines.
The tool is designed for stream-based text transformation: summarizing, translating, reformatting, code reviewing, generating commit messages, and any other text processing task. It follows Unix philosophy by doing one thing well and composing with other tools.
Prompt templates define reusable transformations. Templates are stored in the config file and invoked by name with `-c`. This enables consistent, repeatable AI-powered text processing.
Supports multiple providers: OpenAI, Anthropic, Mistral, Ollama, and OpenAI-compatible APIs. Configuration is via a TOML file at `~/.config/smartcat/`.
Install via `cargo install smartcat`. The command is `sc` for quick typing.

PARAMETERS

PROMPT

Instruction for processing the input.
-c, --config NAME
Use a named prompt template.
-m, --model NAME
Model or API to use.
-i, --interactive
Interactive conversation mode.
-r, --repeat
Repeat last command.
-t, --temperature FLOAT
Sampling temperature.
-s, --system-message TEXT
System message/persona.
--list-models
List configured models.
--list-configs
List prompt templates.

CAVEATS

API key required for cloud providers. Stdin must be provided for pipe mode. Large inputs may exceed model context limits. Streaming output may not work with all downstream commands.

HISTORY

smartcat was created by Emilien Fugier in 2023 with the tagline "Putting a brain behind `cat`." It was designed as a minimal, composable AI tool for the Unix command line, prioritizing integration with existing shell workflows over feature richness.

SEE ALSO

mods(1), aichat(1), llm(1), cat(1)

Copied to clipboard