
paperclip-page
Publish static HTML pages and asset folders to the Paperclip S3/CloudFront page host. Use when asked to deploy, host, or share a persistent page, viewer, prototype, report, or static site without here.now.
- Installs
- 91
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/paperclipai/paperclip --skill paperclip-page- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads paperclip-page automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Paperclip Page
Use this skill to publish a static directory to the configured Paperclip pages
host, for example https://pages.paperclip.ing/<slug>/.
Requirements
- Source directory contains
index.htmlat its root. awsCLI v2,curl, andjqare available on PATH for live publishes.- Environment variables are configured:
PAPERCLIP_PAGE_BUCKETPAPERCLIP_PAGE_BASE_URLAWS_REGIONPAPERCLIP_PAGE_AWS_ACCESS_KEY_IDandPAPERCLIP_PAGE_AWS_SECRET_ACCESS_KEYwith the page-uploader credentials from Paperclip Secrets
- Optional environment variables:
PAPERCLIP_PAGE_DEFAULT_PREFIXPAPERCLIP_PAGE_AWS_PROFILE(alternative to the namespaced key pair)PAPERCLIP_PAGE_AWS_SESSION_TOKEN(only together with the namespaced key pair)
Do not bind the page-uploader credentials as global AWS_ACCESS_KEY_ID /
AWS_SECRET_ACCESS_KEY: static env keys take precedence over AWS_PROFILE in
every AWS SDK, so global names silently replace the host identity for every
process in the agent run. The namespaced variables scope the uploader identity
to this helper only. The ambient credential chain still works as a fallback
when none of the PAPERCLIP_PAGE_AWS_* credential variables are set.
Workflow
- Inspect the source directory and confirm it is public static content only.
- Run
scripts/publish.sh <dir> --dry-runto validate local structure and see the resolved URL/prefix. - Choose a slug:
- Use
--slug <slug>when the user gave a stable URL path. - Omit
--slugto derive one from the source directory name.
- Use
- Publish:
.agents/skills/paperclip-page/scripts/publish.sh ./site --slug my-page
- Return the printed public URL and S3 prefix to the issue/user.
Update Workflow
Updates are additive overwrites only. The helper never deletes remote objects.
.agents/skills/paperclip-page/scripts/publish.sh ./site --slug my-page --update
When the target prefix already exists, --update requires local ownership proof
from ./site/.paperclip-page/state.json generated by an earlier publish from
that same source directory. Without that state, create a new slug instead of
overwriting another page.
Safety Rules
- Publish public content only. Do not publish secrets, customer data, private company material, credentials, or internal logs.
- Never print AWS secret values.
- Never change bucket policy, IAM, DNS, CloudFront, or ACM settings from this skill. Setup belongs to an operator runbook, not the publish helper.
- Never upload outside the configured bucket and prefix.
- Never use
aws s3 sync --deleteor requires3:DeleteObjectin v1. - The helper forces
--no-follow-symlinksand fails if any source symlink is present. - The helper rejects hidden files and dot-segment paths except its own
.paperclip-page/state.json. - Slugs and prefix segments must use lowercase ASCII letters, digits, and hyphens only.
- Keep site-wide root objects such as
404.htmloperator-managed; publishes always target<slug>/...or<default-prefix>/<slug>/....
Troubleshooting
Slug already exists: choose a different slug or use--updatefrom the original source directory containing.paperclip-page/state.json.Missing index.html: build the static site first or point the helper at the directory that contains the root HTML file.Found symlink: replace symlinks with real files before publishing.AccessDenied: confirm the uploader IAM policy allowsListBucket,GetObject, andPutObjectfor the configured bucket/prefix, and that the agent received the Paperclip Secrets.- Public URL verification failed: check CloudFront deployment/DNS, object existence, and that the distribution uses HTTPS with the private S3 REST origin.
See README.md next to this skill for operator setup, AWS policy examples,
credential rotation, and install/attach commands.
FAQ
What does the paperclip-page skill do?
Publish static HTML pages and asset folders to the Paperclip S3/CloudFront page host. Use when asked to deploy, host, or share a persistent page, viewer, prototype, report, or static site without here.now.
How do I install paperclip-page?
Run npx skills add https://github.com/paperclipai/paperclip --skill paperclip-page in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/paperclip-page/ (personal) or .claude/skills/paperclip-page/ (project).
Which AI agents can use paperclip-page?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is paperclip-page safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains paperclip-page?
It is published by paperclipai in paperclipai/paperclip. It has 91 recorded installs.
More from paperclipai/paperclip
paperclip
paperclipai/paperclip
Use for Paperclip-managed tasks and heartbeats: reading task context, delivering task documents or files, updating completion or blockers, coordinating or delegating work, and following company governance. Includes control plane API operations for assignments, comments, approvals, and routines.
paperclip-create-agent
paperclipai/paperclip
Create new agents in Paperclip with governance-aware hiring. Use when you need to inspect adapter configuration options, compare existing agent configs, draft a new agent prompt/config, and submit a hire request.
paperclip-create-plugin
paperclipai/paperclip
Create and develop external Paperclip plugins with the CLI-first workflow. Use when scaffolding a plugin, iterating on a local plugin, installing it into Paperclip, or updating plugin authoring docs.
para-memory-files
paperclipai/paperclip
Use a file-based PARA memory system to store, retrieve, and organize durable knowledge across sessions. Trigger on saving facts, daily notes, entity records, weekly synthesis, recall, tacit user patterns, or plan memory.
create-agent-adapter
paperclipai/paperclip
Open the skill to read its SKILL.md instructions.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.