Agent skill
find-next-ticket-number
Determine the next sequential ticket ID
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/find-next-ticket-number
SKILL.md
Find Next Ticket Number
Purpose
This skill provides the logic to determine the next sequential ticket ID when creating a new ticket. Ticket IDs follow the format TNNNN (e.g., T0001, T0002, T0042).
Usage
Run the provided bash command to find the highest existing ticket number and calculate the next ID.
Bash Command
bash
# Ensure directory exists (defensive, in case bootstrap didn't run)
mkdir -p .ushabti/tickets
# Find the highest ticket number in .ushabti/tickets/
HIGHEST=$(find .ushabti/tickets -maxdepth 1 -type f -name 'T[0-9][0-9][0-9][0-9]-*.yaml' | \
sed -E 's/.*\/T([0-9]{4})-.*/\1/' | \
sort -n | \
tail -1)
# If no tickets exist, start at 1; otherwise increment
if [ -z "$HIGHEST" ]; then
NEXT=1
else
NEXT=$((10#$HIGHEST + 1))
fi
# Format as zero-padded 4-digit number
printf "T%04d\n" $NEXT
How It Works
- Ensure directory exists: Creates
.ushabti/tickets/if it doesn't exist (defensive fallback) - Find ticket files: Searches
.ushabti/tickets/for files matchingT[0-9][0-9][0-9][0-9]-*.yaml - Extract IDs: Uses
sedto extract the 4-digit numeric portion from each filename - Sort: Sorts numerically to find the highest ID
- Calculate next: Increments the highest ID by 1, or starts at 1 if no tickets exist
- Format: Outputs the next ID as zero-padded 4-digit format (TNNNN)
Example Output
If .ushabti/tickets/ contains:
T0001-first-ticket.yamlT0002-second-ticket.yamlT0005-another-ticket.yaml
The command outputs:
T0006
If .ushabti/tickets/ is empty, the command outputs:
T0001
Notes
- The command ignores archived tickets in
.ushabti/tickets/.archived/ - IDs are sequential but may have gaps (e.g., if T0003 and T0004 were created then archived)
- Zero-padding ensures alphanumeric sorting matches numeric order
Didn't find tool you were looking for?