Agent skill
Let a coding agent integrate Omnifence moderation into your codebase
Omnifence publishes an agent skill that teaches a coding agent how to integrate the moderation API. The skill is agent-agnostic. It installs with the skills CLI, so it works with any coding agent that supports the skills standard.
The agent finds the places where your codebase creates or accepts content, confirms them with you, and inserts the correct moderation call at each one. Text moderation runs first, and media moderation runs on the result.
Install#
Install the skill into your project with the skills CLI:
npx skills add Omnifence/omnifence-skills
/plugin marketplace add Omnifence/omnifence-skills /plugin install omnifence-integration@omnifence-skills
## Use
Open your project and ask the agent to integrate:
Add Omnifence moderation to this app.
The skill walks the agent through four stages:
1. **Discovery.** The agent scans your codebase for the call sites that produce content.
It covers third-party APIs and in-house services alike. It finds in-house platforms by
behavioural signals, such as prompt payloads, job queues, and uploads of new media,
rather than by SDK names.
2. **Confirmation.** Before it writes any code, the agent shows you the list of call sites
it found and asks you to confirm, remove, or add entries. Review this list carefully.
A missed call site leaves content unmoderated.
3. **Integration.** For each confirmed site the agent wires the matching endpoint:
[`POST /api/v1/moderate/text`](/docs/api-reference/text-moderate) for user-written
prompts and AI-character chat turns,
[`/moderate/image`](/docs/api-reference/image-moderate),
[`/moderate/video`](/docs/api-reference/video-moderate), and
[`/moderate/audio`](/docs/api-reference/audio-moderate) for media.
4. **Async handling.** The integration holds content until a `pass` decision arrives, by
[webhook](/docs/platform/webhooks) or by rate-limit-aware
[polling](/docs/platform/rate-limiting), and fails closed on errors.
You need an [API key](/docs/authentication) with the `moderate:*` scopes for the modalities
you integrate. The agent reads the key from an environment variable. It never hard-codes
the key and it never logs the key.
## Source
The skill lives at
[github.com/Omnifence/omnifence-skills](https://github.com/Omnifence/omnifence-skills).