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.
This commit is contained in:
@@ -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:
|
It supports:
|
||||||
|
|
||||||
@@ -40,10 +40,10 @@ Invoke it with an optional ticket ID or URL:
|
|||||||
|
|
||||||
```text
|
```text
|
||||||
# Process only ticket 43
|
# Process only ticket 43
|
||||||
/skill:dev-workflow 43
|
/skill:implementation-orchestrator 43
|
||||||
|
|
||||||
# Process all available tickets in the current repository
|
# 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.
|
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.
|
||||||
@@ -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'
|
|
||||||
+2
-2
@@ -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.
|
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
|
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.
|
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.
|
||||||
|
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
interface:
|
interface:
|
||||||
display_name: "Development Workflow"
|
display_name: "Implementation Orchestrator"
|
||||||
short_description: "Implements ready-for-agent tracker tickets through isolated worktrees"
|
short_description: "Implements ready-for-agent tracker tickets through isolated worktrees"
|
||||||
policy:
|
policy:
|
||||||
allow_implicit_invocation: false
|
allow_implicit_invocation: false
|
||||||
@@ -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'
|
||||||
Reference in New Issue
Block a user