원클릭으로
pagecord
// Interact with the Pagecord API - list posts/pages, publish content, and manage blog resources. Usage: /pagecord <command> [args]
// Interact with the Pagecord API - list posts/pages, publish content, and manage blog resources. Usage: /pagecord <command> [args]
Investigate and fix a Sentry issue in this codebase. Use when the user provides a Sentry issue URL or ID and wants diagnosis, a fix, verification, or a PR.
Interact with the Fizzy tracker for Pagecord work. Use when the user asks to list, create, update, move, close, comment on, or inspect Fizzy cards or boards.
Run the local CI sequence for this repo. Use when the user asks to run CI, verify a branch before push, or check code quality with the full local pipeline.
Interact with the Pagecord API for a blog. Use when the user wants to inspect posts or pages, publish content through the API, check API connectivity, or inspect the home page.
Interact with Cloudflare R2 buckets used by Pagecord. Use when the user wants to list objects, inspect bucket stats, fetch files, or check backup integrity in R2.
Investigate a customer support email and draft a reply. Use when the user pastes a customer message, bug report, billing question, feature request, or how-to question.
| name | pagecord |
| description | Interact with the Pagecord API - list posts/pages, publish content, and manage blog resources. Usage: /pagecord <command> [args] |
Interact with Pagecord blogs via the REST API.
Read the API key from .env:
grep '^PAGECORD' /Users/olly/dev/pagecord/.env
Look for PAGECORD_API_KEY for the default blog, or PAGECORD_{BLOG}_API_KEY for a specific blog (e.g. PAGECORD_HELP_API_KEY for the help blog). Uppercase the subdomain and replace hyphens with underscores.
If no key is found, stop and tell the user to generate one via Settings > API in the Pagecord dashboard, then add it to .env.
Base URL: https://api.pagecord.com
All requests use -H "Authorization: Bearer {API_KEY}".
Usage: /pagecord <command> [args]
list posts|pages [status]List posts or pages for the blog. Status: published (default), draft, or all.
For all, make two requests — default (published) and ?status=draft — and combine results.
Paginate using ?page=N and follow Link headers until exhausted.
Display as a table: token (truncated to 8 chars), slug, title, status, published_at. Show total count at bottom.
get post|page <token>Fetch a single post or page by token.
GET /posts/{token}
GET /pages/{token}
Display all fields: token, title, slug, status, published_at, canonical_url, tags, hidden, locale, created_at, updated_at. Show first 500 chars of content HTML.
publish <file>Publish a local markdown file as a post.
published: true → status: published, published: false → status: draft# Heading.md links to /slug formatPOST /posts with content_format=markdown and the full markdown content (front matter intact)homeShow the current home page.
GET /home_page
Display all fields. Show "No home page set" if 404.
statusTest API connectivity and show a blog summary.
GET /pages — verify auth, get page count from X-Total-CountGET /posts — get post count from X-Total-CountPAGECORD_API_KEY=***abc123)get, truncated to 8 chars in list tables