ss-pause-task

ss-pause-task is a skill for Codex from bonnguyenitc/specship. It costs 89 tokens per session (1,084 once invoked), scanned A, original, MIT.

A task-management skill for intentionally setting an unfinished task aside while preserving its current stage and work files.

In plain words
What is it for?
It is for pausing, parking, or holding a task and recording the reason so another session can pick it up.
Why use it?
It clearly distinguishes a task paused by choice from one blocked by a dependency or already finished, so the work can be resumed later without losing context.

Skill for Codex

Written for Codex: agents/openai.yaml present.

Good fit It is for pausing, parking, or holding a task and recording the…

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/bonnguyenitc/specship/ss-pause-task
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add bonnguyenitc/specship --skill ss-pause-task
Clone the repo
git clone --depth 1 https://github.com/bonnguyenitc/specship

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ss-pause-task

README.md
[![agentmods](https://agentmods.dev/badge/skills/bonnguyenitc/specship/ss-pause-task.svg)](https://agentmods.dev/skills/bonnguyenitc/specship/ss-pause-task)
Your own site
<a href="https://agentmods.dev/skills/bonnguyenitc/specship/ss-pause-task"><img src="https://agentmods.dev/badge/skills/bonnguyenitc/specship/ss-pause-task.svg" alt="Measured on agentmods" height="20"></a>
Per session 89 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,084 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00089 $0.01084
Opus 5 $0.00044 $0.00542
Sonnet 5 $0.00018 $0.00217
Haiku 4.5 $0.00009 $0.00108

Measured 6d ago against content hash e9652ec2b97f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

ss-pause-task scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/ss-pause-task/SKILL.md · 37 lines

How it starts

The opening of the file, as written. The whole thing — 37 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Pause Task

Goal: shelve a task on purpose — record that it's intentionally set aside (status: paused) with a reason, while preserving its pipeline stage and every artifact exactly as they are, so ss-resume-task can pick it up later with zero loss.

paused is a deliberate choice, distinct from blocked (stuck on an external dependency, not by choice) and from done (finished). ss-pause-task is a lifecycle skill, not a stage: it touches only status and the log — never stage or artifacts:. It's the inverse of ss-resume-task.

When to use

  • You're stepping away from a task and want it clearly marked so it isn't mistaken for active work, and isn't auto-picked when resolving "the current task".
  • The user asks to pause / park / hold a task.
  • Not for tasks stuck on a dependency (that's just status: blocked, set by the stage skill) and not for finished work (use ss-archive-task).

Shared task state

Part of the task pipeline — see ../WORKFLOW.md → "Task lifecycle". Unlike ss-resume-task, this skill does write tasks/ — that's its job.

Method

Input: an optional task id argument in any form (pause-task TASK-20260723-fix-login, pause-task fix-login, pause-task 007), normalized to the on-disk folder name TASK-<ID>: a full TASK-… id as written; a bare all-digit argument maps to a legacy numeric folder matched as written (don't re-pad or strip leading zeros — 7 and 007 both resolve to TASK-007 if that's the folder); anything else (a slug fragment, or a ticket key like PROJ-123) resolves against tasks/TASK-* and tasks/archive/TASK-* folder names — an exact match (TASK-<argument>) wins, else a unique substring match; several matches → list candidates and ask; none → say so and stop — never fall back to auto-picking another task. A match under tasks/archive/ is already shelved: report it and suggest resume-task <ID> — don't mutate it. No argument → resolve the current task (below).

  1. Locate the task: the normalized id argument, one named in conversation, else the most-recently-updated: task under tasks/TASK-* (skip tasks/archive/* and any status: paused task — already-shelved tasks aren't auto-picked). If several are active or it's ambiguous, list candidates and ask — don't guess.
  2. Check it's pausable: the task must be active or blocked. If it's already paused, say so and stop. If it's done, suggest ss-archive-task instead.
  3. Get the reason: use the reason the user gave; if none, ask one line ("Tạm dừng vì lý do gì?") so the pause is self-explanatory later. Don't invent one.
  4. Write the state in tasks/TASK-<ID>/task.md — get the real time first (date "+%Y-%m-%d %H:%M %Z"):
    • set status: paused; leave stage and every artifacts: value untouched.
    • bump updated:.
    • in the Now block, note it's paused and why (e.g. - Blocked by: none (paused — waiting on design)).
    • Snapshot the working tree: check git status — if this task's work sits uncommitted, list the mid-flight files in the Now block (e.g. - In flight: src/auth.ts, src/auth.test.ts (uncommitted)), so resuming doesn't mistake them for another task's changes. Suggest the user stash or WIP-commit before switching tasks — don't run git yourself.
    • append a dated Pipeline Log line: - <YYYY-MM-DD HH:MM +TZ> paused: <reason> — carrying your agent label (format: ../WORKFLOW.md → Agent handoff).
  5. Confirm to the user: which task, what stage it's frozen at, and that /ss-resume-task <ID> brings it back exactly here.

Read the full file on GitHub · 37 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 37 lines · 89 tokens per session scan A e9652ec2b97f

Subscribe to this mod's changes

ss-pause-task is a skill published in the GitHub repository bonnguyenitc/specship (2 stars, last pushed 28d ago), licensed MIT. It adds 89 tokens to every session and 1,084 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.