Skip to main content

// blog / worked example

One prompt, from your terminal to your agent

The same template, filled three different ways — and every surface reads the exact same version.

The template

Say you have a commit-message prompt you like. Give it {{variables}}so it's reusable, and commit it. That's the single source of truth for everything below.

commit-msg · v2.1.0
## INSTRUCTION
Write a {{style}} git commit message for this diff.
Keep the subject under 50 chars. Body explains why, not what.
{{diff}}

Surface 1 — the web (and extension)

In the dashboard, hit Copy; the fill dialog asks for style and diff, and you paste ready-to-use text into ChatGPT or Claude. The Chrome extension does the identical thing in a side panel, so you never leave the model's tab.

Surface 2 — the CLI, in a git hook

The same prompt, scripted. Drop it in a prepare-commit-msg hook and your commit messages come from your versioned prompt, not your tired brain at 2am:

$ terminal
ple get commit-msg --var style=conventional --var diff="$(git diff --cached)" | claude -p

Surface 3 — an agent over MCP

Inside Claude Code, an agent just asks for it by name — no need to know the wording:

claude code
> write a commit message for these staged changes
⏺ promptlike · fill_variables("commit-msg", style: "conventional", diff: <staged>)
  ⎿ v2.1.0 · ready-to-use text

See the MCP guide for setup (claude mcp add promptlike -- npx -y promptlike-mcp).

The point: one version, everywhere

Improve the prompt once — say you tighten the subject-line rule and commit v2.2 — and all three surfaces pick it up immediately. No stale copy in a gist, no “wait, which version is in my hook?” Anthropic's own docs note that Skills don't sync across surfaces; this is the layer that makes your prompts do exactly that.

Start free → Read the docs →