frontier-work
Always-on: when a project has tickets, work the frontier (first unblocked open ticket), mark done, update plan status.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Always-on: when a project has tickets, work the frontier (first unblocked open ticket), mark done, update plan status.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Dispatch Codex to review all unreviewed repository work, then verify its correlated findings ticket or clean result. Use when requesting an independent Codex review, auditing all changes, checking work since the last review, or waiting for Codex findings. Trigger: dispatch codex review, independent review, review all changes, check codex findings, run review agent.
Incremental and full-history repository review with resumable adoption batches. Use when reviewing new work, initializing review tracking, reviewing all work to date, resuming historical review, inspecting unreviewed commits, or reviewing changed tickets. Trigger: review new work, adopt repository, review all history, resume review, review marker, unreviewed commits.
End-of-session handoff that captures current state for the next session. Use when ending a work session, switching context, or before a long break.
Consolidate project artifacts — promote scratch to memory, deduplicate memory, process decisions, organize scripts, update steering/skills accuracy. Use periodically or when the project feels cluttered.
Run and interpret crew-research evals — run.sh flags, scores.jsonl fields, activation TPR/FPR verdicts, resuming interrupted runs. Use when running evals, reading eval results, diagnosing a failing definition, or resuming a dead run. Trigger: run the evals, eval results, scores.jsonl, activation test, TPR, delta threshold, resume the run, skip-completed, known gap.
Best practices for writing tool and helper scripts. Use when creating bash scripts, automation tools, CLI utilities, or any executable that will be run repeatedly by humans or agents.
| name | frontier-work |
| description | Always-on: when a project has tickets, work the frontier (first unblocked open ticket), mark done, update plan status. |
| metadata | {"type":"protocol","invocation":"agent-only","practice":null} |
When a project has tickets, work the frontier.
Check $CREW_TICKET_SOURCES (comma-separated) or default to local,github:
.tickets/*.md frontmatter for status: open with all blocked_by donegh issue list --label ready-for-agent --state open --json number,title,body (only if gh auth'd + GitHub upstream exists)glab issue list --label ready-for-agent --opened (only if GitLab upstream)Use the first source that returns results. Local always takes priority when .tickets/ exists.
The frontier = any ticket where status: open and all blocked_by are done.
When tickets exist and no specific task is given:
tkt ready (env-filtered, priority-aware). If tkt is not on PATH, fall back to scanning sources manually in priority ordertkt ready lists — it already applies lowest-number-first with priority: high jumping the ordertkt claim <id> (pushes visible WIP; a lost claim race names the winner — pick the next frontier ticket instead)Reporter: Codex and Confirmation status: unconfirmed, independently
reproduce every finding before editing. Mark each confirmed, rejected, or
obsolete with evidence; never accept Codex's diagnosis or remedy on authority.When a ticket's acceptance criteria are all met:
tkt close <id> (appends a dated Resolution stub — fill it in; warns on unchecked boxes). Without tkt: edit status: done by hand, commit, pushgh issue close <number> (only if CREW_TICKET_SYNC=true)PLAN.md task graph — mark the ticket complete, note any fog cleared (tkt sync-plan --check reports drift)Ticket creation is a race when 2+ sessions work the same repo (observed twice: archwright 005 pair, crew-research 12/13 collision — both required reconciliation merges).
With tkt (default): tkt new <slug> --title "..." [--blocked-by IDS] [--priority high] does the whole claim protocol in one step — fetch, true-max scan (local + origin), create, commit, push, with automatic renumber on a lost race. Get --blocked-by right at creation; fix later with tkt edit <id>. Reconcile out-of-band collisions with tkt renumber <old> <new> (birth-window only — cited ids are contracts).
Manual fallback (tkt absent):
git fetch, then rescan .tickets/ (local + origin/main) for the true max IDlane: frontmatter when sessions have declared work lanestk on PATH is an UNRELATED third-party tool — never use it on .tickets/ (reads deps not blocked_by, silently hides tickets it can't parse).
/handoff and start fresh for the next ticketThe plan is the single source of truth for work status. Tickets provide detail; the plan provides the map. Never duplicate status in HANDOFF.md or AGENTS.md — reference the plan instead.