Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add shalintripathi/organic-os/plugin install organic-osWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/shalintripathi/organic-os/onsite-publish)<a href="https://agentmods.dev/skills/shalintripathi/organic-os/onsite-publish"><img src="https://agentmods.dev/badge/skills/shalintripathi/organic-os/onsite-publish/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/shalintripathi/organic-os/onsite-publish"><img src="https://agentmods.dev/badge/skills/shalintripathi/organic-os/onsite-publish.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00044 | $0.01431 |
| Opus 5.5 | $0.00018 | $0.00572 |
| Sonnet 5.5 | $0.00009 | $0.00286 |
| Haiku 4.5 | $0.00004 | $0.00143 |
Grade A, and why
onsite-publish scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 95 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Publish content (gated)
- Input: a brief item with status "drafted" whose draft file sits next to it (same folder, .draft.md produced by ce-produce).
- Gate: the brief's status must be "drafted" (step 1 already checks) AND
core.contracts.require_approval_lineage(brief_path)must pass; abort on ContractError. A rejected item must never reachcreate_post. The profile user must also confirm the final draft in-session or via channel. Refuse a draft whose frontmatter lackscapsule: verified(ce-produce's handoff note) - the human can override in-session, and the override is recorded in the outcome record. Read ce-editor's oversight block from the draft notes: a score at or above the profile'seditorial.oversight_threshold(default 7) adds a prominent line to the approval-channel message - "editor recommends a human line-edit: ". Publishing remains gated by the same approval either way: the score informs the human, it does not add a second gate. Rationale: scaled, unedited AI content correlates with deindexation (https://www.rankability.com/data/does-google-penalize-ai-content/). - Create the post via the CMS adapter (
onsite.cms.adapter_for; wordpress or git-static percms.type- the git-static branch below replaces steps 3-4):create_post(status draft by default; status "publish" only when site-profile sets publishing: direct), thenupdate_seo_metawith title/description/focus keyword from the draft's frontmatter, and schema if the draft includes it. (update_rankmathremains as the WordPress adapter's alias forupdate_seo_meta.) - Verify with
get_rendered_head; on successPYTHONPATH="$CLAUDE_PLUGIN_ROOT/lib" python3 -m core status <brief-path> published --actor agentand write the outcome record with measurement dates; on failure leave the post in draft and record the post id + failure reason in the outcome record. IndexNow: when site-profile.yaml hasindexnow: {enabled: true, key: ...}(additive key) AND the post actually went live (status "publish" - a WP draft has no public URL to submit), callhoo.indexnow.submit(host, key, [post_url])after the successful verify and record the returned status in the outcome record; a non-200 is recorded, never retried in-run. - If a Canva image brief exists next to the draft (from ce-image), record its path in the outcome record for manual upload (media upload is not in v1).
- Outcome summary - the approver always hears what happened. Compose ONE message for the whole run and deliver it through the configured approval channel (same channel-neutral delivery as skills/onsite-apply step 4; in-session prints it). One line per item: each published post with its live URL; each post left in draft, held in a PR, or failed, with the reason and what happens next. No per-item message spam. A run that published nothing and failed nothing sends nothing.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 95 lines · 44 tokens per session scan A b0920a39b035
onsite-publish is a skill published in the GitHub repository shalintripathi/organic-os (5 stars, last pushed 19d ago), licensed MIT. It adds 44 tokens to every session and 1,431 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-08.
Other skills, from other repositories
fix-issue
Fixes GitHub issues using parallel analysis agents for root cause investigation, code exploration, and regression detection. Reads issue context from gh CLI, searches codebase and memory for related patterns, generates a fix with tests, and links the resolution back to the issue via PR. Includes prevention analysis to…
github-operations
GitHub CLI operations for issues, PRs, milestones, and Projects v2. Covers gh commands, REST API patterns, and automation scripts. Use when managing GitHub issues, PRs, milestones, or Projects with gh.
branch-and-worktree-workflow
Isolates feature work in its own branch or worktree and integrates it cleanly when done. Use this when starting work that should not disturb the current workspace, when several efforts must proceed in parallel on one repository, or when implementation is finished and the change needs merging, rebasing, or splitting…
optimize-page
Comprehensive single-page optimization across all three layers — traditional SEO (title / meta / H1 / internal links), AEO (chunk quality, direct-answer leads, FAQ extraction), and GEO rewrites using the tactics published by the Princeton/IIT Delhi GEO study (citation integration, expert quotes, statistics enrichment…
seo-audit
Single audit entry point — surface-level scorecard or deep infrastructure dive depending on the requested mode. Default full mode produces a multi-layer scorecard across all 9 areas (crawlability, indexation, meta tags, headings, images, Core Web Vitals, JS rendering, mobile + security, structured data, internal…
ai-visibility
Fast-path AI visibility analysis using public web signals, with a per-engine proxy map for ChatGPT, Claude, Gemini, Perplexity, Copilot, and Google AI Overviews. Runs in your Claude Code session without an Akii-hosted score or scoring API. Use when the user asks for "AI visibility", "AI visibility score", "free AI…