agentleFS
matthewwong525matthewwong525/WongStack/.agents/skills/continue/SKILL.md

continue

Skill7 starsChanged 10 days agoMITView on GitHub

Resume saved work (a change by name, PR, or menu, or an open thread) for /apply.

25 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use dependency-watch, perform-task and 8 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • telegramdesktopSkill

    dependency-watch

    Audit Telegram Desktop dependencies on freshly fetched origin/dev for releases and security fixes, including upstream lag and backport candidates in patched forks. Use for the scheduled dependency monitor or an explicitly requested dependency report.

    Also in 5 projects that use this

  • telegramdesktopSkill

    perform-task

    Resolve, start or resume, implement, review, test, and publish exactly one existing ai-tdesktop task by short slug or full dated id, including rare blocked retries and split-required results. Use when the user invokes $perform-task or /perform-task with a known task name, or when the continue scheduler delegates one selected task. Runs standard review lenses with fast applicability bailouts and selects task-specific domain and evidence instruments without selecting additional work.

    Also in 5 projects that use this

  • JerovinoSkill

    process-inbox

    Processes tasks.md inbox items by triaging each one to its proper location in the vault

    Also in 5 projects that use this

  • raineSkill

    rebase

    Rebase the current branch with smart conflict resolution.

    Also in 6 projects that use this

  • lepinkainenSkill

    code-health

    Analyze codebase health - large files, test coverage gaps, duplicate code, dead/legacy code, and documentation issues. Use when asked to scan, audit, or assess code quality, find refactoring targets, or identify technical debt.

    Also in 3 projects that use this

  • AnthropicSkill

    start

    Set up your bio-research environment and explore available tools. Use when first getting oriented with the plugin, checking which literature, drug-discovery, or visualization MCP servers are connected, or surveying available analysis skills before starting a new project.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

3 rules. 0 are common, 0 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 23 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Check preconditions. This skill owns checkout.

    line 11
  2. Very specific:

    After git fetch origin, run bash "$(git rev-parse --show-toplevel)/.claude/skills/save/scripts/change-candidates.sh" --json --ref …

    line 40
  3. Very specific:

    Never saved (no branch anywhere) → stay on the current branch.

    line 50

“Common” is measured: kept by at least 6 in 10 of the 23 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

/continue

Resume a saved OpenSpec change in a fresh session. The change is the plan and the source of truth (where it lives); its memory facts hold the session context.

Check preconditions. This skill owns checkout; gh resolves only GitHub; Artifacts lists saved branches.

A handle names the work (the rungs): a change name is that change; a PR is the one active change its head branch carries.

Workflow

1. Parse the input

/continue [name-or-PR] [instruction]
  • First token: the handle — a change name, PR number, or PR URL.
  • The rest: an explicit instruction that overrides "work the tasks" in step 4, e.g. /continue add-auth fix the failing test.
  • No handle → run openspec list, and list open non-code threads with node "$(git rev-parse --show-toplevel)/.claude/skills/memory/scripts/memory.mjs" search --type thread --state conversation --limit 10. Offer both in an ordinary ask, recommending what the branch or latest checkpoint points at: each change's name, task progress, and Status: line (its values); each thread's slug, age, and next step. Don't guess.
  • A non-code thread (picked, or a handle naming a topic slug with open threads and no change) → no branch or change. Run memory.mjs show <slug>, recap what is done and next, and hand the rest to /apply as its to-do. Skip steps 2–4.

2. Resolve the change and the branch

  • Change name (a folder under openspec/changes/ or an openspec list entry) → its proposal's **Branch:** value, which may differ from the name, is BRANCH:
    openspec show <name>   # or read openspec/changes/<name>/proposal.md + tasks.md
    node "$(git rev-parse --show-toplevel)/.claude/skills/memory/scripts/memory.mjs" show <name>
    Facts are keyed by the change name, whatever the branch; no facts is normal. No folder in a fresh checkout → git fetch origin, then test each git for-each-ref refs/remotes/origin ref with git cat-file -e "$ref:openspec/changes/$NAME/proposal.md", checking out nothing. One match supplies the proposal (git show that path) and the branch; several need a choice. A proposal with no Branch line never selects a branch by name: stay here for an unsaved plan; ask for the branch or PR when it is saved elsewhere.
  • PR number or URL → the branch is its headRefName; find the one active change in its diff:
    gh pr view <N> --json headRefName,url,title,state
    After git fetch origin, run bash "$(git rev-parse --show-toplevel)/.claude/skills/save/scripts/change-candidates.sh" --json --ref "origin/<headRefName>" --branch "<headRefName>". If you ask, give each candidate's status and task progress. Read the selected folder after checkout.
  • A bare number matching both a PR and an openspec list index → ask which, naming the PR and the change it would load.

3. Check out the branch

With a branch not checked out, switch only by node "$P" "$BRANCH", P="$(git rev-parse --show-toplevel)/.claude/skills/continue/scripts/pickup.mjs".

  • Other unpublished work here (git status --porcelain, or an active change on this branch other than the one asked for) → don't switch. Review with --dry-run, then ask: open the change in a new workspace (Recommended when paseo is installed), /save the current work first, or recap it here and stop.
  • Exit 3 → work new to this computer. Show its files, code first, and what the code does (git show runs nothing). Ask: Switch to it (then its code runs on this computer, with your keys) / Show the code in full / Leave it. Switch reruns with --reviewed <tip>; another exit 3 shows what came after.
  • Exit 4 → name the worktree holding it; stop. Exit 2 → show error; for a missing branch, ask for the right branch or PR as a structured free-text question.
  • Never saved (no branch anywhere) → stay on the current branch; /save will cut it.

4. Orient and continue

Recap the loaded state:

  • The change: 2–4 lines on the work and task progress, its Status: line, and any open questions.
  • The journey: the last 1–3 ## Decision log entries: the why.
  • The session context: open threads first, then live facts the change lacks, with ages. No facts → skip the line; say so when the store is unreachable.
  • State: the checked-out branch, and the PR as the change on GitHub (plain words).
  • Drift check: counts only; never reload the PR diff or review threads unless asked:
    git rev-list --count origin/main..HEAD
    PR=$(gh pr view --json number --jq .number 2>/dev/null)
    if [ -n "$PR" ]; then
      NWO=$(gh repo view --json nameWithOwner --jq .nameWithOwner)
      gh api graphql -f query="query{repository(owner:\"${NWO%/*}\",name:\"${NWO#*/}\"){pullRequest(number:$PR){reviewThreads(first:100){nodes{isResolved}}}}}" \
        --jq '[.data.repository.pullRequest.reviewThreads.nodes[]|select(.isResolved|not)]|length'
    fi
    Fold it into one line, flagging commits ahead of tasks.md or unresolved review comments. Say it as progress unless asked for counts: "3 of 9 steps left, 2 comments from reviewers"; commits ahead of tasks.md become "some work isn't in the plan's checklist yet".

Then:

  • Not checked out (declined or failed in step 3), switched with --reviewed, or told ask before building → build and edit nothing this turn, even with an instruction. End with the next step, offering step 3's three choices, or Build it / Stop here.
  • An explicit instruction → do that, with the change as backdrop.
  • Otherwise (checked out, or no branch yet) → invoke the /apply skill to work the tasks.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.