Address PR review feedback (#683):
The default-branch detection compared the current branch name against
the raw output of `git rev-parse --abbrev-ref origin/HEAD`, which
returns `origin/<name>` (e.g., `origin/develop`). The local branch
name is `develop`, so the comparison never matches on repos whose
default branch is anything other than literal `main` or `master` —
defeating the safety check on `develop`-default repos. Make the
prefix-stripping explicit in the skill text so the agent normalizes
before comparing, matching what ce-commit's Step 1 already does.
End users running ce-commit, ce-commit-push-pr, or ce-pr-description in
their own repos hit the same misclassification trap as agents working in
this repo: a defect remedy that adds code gets labeled `feat:` because
the diff shape looks feature-like. The skills' priority orders for
convention selection enumerated the type list but provided no rule for
choosing between types when more than one could fit.
Add a tight runtime rule to each skill: when conventional commits is the
active convention, default to `fix:` over `feat:` for changes that
remedy broken or missing behavior, and reserve `feat:` for capabilities
that did not previously exist. Other types stay primary when they fit
better. Each skill carries the rule inline because cross-skill shared
references are not supported (per plugin AGENTS.md).
Skill-level versions are tighter than the repo AGENTS.md version (no
regression-test heuristic, no full type roster restated) since SKILL.md
content loads on every invocation and the surrounding step already
enumerates the types. End users may override the default via repo
conventions or explicit instruction.
Phase 4 previously hand-rolled "stage and commit the change," which duplicated
logic that ce-commit and ce-commit-push-pr already encode (convention
detection, default-branch guard, logical splitting, conventional-commit
fallback). Replace with two slash-routed options so the user picks intent:
local commit only or commit + push + PR. Reusing those skills means future
commit-hygiene improvements propagate automatically.
Also split the Handoff menu so /ce-compound and the issue-tracker reply read
as additive "first" steps that re-prompt with the remaining options once
done -- they don't commit anything, so they're rarely the user's terminal
action.
Phase 3 gains an upfront default-branch check. Today the default-branch
guard fires only at commit time inside ce-commit/ce-commit-push-pr, after
the fix has already been edited; surfacing it before edits sets up the
right branch from the start. Single signal -- "are we on main/master/
origin/HEAD?" -- so the check stays out of the way for the common case
where the user is already on a feature branch or in a worktree.
Agents spawned from LFG were blocking forever at the AskUserQuestion
prompt with no user present to respond. In mode:pipeline, default to
headless and skip step 2 entirely.
Bump 3.0.6 -> 3.0.7
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Port scan (find_free_port) only runs when PIPELINE_MODE=1
- Dev server auto-start only runs in pipeline mode; manual invocations
print a help message and stop
- LFG step 6 now passes mode:pipeline to ce-test-browser so parallel
agents claim non-colliding ports automatically
- Bump version 3.0.5 -> 3.0.6
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Always verify preferred port is free; scan upward until finding one
- Auto-start dev server (bin/dev / rails server / npm run dev) on the
claimed port if nothing is listening — no more "please start your server"
- Pass PORT= explicitly so parallel agents on the same machine never
collide on 3000
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add ce-commit-push-pr as step 7 so LFG ends with a pushed branch and open PR
- Remove optional ralph-loop step (step 1) -- simplifies the pipeline
- Renumber all steps and fix cross-references accordingly
- Bump version 3.0.3 -> 3.0.4
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>