Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Payload Markdown Docs

ASecurity

Use this skill when maintaining Git-backed documentation for a project that uses `@valkyrianlabs/payload-markdown-docs`.

2 stars
0 votes
0 copies
0 views
Added 9/29/2026
ai-agentsbashgitapidocumentation

Works with

cliapi

Security Analysis

A100/100

Pro scans all 9 files and shows the line behind each finding

Scanned 9/29/2026

$npx -y skills add aicodedecode/awesome-muse-skills --skill payload-markdown-docs --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Payload Markdown Docs?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Payload Markdown Docs
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aicodedecode-payload-markdown-docs/badge)](https://www.skillsdirectory.com/skills/aicodedecode-payload-markdown-docs)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: payload-markdown-docs
description: Use this skill when maintaining Git-backed documentation for a project that uses `@valkyrianlabs/payload-markdown-docs`.
---

# Payload Markdown Docs Skill

Use this skill in Claude when maintaining Git-backed documentation for a project
that uses `@valkyrianlabs/payload-markdown-docs`.

Edit repo-local source files first. Treat generated Payload docs records and
synced raw assets as server-owned output, not as source of truth.

This skill may be installed at `.claude/skills/payload-markdown-docs` by the
native `pmdocs` CLI or served from the package
`skills/payload-markdown-docs/claude` directory.

This skill owns the docs package structure, plugin sync workflow, routing,
frontmatter, and plugin-specific safety rules. It intentionally does not define
Payload Markdown directive syntax or renderer formatting details. Use the
sibling `payload-markdown` skill for those:

- `../payload-markdown/SKILL.md`
- `../payload-markdown/reference/payload-markdown-directives.md`
- `../payload-markdown/reference/formatting.md`
- `../payload-markdown/reference/quality.md`

The `pmdocs install skill --agent claude` installer writes this sibling skill.
If it is missing, reinstall the skill bundle before guessing directive names,
props, themes, or formatting rules.

## Current Model

- Human docs records live in `./docs` by default.
- Native agent skill assets live in `./skills/<source>/<agent>/`; this package
  uses `./skills/payload-markdown-docs/codex/` and
  `./skills/payload-markdown-docs/claude/`.
- AI discovery files are generated by the plugin at `/llms.txt`,
  `/llms-full.txt`, and each docs set route base from synced docs and skills.
- `validate`, `manifest`, `plan`, and `push` read that conventional package
  layout by default.
- Manifest `files` are docs records.
- Manifest `assets` are skill files and optional custom static files.
- Skill files are not docs records and do not need docs frontmatter.
- Payload Markdown directive and formatting guidance comes from the sibling
  `payload-markdown` skill, not this skill.
- `push` defaults to sync mode. Use `--dry-run` only for an explicit dry-run.
- `--publish` is separate from sync mode and only requests published output.
- Server config owns writes, publishing, drafts, hard delete, auth, and route
  collision behavior.
- Public raw asset URLs require committed Next route files from
  `pmdocs install routes`.
- `/api/...` asset URLs are implementation/internal fallback URLs, not public
  canonical docs URLs.
- The npm package is the Payload plugin/runtime package only. Use native
  `pmdocs`, not `pnpm exec payload-markdown-docs`, for operator CLI commands.

## Authoring Rules

- Keep human docs in repo-local `.md` files under `./docs` unless configured
  otherwise.
- Do not introduce MDX unless a future project config explicitly enables it.
- Use the sibling `payload-markdown` skill before adding or changing renderer
  directives, directive props, theme names, or general Markdown formatting.
- Use only the docs frontmatter supported by this plugin.
- Keep internal docs links route-aware and root-relative inside the docs set,
  such as `/getting-started/quick-start`.
- Run validation before finishing docs edits.
- Run plan when sync behavior, route changes, publishing, archive behavior, or
  delete behavior matters.
- Do not directly mutate generated Payload records unless the user explicitly
  asks for admin-side overrides.
- Do not invent directives, frontmatter fields, CLI flags, sync modes, runtime
  features, route helpers, or publishing behavior.
- Do not describe unsupported features as implemented.

## Negative Rules

- Do not create `index.ai.yml`.
- Do not create `index.ai.yaml`.
- Do not create a single consolidated AI Markdown export file.
- Do not maintain `/plugins/<name>.md` AI export routes.
- Do not maintain root `llms.txt` or `llms-full.txt` files unless the user
  explicitly asks for custom static fallback assets.
- Do not duplicate Payload Markdown directive references in this skill.
- Do not invent unsupported Payload Markdown directives or props; use the
  sibling `payload-markdown` skill as the source of truth.
- Do not treat generated Payload records as source of truth.
- Do not tell users to run `pnpm exec payload-markdown-docs`; the supported CLI
  is the native `pmdocs` binary.

## Source ID Safety

`main-docs` is only a quick-start example source id. The real `--source` value
is the user's upstream docs id, which must match the Payload docs set slug.

When adding or installing a GitHub Actions OIDC workflow:

- Always include `--source <users-upstream-docs-id>` on `validate`, `plan`, and
  `push` commands.
- Do not infer the source id from the repository name, package name, branch,
  docs directory, or `GITHUB_REPOSITORY`.
- If the user did not provide the source/docs id, stop the task before editing
  the workflow. Explain that there is not enough context to add OIDC safely and
  ask for the Payload docs set slug/source id.
- Do not use `main-docs` unless the user explicitly says their docs set slug is
  `main-docs`.

## Default Workflow

```bash
pmdocs validate --source <users-upstream-docs-id>
pmdocs plan --source <users-upstream-docs-id>
```

If the project does not use the conventional `./docs` location, add
`--docs {{docsRoot}}`.

Only push when the user asks for an upload and provides endpoint/auth context.
GitHub OIDC sync:

```bash
pmdocs push \
  --endpoint "$DOCS_SYNC_ENDPOINT" \
  --source <users-upstream-docs-id> \
  --github-oidc
```

Explicit dry-run:

```bash
pmdocs push \
  --endpoint "$DOCS_SYNC_ENDPOINT" \
  --source <users-upstream-docs-id> \
  --github-oidc \
  --dry-run
```

Ed25519 sync:

```bash
pmdocs push \
  --endpoint "$DOCS_SYNC_ENDPOINT" \
  --source <users-upstream-docs-id> \
  --key-id github-actions-main \
  --private-key-env DOCS_SYNC_PRIVATE_KEY
```

Publishing request, only when the user explicitly wants published output:

```bash
pmdocs push \
  --endpoint "$DOCS_SYNC_ENDPOINT" \
  --source <users-upstream-docs-id> \
  --github-oidc \
  --publish
```

Sync writes require `sync.allowWrites: true`. Publishing additionally requires
`sync.allowPublish: true` and a draft-enabled docs collection.

Install public raw asset route files in a Next app when the user needs generated
`/llms.txt`, `/llms-full.txt`, docs-set `llms` files, or skill URLs to work
outside `/api`:

```bash
pmdocs install routes --payload-app "src/app/(payload)"
```

## References

- `reference/docs-package.md`
- `reference/frontmatter.md`
- `reference/workflow.md`
- `reference/sync.md`
- `reference/routing.md`
- `reference/admin.md`
- `reference/troubleshooting.md`
- `examples/github-actions.md`

Payload Markdown companion references:

- `../payload-markdown/reference/payload-markdown-directives.md`
- `../payload-markdown/reference/formatting.md`
- `../payload-markdown/reference/quality.md`
- `../payload-markdown/examples/docs-page.md`

## Safety Checklist

Before finishing:

1. Confirm changed docs live under the configured docs root, normally `./docs`.
2. Confirm changed docs have valid plugin frontmatter.
3. Confirm internal links are root-relative and route-aware.
4. If directives changed, confirm them against the sibling `payload-markdown` skill.
5. Run validate.
6. Run plan when sync behavior matters.
7. Report validation or plan failures instead of guessing.

Attribution

aicodedecodeaicodedecode
View sourceSee grades on GitHubMore from aicodedecode →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Terse caveman voice: answer first, fluff gone, every technical fact kept. Use for /caveman, "caveman mode", "talk like caveman", "be brief", "less tokens". Stays on until "stop caveman" or "normal mode".

1100021 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

698461 votes

Writing Skills

Create and manage Claude Code skills in HASH repository following Anthropic best practices. Use when creating new skills, modifying skill-rules.json, understanding trigger patterns, working with hooks, debugging skill activation, or implementing progressive disclosure. Covers skill structure, YAML frontmatter, trigger types (keywords, intent patterns), UserPromptSubmit hook, and the 500-line rule. Includes validation and debugging with SKILL_DEBUG. Examples include rust-error-stack, cargo-dep...

3931 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3421 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Amp, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Grok Build, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

741 votes
View all in ai-agents →