Create new tasks in the s9 task database with proper formatting and validation
CRITICAL: This project uses the s9 CLI executable throughout these instructions.
s9 (use in bash commands)site_nine (use in Python imports: from site_nine import ...)All commands in this skill use the s9 executable via bash. You should NOT attempt to import an s9 module in Python code.
I provide comprehensive instructions for creating new tasks in the s9 task database. Use this skill when you need to add new work items to the project.
s9 task create \
--title "Brief task title" \
--objective "What this task accomplishes" \
--role {Administrator|Architect|Engineer|Tester|Documentarian|Designer|Inspector|Operator|Historian} \
--priority {CRITICAL|HIGH|MEDIUM|LOW} \
[--category "Category name"] \
[--description "Detailed description"] \
[--depends-on OTHER_TASK_ID]
Note: Task IDs are auto-generated based on role and priority. You do not need to provide a task ID.
Task IDs are auto-generated using the format: PREFIX-PRIORITY-NUMBER
ADM - AdministratorARC - ArchitectENG - EngineerTST - TesterDOC - DocumentarianDES - DesignerINS - InspectorOPR - OperatorHIS - HistorianOPR-H-0001 - First high-priority Operator taskENG-C-0005 - Critical Engineer task (fifth task overall)DOC-M-0042 - Medium-priority Documentarian task (42nd task overall)The number increments globally across all roles and priorities, ensuring each task has a unique ID.
Assign to the role that will do most of the work:
Common categories:
Architecture - System design workTesting - Test creation and QADocumentation - Docs and guidesSecurity - Security reviews and fixesPerformance - Optimization workBug Fix - Fixing defectsFeature - New functionalityRefactoring - Code improvementInfrastructure - Deployment and toolingUse --depends-on when a task cannot start until another completes:
# Create task that depends on another
s9 task create \
--title "Configure Gateway" \
--objective "Deploy gateway to staging" \
--role Operator \
--priority HIGH \
--depends-on ENG-H-0037
When to use dependencies:
# Create a high-priority Engineer task (ID will be auto-generated)
s9 task create \
--title "Implement Rate Limiting Middleware" \
--objective "Add rate limiting to protect API endpoints from abuse" \
--role Engineer \
--priority HIGH \
--category "Security" \
--description "Implement token bucket rate limiting with configurable limits per endpoint"
# Output: ✓ Created task ENG-H-0007: Implement Rate Limiting Middleware
project.db.opencode/work/tasks/ENG-H-0007.md with templateTODOThe CLI validates:
Verify task was created:
# Use the auto-generated task ID from the create command output
s9 task show ENG-H-0007
--depends-on doesn't exists9 task listRelated Skills:
task-query - Finding and listing taskstask-claim - Claiming tasks to work ontask-management - Overview of task systemDocumentation:
.opencode/data/README.md - Complete s9 system reference