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%
Shortcodes Ultimate – Content Elements
Building new pages with Gutenberg? Explore VovaBlocks, a focused collection of native marketing and content blocks from the creator of Shortcodes Ultimate. View VovaBlocks → About Shortcodes Ultimate Shortcodes Ultimate is a WordPress shortcode plugin for adding tabs, accordions, buttons, FAQs, sliders, carousels, lightboxes, columns, boxes and other reusable content elements without coding. It is ideal for site owners who want richer content layouts and practical UI elements without switching to a full page builder. Use Shortcodes Ultimate in the Block Editor, Classic Editor, widgets and template files. Generate shortcodes visually, preview the result before inserting it, and reuse the same elements across posts, pages and existing shortcode-based content. Trusted by hundreds of thousands of WordPress sites, Shortcodes Ultimate helps you replace multiple single-purpose UI plugins with one maintained toolkit. Explore live examples What you can build With Shortcodes Ultimate, you can quickly add common WordPress content elements such as: Accordions and FAQ sections Responsive tabs CTA buttons and download buttons Boxes, notes and callouts Columns and layout helpers Sliders and carousels Lightboxes for images and custom content Post lists and dynamic content blocks Spoilers, toggles and expandable content Media embeds and visual content blocks Instead of installing a separate plugin for every small content element, Shortcodes Ultimate gives you one maintained toolkit for everyday WordPress content tasks. Works with modern and classic WordPress workflows Shortcodes Ultimate works with the Block Editor, Classic Editor, widgets and template files. You can insert shortcodes manually, use WordPress shortcode blocks or use the built-in shortcode generator to configure elements visually. This makes the plugin useful for: Site owners who want to improve content without coding Bloggers and affiliate publishers who need reusable CTA and content blocks Agencies and freelancers maintaining multiple WordPress sites Developers who want shortcode-friendly output in templates Existing sites with older content that already uses shortcodes Why use Shortcodes Ultimate? 50+ ready-to-use WordPress shortcodes Visual shortcode generator Live preview Works with the Block Editor and Classic Editor Shortcodes can be used in posts, pages, widgets and template files Responsive elements that work with your theme Built-in Custom CSS editor Developer-friendly hooks and documentation Free version available on WordPress.org Pro version available for advanced shortcodes, extra styles and premium support Why shortcodes still matter in WordPress The WordPress Block Editor is great for visual content editing, but shortcodes are still useful when you need portable, reusable content elements that work across different parts of a WordPress site. Shortcodes are especially helpful when you want to: Reuse the same content element in many posts or pages Add dynamic content inside widgets or templates Maintain older WordPress sites that already use shortcodes Work across Classic Editor and Block Editor workflows Add content elements without switching to a full page builder Keep common UI elements available through a simple text-based syntax Shortcodes Ultimate is designed for these practical workflows. It gives you a large collection of ready-made shortcodes and a visual generator, so you do not need to write shortcode syntax manually unless you want to. Free and Pro The free version of Shortcodes Ultimate includes a large collection of useful shortcodes for everyday WordPress content tasks. Shortcodes Ultimate Pro adds advanced shortcodes, additional styles, Content Slider, Pricing Table, Testimonials, Shortcode Creator, Elementor support and premium support. Compare Free and Pro Useful links Documentation Live Examples Pro features Support