BotCreds Agent Artifacts
BotCreds Agent Artifacts gives AI agents a permanent home for their outputs. Post a single HTML file to the REST API. The plugin parses it, extracts scripts and styles, saves them as static files, enqueues them properly via WordPress APIs, and serves the result at a clean public URL with strict security headers. No build tools. No infrastructure. One API call. How It Works POST raw HTML to /wp-json/wp/v2/artifacts The plugin extracts and blocks and saves them as static files in wp-content/uploads/artifacts/{id}/ JS and CSS are enqueued via wp_enqueue_script() / wp_enqueue_style() — no inline scripts in rendered output The HTML body is sanitized with wp_kses() and an expanded allowed-tags list (canvas, SVG, inputs, video, audio, data-* attributes) The artifact is served at yourdomain.com/artifacts/{slug}/ with a strict Content Security Policy From the caller’s perspective: POST HTML, get URL. Everything else happens server-side. Features Deployment Single REST API call — no SDK, no library, any HTTP client works Update artifacts in place — POST to /wp-json/wp/v2/artifacts/{id} and the public URL stays the same Optional artifact_description field for internal documentation Head content preservation — tags and other elements from submitted HTML are preserved in output External script support — tags are registered as external dependencies and enqueued alongside local assets Asset cache busting — enqueued files are versioned with filemtime() so browsers fetch updates automatically Clean redeploys — old asset files are deleted before new ones are written Security Content Security Policy on every artifact page — blocks external script injection and cross-origin data exfiltration by default Trusted CDN list out of the box: cdn.jsdelivr.net, unpkg.com, cdnjs.cloudflare.com, esm.sh, cdn.skypack.dev — scripts and styles load from these without any configuration Per-artifact API allowlist — artifacts that call external APIs declare their origins via an HTML pragma comment ( ) or a deploy-time meta field; the plugin adds them to connect-src automatically Additional security headers: X-Content-Type-Options, X-Frame-Options, Referrer-Policy Custom capability type — artifact capabilities are separate from standard post capabilities; only Administrators can create artifacts by default Developer Hooks botcreds_agent_artifacts_csp — filter the full CSP header value for any artifact botcreds_agent_artifacts_allowed_html — filter the wp_kses allowed-tags array botcreds_agent_artifacts_grant_to_role() — helper to grant capabilities to additional roles Custom template — drop single-artifact.php in your active theme to replace the render template Use Cases OpenClaw (AI personal assistant) OpenClaw agents can deploy interactive dashboards, daily digests, data visualizations, and mini-apps in a single tool call. Generate the HTML, POST it, get the URL — no manual steps, no context switching. For artifacts that fetch live data, add a pragma comment to the HTML and the CSP is updated automatically: For recurring reports (daily digests, weekly summaries), store the artifact ID after the first deploy and update in place on subsequent runs. The URL never changes. Claude Code (terminal-based coding agent) Claude Code sessions can invoke a shell deploy script directly after generating output. Add a scripts/deploy-artifact.sh to your project and reference it in your CLAUDE.md — Claude will use it to ship outputs without leaving the terminal. No manual copy-paste, no browser switching. Codex (OpenAI coding agent) Same pattern as Claude Code. Add deployment instructions to your AGENTS.md and Codex can write HTML, call the deploy script, and report the live URL — all in one agent run. GitHub Actions (versioned project) For projects that build a static HTML output — dashboards, reports, documentation, changelogs — a GitHub Actions workflow can deploy to an artifact on every push to main. The artifact ID is stored as a repository variable so the public URL stays stable across all future deploys. Push → build → deploy → done. Example: Deploy via REST API curl -X POST "https://your-site.com/wp-json/wp/v2/artifacts" \ -u "username:application-password" \ -H "Content-Type: application/json" \ -d '{ "title": "My App", "status": "publish", "meta": { "artifact_html": " Hello. ", "artifact_description": "Built by my AI agent" } }' The response link field is the public URL of the deployed artifact. Example: Artifact with Live Data Include the fetch pragma in your HTML — no configuration needed: fetch('https://api.openweathermap.org/data/2.5/weather?q=Denver&appid=YOUR_KEY') .then(r => r.json()) .then(d => document.getElementById('weather').textContent = d.weather[0].description); Example: GitHub Actions Deployment name: Deploy Artifact on: push: branches: [main] jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: npm ci && npm run build - name: Deploy to Artifact env: WP_SITE: ${{ secrets.ARTIFACT_WP_SITE }} WP_USER: ${{ secrets.ARTIFACT_WP_USER }} WP_PASS: ${{ secrets.ARTIFACT_WP_PASS }} ARTIFACT_ID: ${{ vars.ARTIFACT_ID }} run: | PAYLOAD=$(jq -n --arg title "My Dashboard" --rawfile html dist/index.html \ '{title: $title, status: "publish", meta: {artifact_html: $html}}') ENDPOINT="$WP_SITE/wp-json/wp/v2/artifacts" [ -n "$ARTIFACT_ID" ] && ENDPOINT="$ENDPOINT/$ARTIFACT_ID" curl -sf -X POST "$ENDPOINT" -u "$WP_USER:$WP_PASS" \ -H "Content-Type: application/json" -d "$PAYLOAD" | jq -r '.link'
Top keywords
- artifact22×2.65%
- html17×2.05%
- wp17×2.05%
- artifacts14×1.69%
- deploy10×1.21%
- agent8×0.97%
- id8×0.97%
- post8×0.97%
- url8×0.97%
- api6×0.72%
- artifact id6×0.72%
- call5×0.60%
Translate WordPress with GTranslate
Translate WordPress with GTranslate plugin uses Google Translate AI translation service to translate wordpress site with Google power and make it multilingual. With 103 available languages your site will be available to more than 99% of internet users. Our paid versions are fully SEO compatible which will increase your international traffic and sales. This translate plugin is a budget multilingual WordPress solution which combines automatic and human translations to save money and is easy to implement. GTranslate is a leading website translation services provider since 2008, it moves away the language barriers. Compared to other translation plugins for WordPress, we use cloud based approach which does not slow down your website. In addition to that, we can offer complete SEO features based on sub-domains with our paid options, which can make your website appear in search engines in different languages which will increase your international traffic and sales. In our paid versions we DO NOT limit the number of words or the number of translated pageviews. You DO NOT pay additionally for automatic translations. Please use GTranslate Support for your questions and support requests! We are multilingual! Please check our FAQ to get quick answers. Features Free Google automatic machine translation Hides Google top frame after translation Translate website on the fly Translate posts and pages Translate categories and tags Menus and widgets translation Themes and plugins translation Right to left language support Google language translator widget Auto-switch language based on browser defined language Available styles Float, Dropdown, Flags, Flags with dropdown, Nice dropdown with flags, Flags with language names, Flags with language codes, Language names, Language codes, Globe, Popup Floating language selector WooCommerce shop translation Multilingual language names in native alphabet Alternative flags for Quebec, Canada, USA, Brazil, Mexico, Argentina, Colombia Lazy loading for language flags and js libraries to boost performance Lightweight vanilla javascript without dependencies Forum Support Paid Features Multilingual SEO – Enable search engine indexing Neural machine translations with human level translation quality Increase traffic and AdSense revenue Search engine friendly (SEF) URLs Yoast SEO compatible – translate meta keywords, meta description, schema.org data structures, translate sitemaps WooCommerce compatible – translate products, schema.org data structures You can have sub-directory (example.com/es/) or sub-domain (es.example.com) URL structure URL Translation aka slug translation is possible (example.com/about-us → example.es/sobre-nosotros) Add hreflang tags for translated alternatives You can manually correct translations In context translation interface (make corrections without losing the context) Meta data translation (meta keywords, meta description) Translating schema.org microdata for better search engine appearance Seamless updates (cloud service updated on our side – SaaS, you do not need to worry about backups on your side) JSON format translation Translate WooCommerce emails AMP translation (Accelerated Mobile Pages translation) Image localization – Media translation Translation Proxy (aka Translation Delivery Network) Centralized Translation Cache – We revise and improve translations over time Language Hosting (example.fr) User Dashboard with Analytics Live Chat Support See also If you are looking for unlimited, high-quality automatic translations, check out TranslateX – an automatic translation API offering unlimited translation for your website or application. We also offer integration plugins: TranslateX for Loco Translate – integrate TranslateX API directly into Loco Translate for seamless, unlimited automatic translations. TranslateX for TranslatePress – bring unlimited automatic translation to TranslatePress using TranslateX API. These solutions make it easy to supercharge your WordPress multilingual setup with TranslateX’s secure and affordable API. GTranslate WordPress Demo Watch GTranslate Tour Edit Translations Demo (paid)