用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/diegosouzapw/awesome-omni-skill --skill task-work命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Token-efficient tracking for AI orchestration. CLI-first for status updates (~50 tokens), agent fallback for complex ops (~1KB). Use when: updating task status, querying blockers, creating progress files, validating phases.
AshAi extension guidelines for integrating AI capabilities with Ash Framework. Use when implementing vectorization/embeddings, exposing Ash actions as LLM tools, creating prompt-backed actions, or setting up MCP servers. Covers semantic search, LangChain integration, and structured outputs.
This skill should be used when solving hard questions, complex architectural problems, or debugging issues that benefit from GPT-5 Pro or GPT-5.1 thinking models with large file context. Use when standard Claude analysis needs deeper reasoning or extended context windows.
基于 SOC 职业分类
正在显示 SKILL.md
| name | task-work |
| description | Work on a kspec task with proper lifecycle - verify, start, note, submit, PR, complete. |
Base directory for this skill: /home/chapel/Projects/kynetic-spec/.claude/skills/task-work
Structured workflow for working on tasks. Full lifecycle from start through PR merge.
# Start the workflow
kspec workflow start @task-work-session
kspec workflow next --input task_ref="@task-slug"
Before starting new work, check for existing in-progress or pending_review tasks.
kspec session start # Shows active work at the top
Priority order:
Always inherit existing work unless user explicitly says otherwise. If there's an in_progress task, pick it up and continue. If there's a pending_review task, check the PR status and push it to completion.
Only start new work when:
This prevents orphaned work and ensures tasks get completed.
pending → in_progress → pending_review → completed
task start → in_progress (working on it)task submit → pending_review (code done, PR created, awaiting merge)task complete → completed (PR merged)10 steps for full task lifecycle:
# See available tasks
kspec tasks ready
# Get task details
kspec task get @task-slug
# Start working (in_progress)
kspec task start @task-slug
# Add notes as you work
kspec task note @task-slug "What you're doing..."
# Submit for review (pending_review) - code done, PR ready
kspec task submit @task-slug
# Complete after PR merged (completed)
kspec task complete @task-slug --reason "Summary of what was done"
Before starting, check if work might already be done - but always validate yourself:
# Check git history for related work
git log --oneline --grep="feature-name"
git log --oneline -- path/to/relevant/files
# If code/tests exist, VERIFY they actually work:
npm test -- --grep "relevant-tests"
# Review code against acceptance criteria
# Check coverage is real, not just test.skip()
Task notes provide historical context, but never trust notes as proof of completion. If a task is in the queue, there's a reason - validate independently:
Treat verification like a code review: check the actual code and tests against the acceptance criteria. Don't rubber-stamp based on notes.
To mark a task complete as "Already implemented", you must:
If tests are skipped, broken, or missing coverage - the task is NOT done. Fix the gaps.
Tasks describe expected outcomes, not rigid boundaries. During work, you may discover:
Tests need implementation: A "testing" task may reveal missing functionality. Implementing that functionality is in scope - the goal is verified behavior, not just test files.
Implementation needs tests: An "implementation" task includes proving it works. Add tests.
DoD constraints are hard requirements: If the task notes include Definition of Done criteria, those are not suggestions. Never produce deliverables that violate DoD.
Expand scope (do it yourself) when:
Escalate (ask user) when:
test.skip() as a deliverable: Never use test.skip() to document missing functionality unless explicitly approved by user. Skipped tests give false coverage and fail the goal of verification.
Literal task title interpretation: "Add tests for X" means "ensure X is verified." If X doesn't exist, implement it first.
Checkbox completion: Completing something is not the goal. Completing the right thing is. If you can't achieve the actual goal, ask for guidance rather than delivering a hollow artifact.
Trusting notes without validation: Notes saying "already done" or "tests exist" are not proof. Run the tests. Check the code. Verify against ACs. If a task is in the ready queue, assume there's unfinished work until you prove otherwise.
"Skipped in CI" as acceptable: Tests that skip in CI are gaps, not completed work. Either fix the CI issue or document why it's acceptable (with user approval).
Automation mode shortcuts: Automation mode means "make good decisions autonomously" - the same decisions a skilled human would make. It does NOT mean take shortcuts, skip hard problems, or produce placeholder deliverables.
Add notes during work, not just at the end:
Good notes help future sessions understand context:
# Good: explains decision
kspec task note @task "Using retry with exponential backoff. Chose 3 max retries based on API rate limits."
# Bad: no context
kspec task note @task "Done"
Include task trailer in commits:
feat: add user authentication
Implemented JWT-based auth with refresh tokens.
Sessions expire after 24h.
Task: @task-add-auth
Spec: @auth-feature
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This enables kspec log @task to find related commits.
Submit (task submit):
pending_reviewComplete (task complete):
completed--force to complete from any state (for cleanup or stuck tasks)Why this matters:
kspec tasks ready won't show pending_review tasks as availableAfter completing a task:
kspec tasks ready/local-review for quality check/pr to create PR@pr-review-merge workflowYou are running in autonomous loop mode. Every action is logged and audited. Work quality matters - automation mode means making the same decisions a skilled human would make, not taking shortcuts.
kspec workflow start @task-work-loop
Loop mode is NOT a free pass to:
You are accountable for real progress. All notes, commands, and decisions are recorded. A human will review this session. Do the work properly.
Get eligible tasks
kspec tasks ready --eligible
Select task (priority order):
in_progress task (continue existing work)Verify work is needed
kspec task complete @task --reason "Already implemented" and EXITStart and implement
kspec task start @task
# Do the work
kspec task note @task "What you did..."
Commit and submit
git add <files> && git commit -m "feat/fix: description
Task: @task-slug"
kspec task submit @task
Create PR and stop responding
/pr
After PR created, stop responding (do NOT call any more commands). Ralph automatically:
Do NOT call end-loop - creating a PR completes ONE task, not the loop.
Many tasks require running services (daemons, servers, databases). You can and must handle these. See AGENTS.md for project-specific commands.
The pattern is always:
Do NOT mark tasks as needs_review just because they require a running service. Start it. Run the tests. Fix failures. That's the job.
Test failures are part of the work, not a reason to stop.
After 3 genuine attempts with different fixes, add a note documenting what you tried and what you learned. Then continue to the next task.
Normal exit: Stop responding. After creating a PR (or blocking a task), simply stop responding. Ralph continues automatically — it checks for remaining eligible tasks at the start of each iteration and exits the loop itself when none remain. You do not need to manage loop termination.
Important: "No eligible tasks" means ALL eligible tasks are done or blocked, not just the one you're working on. If one task is blocked, check for others before stopping.
Turn Completion (normal): Stop responding. Ralph continues automatically. Your turn ends when you stop sending tool calls. Ralph then:
Loop End (explicit signal): kspec ralph end-loop - ends ALL remaining iterations.
Only use when kspec tasks ready --eligible returns empty AND you've verified
no more work is possible.
Common Mistake: Calling end-loop after creating a PR.
When you hit a genuine blocker on a task, the correct pattern is:
kspec tasks ready --eligible - its output is authoritativeTrust the YAML state. If a task's depends_on is empty, it has no dependencies. If kspec tasks ready --eligible lists a task, it IS eligible and ready to work on. Do not invent blocking relationships based on perceived connections between tasks, PRs in CI, or other inferred state. The command output is the source of truth.
| Situation | Action | Correct Response |
|---|---|---|
| Task needs external input | kspec task block | Block task, continue to next |
| Task has spec gap | kspec task block | Block task, continue to next |
| Task requires architectural decision | kspec task block | Block task, mark needs_review, continue |
| Task is complex/difficult | DO THE WORK | Complexity is not a blocker |
| Tests are failing | FIX THEM | Debug and resolve |
| Service needs to be running | START IT | See "Tasks Requiring Services" |
| No more eligible tasks exist | Stop responding | Ralph auto-exits when no tasks remain |
# Pattern: When you hit a genuine blocker mid-task
kspec task note @task "Attempted X, Y, Z. Blocked because: [external reason]"
kspec task block @task --reason "Requires architectural decision on X"
kspec task set @task --automation needs_review
# MUST check for other work — command output is authoritative
kspec tasks ready --eligible
# If tasks exist: pick one and continue
# If empty: stop responding — ralph exits the loop automatically
Ralph automatically exits the loop when no eligible tasks remain — you do not need to signal this. In almost all cases, simply stop responding and let ralph manage loop termination.
end-loop exists only for situations where work is stalling across multiple iterations with no productive progress — something ralph's automatic task checks cannot detect. If you are uncertain whether to end, default to stopping rather than calling end-loop.
# Only if work is genuinely stalling across iterations
kspec ralph end-loop --reason "No progress across N iterations: [description]"
Before calling end-loop, you MUST:
kspec tasks ready --eligible and confirm it returns emptyDo NOT call end-loop:
kspec tasks ready --eligible still shows tasks → work on themThese are NOT reasons to exit, block, or mark needs_review:
What to do instead: Push through. Complexity and difficulty are expected. Block tasks only for genuine external blockers (human decision needed, spec gap, external dependency). If you can theoretically solve it with more effort, it's not blocked - keep working.
automation: eligible tasks are considered. Automation eligibility is determined solely by the automation field, not by task type, title, or description. If a task is marked eligible, work on it — do not re-triage based on whether it looks like a "design task" or any other category.