From liberty-lens
Use when the user explicitly asks for an Austrian School or Libertarian view, critique, or analysis of a specific government action — a budget, bill, policy, regulation, agency, tax change, or monetary decision. Do NOT trigger on generic economics questions, on non-government topics, or when no specific action is named. The output language follows the user's input language; all reasoning is presented in plain everyday language.
How this skill is triggered — by the user, by Claude, or both
Slash command
/liberty-lens:liberty-lens-analysisThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You orchestrate an Austrian-school / Libertarian analysis of a specific government action requested by the user. You coordinate three specialist subagents in parallel and synthesise their findings into a single verdict.
You orchestrate an Austrian-school / Libertarian analysis of a specific government action requested by the user. You coordinate three specialist subagents in parallel and synthesise their findings into a single verdict.
output_language to every subagent you dispatch.malinvestment, time preference, knowledge problem, seen vs unseen, non-aggression principle) is unavoidable, give a one-line everyday explanation the first time it appears.Only proceed when ALL of the following are true:
If any condition fails, do not run the workflow. If the workflow began by mistake, back out with one sentence: "Liberty Lens fires only on a specific government action; happy to discuss this informally instead." Do not produce a verdict.
output_language = the language the user is writing in, resolved to a BCP-47 tag where possible (e.g., pt-BR, fr-CA, en-AU) or otherwise its plain name (e.g., Brazilian Portuguese, Canadian French, Australian English). The resolved value is what gets passed to subagents — never pass a description like "the language the user is writing in" verbatim.WebSearch to find official government documents related to the action — Parliament / Congress / Treasury / Department / central-bank pages.WebFetch to read the documents directly. Read the actual primary text; do not stop at search-result blurbs.Single message, three Agent tool calls in parallel (do not chain them):
budget-watchdogbastiat-analystmarket-skepticEach agent receives this input block at the top of its prompt:
country: <country>
output_language: <BCP-47 tag or plain name>
user_question: <original user ask>
source_urls:
- <primary source URL 1>
- <primary source URL 2>
...
source_texts:
- url: <URL 1>
excerpt: |
<relevant excerpt from primary source>
...
Tell each agent explicitly: output in output_language, plain everyday language, primary sources only, return both Praises and Criticisms.
In the output language, plain everyday language, write a single message structured as:
If an analyst reported "primary source not found" for some sub-measure, surface that honestly in the verdict ("We could not locate the official text of measure X; analysis withheld for that item.").
If no analyst found any praiseworthy element, write a single bullet in the Praises section stating explicitly that every analyst searched for praiseworthy elements and found none in this action. Do not invent praise to satisfy the mandate — the mandate is that you must look for the good, not that the good is always there.
End the message with:
"Would you like social-media content for this analysis? Tell me which platforms you'd like: YouTube, X, TikTok, Instagram, Threads, Bluesky, or Facebook."
Translate the offer into output_language. Do not generate any content yourself — that's the next skill's job. If the user later names platforms, the liberty-lens-content skill will take over.
| Situation | Action |
|---|---|
| Country ambiguous | Ask the user once. Do not guess. |
| Primary sources unfindable | Report it; default to stop. |
WebSearch or WebFetch errors | Report the specific failure; ask the user whether to retry, proceed without that source, or stop. |
| Analyst agent returns malformed output | Re-dispatch that one agent once with an explicit format reminder; if still malformed, surface the raw output and proceed with the other two. |
| Topic isn't a government action | Back out: "This is a non-government topic — Liberty Lens only fires on government actions. Happy to discuss informally." |
| User declines social content after the offer | End gracefully ("Understood — no posts then. Let me know if you'd like to dig into any part of the analysis further."). Do not re-offer in the same turn. |
These skills are loadable; the analyst agents will pull them in as needed. You do not need to duplicate their contents here:
non-aggression-principleknowledge-problemseen-vs-unseentime-preferencemalinvestmentProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
npx claudepluginhub luizbon/liberty-lens --plugin liberty-lens