compare-tools
Use whenever the user needs to *choose* a technology, library or tool for this project: "which library should I use", "help me pick a tool", "what's the best…
Skill by O-Marsters-1997
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/o-marsters-1997-compare-tools
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
Use cases: documents
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/compare-tools
What's inside
- Skill name
compare-tools- Description
- Use whenever the user needs to *choose* a technology, library or tool for this project: "which library should I use", "help me pick a tool", "what's the best X for this", "compare these technologies", "should I use X or Y", "what are my options for Z". Trigger even when it isn't phrased as a comparison. Explores the codebase, aligns on priorities (community support, maintenance, lock-in, extensibility), researches the market, and writes a report to ./ideas/ with every viable option, doc links, a comparison table, and a ranked list scored out of 100 against the user's own priorities.
- License
- MIT
- Instructions
- 171 lines in SKILL.md · view on GitHub
Files (5)
- SKILL.md
- evals.json · evals/
- priority-catalogue.md · references/
- report-template.md · references/
- rubric.md · references/
SKILL.md (first lines)
# Compare Tools
Help the user pick the right technology for a specific use case. The output is a grounded,
auditable recommendation — not a generic listicle, but a score derived from *this codebase's*
shape and *this user's* stated priorities.
## Operating principles
- **Codebase first.** Technology decisions are context-dependent. Understand what's already here
before evaluating what might be added.
- **Priorities are the rubric.** Don't rank tools on your own taste. Derive the ranking from the
user's stated priorities weighted against observed options. Show the arithmetic.
- **Push back when it matters.** If a stated priority contradicts the observed codebase (e.g.
"avoid vendor lock-in" in a repo already deep in AWS), name that tension and ask them to
reconcile. Don't push back reflexively — only when the conflict is real and material.
- **Research, don't invent.** Don't claim a tool has a feature unless you can verify it. If
unsure, say so or omit the claim.
- **One question at a time.** Use `AskUserQuestion` for every clarification. Never batch
questions — each answer may change what you ask next.
---
## Phase 1 — Alignment
### 1a. Explore the codebase
Read the following in order, stopping when you have enough to write a one-paragraph
characterisation:
1. `README.md` and `CLAUDE.md` (or `CLAUDE.local.md`) — project intent and conventions
2. Top-level `docs/` if it exists
3. Dependency manifests — whichever of these exist:
- `package.json` / `package-lock.json` (Node/TS)
- `pyproject.toml` / `requirements.txt` (Python)
- `go.mod` (Go)
- `Cargo.toml` (Rust)
- `Gemfile` (Ruby)
4. Recent git log: `git log --oneline -20`
Characterise the codebase in one paragraph: *type of project, primary language/runtime,
what's already installed, who it's for, what it does.* Surface this so the user can correct
a wrong framing before the research phase.
### 1b. Confirm the use case
State your understanding of what the user wants to choose a tool for and ask them to confirm
or correct it. If the use case is under-specified — "I need a database", "pick a queue",
"something for caching" — invoke the `grilling` skill to resolve the decision tree:
scale, read/write mix, latency, hosting constraints, team familiarity, existing
infrastructure, etc. Skip `grilling` if the use case is already crisp.
### 1c. Elicit priorities
Present a short list of common high-level priorities from `references/priority-catalogue.md`
and ask the user to pick 3–5 that matter most to them, then rank them. Use `AskUserQuestion`
— one question at a time. Rankings become the rubric weights in Phase 3.
Good default priorities to offer:
- Community support
- Maintenance activity
- Avoiding vendor lock-in
- Extensibility / composability
- Ecosystem fit (language + framework)
- License
- Performance
- Learning curve
- Cost
- Operational burden
### 1d. Sensible push-back
After the priorities are in, check them against what you observed in Phase 1a. If a stated
priority contradicts the codebase:
- **Real conflict**: "You said 'avoid vendor lock-in', but the repo already uses AWS Secrets
Manager, CloudWatch, and S3. Adding a vendor-neutral queue would be swimming upstream — is
that still the goal, or should we score SQS more favorably?" Ask via `AskUserQuestion`.
- **No conflict**: say nothing. Don't manufacture friction.
---
## Phase 2 — Research
Use `WebSearch` to survey the market. Aim for **4–7 candidates** covering:
- The mature/default choice (the boring, safe option)
- 1–2 newer or popular challengers
- At least one left-field option that could win on the user's specific priorities
- Any option already in the dependency manifests (it may already be installed)
For each candidate, record:
| Field | What to capture |
|-------|----------------|
| One-liner | What it is in one sentence |
| Strengths | Primary advantages, typical use cases |
| Weaknesses | Known pain points, limitations |
| Maintenance | Last release date, release cadence, # of active maintainers |
| License | MIT / Apache / GPL / commercial / etc. |
| Doc URL | Canonical documentation URL |
Don't invent features or claims. If you can't verify something, note "unverified" or omit it.
---
## Phase 3 — Output
### Resolve the output path
```bash
mkdir -p ./ideas
DATE=$(date -u +%Y-%m-%d)
SLUG="<short-kebab-case-topic>" # e.g. "job-queue", "vector-db", "state-manager"
BASE="./ideas/${DATE}-tech-${SLUG}"
OUT="${BASE}.md"; N=2
while [ -e "$OUT" ]; do OUT="${BASE}-${N}.md"; N=$((N+1)); done
echo "$OUT"
```From O-Marsters-1997/my-claude-code, MIT.
More from O-Marsters-1997/my-claude-code
- 0.570score
frontend-best-practices
O-Marsters-1997
Frontend engineering standards — component architecture, state, async, forms, accessibility, performance and TypeScript discipline.
SkillAFreshness: AClaude Code +9 - 0.570score
go-testing
O-Marsters-1997
How Go tests are written in these repos: assertions, tables, test doubles, helpers, async waits, golden files, fuzzing, benchmarks, and integration tests…
SkillAFreshness: AClaude Code +9 - 0.570score
go-idiomatic
O-Marsters-1997
Go engineering standards for this repo — package layout, error handling, logging, testing, concurrency and design patterns.
SkillAFreshness: AClaude Code +9 - 0.570score
htmx-go-templates
O-Marsters-1997
htmx on Go html/template: how a handler picks page, fragment or redirect, how templates carry hx-* attributes, where client JS lives, and how errors and…
SkillAFreshness: AClaude Code +9 - 0.566score
postgres-best-practices
O-Marsters-1997
Postgres schema and query rules, independent of the calling language.
SkillAFreshness: AClaude Code +9 - 0.565score
clean-comments
O-Marsters-1997
Remove comments that fail ~/.claude/rules/comments.md from source files.
SkillAFreshness: AClaude Code +9 - 0.565score
record-decision
O-Marsters-1997
Capture a design or architecture decision as an ADR in docs/adr/ and update CONTEXT.md if terminology is affected.
SkillAFreshness: AClaude Code +9 - 0.539score
code-review
O-Marsters-1997
Use when the user wants to review a branch, a PR, work-in-progress changes, or asks to "review since X".
SkillAFreshness: AClaude Code +9 - 0.539score
tdd
O-Marsters-1997
Use when implementing any feature or fixing any bug.
SkillAFreshness: AClaude Code +9 - 0.539score
testing-policy-creator
O-Marsters-1997
Writes, or brings up to date, a repo's own testing-policy skill at .claude/skills/testing-policy/SKILL.md: which code gets which kind of test, with which…
SkillAFreshness: AClaude Code +9 - 0.539score
codebase-design
O-Marsters-1997
Shared vocabulary for designing deep modules.
SkillAFreshness: AClaude Code +9 - 0.529score
architecture-review
O-Marsters-1997
Use when the user wants an architecture review, a design health check, a staff-level read on architectural risk, or an assessment of coupling and cohesion…
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 10
- Last commit (this folder)
- Aug 22, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from O-Marsters-1997
- 0.570score
htmx-go-templates
O-Marsters-1997
htmx on Go html/template: how a handler picks page, fragment or redirect, how templates carry hx-* attributes, where client JS lives, and how errors and…
SkillAFreshness: AClaude Code +9 - 0.570score
go-testing
O-Marsters-1997
How Go tests are written in these repos: assertions, tables, test doubles, helpers, async waits, golden files, fuzzing, benchmarks, and integration tests…
SkillAFreshness: AClaude Code +9 - 0.570score
frontend-best-practices
O-Marsters-1997
Frontend engineering standards — component architecture, state, async, forms, accessibility, performance and TypeScript discipline.
SkillAFreshness: AClaude Code +9 - 0.570score
go-idiomatic
O-Marsters-1997
Go engineering standards for this repo — package layout, error handling, logging, testing, concurrency and design patterns.
SkillAFreshness: AClaude Code +9 - 0.566score
postgres-best-practices
O-Marsters-1997
Postgres schema and query rules, independent of the calling language.
SkillAFreshness: AClaude Code +9 - 0.565score
clean-comments
O-Marsters-1997
Remove comments that fail ~/.claude/rules/comments.md from source files.
SkillAFreshness: AClaude Code +9
Cite this page
compare-tools skill. Agent Mart. https://agentmart.dev/skills/o-marsters-1997-compare-tools (last updated 2026-10-24)