From b9567c5e392eff9911a136a1546ee3f02eeddd24 Mon Sep 17 00:00:00 2001 From: Steve Beaulac Date: Sun, 30 Aug 2026 13:40:27 -0400 Subject: [PATCH] refactor: rename dev-workflow skill to implementation-orchestrator The name dev-workflow described a category, not what the skill does. It orchestrates implementation of already-planned tickets, so the new name says that. Skill dir, docs page, name field and openai display name are updated to match; validate-skill.sh moves with the dir and its paths are fixed for the new depth and engineering/ layout. --- ...flow.md => implementation-orchestrator.md} | 8 +++--- .../dev-workflow/scripts/validate-skill.sh | 26 ------------------- .../SKILL.md | 4 +-- .../agents/openai.yaml | 2 +- .../scripts/validate-skill.sh | 26 +++++++++++++++++++ 5 files changed, 33 insertions(+), 33 deletions(-) rename docs/engineering/{dev-workflow.md => implementation-orchestrator.md} (94%) delete mode 100755 skills/engineering/dev-workflow/scripts/validate-skill.sh rename skills/engineering/{dev-workflow => implementation-orchestrator}/SKILL.md (98%) rename skills/engineering/{dev-workflow => implementation-orchestrator}/agents/openai.yaml (76%) create mode 100755 skills/engineering/implementation-orchestrator/scripts/validate-skill.sh diff --git a/docs/engineering/dev-workflow.md b/docs/engineering/implementation-orchestrator.md similarity index 94% rename from docs/engineering/dev-workflow.md rename to docs/engineering/implementation-orchestrator.md index 23b35f6..7867628 100644 --- a/docs/engineering/dev-workflow.md +++ b/docs/engineering/implementation-orchestrator.md @@ -1,6 +1,6 @@ -# Pi development workflow skill +# Pi implementation orchestrator skill -`dev-workflow` implements already-planned tracker tickets from issue selection through isolated implementation worktrees, pull/merge requests, review, merge, and cleanup. +`implementation-orchestrator` implements already-planned tracker tickets from issue selection through isolated implementation worktrees, pull/merge requests, review, merge, and cleanup. It supports: @@ -40,10 +40,10 @@ Invoke it with an optional ticket ID or URL: ```text # Process only ticket 43 -/skill:dev-workflow 43 +/skill:implementation-orchestrator 43 # Process all available tickets in the current repository -/skill:dev-workflow +/skill:implementation-orchestrator ``` The ID must be a tracker issue/ticket, not a branch name, PR/MR ID, or session ID. With an ID, only that ticket is processed. With no ID, the skill considers all open tickets in the current repository. diff --git a/skills/engineering/dev-workflow/scripts/validate-skill.sh b/skills/engineering/dev-workflow/scripts/validate-skill.sh deleted file mode 100755 index f940523..0000000 --- a/skills/engineering/dev-workflow/scripts/validate-skill.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)" -skill="$root/skills/dev-workflow/SKILL.md" -shared_skill="$root/skills/forge-cli/SKILL.md" -recipes=( - "$root/skills/forge-cli/references/tea.md" - "$root/skills/forge-cli/references/gh.md" - "$root/skills/forge-cli/references/glab.md" -) - -[[ -f "$skill" && -f "$shared_skill" && -f "${recipes[0]}" && -f "${recipes[1]}" && -f "${recipes[2]}" ]] || { - echo 'Missing skill or reference file' >&2 - exit 1 -} -head -1 "$skill" | grep -qx -- '---' -grep -q '^name: dev-workflow$' "$skill" -grep -q '^description: ' "$skill" -head -1 "$shared_skill" | grep -qx -- '---' -grep -q '^name: forge-cli$' "$shared_skill" -grep -q '^description: ' "$shared_skill" -node -e 'JSON.parse(require("fs").readFileSync(process.argv[1], "utf8"))' "$root/package.json" -bash -n "$root/skills/forge-cli/scripts/detect-forge.sh" - -printf '%s\n' 'dev-workflow skill is valid' diff --git a/skills/engineering/dev-workflow/SKILL.md b/skills/engineering/implementation-orchestrator/SKILL.md similarity index 98% rename from skills/engineering/dev-workflow/SKILL.md rename to skills/engineering/implementation-orchestrator/SKILL.md index 97772df..bfad937 100644 --- a/skills/engineering/dev-workflow/SKILL.md +++ b/skills/engineering/implementation-orchestrator/SKILL.md @@ -1,10 +1,10 @@ --- -name: dev-workflow +name: implementation-orchestrator description: Implements ready-for-agent tracker tickets through isolated worktrees, pull requests, review, conflict resolution, and merge. Use after wayfinder and planning have produced tickets, with or without a ticket ID/URL; no ticket ID/URL means process available tickets. Does not create planning tickets. disable-model-invocation: true --- -# Development workflow +# Implementation orchestrator Use this skill only after the human-led wayfinder, plan, spec, and ticket phases. **A tracker ticket ID or URL is optional. Without one, process all eligible open tickets in the current repository.** With an argument, process only that ticket. An ID means the forge's issue/ticket identifier, not a branch, session, or PR ID. diff --git a/skills/engineering/dev-workflow/agents/openai.yaml b/skills/engineering/implementation-orchestrator/agents/openai.yaml similarity index 76% rename from skills/engineering/dev-workflow/agents/openai.yaml rename to skills/engineering/implementation-orchestrator/agents/openai.yaml index 7978318..afa8f13 100644 --- a/skills/engineering/dev-workflow/agents/openai.yaml +++ b/skills/engineering/implementation-orchestrator/agents/openai.yaml @@ -1,5 +1,5 @@ interface: - display_name: "Development Workflow" + display_name: "Implementation Orchestrator" short_description: "Implements ready-for-agent tracker tickets through isolated worktrees" policy: allow_implicit_invocation: false diff --git a/skills/engineering/implementation-orchestrator/scripts/validate-skill.sh b/skills/engineering/implementation-orchestrator/scripts/validate-skill.sh new file mode 100755 index 0000000..7e7e60b --- /dev/null +++ b/skills/engineering/implementation-orchestrator/scripts/validate-skill.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash +set -euo pipefail + +root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../../.." && pwd)" +skill="$root/skills/engineering/implementation-orchestrator/SKILL.md" +shared_skill="$root/skills/engineering/forge-cli/SKILL.md" +recipes=( + "$root/skills/engineering/forge-cli/references/tea.md" + "$root/skills/engineering/forge-cli/references/gh.md" + "$root/skills/engineering/forge-cli/references/glab.md" +) + +[[ -f "$skill" && -f "$shared_skill" && -f "${recipes[0]}" && -f "${recipes[1]}" && -f "${recipes[2]}" ]] || { + echo 'Missing skill or reference file' >&2 + exit 1 +} +head -1 "$skill" | grep -qx -- '---' +grep -q '^name: implementation-orchestrator$' "$skill" +grep -q '^description: ' "$skill" +head -1 "$shared_skill" | grep -qx -- '---' +grep -q '^name: forge-cli$' "$shared_skill" +grep -q '^description: ' "$shared_skill" +node -e 'JSON.parse(require("fs").readFileSync(process.argv[1], "utf8"))' "$root/package.json" +bash -n "$root/skills/engineering/forge-cli/scripts/detect-forge.sh" + +printf '%s\n' 'implementation-orchestrator skill is valid'