From c5569ed44b21b575abd65f4f7077682b857802eb Mon Sep 17 00:00:00 2001 From: SandroMaglione Date: Mon, 28 Sep 2026 06:46:58 +0900 Subject: [PATCH] Make project shipping skills provider-neutral --- .agents/skills/effect-machine-pr/SKILL.md | 7 +++++-- .agents/skills/effect-machine-release/SKILL.md | 5 ++++- .claude/skills/effect-machine-pr | 1 + .claude/skills/effect-machine-release | 1 + AGENTS.md | 13 +++++++++++++ 5 files changed, 24 insertions(+), 3 deletions(-) create mode 120000 .claude/skills/effect-machine-pr create mode 120000 .claude/skills/effect-machine-release diff --git a/.agents/skills/effect-machine-pr/SKILL.md b/.agents/skills/effect-machine-pr/SKILL.md index c34a8e80..f80608ab 100644 --- a/.agents/skills/effect-machine-pr/SKILL.md +++ b/.agents/skills/effect-machine-pr/SKILL.md @@ -1,10 +1,13 @@ --- name: effect-machine-pr -description: Run the complete Effect Machine implementation-to-merge workflow. Use only when the user explicitly invokes `$effect-machine-pr` and wants a repository change implemented from the latest base branch through local validation, a pull request, CI and performance checks, and merge. Do not use for design, review, diagnosis, or implementation that should stop before publication. +description: Run the complete Effect Machine implementation-to-merge workflow in this repository. Use only when the user explicitly requests the effect-machine-pr workflow and wants a change implemented, validated, published as a pull request, checked in CI, and merged. Do not use for design, review, diagnosis, or implementation that should stop before publication. +disable-model-invocation: true --- # Effect Machine PR +This skill applies only to the Effect Machine repository. Accept an explicit request to use `effect-machine-pr` by name or through the host's supported skill selection or command syntax. Discussing or editing this skill does not invoke its shipping workflow. + Ship the requested change through a green, merged pull request. Treat invocation as authorization for the in-scope branch, commits, push, pull request, CI fixes, and final merge; it does not authorize unrelated changes, bypassing protections, or destructive recovery. ## Establish the baseline @@ -13,7 +16,7 @@ Ship the requested change through a green, merged pull request. Treat invocation 2. Inspect the worktree and preserve all user-owned changes. Never discard or overwrite unrelated work. 3. Use the base branch named by the user, or `main` by default. 4. Fetch the latest remote base. In its primary worktree, switch to the base and run a fast-forward-only pull. If the base is checked out in another worktree, branch directly from the freshly fetched `origin/` commit instead. -5. Create a focused `codex/` branch unless the user specifies another name. +5. Create a focused branch named after the change, using lowercase words separated by hyphens, unless the user specifies another name. Keep branch names independent of the agent, editor, or provider. ## Implement the complete change diff --git a/.agents/skills/effect-machine-release/SKILL.md b/.agents/skills/effect-machine-release/SKILL.md index 132459ff..8a795cf7 100644 --- a/.agents/skills/effect-machine-release/SKILL.md +++ b/.agents/skills/effect-machine-release/SKILL.md @@ -1,10 +1,13 @@ --- name: effect-machine-release -description: Run the complete Effect Machine implementation and release workflow. Use only when the user explicitly invokes `$effect-machine-release` and wants a change implemented, validated, merged, included in the Changesets version pull request, and published by the release workflow. Do not use when the requested endpoint is only a feature pull request or merge to main. +description: Run the complete Effect Machine implementation and release workflow in this repository. Use only when the user explicitly requests the effect-machine-release workflow and wants a change implemented, validated, merged, included in the Changesets version pull request, and published. Do not use when the requested endpoint is only a feature pull request or merge to main. +disable-model-invocation: true --- # Effect Machine Release +This skill applies only to the Effect Machine repository. Accept an explicit request to use `effect-machine-release` by name or through the host's supported skill selection or command syntax. Discussing or editing this skill does not invoke its shipping workflow. + Ship the requested change through its feature pull request, the bot-owned Changesets version pull request, and the resulting publish workflow. Treat invocation as authorization to merge both validated pull requests; it does not authorize bypassing protections or merging unrelated, unverified work. ## Ship the feature pull request diff --git a/.claude/skills/effect-machine-pr b/.claude/skills/effect-machine-pr new file mode 120000 index 00000000..15c0a12f --- /dev/null +++ b/.claude/skills/effect-machine-pr @@ -0,0 +1 @@ +../../.agents/skills/effect-machine-pr \ No newline at end of file diff --git a/.claude/skills/effect-machine-release b/.claude/skills/effect-machine-release new file mode 120000 index 00000000..3e3bb793 --- /dev/null +++ b/.claude/skills/effect-machine-release @@ -0,0 +1 @@ +../../.agents/skills/effect-machine-release \ No newline at end of file diff --git a/AGENTS.md b/AGENTS.md index cbc568d5..06678330 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -66,3 +66,16 @@ Use the pull request performance workflows to compare against the base branch; d - Add or update a changeset for changes under `packages/effect-machine/src/` or changes to a publishable package manifest, following the changelog-writing guide in `.changeset/README.md`. - Fill in the pull request template, including the validation performed and the changeset decision. + +## Project skills + +These workflows apply only to this repository and run only when explicitly requested: + +- [effect-machine-pr](.agents/skills/effect-machine-pr/SKILL.md): implement, validate, open a pull request, follow CI and performance checks, and merge. +- [effect-machine-release](.agents/skills/effect-machine-release/SKILL.md): complete the PR workflow, merge the Changesets release pull request, and verify publication. + +Keep one definition of each workflow in `.agents/skills`. Tool-specific discovery folders, such as `.claude/skills`, use relative symlinks to those shared definitions. Keep all discovery paths inside the repository; do not install these skills globally. + +Request a workflow by name or through the host's supported skill selection or command syntax. An agent without skill discovery can read the linked file when the user requests the named workflow. Mentioning, reviewing, or editing a skill is not authorization to run it. + +Keep workflow instructions and branch names independent of the agent, editor, or provider. Preserve explicit invocation in each host's supported metadata, including `disable-model-invocation` frontmatter and `agents/openai.yaml`. For a release, invoke only `effect-machine-release`; it reads and follows the PR workflow itself.