Files
zyt/.trellis/.backup-2026-04-30T09-50-37/.agents/skills/trellis-finish-work/SKILL.md
T

2.7 KiB

name, description
name description
trellis-finish-work Wrap up the current session: verify quality gate passed, remind user to commit, archive completed tasks, and record session progress to the developer journal. Use when done coding and ready to end the session.

Finish Work

Wrap up the current session: archive the active task (and any other completed-but-unarchived tasks the user wants to clean up) and record the session journal. Code commits are NOT done here — those happen in workflow Phase 3.4 before you invoke this command.

Step 1: Survey current state

python3 ./.trellis/scripts/get_context.py --mode record

This prints:

  • My active tasks — review whether any besides the current one are actually done (code merged, AC met) and should be archived this round.
  • Git status — quick visual on what's dirty.
  • Recent commits — you'll need their hashes in Step 4 for --commit.

If --mode record surfaces other completed tasks not tied to the current session, surface them to the user with a one-shot confirmation: "These N tasks look done — archive them too in this round? [y/N]". Default is no; the current active task is always archived in Step 3 regardless.

Step 2: Sanity check — working tree must be clean

Run:

git status --porcelain

Filter out paths under .trellis/workspace/ and .trellis/tasks/ — those are managed by add_session.py and task.py archive auto-commits and will appear dirty as part of this skill's own work.

If anything else is dirty (any path outside those two prefixes), stop and bail out with:

"Working tree has uncommitted code changes. Return to workflow Phase 3.4 to commit them before running $finish-work."

Do NOT run git commit here. Do NOT prompt the user to commit. The user goes back to Phase 3.4 and the AI drives the batched commit there.

Step 3: Archive task(s)

python3 ./.trellis/scripts/task.py archive <task-name>

At minimum: the current active task (if any). Plus any extra tasks the user confirmed in Step 1. Each archive produces a chore(task): archive ... commit via the script's auto-commit.

If there is no active task and the user did not confirm any cleanup archives, skip this step.

Step 4: Record session journal

python3 ./.trellis/scripts/add_session.py \
  --title "Session Title" \
  --commit "hash1,hash2" \
  --summary "Brief summary"

Use the work-commit hashes produced in Phase 3.4 (visible in Step 1's Recent commits list, or via git log --oneline) for --commit. Do not include the archive commit hashes from Step 3. This produces a chore: record journal commit.

Final git log order: <work commits from 3.4>chore(task): archive ... (one or more) → chore: record journal.