Agent skill

Create Manifest

by mindfold-ai in mindfold-ai/Trellis

Create a Trellis migration manifest and matching docs-site changelogs for a target release by analyzing commits since the previous release.

AGPL-3.0Auto-check passedDevelopment

Install Create Manifest

skills CLI
$ npx skills add mindfold-ai/Trellis --skill create-manifest -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mindfold-ai/Trellis create-manifest --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mindfold-ai/Trellis.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/create-manifest .claude/skills/create-manifest && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-manifest
GitHub stars
15k
Token cost
~2.5k tokens
SKILL.md length
1,005 words
Files
1
Skills in repo
8
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Create a Trellis migration manifest and matching docs-site changelogs for a target release by analyzing commits since the previous release.

  • Works in 11 steps: Identify Last Release → Gather Changes → Analyze Each Relevant Commit → …
  • Preparing a patch
  • SKILL.md covers Arguments, Package release model, Step 1: Identify Last Release and Step 2: Gather Changes, plus 11 more sections
  • Calls git, pnpm and node; reaches registry.npmjs.org

What it does

Create Manifest is an agent skill from mindfold-ai/Trellis. Create a Trellis migration manifest and matching docs-site changelogs for a target release by analyzing commits since the previous release. Use when preparing a patch, beta, rc, or minor release manifest.

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Changelog and release notes and Static sites and blogs. It works with npm. The repository describes itself as: The best agent harness. The licence is AGPL-3.0.

When your agent uses it

  • Preparing a patch
  • Minor release manifest

Example prompts

  • “/create-manifest”

Requirements

  • Node.js

Workflow steps

11 steps, taken from the step headings in SKILL.md.

  1. Identify Last Release
  2. Gather Changes
  3. Analyze Each Relevant Commit
  4. Draft Changelog
  5. Determine Manifest Fields
  6. Create Manifest
  7. Create Docs-Site Changelogs
  8. Docs Lifecycle
  9. Preflight Before Release
  10. Review and Confirm
  11. Publish Through CI

What it can do on your machine

Read from SKILL.md and the folder at commit f089cb3. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • pnpm
    • node
    • npm
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • registry.npmjs.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Create Manifest loads about 2.5k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 1,005 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~55
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from mindfold-ai/Trellis at commit f089cb3, republished under its AGPL-3.0 licence (© mindfold-ai). 1,005 words, ~2,477 tokens.

Download SKILL.mdSave it as .claude/skills/create-manifest/SKILL.md (or your agent's skills folder).
name
create-manifest
description
Create a Trellis migration manifest and matching docs-site changelogs for a target release by analyzing commits since the previous release. Use when preparing a patch, beta, rc, or minor release manifest.

Create Migration Manifest

Create a migration manifest for a new patch, beta, rc, or minor release based on commits since the previous release.

Arguments

  • $ARGUMENTS - Target version, for example 0.5.15 or 0.6.0-beta.14. If omitted, ask the user.

Package release model

Trellis currently publishes two npm packages from the same git tag:

  • @mindfoldhq/trellis
  • @mindfoldhq/trellis-core

Both packages must always share the exact same version and npm dist-tag. Source uses workspace:*; the packed CLI must depend on the exact published core version.

Official npm publishing is CI-only. Never use local npm publish or pnpm publish to compensate for a failed or partial release. Local verification may use pnpm pack, release-preflight, tests, lint, typecheck, and npm view.

Step 1: Identify Last Release

bash
git tag --sort=-v:refname | head -5

Pick the most recent release tag on the current release line, for example v0.5.14 or v0.6.0-beta.13.

Step 2: Gather Changes

bash
git log <last-release-tag>..HEAD --oneline
git log <last-release-tag>..HEAD --oneline -- packages/cli/src/ packages/core/src/
git log <last-release-tag>..HEAD --oneline -- packages/cli/scripts/ .github/workflows/ package.json packages/*/package.json pnpm-lock.yaml

User-facing changelog coverage should focus on source behavior under packages/cli/src/ and packages/core/src/. Release wiring, workflow, or package dependency changes belong in Internal only when users can observe the behavior, for example install/update reliability or multi-package availability.

Step 3: Analyze Each Relevant Commit

For each commit that touches relevant source or release behavior:

  1. Read the diff:
    bash
    git diff <parent>...<commit> -- packages/cli/src/ packages/core/src/ --stat
    git diff <parent>...<commit> -- packages/cli/scripts/ .github/workflows/ package.json packages/*/package.json pnpm-lock.yaml --stat
  2. Classify as feat, fix, refactor, or chore.
  3. Write a one-line changelog entry in conventional commit style.

Drop pure spec edits, mechanical refactors, and internal-only cleanup unless they materially change what users observe.

Step 4: Draft Changelog

Voice: technical reference doc. Short, clear, plain. Not a story, not a sales pitch. Follow .trellis/spec/docs-site/docs/style-guide.md -> "Changelog / Release Notes Voice".

Do:

  • Lead each ### section with one sentence stating what changed. Then table, code, or bullets. Done.
  • Use feature names as headings, for example ### Joiner onboarding task.
  • Include grep-able identifiers: file paths, function names, flag names, migration entries.
  • Mirror English and Chinese 1:1 in docs-site changelogs: same sections, same tables, same code blocks; only prose translated.

Do not:

  • Add "Why", "Background", or "Rationale" paragraphs.
  • Add a Tests section or test counts.
  • Add Internal entries unless users can observe the behavior.
  • Use rhetorical questions, emotional framing, filler adverbs, or marketing voice.
  • Use outcome-phrased headings that age badly or are not grep-able.

Length cap: each ### section should stay under about 120 words.

Allowed top-level sections, ordered:

  1. Enhancements
  2. Bug Fixes
  3. Internal only if user-observable
  4. Upgrade

Skip empty sections.

Manifest changelog field:

  • Use one string with real \n separators.
  • Group with bold prefixes: **Enhancements:**, **Bug Fixes:**, **Internal:**.
  • Keep it shorter than the MDX changelog because it prints in terminal during trellis update.

Step 5: Determine Manifest Fields

FieldHow to decide
breakingAny breaking API or behavior change. Default false for patch/prerelease fixes.
recommendMigrateAny rename/delete migration the user should run. Default false for patch fixes. When breaking=true and recommendMigrate=true, trellis update exits 1 without --migrate.
migrationsList of rename, rename-dir, delete, or safe-file-delete actions. Usually [] for patch fixes.
migrationGuideMandatory when breaking=true and recommendMigrate=true. Human migration guide inserted into the generated migration task PRD.
aiInstructionsStrongly recommended with migrationGuide. Instructions for AI migration assistance.
notesBrief terminal guidance shown during update.

Breaking releases without migrationGuide produce a broken upgrade experience. packages/cli/scripts/create-manifest.js validates this.

Step 5a: Per-Migration Entry Fields

FieldPurposeRequired
typerename, rename-dir, delete, or safe-file-deleteyes
fromSource path relative to project rootyes
toTarget pathyes for renames
descriptionWhat the migration does, shown in the confirm promptrecommended
reasonVersion-specific context for modified-file promptsoptional
allowed_hashesKnown-pristine SHA256 hashes for safe deletionrequired for safe-file-delete

rename uses the project-local .trellis/.template-hashes.json; it does not use manifest allowed_hashes.

Use:

  • rename when a file moved and has a replacement path.
  • safe-file-delete when a file was removed and has no replacement.
  • safe-file-delete plus notes when a removed file was folded into another command.
Show full SKILL.md (389 more words)Show less

Step 6: Create Manifest

Pipe JSON through stdin:

bash
cat <<'EOF' | node packages/cli/scripts/create-manifest.js
{
  "version": "<version>",
  "description": "<short description>",
  "breaking": false,
  "recommendMigrate": false,
  "changelog": "<changelog text with real newlines>",
  "notes": "<notes>",
  "migrations": []
}
EOF

For breaking releases with many rename entries, generate the entries with a small temporary Node script and pipe the final JSON into create-manifest.js.

Step 7: Create Docs-Site Changelogs

This step is mandatory for every release.

Create both files:

  1. docs-site/changelog/v<version>.mdx
  2. docs-site/zh/changelog/v<version>.mdx

Use the format from recent changelog files. English and Chinese structure must match 1:1.

Update docs-site/docs.json:

  • Add "changelog/v<version>" to the English changelog pages list at the top.
  • Add "zh/changelog/v<version>" to the Chinese changelog pages list at the top.
  • Update navbar changelog links to the new version.

When a <Note> or <Warning> block contains a markdown list, the closing tag must start at column 0:

mdx
<Note>
- bullet
</Note>

Step 8: Docs Lifecycle

The docs-site root path is stable. Development cycles live under beta/ or rc/.

TransitionScriptWhen
Start a new betadocs-site/scripts/docs-beta-start.shBefore the first beta of a new minor/major, for example 0.6.0-beta.0.
Beta to RCdocs-site/scripts/docs-beta-to-rc.shBefore the first rc, for example 0.6.0-rc.0.
RC to GAdocs-site/scripts/docs-promote.shBefore pnpm release:promote.

Per-patch releases (-beta.1, -rc.1, 0.5.1) do not run lifecycle scripts. Write changelog MDX, update docs.json, commit/push docs-site, then bump the main repo submodule pointer.

Full reference: .trellis/spec/docs-site/docs/release-lifecycle.md.

Step 9: Preflight Before Release

Run local verification only; do not publish locally.

bash
node packages/cli/scripts/check-docs-changelog.js --type <beta|rc|promote>
node packages/cli/scripts/release-preflight.js check-versions
node packages/cli/scripts/release-preflight.js verify-packed-cli
node packages/cli/scripts/release-preflight.js publish-plan
pnpm lint
pnpm typecheck
pnpm test

Skip check-docs-changelog only for stable patch releases where that command is not required by the release type.

Step 10: Review and Confirm

Verify:

  1. packages/cli/src/migrations/manifests/<version>.json exists and has valid JSON.
  2. Manifest changelog renders as real newlines.
  3. Both docs-site changelog MDX files exist and match 1:1.
  4. All submodule commits are pushed before the main repo pointer commit (currently docs-site/ + marketplace/). Verify with: git submodule foreach 'sha=$(git rev-parse HEAD); git ls-remote origin $sha | grep -q $sha && echo "ok $name" || echo "FAIL $name $sha"'. Tag-triggered CI does git submodule update --init --recursive and fails on the first unpushed pointer with fatal: remote error: upload-pack: not our ref <SHA>.
  5. @mindfoldhq/trellis and @mindfoldhq/trellis-core versions still match.

Step 11: Publish Through CI

Use the project release script so the tag starts CI:

bash
pnpm release
pnpm release:beta
pnpm release:rc
pnpm release:promote

After CI succeeds, verify public npm:

bash
npm view @mindfoldhq/trellis@<version> version dist-tags --json --registry=https://registry.npmjs.org/
npm view @mindfoldhq/trellis-core@<version> version dist-tags --json --registry=https://registry.npmjs.org/

If CI fails or npm visibility is wrong, fix the workflow/scripts and re-run the CI path. Do not use local publish to fill the gap.

Dogfooding

Breaking releases must run end-to-end migration in a throwaway directory:

bash
mkdir /tmp/migrate-test && cd /tmp/migrate-test && git init -q .
npx -y @mindfoldhq/trellis@<last-ga> init -y -u test --claude --cursor --<platforms>
node <repo>/packages/cli/dist/cli/index.js update --migrate --dry-run
yes | node <repo>/packages/cli/dist/cli/index.js update --migrate --force
yes | node <repo>/packages/cli/dist/cli/index.js update

Watch for orphan files, idempotency churn, and backup bloat.

© mindfold-ai, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .codex/skills/create-manifest of mindfold-ai/Trellis.

Open the folder on GitHubat commit f089cb3

Compare with similar skills

Create Manifest next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Create Manifest compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create Manifest this skillmindfold-ai/Trellis15k—~2.5kAutomated safety check: PassAGPL-3.0
Releasehyhmrright/brooks-lint1.5k—~1.2kAutomated safety check: PassMIT
Release New Versionkcsujeet/ilamy-calendar351—~5.8kAutomated safety check: PassMIT
Releaserogerpadilla/uql125—~617Automated safety check: PassMIT
Cutting A ReleaseTriliumNext/Trilium38k—~3.2kAutomated safety check: PassAGPL-3.0
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT

Similar skills

  • Release

    hyhmrright/brooks-lint

    Cut a brooks-lint release: set the version in package.json, propagate it across all four plugin manifests and every version-bearing text file (README badges, docs site metadata), write the CHANGELOG…

    1.5k GitHub stars~1.2k tokensUpdated 6 days ago
    DevelopmentAuto-check passed
  • Release New Version

    kcsujeet/ilamy-calendar

    Cut a new release of @ilamy/calendar — analyze commits since the last tag, suggest a semver bump, draft a CHANGELOG entry in the project's existing style, run the CI gate, commit, tag, push to…

    351 GitHub stars~5.8k tokensUpdated today
    DevelopmentAuto-check passed
  • Release

    rogerpadilla/uql

    Cut and publish a uql release - review, changelog, commit, version bump and tag, GitHub Release, npm publish, docs site.

    125 GitHub stars~617 tokensUpdated today
    DatabasesAuto-check passed
  • Cutting A Release

    TriliumNext/Trilium

    A skill your agent uses when cutting, preparing, or debugging a Trilium release — bumping the monorepo version, tagging, or diagnosing a failed "Release" workflow run.

    38k GitHub stars~3.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.

    18k GitHub stars~1.9k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Hunk Release Workflow

    modem-dev/hunk

    Maintainer workflow for preparing, publishing, verifying and curating Hunk releases, with confirmation gates before tags, publishes and public edits.

    9.6k GitHub stars~3.8k tokensUpdated today
    DevelopmentAuto-check passed

More from mindfold-ai/Trellis

All 8 skills in this repo
  • Trellis Session Insight

    mindfold-ai/Trellis

    Reach into past AI conversation history through the trellis mem CLI.

    15k GitHub starsUsed in 4 repos~1.7k tokens
    Auto-check passed
  • First Principles Thinking

    mindfold-ai/Trellis

    Systematic first principles thinking for any problem domain.

    15k GitHub stars~4.1k tokensUpdated 11 days ago
    Auto-check passed
  • Trellis Channel

    mindfold-ai/Trellis

    Use Trellis channel for live multi-agent collaboration, spawned workers, cross-agent review, progress inspection, forum channels, and channel log debugging.

    15k GitHub starsUsed in 4 repos~1.2k tokens
    Auto-check passed
  • Trellis Meta

    mindfold-ai/Trellis

    Understand and customize the local Trellis architecture inside a user project.

    15k GitHub starsUsed in 4 repos~3.2k tokens
    Auto-check passed
  • Contribute

    mindfold-ai/Trellis

    Guide for contributing to Trellis documentation and marketplace.

    15k GitHub stars~2.7k tokensUpdated 11 days ago
    Auto-check passed
  • Python Design

    mindfold-ai/Trellis

    Python design patterns for CLI scripts and utilities — type-first development, deep modules, complexity management, and red flags.

    15k GitHub stars~4k tokensUpdated 11 days ago
    Auto-check passed

Works with

Categories

Questions about Create Manifest

What does Create Manifest do?

Create a Trellis migration manifest and matching docs-site changelogs for a target release by analyzing commits since the previous release. Create Manifest is an agent skill from mindfold-ai/Trellis. Create a Trellis migration manifest and matching docs-site changelogs for a target release by analyzing commits since the previous release.

When should I use Create Manifest?

Create Manifest fits situations like: preparing a patch; minor release manifest.

How do I install Create Manifest in Claude Code?

Run `npx skills add mindfold-ai/Trellis --skill create-manifest -a claude-code`. Or copy the skill folder (.codex/skills/create-manifest in mindfold-ai/Trellis) into .claude/skills/create-manifest in your project. Claude Code loads it when a task matches its description.

How do I install Create Manifest in Codex?

Run `npx skills add mindfold-ai/Trellis --skill create-manifest -a codex`. Or copy the skill folder (.codex/skills/create-manifest in mindfold-ai/Trellis) into .agents/skills/create-manifest in your project. Codex loads it when a task matches its description.

Can I use Create Manifest in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mindfold-ai/Trellis --skill create-manifest -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-manifest, .gemini/skills/create-manifest, .github/skills/create-manifest and .opencode/skills/create-manifest in your project.

What does Create Manifest need to run?

Going by SKILL.md and its folder, Create Manifest needs the command-line tools its instructions call (git, pnpm, node, npm and npx). Our summary lists: Node.js.

Does Create Manifest access the network?

SKILL.md names 1 domain. In commands or code: registry.npmjs.org; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Create Manifest safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Create Manifest use?

Create Manifest is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Manifest use?

About 2.5k tokens (SKILL.md is roughly 9.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Create Manifest?

Skills that share tags, products or a category with Create Manifest: Release (hyhmrright/brooks-lint, 1.5k stars), Release New Version (kcsujeet/ilamy-calendar, 351 stars), Release (rogerpadilla/uql, 125 stars) and Cutting A Release (TriliumNext/Trilium, 38k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create Manifest?

mindfold-ai (a GitHub organization) maintains it in mindfold-ai/Trellis, which has 14,914 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on September 29, 2026.

Source: mindfold-ai/Trellis on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.