concretize
Replace jargon and imported metaphors in code and prose with concrete, domain-fitting terms a reader understands without translation.
Skill by TomerAberbach
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tomeraberbach-concretize
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/concretize
What's inside
- Skill name
concretize- Description
- Replace jargon and imported metaphors in code and prose with concrete, domain-fitting terms a reader understands without translation.
- License
- MIT
- Instructions
- 102 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
Replace jargon and imported metaphors in the target with concrete language: name
what is there, keep the terms the domain itself uses, and drop borrowed figures
of speech that the reader must translate back into meaning.
# Target
```!
jj show --git
```
Arguments: $ARGUMENTS
Concretize the target named in the arguments if given. Otherwise concretize the
code or prose changed in the current commit shown above. If there are no
arguments and the commit has no changes, ask the user what to concretize and
stop.
# Principles
- Name the thing, not a picture of it. A metaphor borrows a word from another
domain to suggest meaning, and the reader must translate the picture back.
Replace it with the plain term for the real thing: a "seam" is a boundary, a
"load-bearing" call is a required one
- The domain's own words stay. A term the field uses in its specs and docs is
not jargon to strip but the concrete name. "Socket", "stream", "deadlock",
"idempotent", "quorum" belong even though each began as a metaphor. The test:
would a practitioner write this word in a precise spec, or only in a blog
post? Keep the first kind; cut the second
- Plain over fancy, even within the domain. When two correct terms fit, pick the
one a newcomer to the team understands. Don't reach for the rarer or grander
word when it adds no precision. A complex word is worth it only when it names
a distinction the simpler word would lose
- Concretize, don't change meaning. Replacing a word must preserve the claim. If
a metaphor makes a real distinction no plain term captures, keep it and say
why rather than flatten the meaning
These principles are also the test for a replacement: make one only when the
result is more concrete AND says the same thing. They aren't exhaustive. Reason
from first principles when none fits cleanly.
# Workflow
1. Read the whole target once so you understand what it refers to before
renaming anything. For code, note how to run its tests or typecheck
2. Find the candidates: jargon, imported metaphors, and needlessly fancy terms
(see "What to replace"). Most words are fine
3. For each candidate, decide with the principles: is it the domain's own term
(keep), or borrowed decoration (replace with the concrete name)? When unsure
whether a word is domain vocabulary, check how the surrounding code and docs
use it before cutting
4. If nothing should change, tell the user and stop. Don't manufacture edits
5. Apply the changes:
- In prose and comments, edit the wording in place
- For an identifier built on a metaphor, rename it. Treat this as a
behavior-preserving rename: update every reference, and never change a name
that callers outside the target depend on without restoring the public name
6. If you renamed any code, run the covering tests or a typecheck to confirm
behavior is unchanged. Pure prose edits need no test run
7. Report what changed: each term replaced and the concrete word it became, and
any metaphor you deliberately kept because it is the domain's term or makes a
distinction no plain word does
# What to replace
- Imported metaphors that decorate rather than name. "seam", "load-bearing",
"surface area", "blast radius", "north star", "first-class citizen", "the
crux", "in the weeds", "table stakes", "move the needle", "boil the ocean",
"heavy lift". Each names something concrete: a boundary, a required
dependency, the exposed API, the scope of impact, the goal, fully supported,
the key part
- Verbs used as filler. "leverage" is "use"; "surface" (as a verb) is "show" or
"report"; "unpack" is "explain"
- Fancy words that add no precision. "utilize" is "use", "facilitate" is "help",
"myriad" is "many". Prefer the short, common word unless the long one names a
real distinction
- Vague abstractions standing in for a concrete referent. "handle the data", "do
the processing", "manage the state" name nothing. Say what the code does to
what. This often points at a rename or extraction. Use `/stratify` for those
# What to keep
- Domain terms that began as metaphors but are now the field's precise
vocabulary: "socket", "stream", "thread", "port", "tree", "branch",
"deadlock", "handshake", "garbage collection". These are concrete to anyone in
the domain
- A metaphor that makes a distinction no plain term captures. If replacing it
would lose real meaning, keep it. Note why in your report
- Terms of art the project already uses consistently, even if you'd pick
different words. Concretizing should not fork the project's vocabulary. If a
whole vocabulary needs aligning, use `/reconcile-language`
- Anything you don't fully understand. Investigate or leave it. Don't guess a
word away and lose its meaning
# Fixing mistakes
- A test or typecheck breaks after a rename: a reference was missed or the name
is used outside the target. Find the other references or restore the original
name
- A replacement reads less clearly than the metaphor: the metaphor said
something the plain word doesn't. Put it back and note it as a deliberate keepFrom TomerAberbach/claude-config, MIT.
More from TomerAberbach/claude-config
- 0.561score
encapsulate
TomerAberbach
Find interface boundaries that leak their implementation and close the leaks, so each module hides one coherent decision behind an interface stated in its…
SkillAFreshness: AClaude Code +9 - 0.561score
distill
TomerAberbach
Distill a body of data into a small artifact that keeps what matters: a research document, code that handles the data, a skill, a schema.
SkillAFreshness: AClaude Code +9 - 0.561score
allay
TomerAberbach
Settle an unnamed unease about a piece of code by naming the design defect behind it or ruling the unease unfounded, then handing off to the skill that fixes…
SkillAFreshness: AClaude Code +9 - 0.561score
homogenize
TomerAberbach
Make a set of things (code, prose, config, docs) consistent along a dimension the user names, by picking a canonical form and conforming every member to it.
SkillAFreshness: AClaude Code +9 - 0.557score
distill-transcripts
TomerAberbach
Distill a project's transcripts into proposals for eliminating repetitive work: skills, scripts, hooks, rules, or fixes to whatever causes the repetition.
SkillAFreshness: AClaude Code +9 - 0.557score
issue
TomerAberbach
Write, fill in, or update a GitHub issue, including an upstream bug report with a minimal reproduction, and judge replies to it.
SkillAFreshness: AClaude Code +9 - 0.557score
architecture-review
TomerAberbach
Review a codebase for structural defects, propose ranked restructurings that make it simpler, and apply the ones the user approves.
SkillAFreshness: AClaude Code +9 - 0.551score
jj-describe
TomerAberbach
Write a description for the current `jj` commit.
SkillAFreshness: AClaude Code +9 - 0.523score
authoring-tests
TomerAberbach
Use when writing, reviewing, or modifying any test files, or when asked to add test coverage.
SkillBFreshness: BClaude Code +9 - 0.518score
audit
TomerAberbach
Audit something against a standard, check every item in scope, and report the findings and the coverage behind them.
SkillBFreshness: BClaude Code +9 - 0.518score
create-skill
TomerAberbach
Create a new Claude Code skill following the conventions of existing skills.
SkillBFreshness: BClaude Code +9 - 0.518score
editorialize
TomerAberbach
Do an editorial review of a post or article and report findings ordered by importance.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 10, 2026 (19 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/TomerAberbach/claude-config
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from TomerAberbach
- 0.561score
encapsulate
TomerAberbach
Find interface boundaries that leak their implementation and close the leaks, so each module hides one coherent decision behind an interface stated in its…
SkillAFreshness: AClaude Code +9 - 0.561score
distill
TomerAberbach
Distill a body of data into a small artifact that keeps what matters: a research document, code that handles the data, a skill, a schema.
SkillAFreshness: AClaude Code +9 - 0.561score
homogenize
TomerAberbach
Make a set of things (code, prose, config, docs) consistent along a dimension the user names, by picking a canonical form and conforming every member to it.
SkillAFreshness: AClaude Code +9 - 0.561score
allay
TomerAberbach
Settle an unnamed unease about a piece of code by naming the design defect behind it or ruling the unease unfounded, then handing off to the skill that fixes…
SkillAFreshness: AClaude Code +9 - 0.557score
distill-transcripts
TomerAberbach
Distill a project's transcripts into proposals for eliminating repetitive work: skills, scripts, hooks, rules, or fixes to whatever causes the repetition.
SkillAFreshness: AClaude Code +9 - 0.557score
issue
TomerAberbach
Write, fill in, or update a GitHub issue, including an upstream bug report with a minimal reproduction, and judge replies to it.
SkillAFreshness: AClaude Code +9
Cite this page
concretize skill. Agent Mart. https://agentmart.dev/skills/tomeraberbach-concretize (last updated 2026-10-24)