- Engage with
- they claim local models can't do agentic coding
- their one run looped for an hour
- Approach
- quote their point, add the missing angle, end with a question back
- Form
- length: short; opener: statement
Playbook Engine for repeated AI writing
Never the same way twice.
Unsame tells your AI how to approach each post, reply or script, grounded in what just happened, different from last time, always in your voice. Works with any model. Writes nothing itself.
claude mcp add --transport http unsame-engine http://localhost:2980/mcp/engine Codex, Cursor, Claude Desktop, ChatGPT- Engage with
- they claim local models can't do agentic coding
- their one run looped for an hour
- Approach
- one contrarian line, backed by one fact from own experience
- Form
- length: one_liner; opener: number
- Engage with
- they claim local models can't do agentic coding
- their one run looped for an hour
- Approach
- hook: the surprising number firstsetup: what we triedturn: what brokepayoff: the fix, one line
- Form
- length: medium; opener: question
01 The problem
Same model, same shape, different nouns.
- Your AI has one way of writing a post.
- Your replies sound canned.
- Adding “be creative” did nothing.
Alignment training narrows models to the few “typical” answers raters prefer. Raising the temperature adds noise inside that one approach rather than a new approach. And a model asked to “do it differently this time” cannot produce the randomness that would take. The approach has to be chosen outside the model, from an explicit list, with real entropy and a memory of what was already used.
Verbalized Sampling, arXiv 2510.01171 ↗ String Seed of Thought, arXiv 2510.21150 ↗
02 How it works
A protocol before every draft.
Before each generation Unsame reads the input and returns a protocol. Your model writes the text. Unsame writes nothing.
- 01
Input
A post to answer, a mention, an event, or nothing at all for a planned slot.
- 02
Situation and hooks
Which of your situations apply, and the exact points in the input the output must engage with.
- 03
Approach picked
One of your ways that fits, chosen with real randomness, with the recent ones penalised.
- 04
Protocol into your model
Situation, hooks, facts, approach, form, voice and bans. Your model writes the text.
Input
Local models will never be good enough for agentic coding. I ran one for an hour and it just looped on the same failing test.
Protocol from Unsame
Situation: reacting to someone's postEngage with:- they claim local models can't do agentic coding- their one run looped for an hourApproach: quote their point, add the missing angle, end with a question backForm: length: short; opener: statementAlways: one real example from own workVoice: casual, concrete, no emojisNever: politics, competitor names
Written by your model
One run that loops for an hour says something about that setup, not about local models. The same task finished in 14 minutes on a 32B here. What was the context window set to?
Real output, written by Claude from this protocol. Next time the approach will not be this one.
03 Examples
Same rules. Different plays.
Real inputs for each starter template, run through the engine and written by real models. The rules never change; the approach does. The same model without a protocol writes the same post every time.
Answer a post in your account voice without sounding like the last ten answers.
Local models will never be good enough for agentic coding. I ran one for an hour and it just looped on the same failing test.
= Same every run
- Situation
- reacting to someone's post
- Engage with
- they claim local models can't do agentic codingtheir one run looped for an hour
- Always
- one real example from own work
- Voice
- casual, concrete, no emojis
- Never
- politics, competitor names
Plain prompt · Claude, no protocol
With Unsame · a different play each run
- Run 1 Plain prompt
Fair point on the looping, but I'd be careful generalizing from one run. Local models have improved a lot, and loops like that are often a context or tooling issue.
With Unsamebuild_on
- length short
- opener statement
One run that loops for an hour says something about that setup, not about local models. The same task finished in 14 minutes on a 32B here. What was the context window set to?
How this play was written
quote their point, add the missing angle, end with a question back
Situation: reacting to someone's postEngage with:- they claim local models can't do agentic coding- their one run looped for an hourApproach: quote their point, add the missing angle, end with a question backForm: length: short; opener: statementAlways: one real example from own workVoice: casual, concrete, no emojisNever: politics, competitor names
- Run 2 Plain prompt
One hour of looping is frustrating, but it's one run. Local models are improving quickly, and that failure often points to the setup rather than the model.
With Unsamehot_take
- length one_liner
- opener number
14 minutes. That is how long a local 32B took on our failing-test task, and it never looped.
How this play was written
one contrarian line, backed by one fact from own experience
Situation: reacting to someone's postEngage with:- they claim local models can't do agentic coding- their one run looped for an hourApproach: one contrarian line, backed by one fact from own experienceForm: length: one_liner; opener: numberAlways: one real example from own workVoice: casual, concrete, no emojisNever: politics, competitor names
- Run 3 Plain prompt
That loop sounds frustrating. Still, one run is a small sample. Local models are getting better at agentic work, and looping is often a setup problem.
With Unsamebehind_scenes
- length medium
- opener question
Why did our local model loop for an hour too? Same failing test, same output, again and again. We had pinned the context at 4k. Raised it to 32k and the run finished in 14 minutes.
How this play was written
- hook: the surprising number first
- setup: what we tried
- turn: what broke
- payoff: the fix, one line
Situation: reacting to someone's postEngage with:- they claim local models can't do agentic coding- their one run looped for an hourApproach:1. hook: the surprising number first2. setup: what we tried3. turn: what broke4. payoff: the fix, one lineForm: length: medium; opener: questionAlways: one real example from own workVoice: casual, concrete, no emojisNever: politics, competitor names
04 Your playbook
Your strategy. Your approaches. Our dice.
Seed it from one sentence, edit it like a file. Strategy is fixed, situations and ways are yours, and Unsame varies only the choice.
version: 7 # server-assigned, increments on every change
goal: indie_dev_x
goal_text: "grow the account as an indie dev: one post a day, reply to mentions"
language: en
voice: "casual, concrete, no emojis"
always: ["one real example from own work"]
never: ["politics", "competitor names"] Strategy
Copied verbatim into every protocol. Never varied, never learned, never retired.
situations:
- id: world_event
label: "reacting to a news event"
when: "the input is about a news event relevant to dev tools or AI"
- id: someone_post
label: "reacting to someone's post"
when: "the input is another person's post we may react to"
- id: scheduled
label: "a planned post"
when: "no external trigger; a planned post"
default: true Situations
Plain-language conditions tested against each input. Several can be active at once; exactly one is the default.
ways:
- id: hot_take
fits: [trend, world_event]
how: "one contrarian line, backed by one fact from own experience"
- id: build_on
fits: [someone_post]
how: "quote their point, add the missing angle, end with a question back"
- id: behind_scenes
fits: [scheduled, trend]
how:
- "hook: the surprising number first"
- "setup: what we tried"
- "turn: what broke"
- "payoff: the fix, one line" Ways
Your approaches. A way fits the situations you list; steps give scripts and long forms an order.
axes:
length: [one_liner, short, medium]
opener: [statement, question, number]
variety:
recent_window: 10 # draws per scope remembered for anti-repeat
entropy_floor: 0.3 # minimum normalized entropy of the way distribution Axes and variety
Form values chosen independently of the way. The only thing Unsame varies is the choice, never your wording.
learning:
mode: propose # off | propose | auto Learning
off, propose or auto. Proposals come from inputs the playbook missed; your nodes are never touched.
05 Learning
It learns. You stay in control.
When an input does not fit anything you wrote, the learner proposes a new situation or way from what your inputs actually look like. Your nodes are never touched.
learning: off
Nothing is learned and no inputs are kept. The playbook is exactly what you wrote.
learning: propose
Inputs the playbook handled badly are clustered into proposals. You accept, edit or reject each one.
learning: auto
Proposals enter as trials on a small share of draws and are promoted or retired by outcomes.
- Pin a way to exempt it from anti-repeat. Ban one and it is never drawn.
- Voice, always and never are never varied, never learned, never retired.
- Every change is a numbered version you can read and export.
06 Plug in
Plug in anywhere.
MCP for Claude Desktop, Claude Code, ChatGPT, Cursor and any host. One HTTP call for pipelines, with an OpenAPI schema to generate a client in any language. Any model, and no model keys shared with us.
Two servers: the engine (scope advise) calls advise before every draft; the author (scope author) edits the playbook.
Add both servers.
claude mcp add --transport http unsame-engine http://localhost:2980/mcp/engine claude mcp add --transport http unsame-author http://localhost:2980/mcp/authorStart Claude Code, run /mcp, pick each server and choose Authenticate. Your browser opens the sign-in; OAuth is discovered automatically.
07 Fields
Anywhere a job repeats.
The engine is domain-free; the playbook is what changes. It fits where the job repeats, variety matters and the house strategy is fixed.
Social posts and replies
Founders, creators, social managers, agencies
Daily posts converge on one template; replies to mentions sound canned; trend reactions arrive late or tone-deaf.
Situations: event, trend, someone’s post, scheduled. Ways: stances and reply moves.
Newsletters and blogs
Writers, marketers, indie hackers
Every issue opens the same way, with the same structure and the same AI voice.
Situations: launch, lesson, roundup, reaction. Ways: openings and structures.
Video and podcast scripts
YouTubers, short-form creators, studios
Hooks repeat, the beat order never changes, scripts feel templated.
Ways as beat lists: hook, setup, turn, payoff.
Cold outreach and sales replies
SDRs, founders, agencies
Sequences are detectably identical; replies ignore what the prospect said.
Situations: objection types and intent signals. Facts: prospect research.
Support and community replies
Support teams, community managers, support agents
Answers are correct but robotic, the same phrasing for everyone, missing the actual complaint.
Situations: complaint, how-to, praise, bug. Facts: account data.
Ad, landing and product copy
Marketers, growth teams
Variants are one idea reworded, so A/B tests compare near-duplicates.
Ways as angles: fear, proof, contrast, story. Axes: length, CTA form.
Agentic systems
Developers of posting bots, support agents, content pipelines
The agent loops on one strategy, "be creative" does not help, and it has no memory of what it already tried.
Any of the above, called over MCP or one HTTP request.
Education and training
Course creators, L&D
Explanations reuse the same analogy and structure every lesson.
Ways: analogy, worked example, contrast, misconception first.
Games and interactive fiction
Narrative designers
Quests, NPC lines and events repeat in shape.
Situations: player state. Ways: scene moves.
Developer-facing writing
DevRel, maintainers
Changelogs, release notes and review comments land in one monotone.
Ways: framing per change type.
Weak fit, not targeted: one-off documents, legal and compliance text, anything where variety is a defect.
08 Objections
Fair questions.
Isn’t this just a prompt library?
A library hands you the same prompt every time. Unsame reads the input, detects the situation, extracts what to engage with, and picks a different fitting approach each time, with memory of what it already used.
Why not just raise the temperature?
Temperature adds noise inside one approach. It does not change the approach. Alignment training narrows models to a few typical answers, and a model asked to pick randomly cannot supply the entropy, so the choice has to happen outside it.
Will it go off-brand?
Voice, always and never are copied verbatim into every protocol and are never varied, learned away or retired. Unsame varies only which of your approaches is used.
Do I have to write the playbook?
No. Seed it from one sentence, edit anything like a file, and let the learner propose the rest from what your inputs actually look like. You accept or reject every proposal unless you turn on auto.
Which model do I use?
Yours, any model. Unsame never sees your model key and never writes your text. It returns a protocol; your model writes the post, reply or script.
Do you promise more engagement?
No. We make mechanism claims only: a different approach each time, grounded in the input, in a fixed voice. You can check each of them in the live demo above. Outcome reporting lets the engine weight what works for you, and we will not quote lift numbers until they are measured on real tenants.
09 Pricing
One unit: a credit is a draw.
A free plan with monthly credits and no card. Paid plans add included credits, overage under a spend cap you set, and more of what the engine lets you do. Protocol quality is identical on every plan.
1 credit = 1 draw. advise with k=3 is 3 credits.
Stateless, multi-tenant, OAuth 2.1.
Your inputs are retained only when learning is on. Export and delete anytime. Unsame never sees your model key.