ApertureOscillation
3-pass scope oscillation that holds a question constant while shifting zoom — narrow/tactical, wide/strategic, then synthesis — to surface design tensions,…
Three-layer bias analysis on any URL, file, or text — auto-fetches the content and any cited study, then audits data-level biases, source conflicts of interest, and journalism-added distortions, separating what the data supports from what's editorialized. USE WHEN bias analysis,
$ npx -y skills add danielmiessler/personal_ai_infrastructure --skill BiasCheck --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/BiasCheckContext preview
The summary Claude sees to decide when to auto-load this skill.
Three-layer bias analysis on any URL, file, or text — auto-fetches the content and any cited study, then audits data-level biases, source conflicts of interest, and journalism-added distortions, separating what the data supports from what's editorialized. USE WHEN bias analysis,
name: BiasCheck version: 1.0.3 description: "Three-layer bias analysis on any URL, file, or text — auto-fetches the content and any cited study, then audits data-level biases, source conflicts of interest, and journalism-added distortions, separating what the data supports from what's editorialized. USE WHEN bias analysis, analyze bias, bias check, check this study, who funded this, is this source biased, fact-check article, methodological flaws, source credibility, what's wrong with this claim. NOT FOR psychological author analysis, research synthesis (use Research), entity due diligence." disallowed-tools: Edit, Write, NotebookEdit
**Before executing, check for user customizations at:** `~/.claude/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/BiasCheck/`
If this directory exists, load and apply any `PREFERENCES.md` or additional reference files found there. These override default behavior. If the directory does not exist, proceed with skill defaults.
**When executing a workflow, do BOTH:**
1. **Send voice notification**:
curl -s -X POST http://localhost:31337/notify \
-H "Content-Type: application/json" \
-d '{"message": "Running the Check workflow in the BiasCheck skill to audit the source"}' \
> /dev/null 2>&1 &2. **Output text notification**:
Running the **Check** workflow in the **BiasCheck** skill to audit the source...
Runs a three-layer bias audit on any source — a URL, a file path, or raw text. It fetches the content plus any study it cites, then checks (1) biases inside the data, (2) conflicts of interest in the source organization, and (3) distortions the journalism added on top. The output separates what the data actually supports from what got editorialized.
Most "this is biased" arguments are vibes — a feeling about a source, with nothing concrete underneath. They're not repeatable and they don't tell you where the distortion lives. The other failure is analyzing an article without ever reaching the study it cites, so you critique the headline and never see that the underlying data was fine (or that it was junk). A fixed taxonomy and a fixed output shape fix both: the analysis is repeatable, the gaps are visible, and every claim ties to a specific tell.
The skill operates on three layers:
1. **The data itself** — biases inside the underlying study, paper, or dataset (funding, sampling, instrument design, demand characteristics, self-report distance from behavior, causal inflation, missing benchmark, publication availability) 2. **The source organization** — who paid for or produced the work, what they sell, what conclusion would be inconvenient 3. **The journalism on top** — what the reporter/commentator added: headline-to-source distortion, frame escalation, echo-chain amplification, causal claims layered over correlational data
Output cleanly separates **what the data actually supports** from **what was editorialized on top**. Confidence is anchored to specifics — no vibes-based "this seems biased."
| Workflow | Trigger | File | |----------|---------|------| | **Check** | "bias check", "analyze bias on", "check this study/source/article" | `Workflows/Check.md` |
**Example 1: Article citing a vendor study**
User: "bias check https://futurism.com/some-article-citing-a-mercer-survey" → Invokes Check workflow → Fetches the article, identifies the cited Mercer study, fetches Mercer's source → Runs three-layer audit: vendor conflict-of-interest, sample/question-design biases, journalism's headline-vs-source swap → Returns structured bias report + supported-vs-editorialized split
**Example 2: Raw paste of a study abstract**
User: "bias check this abstract: [pastes 4 paragraphs from a paper]" → Invokes Check workflow → Skips Layer 3 (no journalism on top — input IS the primary source) → Audits Layers 1 + 2 only: funding disclosure, sample, methodology, conflict-of-interest → Notes if abstract is insufficient to assess methodology (publication availability bias)
**Example 3: File path**
User: "bias check ~/Downloads/some-report.pdf" → Invokes Check workflow → Reads file → Identifies if report cites further upstream sources; fetches what it can → Three-layer audit with specifics
⛰️ The Life Operating System — an intent engineering platform that moves you from your current state to your ideal state, in life and work.
Repo: danielmiessler/personal_ai_infrastructure
3-pass scope oscillation that holds a question constant while shifting zoom — narrow/tactical, wide/strategic, then synthesis — to surface design tensions,…
Curated aphorism collection with CRUD — content-based matching, themed search, thinker research, DB maintenance. Quotes organized by author/theme/context/usage…
Scrapes social platforms, business data, and e-commerce via Apify actors — Instagram, LinkedIn, TikTok, YouTube, Facebook, Google Maps, Amazon, and web crawls…
Search and retrieve arXiv academic papers by topic, category, or paper ID — with AlphaXiv-enriched AI-generated overviews. Uses arXiv Atom API across…
Static visual content across 20+ formats — diagrams, mermaid, infographics, D3 dashboards, comics, icons, wallpaper — via Nano Banana Pro (default), Nano…
AI audio editing pipeline: Whisper word-level transcription → Claude segment classification (KEEP/CUT_FILLER/CUT_FALSE_START/CUT_STUTTER/CUT_DEAD_AIR) → ffmpeg…