/pick-my-harness
Asks a few plain questions about the work, then names the one desktop app to run local AI models in, from LM Studio, Goose, Open WebUI, AnythingLLM, OpenWork or Odysseus. Use when the user asks "which app should I use for local AI", "LM Studio or Ollama", "what is the best local
$ npx -y skills add naveedharri/benai-skills --skill pick-my-harness --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/pick-my-harness
Context preview
The summary Claude sees to decide when to auto-load this skill.
Asks a few plain questions about the work, then names the one desktop app to run local AI models in, from LM Studio, Goose, Open WebUI, AnythingLLM, OpenWork or Odysseus. Use when the user asks "which app should I use for local AI", "LM Studio or Ollama", "what is the best local
SKILL.md
pick-my-harness.SKILL.mdname: pick-my-harness
description: Asks a few plain questions about the work, then names the one desktop app to run local AI models in, from LM Studio, Goose, Open WebUI, AnythingLLM, OpenWork or Odysseus. Use when the user asks "which app should I use for local AI", "LM Studio or Ollama", "what is the best local AI interface", "do I need Open WebUI", "Open WebUI or Odysseus", "which one supports MCP", "which supports skills", "pick a harness for me", or is comparing local AI desktop apps. Names one tool and states what it cannot do. Never installs anything. Requires Claude Code with shell access on the user's own machine; refuses to run in a sandbox.
Pick My Harness
Turns "which app should I use" into one named recommendation. A model is only half a local AI setup; this picks the app that gives it skills, MCP servers and your files.
Before you start
Run the check in `references/environment-check.md` first. These skills need a shell on the user's own machine. If the environment is a sandbox or container, stop and tell the user to run this in Claude Code on the computer they want to set up. Do not report detected specs from a sandbox: wrong specs are worse than none.
Steps
Track progress:
Task Progress:
- [ ] 1. Ask the four questions
- [ ] 2. Match against the matrix
- [ ] 3. Name one tool and its limits
- [ ] 4. Render the HTML report
1. Ask the four questions
Ask all four at once, as a short numbered list, in plain language. Never ask about VRAM here.
1. What is the main job: chatting with documents, writing code, general chat, or running automated tasks? 2. Is this just for you, or for a team who all need access? 3. How comfortable are you editing a config file if it unlocks more control? (happy / rather not) 4. Does everything need to stay on your machine with no cloud fallback?
If the user already answered some in their request, do not re-ask. Use what they gave.
2. Match against the matrix
Apply the decision rules in `references/harness-matrix.md`. That file holds the six tools, their real capability flags, and the tie-breakers.
3. Name one tool and its limits
Output exactly one recommendation, never a shortlist. Give: the tool, one sentence on why it won for their answers, its three capability flags, and one line on what it cannot do. Then give the single command or download link to get it.
If their answers make a second tool genuinely necessary alongside the first (most commonly LM Studio underneath something else), say so explicitly as a pair rather than presenting a choice.
4. Render the HTML report
Deliver the recommendation as a rendered HTML page, not as chat text. Build it from `references/report-template.md` using the `pick-my-harness` layout in section 4, save it to the Desktop, and open it. Keep the chat reply to two lines plus the file path.
Human checkpoints
Stop after step 3 and ask whether to proceed with installing it. Do not install anything from this skill. If they say yes, route to `/local-ai-setup`, or to `/install-openwebui` when Open WebUI is the pick. Open WebUI and Odysseus are the two browser harnesses and `/local-ai-setup` asks which one before installing, so route there rather than deciding for them.
Self-improvement
This skill is never finished. Improve it as you use it.
- Results are delivered as HTML pages. When the layout in `references/report-template.md` proves unclear for a real result, fix the layout there rather than working around it in chat.
- When a tool ships or loses a capability, update the flags table in `references/harness-matrix.md` and change its date line.
- When the user disagrees with a recommendation and explains why, add that as a tie-breaker rule in the matrix file.
- When a question turns out not to change the recommendation, delete it. Four is already the maximum.
- Keep this small: when you add something, cut anything that no longer changes behaviour.
Routing
| Step | Reference | |------|-----------| | before all steps | `references/environment-check.md` | | 2 | `references/harness-matrix.md` | | 4 | `references/report-template.md` |
Read more
name: pick-my-harness description: Asks a few plain questions about the work, then names the one desktop app to run local AI models in, from LM Studio, Goose, Open WebUI, AnythingLLM, OpenWork or Odysseus. Use when the user asks "which app should I use for local AI", "LM Studio or Ollama", "what is the best local AI interface", "do I need Open WebUI", "Open WebUI or Odysseus", "which one supports MCP", "which supports skills", "pick a harness for me", or is comparing local AI desktop apps. Names one tool and states what it cannot do. Never installs anything. Requires Claude Code with shell access on the user's own machine; refuses to run in a sandbox.
Pick My Harness
Turns "which app should I use" into one named recommendation. A model is only half a local AI setup; this picks the app that gives it skills, MCP servers and your files.
Before you start
Run the check in `references/environment-check.md` first. These skills need a shell on the user's own machine. If the environment is a sandbox or container, stop and tell the user to run this in Claude Code on the computer they want to set up. Do not report detected specs from a sandbox: wrong specs are worse than none.
Steps
Track progress:
Task Progress: - [ ] 1. Ask the four questions - [ ] 2. Match against the matrix - [ ] 3. Name one tool and its limits - [ ] 4. Render the HTML report
1. Ask the four questions
Ask all four at once, as a short numbered list, in plain language. Never ask about VRAM here.
1. What is the main job: chatting with documents, writing code, general chat, or running automated tasks? 2. Is this just for you, or for a team who all need access? 3. How comfortable are you editing a config file if it unlocks more control? (happy / rather not) 4. Does everything need to stay on your machine with no cloud fallback?
If the user already answered some in their request, do not re-ask. Use what they gave.
2. Match against the matrix
Apply the decision rules in `references/harness-matrix.md`. That file holds the six tools, their real capability flags, and the tie-breakers.
3. Name one tool and its limits
Output exactly one recommendation, never a shortlist. Give: the tool, one sentence on why it won for their answers, its three capability flags, and one line on what it cannot do. Then give the single command or download link to get it.
If their answers make a second tool genuinely necessary alongside the first (most commonly LM Studio underneath something else), say so explicitly as a pair rather than presenting a choice.
4. Render the HTML report
Deliver the recommendation as a rendered HTML page, not as chat text. Build it from `references/report-template.md` using the `pick-my-harness` layout in section 4, save it to the Desktop, and open it. Keep the chat reply to two lines plus the file path.
Human checkpoints
Stop after step 3 and ask whether to proceed with installing it. Do not install anything from this skill. If they say yes, route to `/local-ai-setup`, or to `/install-openwebui` when Open WebUI is the pick. Open WebUI and Odysseus are the two browser harnesses and `/local-ai-setup` asks which one before installing, so route there rather than deciding for them.
Self-improvement
This skill is never finished. Improve it as you use it.
- Results are delivered as HTML pages. When the layout in `references/report-template.md` proves unclear for a real result, fix the layout there rather than working around it in chat.
- When a tool ships or loses a capability, update the flags table in `references/harness-matrix.md` and change its date line.
- When the user disagrees with a recommendation and explains why, add that as a tie-breaker rule in the matrix file.
- When a question turns out not to change the recommendation, delete it. Four is already the maximum.
- Keep this small: when you add something, cut anything that no longer changes behaviour.
Routing
| Step | Reference | |------|-----------| | before all steps | `references/environment-check.md` | | 2 | `references/harness-matrix.md` | | 4 | `references/report-template.md` |
Expert automation skills for Claude Code, organized by department.
Repo: naveedharri/benai-skills
Other skills on benai-skills.
- /ads-audit
Full multi-platform paid advertising audit with parallel subagent delegation. Analyzes Google Ads, Meta Ads, LinkedIn Ads, TikTok Ads, and Microsoft Ads accounts. Generates health score per platform and aggregate score. Use when user says "audit", "full ad check", "analyze my
Open skill - /ads-budget
Budget allocation and bidding strategy review across all ad platforms. Evaluates spend distribution, bidding strategy appropriateness, scaling readiness, and identifies campaigns to kill or scale. Uses 70/20/10 rule, 3x Kill Rule, and 20% scaling rule. Use when user says "budget
Open skill - /ads-competitor
Competitor ad intelligence analysis across Google, Meta, LinkedIn, TikTok, and Microsoft. Analyzes competitor ad copy, creative strategy, keyword targeting, estimated spend, and identifies competitive gaps and opportunities. Use when user says "competitor ads", "ad spy",
Open skill - /ads-creative
Cross-platform creative quality audit covering ad copy, video, image, and format diversity across all platforms. Detects creative fatigue, evaluates platform-native compliance, and provides production priorities. Collects brand context and creates branding.md if missing. Uses
Open skill - /ads-google
Google Ads deep analysis covering Search, Performance Max, Display, YouTube, and Demand Gen campaigns. Evaluates 74 checks across conversion tracking, wasted spend, account structure, keywords, ads, and settings. Use when user says "Google Ads", "Google PPC", "search ads",
Open skill - /ads-landing
Landing page quality assessment for paid advertising campaigns. Evaluates message match, page speed, mobile experience, trust signals, form optimization, and conversion rate potential. Use when user says "landing page", "post-click experience", "landing page audit", "conversion
Open skill

