Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion bin/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Auto-discovers (no hardcoded skill list) by scanning each organ repo's

- **`PyAutoMind/skills/`** — registry-coupled skills (`create_issue`).
- **`PyAutoBrain/skills/`** — development-workflow skills (`start_dev`,
`start_dev_for_user`, `plan_branches`, `start_library`, `start_workspace`,
`start_dev_for_user`, `start_library`, `start_workspace`,
`ship_library`, `ship_workspace`, `register_and_iterate`, `repo_cleanup`,
`update_issue`).
- **`PyAutoHeart/skills/`** — status / readiness / validation skills
Expand Down
26 changes: 16 additions & 10 deletions bin/check_skill_line_counts.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,25 +35,31 @@ for root in "${ROOTS[@]}"; do
for dir in "$root"/*/; do
[ -d "$dir" ] || continue
name="$(basename "$dir")"
# Primary files: SKILL.md (dispatcher/frontmatter) and the command/body
# <dirname>.md. Supporting docs (reference.md, examples, etc.) are exempt.
# The budget is the skill's MANDATORY LOAD: SKILL.md (dispatcher/
# frontmatter) plus the command/body <dirname>.md, summed — both are read
# on every invocation. Supporting docs (reference.md, examples, etc.) are
# lazy and exempt.
total=0
found=0
for primary in "$dir/SKILL.md" "$dir/$name.md"; do
[ -f "$primary" ] || continue
checked=$((checked + 1))
lines=$(wc -l < "$primary")
if [ "$lines" -gt "$LIMIT" ]; then
echo "OVER ${lines} ${primary#$PYAUTO_ROOT/}"
over=$((over + 1))
fi
found=1
total=$((total + $(wc -l < "$primary")))
done
[ "$found" -eq 1 ] || continue
checked=$((checked + 1))
if [ "$total" -gt "$LIMIT" ]; then
echo "OVER ${total} ${dir#$PYAUTO_ROOT/} (SKILL.md + $name.md)"
over=$((over + 1))
fi
done
done

echo ""
if [ "$over" -eq 0 ]; then
echo "OK: all $checked primary skill files are within $LIMIT lines."
echo "OK: all $checked skills are within the $LIMIT-line mandatory-load budget."
exit 0
else
echo "FAIL: $over primary skill file(s) exceed $LIMIT lines — factor detail into reference.md."
echo "FAIL: $over skill(s) exceed the $LIMIT-line mandatory-load budget — factor detail into reference.md."
exit 1
fi
2 changes: 1 addition & 1 deletion bin/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
# slated to leave PyAutoLabs/; kept only so an old
# checkout still resolves, auto-skipped once gone
# - PyAutoMind/skills/ — registry-coupled skills (create_issue, handoff)
# - PyAutoBrain/skills/ — development-workflow skills (start_*/ship_*/plan_branches/…)
# - PyAutoBrain/skills/ — development-workflow skills (start_*/ship_*/…)
# - PyAutoHeart/skills/ — status / readiness / diagnostic skills
# - PyAutoBuild/skills/ — release-execution skills ONLY (pre_build)
# - autolens_profiling/skills/ — science-profiling skills (profile_likelihood)
Expand Down
15 changes: 14 additions & 1 deletion skills/WORKFLOW.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# PyAuto workflow skills — shared reference

The `start_*` / `ship_*` / `plan_branches` / `register_and_iterate` skills are the
The `start_*` / `ship_*` / `register_and_iterate` skills are the
**development-workflow entry points** of the PyAuto organism. They are *not*
independent reasoning systems: each one is a thin entry point that delegates to
the organs. This file is the shared context every workflow skill points at, so
Expand Down Expand Up @@ -133,6 +133,19 @@ pyauto-heart readiness --json # authoritative GREEN / YELLOW / RED verdict
Tests/smoke runs that feed the verdict are Heart's domain — invoke them through
the vitals faculty rather than re-deriving pass/fail criteria in the skill.

## Cross-harness notes (apply to every workflow skill)

- `/name` references mean "use that skill"; a harness without slash commands
follows the same body file directly.
- "Plan Mode" means: present the plan and wait for explicit user approval
before any file edit.
- If the user gives a development task with **no** PyAutoMind prompt path,
first write a concise prompt under the right `<work-type>/<target>/` folder
(original request verbatim), then continue with that path.
- Where a body delegates mechanical execution to a Sonnet subagent, a harness
without subagents performs the same steps directly, preserving the
judgment/mechanical split above.

## Execution environments

There is **no special "mobile" or "phone" mode** — PyAutoBrain runs the same
Expand Down
134 changes: 0 additions & 134 deletions skills/plan_branches/SKILL.md

This file was deleted.

4 changes: 2 additions & 2 deletions skills/repo_cleanup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ execution-environment model: [`../WORKFLOW.md`](../WORKFLOW.md).

**Distinct from:** `worktree_status` (Heart read-only diagnostic — consulted here,
but this also mutates); post-merge cleanup in `CLAUDE.md` (once per shipped task —
this covers residue when that flow is skipped); `plan_branches` (task start — this
is between-tasks hygiene).
this covers residue when that flow is skipped); the start_dev branch survey
(task start — this is between-tasks hygiene).

## Safety principles (non-negotiable)

Expand Down
30 changes: 8 additions & 22 deletions skills/ship_library/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,25 +5,11 @@ description: Ship PyAutoLabs source-library changes — run tests, commit, push,

# Ship Library

A PyAutoBrain development-workflow entry point. Shipping a library feature is
**feature-dev** work: dev-workflow → vitals faculty → Heart readiness gate →
commit/push/feature-PR, with PyAutoMind holding task state. It is **not** a Build
task — Build is release/packaging only (PyPI/tags/notebooks) and `ship_*` reaches
it solely for the release step. Shared organ boundary, the readiness gate and the
execution-environment model are in [`../WORKFLOW.md`](../WORKFLOW.md).

Use `ship_library.md` in this directory as the authoritative workflow body
(`reference.md` holds the PR format, execution contract and impact analysis).

Follow the command file exactly, adapting Claude-specific references to Codex:

- `/ship_library` means use this skill.
- If the command file delegates mechanical execution to a Claude subagent, Codex
should either use an available subagent tool with the same contract or perform
the same mechanical steps directly while preserving the judgment/mechanical
split in the user-facing workflow.
- Preserve the `## API Changes` PR-body contract because `/start_workspace`,
release review, and downstream workspace migration depend on it.

Do not duplicate or reinterpret the workflow here. If the workflow changes, edit
`ship_library.md`.
Follow [`ship_library.md`](ship_library.md) in this directory exactly — the
authoritative workflow body (`reference.md` holds the PR format, execution
contract and impact analysis). Shared context and cross-harness notes:
[`../WORKFLOW.md`](../WORKFLOW.md). Shipping a library feature is
**feature-dev** work gated by Heart — not a Build task. Preserve the
`## API Changes` PR-body contract — `/start_workspace`, release review, and
downstream workspace migration depend on it. Do not duplicate or reinterpret
the workflow here — if it changes, edit `ship_library.md`.
31 changes: 8 additions & 23 deletions skills/ship_workspace/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,26 +5,11 @@ description: Ship PyAutoLabs workspace and tutorial changes — validate scripts

# Ship Workspace

A PyAutoBrain development-workflow entry point. Shipping a workspace feature is
**feature-dev** work: dev-workflow → vitals faculty → Heart readiness gate →
commit/push/feature-PR/merge, with PyAutoMind holding task state. It is **not** a
Build task — Build is release/packaging only. Shared organ boundary, the
readiness gate and the execution-environment model are in
[`../WORKFLOW.md`](../WORKFLOW.md).

Use `ship_workspace.md` in this directory as the authoritative workflow body
(`reference.md` holds the PR format, merge gate and issue/Mind formats).

Follow the command file exactly, adapting Claude-specific references to Codex:

- `/ship_workspace` means use this skill.
- Slash-command references such as `/smoke_test` refer to the matching Codex
skill or shared command body.
- If the command file delegates mechanical execution to a Claude subagent, Codex
should either use an available subagent tool with the same contract or perform
the same mechanical steps directly.
- Preserve the `## Scripts Changed` PR-body contract and the library-first merge
gate for linked workspace PRs.

Do not duplicate or reinterpret the workflow here. If the workflow changes, edit
`ship_workspace.md`.
Follow [`ship_workspace.md`](ship_workspace.md) in this directory exactly — the
authoritative workflow body (`reference.md` holds the PR format, merge gate and
issue/Mind formats). Shared context and cross-harness notes:
[`../WORKFLOW.md`](../WORKFLOW.md). Shipping a workspace feature is
**feature-dev** work gated by Heart — not a Build task. Preserve the
`## Scripts Changed` PR-body contract and the **library-first merge gate** for
linked workspace PRs. Do not duplicate or reinterpret the workflow here — if it
changes, edit `ship_workspace.md`.
27 changes: 5 additions & 22 deletions skills/start_dev/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,25 +5,8 @@ description: Default entry point for PyAutoLabs development tasks — implement,

# Start Dev

A PyAutoBrain development-workflow entry point. It routes reasoning through the
Brain Feature Agent, consults PyAutoMemory, records state in PyAutoMind, and
hands off to `/start_library` / `/start_workspace`. Shared organ boundary,
agent entry points and the execution-environment model are in
[`../WORKFLOW.md`](../WORKFLOW.md).

Use `start_dev.md` in this directory as the authoritative workflow body
(`reference.md` holds the long-form templates).

Follow the command file exactly, adapting Claude-specific references to Codex:

- `/start_dev <prompt>` means use this skill with the same prompt path.
- If the user gives a development task without a prompt path, first create a
concise prompt file in the appropriate `PyAutoMind/` category and include
the original request verbatim, then use this skill with that prompt path.
- "Plan Mode" means present the plan and wait for explicit user approval before
file edits when this workflow is being used.
- Slash-command references such as `/plan_branches`, `/start_library`, and
`/start_workspace` refer to the matching Codex skill or shared command body.

Do not duplicate or reinterpret the workflow here. If the workflow changes, edit
`start_dev.md`.
Follow [`start_dev.md`](start_dev.md) in this directory exactly — the
authoritative workflow body. `reference.md` holds the long-form templates and
the branch survey; shared context and cross-harness notes are in
[`../WORKFLOW.md`](../WORKFLOW.md). Do not duplicate or reinterpret the
workflow here — if it changes, edit `start_dev.md`.
Loading