↑ resurface

Open Source · NOV 02, 2026 · 7 MIN READ

Skills That Give Thinking Back: gnose, samesame, and notjunior


Most tools built on top of language models are aimed at output: more of it, faster, with less of you in the loop. inthepond-skills is a small set of open-source Skills that point the other way. They exist to give creativity and thinking back to the person using the model — by making the model's own reading visible, by declining to draw conclusions on your behalf, and by leaving the differences for you to find. There are three so far, each a folder with a SKILL.md entry point, so they work in Claude Code and in any agent that reads SKILL.md folders.

gnose: you say something, the model's default reading appears, you correct it in plain language, and the prompt is reshaped
fig. 01 — gnose: the default reading, corrected in plain language, then reshaped.
View inthepond-skills on GitHub ↗
MIT Licensed — installs as a Claude Code plugin marketplace

gnose: See How the Model Reads Your Words

A model is very good at supplying a default. The trouble is you rarely see which default it picked. Gnose is an introspection layer between you and the model: it shows the default reading of what you wrote, the shape of each loaded concept, and — for long prompts — which parts the model is likely to weight or ignore. You correct that reading in your own language, and when you say "reshape", Gnose restates your prompt so the default reading matches what you actually meant.

ModeInputOutput
shortOne utteranceWhat it heard, the shape of each concept (with semantic neighbours), what it didn't hear
long_predictA long prompt, SKILL, or system promptWhich parts would be weighed high / medium / low / ignored, and where the reading may diverge
long_diagnoseA prompt plus an output you're unhappy withEvidence-based weights and divergences, most impactful first

What it deliberately is not: not a prompt optimizer, not a linter, not a scorer. It never calls a prompt "bad", produces no percentages (a number would be fabricated precision), and reshapes as a translator — a six-word utterance does not come back as a sixty-word engineered prompt. If it finds no genuine divergence, it says so and stops. Every report ends with the same line: No conclusion is offered. The differences, if any, are yours to find.

samesame: Give the Agent Its Own Eyes for a UI Port

Same same, but different. Samesame was born from a familiar story: a developer ports an AngularJS app to modern Angular, everything works, and the UI looks utterly different. Describing two hundred visual defects to a coding agent one at a time costs more than porting by hand, so the agent gets abandoned. Samesame removes the human from the find → describe → verify loop: it builds a local ground-truth harness (screenshots plus computed styles over both versions), writes one itemized plan you approve, then converges increment by increment.

ModeYou WantVerified By
matchThe new stack to look like the old one (ports, upgrades)Pixel diffs and computed-style deltas, converged cause by cause
overhaulA new look that loses no functionality (redesigns)A coverage contract — every route, control, form, and field mapped; removals need your approval

No code changes before the plan is approved. Every increment is checkpointed in a state.json, so "continue samesame" resumes after an hour or a month. Nothing leaves your machine: Playwright and pixelmatch run as project-isolated dev dependencies, with a hand-captured-screenshots fallback for locked-down machines.

notjunior: Know Why, Not Just What

Coding agents now write much of the code junior developers ship, and code nobody understands becomes the incident nobody can resolve. Notjunior is a senior engineer sitting beside you with your codebase open. It explains your project through eight lenses — lifecycle, architecture, stack, trace, incident, concepts, own, and rehearse — and then asks you to explain it back. Every claim about your project is cited, or labelled documented, inferred, or unknown, and the unknowns become your questions for the team. It rehearses before and after interviews, and declines to answer during a live one.

Notjunior also ships a Claude Code mod, because the moment that matters most — code Claude wrote, about to ship unexplained — is exactly when nobody asks. After a turn in which Claude changed files, a quiet band offers "Check I understand it". When Claude is about to git commit, git push, or gh pr create with changes still unexplained, a shipCheck setting decides: nudge (the default), hold, or off. The mod makes no network or model calls and writes nothing; it needs Claude Code 2.1.287 or later.

Install

bash
# Claude Code — add the marketplace, then install by name
/plugin marketplace add inthepond/inthepond-skills
/plugin install gnose@inthepond-skills
/plugin install samesame@inthepond-skills
/plugin install notjunior@inthepond-skills

# Any agent that reads SKILL.md folders (Cursor, Codex, and others)
npx skills add inthepond/inthepond-skills --skill gnose

Why We Built Them

We build agent systems for a living, and the pattern we keep seeing is the person quietly leaving the loop — accepting the model's reading of a prompt they never saw, describing UI bugs until they give up, shipping diffs they could not explain at 3am. These skills are small interventions against that. The model supplies the default; the skills make sure the default stays yours to accept, correct, or refuse.

View inthepond-skills on GitHub ↗
MIT — issues and PRs welcome

this note evidences a capability — AI-Native Solutions ↓