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…
Create a Trellis migration manifest and matching docs-site changelogs for a target release by analyzing commits since the previous release.
$ npx skills add mindfold-ai/Trellis --skill create-manifest -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mindfold-ai/Trellis create-manifest --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ 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-srcUse ~/.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/
Install the "create-manifest" agent skill from https://github.com/mindfold-ai/Trellis/tree/main/.codex/skills/create-manifest into .claude/skills/create-manifest/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-manifest", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mindfold-ai/Trellis/tree/main/.codex/skills/create-manifestType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mindfold-ai/Trellis --skill create-manifest -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mindfold-ai/Trellis create-manifest --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mindfold-ai/Trellis.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.codex/skills/create-manifest .agents/skills/create-manifest && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "create-manifest" agent skill from https://github.com/mindfold-ai/Trellis/tree/main/.codex/skills/create-manifest into .agents/skills/create-manifest/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-manifest", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mindfold-ai/Trellis --skill create-manifest -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mindfold-ai/Trellis create-manifest --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mindfold-ai/Trellis.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.codex/skills/create-manifest .cursor/skills/create-manifest && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "create-manifest" agent skill from https://github.com/mindfold-ai/Trellis/tree/main/.codex/skills/create-manifest into .cursor/skills/create-manifest/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-manifest", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mindfold-ai/Trellis.git --path .codex/skills/create-manifest--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mindfold-ai/Trellis --skill create-manifest -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mindfold-ai/Trellis create-manifest --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mindfold-ai/Trellis.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.codex/skills/create-manifest .gemini/skills/create-manifest && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "create-manifest" agent skill from https://github.com/mindfold-ai/Trellis/tree/main/.codex/skills/create-manifest into .gemini/skills/create-manifest/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-manifest", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mindfold-ai/Trellis create-manifestInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mindfold-ai/Trellis --skill create-manifest -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mindfold-ai/Trellis.git skills-src && mkdir -p .github/skills && cp -r skills-src/.codex/skills/create-manifest .github/skills/create-manifest && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "create-manifest" agent skill from https://github.com/mindfold-ai/Trellis/tree/main/.codex/skills/create-manifest into .github/skills/create-manifest/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-manifest", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mindfold-ai/Trellis --skill create-manifest -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mindfold-ai/Trellis create-manifest --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mindfold-ai/Trellis.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.codex/skills/create-manifest .opencode/skills/create-manifest && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "create-manifest" agent skill from https://github.com/mindfold-ai/Trellis/tree/main/.codex/skills/create-manifest into .opencode/skills/create-manifest/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-manifest", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
create-manifestCreate 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. 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.
11 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit f089cb3. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
gitpnpmnodenpmnpxFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
registry.npmjs.orgFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
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.
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.
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.
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.
.claude/skills/create-manifest/SKILL.md (or your agent's skills folder).Create a migration manifest for a new patch, beta, rc, or minor release based on commits since the previous release.
$ARGUMENTS - Target version, for example 0.5.15 or 0.6.0-beta.14. If omitted, ask the user.Trellis currently publishes two npm packages from the same git tag:
@mindfoldhq/trellis@mindfoldhq/trellis-coreBoth 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.
git tag --sort=-v:refname | head -5Pick the most recent release tag on the current release line, for example v0.5.14 or v0.6.0-beta.13.
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.yamlUser-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.
For each commit that touches relevant source or release behavior:
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 --statfeat, fix, refactor, or chore.Drop pure spec edits, mechanical refactors, and internal-only cleanup unless they materially change what users observe.
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:
### section with one sentence stating what changed. Then table, code, or bullets. Done.### Joiner onboarding task.Do not:
Length cap: each ### section should stay under about 120 words.
Allowed top-level sections, ordered:
EnhancementsBug FixesInternal only if user-observableUpgradeSkip empty sections.
Manifest changelog field:
\n separators.**Enhancements:**, **Bug Fixes:**, **Internal:**.trellis update.| Field | How to decide |
|---|---|
breaking | Any breaking API or behavior change. Default false for patch/prerelease fixes. |
recommendMigrate | Any rename/delete migration the user should run. Default false for patch fixes. When breaking=true and recommendMigrate=true, trellis update exits 1 without --migrate. |
migrations | List of rename, rename-dir, delete, or safe-file-delete actions. Usually [] for patch fixes. |
migrationGuide | Mandatory when breaking=true and recommendMigrate=true. Human migration guide inserted into the generated migration task PRD. |
aiInstructions | Strongly recommended with migrationGuide. Instructions for AI migration assistance. |
notes | Brief terminal guidance shown during update. |
Breaking releases without migrationGuide produce a broken upgrade experience. packages/cli/scripts/create-manifest.js validates this.
| Field | Purpose | Required |
|---|---|---|
type | rename, rename-dir, delete, or safe-file-delete | yes |
from | Source path relative to project root | yes |
to | Target path | yes for renames |
description | What the migration does, shown in the confirm prompt | recommended |
reason | Version-specific context for modified-file prompts | optional |
allowed_hashes | Known-pristine SHA256 hashes for safe deletion | required 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.Pipe JSON through stdin:
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": []
}
EOFFor breaking releases with many rename entries, generate the entries with a small temporary Node script and pipe the final JSON into create-manifest.js.
This step is mandatory for every release.
Create both files:
docs-site/changelog/v<version>.mdxdocs-site/zh/changelog/v<version>.mdxUse the format from recent changelog files. English and Chinese structure must match 1:1.
Update docs-site/docs.json:
"changelog/v<version>" to the English changelog pages list at the top."zh/changelog/v<version>" to the Chinese changelog pages list at the top.When a <Note> or <Warning> block contains a markdown list, the closing tag must start at column 0:
<Note>
- bullet
</Note>The docs-site root path is stable. Development cycles live under beta/ or rc/.
| Transition | Script | When |
|---|---|---|
| Start a new beta | docs-site/scripts/docs-beta-start.sh | Before the first beta of a new minor/major, for example 0.6.0-beta.0. |
| Beta to RC | docs-site/scripts/docs-beta-to-rc.sh | Before the first rc, for example 0.6.0-rc.0. |
| RC to GA | docs-site/scripts/docs-promote.sh | Before 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.
Run local verification only; do not publish locally.
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 testSkip check-docs-changelog only for stable patch releases where that command is not required by the release type.
Verify:
packages/cli/src/migrations/manifests/<version>.json exists and has valid JSON.changelog renders as real newlines.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>.@mindfoldhq/trellis and @mindfoldhq/trellis-core versions still match.Use the project release script so the tag starts CI:
pnpm release
pnpm release:beta
pnpm release:rc
pnpm release:promoteAfter CI succeeds, verify public npm:
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.
Breaking releases must run end-to-end migration in a throwaway directory:
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 updateWatch 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
Just SKILL.md in .codex/skills/create-manifest of mindfold-ai/Trellis.
Open the folder on GitHubat commit f089cb3
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Create Manifest this skillmindfold-ai/Trellis | 15k | — | ~2.5k | Automated safety check: Pass | AGPL-3.0 | |
| Releasehyhmrright/brooks-lint | 1.5k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Release New Versionkcsujeet/ilamy-calendar | 351 | — | ~5.8k | Automated safety check: Pass | MIT | |
| Releaserogerpadilla/uql | 125 | — | ~617 | Automated safety check: Pass | MIT | |
| Cutting A ReleaseTriliumNext/Trilium | 38k | — | ~3.2k | Automated safety check: Pass | AGPL-3.0 | |
| Verdaccio Pull Request Workflowverdaccio/verdaccio | 18k | — | ~1.9k | Automated safety check: Pass | MIT |
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…
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…
rogerpadilla/uql
Cut and publish a uql release - review, changelog, commit, version bump and tag, GitHub Release, npm publish, docs site.
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.
verdaccio/verdaccio
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.
modem-dev/hunk
Maintainer workflow for preparing, publishing, verifying and curating Hunk releases, with confirmation gates before tags, publishes and public edits.
mindfold-ai/Trellis
Reach into past AI conversation history through the trellis mem CLI.
mindfold-ai/Trellis
Systematic first principles thinking for any problem domain.
mindfold-ai/Trellis
Use Trellis channel for live multi-agent collaboration, spawned workers, cross-agent review, progress inspection, forum channels, and channel log debugging.
mindfold-ai/Trellis
Understand and customize the local Trellis architecture inside a user project.
mindfold-ai/Trellis
Guide for contributing to Trellis documentation and marketplace.
mindfold-ai/Trellis
Python design patterns for CLI scripts and utilities — type-first development, deep modules, complexity management, and red flags.
Works with
Categories
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.
Create Manifest fits situations like: preparing a patch; minor release manifest.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.