Compliance-checked, source-grounded content operations for healthcare SaaS — brief to LLM-extractable draft with audit trail
Research a query cluster and produce a validated Brief JSON with Asana task
Write a compliant draft markdown file from a brief JSON using Opus 4.7
Score a URL against the extractability rubric using the citation-auditor subagent
Audit a live URL for content drift and append refresh recommendations to the draft
Generate weekly citation performance report across all Tebra content assets
Produces a structured content brief from a query cluster string. Queries Firecrawl for competitor SERP content and Exa for LLM-consensus answers, then synthesizes a Brief JSON validated against schemas.py. Writes briefs/<slug>.json. Invoke via /brief <query>.
Writes a compliant draft markdown file from a brief JSON. Uses Opus 4.7 for high-quality content generation. Handles compliance hook deny decisions by revising flagged claims and retrying (max 3 attempts). Returns partial_success after 3 denials so the operator can intervene. Invoke via /draft <brief-slug>.
Scores a web page against the extractability rubric. Given a URL, fetches and renders the page via Chrome DevTools MCP, extracts structured signals (JSON-LD schema types, header hierarchy, Q&A pair count, citation/reference link count, answer-first structure), scores each dimension 0–5 using scripts/citation_score.py, writes a JSONL entry to audit/citation-scores.jsonl, and returns a SubagentResponse with a markdown report in summary_for_user. Invoke via /audit <url> or when the main agent needs an extractability score.
Audits a live URL against its corresponding draft to identify content that has drifted or become stale. Fetches the live page via Chrome DevTools MCP, scrapes competitor updates via Firecrawl, checks LLM consensus shifts via Exa, then appends recommended_changes to the draft frontmatter via scripts/refresh_append.py and logs a refresh event to audit/compliance.jsonl. Invoke via /refresh <url-or-draft-glob>.
Performs a nuanced compliance second-pass on a draft markdown file for hedged medical claims and ambiguous attribution that regex patterns miss. Reads the draft and the source registry, then returns a structured allow/ask/deny decision with line-level evidence. Invoked by draft-writer when the PreToolUse hook escalates or when the draft contains hedged language ("results may vary", "some studies show", "may help", "can reduce") that the Python regex layer cannot confidently classify. Returns the same deny/allow/ask contract as scripts/compliance_check.py.
Requires secrets
Needs API keys or credentials to function
Uses power tools
Uses Bash, Write, or Edit tools
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
GEO is the new SEO. The zero-click era rewards content engineered for citation, not written and published on hope.
tebra-content-os is a Claude Code-native content operations pipeline built for Tebra's GEO era: content engineered for LLM citation, gated for healthcare compliance at commit time, human-approved on every BOFU asset before publish.
Two delivered artifacts demonstrate the system end-to-end:
audit/tebra_citation_audit_2026-04-22.pdf): Scored 16 tebra.com URLs across five extractability dimensions. Zero pages passed the 3.5 threshold. Three template-level fixes identified that move 8 of 9 blog posts past threshold in one sprint./brief → /draft pipeline dry run (docs/E2E_DRY_RUN.md): Research brief (briefs/tebra-vs-advancedmd-for-solo-practices.json, 7 proof points, 11 registry-backed sources) produced by brief-author subagent; ~1,400-word BOFU comparison draft (drafts/tebra-vs-advancedmd-for-solo-practices.md) gated through the compliance hook and allowed on first write.git clone https://github.com/nice-and-precise/tebra-content-os.git
cd tebra-content-os
Environment setup (MCP auth, Python venv, env vars): docs/RUNBOOK.md Section 3.
Day-one demo in Claude Code — paste PROMPT_TO_PASTE_IN_CLAUDE_CODE.md, then:
/audit https://www.tebra.com/features
Returns an LLM extractability score with dimension breakdown and recommendations.
Five primitive layers, one responsibility each:
| Layer | Location | Role |
|---|---|---|
| Skills | .claude/skills/ | Reusable cross-tool knowledge: brand voice, healthcare compliance, 4 BOFU asset types, citation block library |
| Subagents | .claude/agents/ | Isolated workers: brief-author, draft-writer, citation-auditor, refresh-auditor, compliance-qa, product-truth, citation-reporter |
| Hooks | .claude/hooks/ | Deterministic gates: compliance pre-check, session context injection, async linting, audit logging |
| Commands | .claude/commands/ | User workflows: /audit, /brief, /draft, /refresh, /citation-report |
| MCP servers | .mcp.json | External access: Firecrawl (page render) + Exa (search). Post-hire: Search Console, GA4, Asana, HubSpot restore via docs/OPERATING_MODES.md |
Decision tree: must block → hook; external data → MCP; multi-step → subagent; reusable knowledge → skill; one-shot workflow → command.
/brief <query> # brief-author subagent: retrieval → structured brief
↓
/draft <slug> # draft-writer subagent: brief → compliance-checked draft
↓ # (PreToolUse hook blocks unsourced medical claims)
PMM review # human approval required before publish
↓
Webflow publish # operator action only (manual in pre-hire mode; see docs/OPERATING_MODES.md)
Every write or edit to drafts/ passes through pre-tool-use-compliance.sh, which calls
scripts/compliance_check.py. The runtime hook verifies:
sources[].claims_cited[].sources/registry.json, is not past its expires_at, and
is not authority tier 4.Denial blocks the write. The hook cannot be bypassed.
approved_for_claims[] is declared on every source in the registry. Validator-time
enforcement (python3 -m scripts.validate_drafts) checks alignment for any ClaimCited
entry where claim_type is set. Runtime hook enforcement of approved_for_claims[] is a
tracked gap — see docs/RESEARCH_GAPS_AND_DECISIONS.md.
All specification documents under docs/:
| File | Contents |
|---|---|
PRD.md | Problem, users, goals, acceptance criteria |
ARCHITECTURE.md | Five-primitive wiring using April 2026 Claude Code primitives |
DATA_CONTRACTS.md | Pydantic schemas for briefs, drafts, sources, citations, audit events |
TASKS.md | Thirteen sequential build milestones with enforced stop points |
RUNBOOK.md | Environment setup, MCP auth, troubleshooting, day-two operations |
RESEARCH_GAPS_AND_DECISIONS.md | Decision log, open questions, version pinning |
REPO_PRINCIPLES_EXTRACTED.md | Design lineage from related production systems |
Git is the database. Every brief, draft, source, and audit event lives in version-controlled files. No separate service, no cloud database.
Compliance is architecture. The PreToolUse hook blocks unsourced medical claims at commit time. Policy enforced by the system, not by a checklist.
Retrieval before generation. Briefs are built from Search Console, GA4, Firecrawl, and Exa signal before any draft is generated.
npx claudepluginhub nice-and-precise/tebra-content-osComprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Write feature specs, plan roadmaps, and synthesize user research faster. Keep stakeholders updated and stay ahead of the competitive landscape.