Tlon workflow doctor

SkillAI & models

Diagnoses and fixes missing or outdated setup tools needed to run mobile agent workflows in the tlon-apps repo.

Available today. Use it from your connected AI after setup.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the Tlon workflow doctor skill

About this skill

Use when setting up a machine for mobile agent work on this repository, when the tlon-workflow skill's prerequisite check fails, or when stim, agent-device, gh, or their skills are missing, outdated, or installed under an old name.

What this skill tells your AI

The instructions your AI receives, as published by tloncorp/tlon-apps in .agents/skills/tlon-workflow-doctor/SKILL.md and read by ahel’s review.

One script checks everything the mobile agent loop depends on, and installs what it can.

node .agents/skills/tlon-workflow-doctor/check.mjs          # report
node .agents/skills/tlon-workflow-doctor/check.mjs --fix    # install and re-check

Run it unsandboxed, from the repository root (the path above is relative to it). It exits 0 when every line is ok or note, and 1 while any line says fix.

Unsandboxed because gh auth status cannot reach the keyring inside a shell sandbox and reports a false not authenticated. It always inspects the source checkout, even when run from a worktree's copy: that is where apps/tlon-mobile/.env.local lives, and stim worktree warm copies it from there.

What it checks

LineRequirement--fix does
gh2.99.0 or newer (the --attach upload flag), authenticatednothing; prints the install or gh auth login line
stimthe stim package, 1.1.0 or newer, resolved first on PATH; a note when npm has a newer oneinstalls or upgrades stim; uninstalls stim-cli when that is what resolves
stim portsthe ports command, which the loop's web and Cosmos steps take their ports fromupgrades stim
stim skillstim skill in ~/.agents/skills or this reponpx skills add appandflow/stim -g -y
agent-deviceinstalled; a note when npm has a newer onenpm install -g agent-device
agent-device skillagent-device skill in ~/.agents/skills or this reponpx skills add callstack/agent-device -g -y
ship loginDEFAULT_SHIP_LOGIN_URL + DEFAULT_SHIP_LOGIN_ACCESS_CODE, or DEFAULT_TLON_LOGIN_EMAIL + DEFAULT_TLON_LOGIN_PASSWORD, in the source checkout's apps/tlon-mobile/.env.localnothing; they are credentials (see the tlon-workflow skill, Sign in)
stim doctorno cost finding in apps/tlon-mobile; one is a note with its fix, since it slows builds without blocking themnothing; prints each finding and its fix

--fix only installs global npm and Homebrew packages and adds skills under ~/.agents/skills. It touches nothing in this repository.

It deliberately does not run stim doctor --fix, which writes .claude/settings.local.json -- your own agent permission configuration -- and can delete generated Android .cxx directories. Both are decisions for the person running this, not repairs to apply on a tool's say-so. The stim doctor line prints what it found and the fix each finding names, as a note: a slow cache costs minutes, not the task.

When a line stays fix

The line carries the exact command. Two that need a person: gh auth login opens a browser, and the ship login values are credentials nobody but the user should type.

The ship login note is worth clearing even though it is only a note. Without those two variables every reproduction that needs a signed-in app stalls on a 2FA code an unattended run cannot read. With them, sign-in is four taps and no typing.

Signals

GitHub stars
108
Forks
49
Last commit
Sep 2026

ahel review

  • K1binfo
    installs-packages
  • K1binfo
    installs-packages (in check.mjs)

Automated review, not a security audit. Ruleset v1+k2.

Advanced
Catalog kind
skill
Key
tlon-workflow-doctor
Source
github.com/tloncorp/tlon-apps