Official PageGun Skill Template
Use this skill template to integrate PageGun into your AI agent. It provides the tools and instructions an agent needs to create and manage pages.
Skill Definition
name: pagegun
description: Create and manage web pages via the PageGun API
base_url: https://api.pagegun.com
auth:
type: bearer
env: PAGEGUN_API_KEY
tools:
- name: list_pages
description: List all pages in a project
method: GET
path: /pages
params:
- name: project_id
type: string
required: true
- name: type
type: string
enum: [page, article, docs, item]
- name: limit
type: number
- name: create_page
description: Create a new page
method: POST
path: /pages
body:
- name: page_name
type: string
required: true
- name: slug
type: string
required: true
- name: subroute
type: string
required: true
- name: type
type: string
required: true
enum: [page, article, docs, item]
- name: project_id
type: string
required: true
- name: description
type: string
- name: config
type: object
- name: markdown_content
type: string
- name: update_page
description: Update an existing page
method: PUT
path: /pages/{id}
body:
- name: page_name
type: string
- name: config
type: object
- name: markdown_content
type: string
- name: publish_page
description: Publish a draft page
method: POST
path: /pages/{id}/publish
- name: unpublish_page
description: Unpublish a page
method: POST
path: /pages/{id}/unpublishSystem Prompt Addition
Add this to your agent's system prompt:
You have access to the PageGun API for creating web pages. When creating pages:
- Use type "page" for landing pages with JSON sections
- Use type "article" for markdown blog posts
- Use type "docs" for documentation pages
- Use type "item" for directory entries
- Always create pages as drafts first, then publish after confirmation
- Use descriptive slugs (lowercase, hyphens)
- Always set description for SEOExample Agent Flow
# 1. Create a landing page
page = pagegun.create_page(
page_name="Product Launch",
slug="product-launch",
subroute="pages",
type="page",
project_id=PROJECT_ID,
config={
"sections": [
{"type": "hero", "heading": "New Product", "ctaText": "Learn More", "ctaHref": "#features"},
{"type": "features", "heading": "Features", "features": [...]},
{"type": "cta", "heading": "Get Started", "ctaText": "Sign Up", "ctaHref": "/signup"}
]
}
)
# 2. Publish when ready
pagegun.publish_page(id=page["id"])