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.
git clone --depth 1 https://github.com/jpeseWang/solo-dev-workflowWrote 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.
[](https://agentmods.dev/commands/jpesewang/solo-dev-workflow/start-work)<a href="https://agentmods.dev/commands/jpesewang/solo-dev-workflow/start-work"><img src="https://agentmods.dev/badge/commands/jpesewang/solo-dev-workflow/start-work/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/jpesewang/solo-dev-workflow/start-work"><img src="https://agentmods.dev/badge/commands/jpesewang/solo-dev-workflow/start-work.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.03599 |
| Opus 5.5 | $0.00000 | $0.01440 |
| Sonnet 5.5 | $0.00000 | $0.00720 |
| Haiku 4.5 | $0.00000 | $0.00360 |
Grade B, and why
start-work scanned grade B with 2 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 2mo 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
EXISTING=$(cat .claude/task-state.json) Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -sS -u "$JIRA_EMAIL:$JIRA_TOKEN" \ How it starts
The opening of the file, as written. The whole thing — 401 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are $DEV_ROLE, starting the workflow for a new task in the $PROJECT_NAME project.
/start-work is the entry point when you begin a task: confirm the Jira ticket (existing or newly created), have the AI estimate the time, create a branch, transition the ticket to In Progress, and record state so /push can log work accurately and automatically. By the end: you are on a new branch, the ticket is In Progress, ready to code.
Security note: For any security-related ticket, explicitly flag authentication, authorization, input validation, and secret-handling considerations before implementation begins.
STEP 1: ASK FOR THE TICKET
Ask the user:
"Do you already have a Jira ticket? If so, paste the ticket ID (e.g. PROJ-123). If not, describe the task you want to do and I'll create a ticket."
Classify the response:
- Matches regex
(${KEYS_REGEX})-\d+(build from$JIRA_PROJECT_KEYS) → BRANCH A: Has a ticket - No match → treat as a task description → BRANCH B: Create a new ticket
KEYS_REGEX=$(echo "$JIRA_PROJECT_KEYS" | tr ',' '|') # e.g. "PROJ"
BRANCH A: EXISTING TICKET
A1. Verify the ticket exists + fetch metadata
[ -f ".claude/config.env" ] && source .claude/config.env
source ~/.zshrc 2>/dev/null || true
if [ -z "$JIRA_TOKEN" ] || [ -z "$JIRA_EMAIL" ] || [ -z "$JIRA_BASE_URL" ]; then
echo "[ERROR] Missing JIRA env vars. Fill them into .claude/config.env or ~/.zshrc"
exit 1
fi
TICKET_ID="PROJ-XXXX" # from your input
curl -sS -u "$JIRA_EMAIL:$JIRA_TOKEN" \
-H "Accept: application/json" \
"$JIRA_BASE_URL/rest/api/3/issue/$TICKET_ID?fields=summary,status,issuetype" \
> /tmp/ticket.json
python3 -c "
import json
d=json.load(open('/tmp/ticket.json'))
if 'key' not in d:
print('NOT_FOUND')
else:
print(d['key'])
print(d['fields']['summary'])
print(d['fields']['status']['name'])
print(d['fields']['issuetype']['name'])
"
If NOT_FOUND → tell the user the ticket ID is wrong, ask again.
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.
- 2mo ago First seen · 401 lines · 0 tokens per session scan B 8cf5bc607d51
start-work is a command published in the GitHub repository jpeseWang/solo-dev-workflow (2 stars, last pushed 2mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 3,599 tokens. A static security scan graded it B with 2 findings (reads agent configuration directories, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
project
Manage projects: register repos, inspect, configure per-project settings, and remove.
land
Resolve and squash merge one named, currently authorized pull request.
standup
Review my git commits from the past workday and generate a standup summary.
weekly-summary
Generate weekly work summary from git activity.
sync
Synchronizes your local swarm state with the latest GitHub repository state, updating task statuses and detecting changes.
claim
Claims a GitHub issue for your swarm to work on, preventing conflicts with other swarms.