Agent skill

Jobs

by keli-wen in keli-wen/agy-staff

Manage agy staffer background jobs - collect results, check status, cancel, follow-up conversation, and setup.

MITAuto-check passedBackend & APIs

Install Jobs

skills CLI
$ npx skills add keli-wen/agy-staff --skill jobs -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install keli-wen/agy-staff jobs --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/keli-wen/agy-staff.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/jobs .claude/skills/jobs && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
jobs
GitHub stars
733
Token cost
~2.7k tokens
SKILL.md length
1,433 words
Files
3 (incl. references)
Skills in repo
13
Repo updated
First seen
Licence
MIT

At a glance

Manage agy staffer background jobs - collect results, check status, cancel, follow-up conversation, and setup.

  • Works in 2 steps: Keep the returned job id. Start wait… → For wait, branch on the exit code
  • An agy job needs collecting
  • SKILL.md covers Collect the result, Other commands, Follow-up instructions and Progress and recovery
  • Calls git and node

What it does

Jobs is an agent skill from keli-wen/agy-staff. Manage agy staffer background jobs - collect results, check status, cancel, follow-up conversation, and setup. Use when an agy job needs collecting, when the user asks "is the agy job done", "show agy's result", "cancel the agy job", "continue the agy conversation", or "set up agy". This is the orchestrator's skill; the persona skills (staffer/researcher/reviewer/implementer) point here.

Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/setup.md` and `references/troubleshooting.md`).

It sits in Backend & APIs, covering Background jobs. The repository describes itself as: Hire Google's Antigravity CLI (agy) as a fast Gemini staffer for Claude Code and OpenAI Codex. The licence is MIT.

When your agent uses it

  • An agy job needs collecting
  • The user asks is the agy job done
  • Show agys result
  • Cancel the agy job

Example prompts

  • “is the agy job done”
  • “show agy”
  • “cancel the agy job”
  • “/jobs”

Requirements

  • Pre-approved tools (allowed-tools): Bash(node:*), AskUserQuestion

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. Keep the returned job id. Start wait --timeout 10m in the background, using the same unsandboxed context as launch. Use a separate wait…
  2. For wait, branch on the exit code

What it can do on your machine

Read from SKILL.md and the folder at commit 65a1ab4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash(node:*)
    • AskUserQuestion

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Jobs loads about 2.7k tokens when it runs, and up to ~4.4k if it reads all its reference files. Until then it costs about 99 tokens; SKILL.md has 1,433 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~99
When it runs · the whole SKILL.md, loaded when a task matches
~2.7k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from keli-wen/agy-staff at commit 65a1ab4, republished under its MIT licence (© keli-wen). 1,433 words, ~2,660 tokens.

Download SKILL.mdSave it as .claude/skills/jobs/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
jobs
description
Manage agy staffer background jobs - collect results, check status, cancel, follow-up conversation, and setup. Use when an agy job needs collecting, when the user asks "is the agy job done", "show agy's result", "cancel the agy job", "continue the agy conversation", or "set up agy". This is the orchestrator's skill; the persona skills (staffer/researcher/reviewer/implementer) point here.
allowed-tools
Bash(node:*), AskUserQuestion
user-invocable
false

agy jobs

Manage background staffer/research/review/implement jobs. State is per repository in .agy-staff/. Only ask runs synchronously.

This file lives at <plugin-root>/skills/jobs/SKILL.md:

bash
node "<skill-dir>/../../companion/agy-companion.mjs" <command> [args]

Collect the result

Default flow: prepare the prompt → dispatch → wait for the final result → validate as needed. While a job is running, do not proactively call observe/status, read logs or inspect intermediate artifacts. Do not query progress for routine updates or create sleep/observe loops. Observe only when the user explicitly asks for progress; diagnose after receiving a failure or a result requiring intervention.

  1. Keep the returned job id. Start wait <id> --timeout 10m in the background, using the same unsandboxed context as launch. Use a separate wait for each job; never wait for several jobs serially in one shell.
  2. For wait, branch on the exit code:
CodeMeaningNext action
0Invocation ended; response text deliveredAssess whether it satisfies the task. Review attached diagnostics; inspect further only as needed.
2Still running; wait soft-expiredWait again for the same job. The attached snapshot is not a request to inspect progress or intervene.
3Error or crashRead the error and recovery information below.
4CanceledComplete any already-authorized follow-up; otherwise report cancellation.
5Attention: resumable timeoutInspect partial workspace changes; ask whether to continue with the suggested timeout or stop. Continue only after explicit user confirmation.
1Invalid command or other command errorQuote the error and correct the named problem.

done describes invocation and response delivery, not task acceptance. Preserve agy-cli response text and diagnostics; a nonempty response may only acknowledge launched background work. Successful calls with warnings include a bounded log tail on stderr and a full-log pointer. The orchestrator assesses the response and artifacts, uses observe or diagnostics if the returned result needs investigation, and decides whether to propose continuation. Keep the recovery confirmation rules below; do not infer timeout from response wording or add routine progress polling.

When the user explicitly asks for progress, use observe <id> and answer from that snapshot, keeping any pending wait open. An already returned snapshot may answer the question; do not duplicate it or turn one question into recurring observation.

Collecting a pending wait command is necessary result collection, not active observation. Host collectors (for example, Codex write_stdin) return that command's output; an outer functions.wait resumes a yielded functions.exec call. They do not independently read AGY progress. Prefer background completion delivery; if host collection requires polling, use a long supported blocking wait rather than short empty polls or sleep loops. Keep the same pending command until it returns; only restart wait for the same job after exit 2.

A wait expires without stopping the worker. Cancel only when the task calls for stopping; silence or soft expiry alone is not a reason. For a user-requested progress answer or diagnosis after failure/required intervention, read a bounded details excerpt only if the returned information leaves a specific question unanswered. Never inspect logs or intermediate artifacts for routine reassurance.

When using lead, let the lead assess and synthesize the results. For direct persona invocations, deliver short results verbatim; summarize long results with their file path. Keep quoted verdicts, numbers and errors exact. For implement, also report the workspace state and inspect changes with git diff; verify any Git delivery that the user explicitly requested.

Follow through to a result unless the user asked only to launch. If the host cannot deliver background command results, use the longest practical wait within its tool-call limit (bare wait defaults to 100s). The host controls when the model receives a tool result; this plugin cannot schedule a future model invocation by itself.

Other commands

CommandPurpose
observe [id]On an explicit user progress request, or for diagnosis after failure/required intervention: bounded JSON with progress or terminal metadata and recovery pointers. Never returns report text.
status [id]List jobs or show one job's state and log tail.
result [id]Reprint stored output; default to the latest finished job.
cancel <id>Stop that job's execution. Interrupting wait does not cancel it.
continue --job <id> --prompt "..."Resume the job's conversation with its original mode/model/profile; create a linked new job.
continue --prompt "..."Continue the latest conversation; --conversation <id> selects a known older one.
restart <id>Start the original task/configuration again without its conversation; create a linked new job.
setup [--apply] [--restrict <modes|none>]Optional permission setup; read references/setup.md first.

Wait/observe default to the latest job. Observe uses the same status exit codes, but exit 0 means finished, not full result delivered. Collect the existing wait session, or use result <id> if none is pending; do not start another wait or expect observe to consume the pending session. Failed/canceled/attention observations provide bounded recovery metadata; wait/result deliver the full report. A continued ask remains synchronous. result also returns exit 5 for attention (its legacy exit behavior for other terminal states is unchanged).

Continuation and restart may be invoked from the root or any subdirectory of the same worktree; execution returns to the original cwd. Generic continue fails for an unrecorded conversation ID. It does not search other worktrees or infer configuration from an unrelated conversation. For continuation, explicit model/profile flags override the inherited values.

Cancel records a request first and returns success only after the worker has stored the cancellation report and published canceled. A crashed job keeps its crash diagnostics. A cancellation error requires inspection; it does not mean execution has stopped.

Show full SKILL.md (540 more words)Show less

Follow-up instructions

Use continue --job <id> to target an existing AGY conversation. It starts a new invocation once the current execution has stopped. While that job is still running, the companion refuses the follow-up with exit 1, reporting the job ID and status; nothing is queued. Decide whether to wait or cancel.

  • Finished: continue directly with the next assignment or revision.
  • Running, feedback can wait: collect the current result, then continue.
  • Running, direction must change now: cancel the active job, confirm termination, then continue with the updated brief. An already-authorized change of direction does not require another confirmation solely for this sequence.

Include relevant decisions made in the host conversation, what changed, and what the worker should do next. After interruption, reconcile partial artifacts before repeating work: cancellation does not roll back edits, and the conversation may not contain the last interrupted step. If no usable conversation exists, start a fresh task with the updated brief and retained work. Timeout recovery still follows the rules below.

Progress and recovery

Progress contains up to five recent tool calls, input/output excerpts, and the latest response text. Timestamps, incomplete text and truncation are labeled. It is a snapshot, not a judgment of useful progress. Reads do not consume history or reset deadlines. Payload limits and file layout are in ../../docs/REFERENCE.md.

The worker has a separate hard limit: default 60m, configurable with launch --timeout up to 120m. AGY receives the same response timeout; the worker independently enforces the overall budget, including initialization. At that limit it stops execution. If response text has already arrived, it delivers that text with a warning for the orchestrator to assess; otherwise it reports hard_timeout, the last snapshot, logs, known conversation ID and original configuration. Before recovery, inspect git status and git diff so partial changes are accounted for. Prefer continue --job when a conversation exists; otherwise use restart. Each creates a fresh 60m budget unless --timeout is specified, and preserves the old terminal record. Restart refreshes workspace context; older specifications explicitly label historical snapshots and append current context. An empty response at either the AGY response deadline or worker hard limit becomes attention (exit 5) when a conversation ID is known, otherwise error. The response-timeout classifier accepts explicit TIMEOUT statuses and AGY's exact ERROR / timeout waiting for response payload; unrelated tool/network/auth/quota errors keep their own failure path. The report includes pre-run/current workspace status, original configuration and an exact continuation command with a doubled timeout capped at 120m for background jobs. At that ceiling, offer a narrower task. Ask the user whether to continue or stop and inspect; do not automatically retry, restart or continue after a timeout. Run the proposed recovery only after explicit user confirmation. A wait soft expiry is still exit 2 and requires no new execution.

Warning-free success removes intermediate stream/snapshot files after results are stored. Errors, cancellation, hard timeout and warning results retain them; results, logs and conversation metadata remain available. Older jobs may have no progress files.

Quote errors and add a concise diagnosis. For sandbox/permission errors or an apparent crash without a result, check that collection uses the same unsandboxed context as launch; see references/troubleshooting.md. For restricted empty responses, relay the companion's permission guidance. Do not switch repositories to bypass a precondition.

© keli-wen, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in skills/jobs of keli-wen/agy-staff.

  • SKILL.md
  • references/setup.md
  • references/troubleshooting.md

Open the folder on GitHubat commit 65a1ab4

Compare with similar skills

Jobs next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Jobs compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Jobs this skillkeli-wen/agy-staff733—~2.7kAutomated safety check: PassMIT
Trigger.dev Configurationpapermark/papermark9.2k—~1.2kAutomated safety check: PassCustom licence
FoundatioFoundatioFx/Foundatio2.1k—~3.9kAutomated safety check: PassApache-2.0
Laravel SpecialistJeffallan/claude-skills12k1 repos~2.1kAutomated safety check: PassMIT
Trigger.dev Realtimepapermark/papermark9.2k—~1.7kAutomated safety check: PassCustom licence
NubaseOtterMind/Nubase622—~2.2kAutomated safety check: NotesApache-2.0

Similar skills

  • Trigger.dev Configuration

    papermark/papermark

    Configures Trigger.dev projects through trigger.config.ts, with build extensions for Prisma, Playwright, Puppeteer, FFmpeg, Python and system packages.

    9.2k GitHub stars~1.2k tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Foundatio

    FoundatioFx/Foundatio

    A skill your agent uses when working with Foundatio infrastructure abstractions for .NET -- caching, queuing, messaging, file storage, distributed locking, or background jobs.

    2.1k GitHub stars~3.9k tokensUpdated 2 days ago
    Backend & APIsAuto-check passed
  • Laravel Specialist

    Jeffallan/claude-skills

    Builds Laravel 10+ applications with Eloquent models, Sanctum authentication, Horizon queues, API resources and Livewire components, tested with Pest or PHPUnit.

    12k GitHub starsUsed in 1 repo~2.1k tokens
    Backend & APIsAuto-check passed
  • Trigger.dev Realtime

    papermark/papermark

    Shows how to subscribe to Trigger.dev task runs from the backend and from React for progress indicators, live dashboards, AI response streams and approval waits.

    9.2k GitHub stars~1.7k tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Nubase

    OtterMind/Nubase

    A skill your agent uses when the user mentions Nubase broadly, wants a backend for an AI-generated app, or needs to deploy/publish generated code online — across Database, Auth, Storage, Assets…

    622 GitHub stars~2.2k tokensUpdated 13 days ago
    Backend & APIsAuto-check: notes
  • Trigger.dev Background Tasks

    papermark/papermark

    Guides building durable background tasks, scheduled jobs and queues with Trigger.dev, including retries, waits, idempotency and concurrency limits.

    9.2k GitHub stars~2.1k tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed

More from keli-wen/agy-staff

All 13 skills in this repo
  • Agy Reviewer

    keli-wen/agy-staff

    Get a second-opinion review from Google's Antigravity CLI (agy staffer, fast Gemini) - of code (a diff, PR, working tree) or of a decision, plan, or design.

    733 GitHub stars~1.5k tokensUpdated 4 days ago
    Auto-check passed
  • Reviewer

    keli-wen/agy-staff

    Get a second-opinion review from Google's Antigravity CLI (agy staffer, fast Gemini) - of code (a diff, PR, working tree) or of a decision, plan, or design.

    733 GitHub stars~1.3k tokensUpdated 4 days ago
    Auto-check passed
  • Agy Ask

    keli-wen/agy-staff

    Ask Google's Antigravity CLI (agy staffer, fast Gemini) a cheap one-shot question - the fast zero-tool mode and the post-install smoke test.

    733 GitHub stars~915 tokensUpdated 4 days ago
    Auto-check passed
  • Agy Lead

    keli-wen/agy-staff

    Orchestrate an ongoing task with AGY while the current agent owns key decisions, review, and delivery.

    733 GitHub stars~1.6k tokensUpdated 4 days ago
    Auto-check passed
  • Agy Researcher

    keli-wen/agy-staff

    Delegate a deep research or survey task to Google's Antigravity CLI (agy staffer, fast Gemini).

    733 GitHub stars~1.1k tokensUpdated 4 days ago
    Auto-check passed
  • Agy Researcher

    keli-wen/agy-staff

    Delegate a deep research or survey task to Google's Antigravity CLI (agy staffer, fast Gemini).

    733 GitHub stars~1.1k tokensUpdated 4 days ago
    Auto-check passed

Categories

Questions about Jobs

What does Jobs do?

Manage agy staffer background jobs - collect results, check status, cancel, follow-up conversation, and setup. Jobs is an agent skill from keli-wen/agy-staff. Manage agy staffer background jobs - collect results, check status, cancel, follow-up conversation, and setup.

When should I use Jobs?

Jobs fits situations like: an agy job needs collecting; the user asks is the agy job done; show agys result; cancel the agy job.

How do I install Jobs in Claude Code?

Run `npx skills add keli-wen/agy-staff --skill jobs -a claude-code`. Or copy the skill folder (skills/jobs in keli-wen/agy-staff) into .claude/skills/jobs in your project. Claude Code loads it when a task matches its description.

How do I install Jobs in Codex?

Run `npx skills add keli-wen/agy-staff --skill jobs -a codex`. Or copy the skill folder (skills/jobs in keli-wen/agy-staff) into .agents/skills/jobs in your project. Codex loads it when a task matches its description.

Can I use Jobs in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add keli-wen/agy-staff --skill jobs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/jobs, .gemini/skills/jobs, .github/skills/jobs and .opencode/skills/jobs in your project.

What does Jobs need to run?

Going by SKILL.md and its folder, Jobs needs the command-line tools its instructions call (git and node). Its frontmatter pre-approves these tools: Bash(node:*), AskUserQuestion.

Does Jobs access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Jobs safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Jobs use?

Jobs is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Jobs use?

About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.8k tokens, read only when the agent opens those files.

What are the alternatives to Jobs?

Skills that share tags, products or a category with Jobs: Trigger.dev Configuration (papermark/papermark, 9.2k stars), Foundatio (FoundatioFx/Foundatio, 2.1k stars), Laravel Specialist (Jeffallan/claude-skills, 12k stars) and Trigger.dev Realtime (papermark/papermark, 9.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Jobs?

keli-wen (a GitHub user) maintains it in keli-wen/agy-staff, which has 733 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 7, 2026.

Source: keli-wen/agy-staff on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.